Freeciv-3.3
Loading...
Searching...
No Matches
Data Structures | Macros | Functions | Variables
diplodlg.c File Reference
#include <stdio.h>
#include <stdlib.h>
#include <gtk/gtk.h>
#include "log.h"
#include "mem.h"
#include "shared.h"
#include "support.h"
#include "diptreaty.h"
#include "fcintl.h"
#include "game.h"
#include "government.h"
#include "map.h"
#include "nation.h"
#include "packets.h"
#include "player.h"
#include "research.h"
#include "chatline.h"
#include "client_main.h"
#include "climisc.h"
#include "options.h"
#include "diplodlg.h"
#include "gui_main.h"
#include "gui_stuff.h"
#include "mapview.h"
#include "plrdlg.h"
#include "speclist.h"

Go to the source code of this file.

Data Structures

struct  Diplomacy_dialog
 
struct  Diplomacy_notebook
 
struct  city_deal
 

Macros

#define SPECLIST_TAG   dialog
 
#define SPECLIST_TYPE   struct Diplomacy_dialog
 
#define dialog_list_iterate(dialoglist, pdialog)    TYPED_LIST_ITERATE(struct Diplomacy_dialog, dialoglist, pdialog)
 
#define dialog_list_iterate_end   LIST_ITERATE_END
 
#define RESPONSE_CANCEL_MEETING   100
 
#define RESPONSE_CANCEL_MEETING_ALL   101
 

Functions

static struct Diplomacy_dialogcreate_diplomacy_dialog (struct treaty *ptreaty, struct player *plr0, struct player *plr1)
 
static struct Diplomacy_dialogfind_diplomacy_dialog (struct player *they)
 
static void popup_diplomacy_dialog (struct treaty *ptreaty, struct player *they, struct player *initiator)
 
static void diplomacy_dialog_map_callback (GtkWidget *w, gpointer data)
 
static void diplomacy_dialog_seamap_callback (GtkWidget *w, gpointer data)
 
static void diplomacy_dialog_tech_callback (GtkWidget *w, gpointer data)
 
static void diplomacy_dialog_city_callback (GtkWidget *w, gpointer data)
 
static void diplomacy_dialog_ceasefire_callback (GtkWidget *w, gpointer data)
 
static void diplomacy_dialog_peace_callback (GtkWidget *w, gpointer data)
 
static void diplomacy_dialog_alliance_callback (GtkWidget *w, gpointer data)
 
static void diplomacy_dialog_vision_callback (GtkWidget *w, gpointer data)
 
static void diplomacy_dialog_embassy_callback (GtkWidget *w, gpointer data)
 
static void diplomacy_dialog_shared_tiles_callback (GtkWidget *w, gpointer data)
 
static void close_diplomacy_dialog (struct Diplomacy_dialog *pdialog)
 
static void update_diplomacy_dialog (struct Diplomacy_dialog *pdialog)
 
static void diplo_dialog_returnkey (GtkWidget *w, gpointer data)
 
static struct Diplomacy_notebookdiplomacy_main_create (void)
 
static void diplomacy_main_destroy (void)
 
static void diplomacy_main_response (struct gui_dialog *dlg, int response, gpointer data)
 
void gui_recv_accept_treaty (struct treaty *ptreaty, struct player *they)
 
void gui_init_meeting (struct treaty *ptreaty, struct player *they, struct player *initiator)
 
void gui_recv_cancel_meeting (struct treaty *ptreaty, struct player *they, struct player *initiator)
 
void gui_prepare_clause_updt (struct treaty *ptreaty, struct player *they)
 
void gui_recv_create_clause (struct treaty *ptreaty, struct player *they)
 
void gui_recv_remove_clause (struct treaty *ptreaty, struct player *they)
 
static gint sort_advance_names (gconstpointer a, gconstpointer b)
 
static void popup_add_menu (GtkMenuShell *parent, gpointer data)
 
static void row_callback (GtkTreeView *view, GtkTreePath *path, GtkTreeViewColumn *col, gpointer data)
 
static void diplomacy_destroy (struct Diplomacy_dialog *pdialog)
 
static void diplomacy_response (struct gui_dialog *dlg, int response, gpointer data)
 
static void diplomacy_dialog_add_pact_clause (GtkWidget *w, gpointer data, int type)
 
void diplomacy_dialog_init (void)
 
void diplomacy_dialog_done (void)
 
void close_all_diplomacy_dialogs (void)
 

Variables

static struct dialog_list * dialog_list
 
static struct Diplomacy_notebookdipl_main
 

Macro Definition Documentation

◆ dialog_list_iterate

#define dialog_list_iterate (   dialoglist,
  pdialog 
)     TYPED_LIST_ITERATE(struct Diplomacy_dialog, dialoglist, pdialog)

Definition at line 81 of file diplodlg.c.

◆ dialog_list_iterate_end

#define dialog_list_iterate_end   LIST_ITERATE_END

Definition at line 83 of file diplodlg.c.

◆ RESPONSE_CANCEL_MEETING

#define RESPONSE_CANCEL_MEETING   100

Definition at line 114 of file diplodlg.c.

◆ RESPONSE_CANCEL_MEETING_ALL

#define RESPONSE_CANCEL_MEETING_ALL   101

Definition at line 115 of file diplodlg.c.

◆ SPECLIST_TAG

#define SPECLIST_TAG   dialog

Definition at line 77 of file diplodlg.c.

◆ SPECLIST_TYPE

#define SPECLIST_TYPE   struct Diplomacy_dialog

Definition at line 78 of file diplodlg.c.

Function Documentation

◆ close_all_diplomacy_dialogs()

void close_all_diplomacy_dialogs ( void  )

Close all dialogs, for when client disconnects from game.

Definition at line 1260 of file diplodlg.c.

Referenced by set_client_state().

◆ close_diplomacy_dialog()

void close_diplomacy_dialog ( struct Diplomacy_dialog pdialog)
static

Close diplomacy dialog

Definition at line 1198 of file diplodlg.c.

Referenced by close_all_diplomacy_dialogs(), and gui_recv_cancel_meeting().

◆ create_diplomacy_dialog()

static struct Diplomacy_dialog * create_diplomacy_dialog ( struct treaty ptreaty,
struct player plr0,
struct player plr1 
)
static

Setups diplomacy dialog widgets.

Definition at line 689 of file diplodlg.c.

Referenced by gui_init_meeting(), and popup_diplomacy_dialog().

◆ diplo_dialog_returnkey()

static void diplo_dialog_returnkey ( GtkWidget w,
gpointer  data 
)
static

User hit enter after entering gold amount

Definition at line 1240 of file diplodlg.c.

Referenced by create_diplomacy_dialog().

◆ diplomacy_destroy()

static void diplomacy_destroy ( struct Diplomacy_dialog pdialog)
static

Destroy diplomacy dialog

Definition at line 625 of file diplodlg.c.

Referenced by close_diplomacy_dialog().

◆ diplomacy_dialog_add_pact_clause()

static void diplomacy_dialog_add_pact_clause ( GtkWidget w,
gpointer  data,
int  type 
)
static

◆ diplomacy_dialog_alliance_callback()

static void diplomacy_dialog_alliance_callback ( GtkWidget w,
gpointer  data 
)
static

Alliance pact menu item activated

Definition at line 1143 of file diplodlg.c.

Referenced by create_clause_menu(), and popup_add_menu().

◆ diplomacy_dialog_ceasefire_callback()

static void diplomacy_dialog_ceasefire_callback ( GtkWidget w,
gpointer  data 
)
static

Ceasefire pact menu item activated

Definition at line 1127 of file diplodlg.c.

Referenced by create_clause_menu(), and popup_add_menu().

◆ diplomacy_dialog_city_callback()

static void diplomacy_dialog_city_callback ( GtkWidget w,
gpointer  data 
)
static

Callback for trading cities

  • Kris Bubendorfer

Definition at line 1062 of file diplodlg.c.

Referenced by create_clause_menu(), and popup_add_menu().

◆ diplomacy_dialog_done()

void diplomacy_dialog_done ( void  )

Free resources allocated for diplomacy dialog

Definition at line 1215 of file diplodlg.c.

Referenced by ui_main(), and ui_main().

◆ diplomacy_dialog_embassy_callback()

static void diplomacy_dialog_embassy_callback ( GtkWidget w,
gpointer  data 
)
static

Embassy menu item activated

Definition at line 1166 of file diplodlg.c.

Referenced by create_clause_menu(), and popup_add_menu().

◆ diplomacy_dialog_init()

void diplomacy_dialog_init ( void  )

Initialize diplomacy dialog

Definition at line 1206 of file diplodlg.c.

Referenced by activate_gui(), ui_main(), and ui_main().

◆ diplomacy_dialog_map_callback()

static void diplomacy_dialog_map_callback ( GtkWidget w,
gpointer  data 
)
static

Map menu item activated

Definition at line 1082 of file diplodlg.c.

Referenced by create_clause_menu(), and popup_add_menu().

◆ diplomacy_dialog_peace_callback()

static void diplomacy_dialog_peace_callback ( GtkWidget w,
gpointer  data 
)
static

Peace pact menu item activated

Definition at line 1135 of file diplodlg.c.

Referenced by create_clause_menu(), and popup_add_menu().

◆ diplomacy_dialog_seamap_callback()

static void diplomacy_dialog_seamap_callback ( GtkWidget w,
gpointer  data 
)
static

Seamap menu item activated

Definition at line 1097 of file diplodlg.c.

Referenced by create_clause_menu(), and popup_add_menu().

◆ diplomacy_dialog_shared_tiles_callback()

static void diplomacy_dialog_shared_tiles_callback ( GtkWidget w,
gpointer  data 
)
static

Shared tiles item activated

Definition at line 1181 of file diplodlg.c.

Referenced by create_clause_menu(), and popup_add_menu().

◆ diplomacy_dialog_tech_callback()

static void diplomacy_dialog_tech_callback ( GtkWidget w,
gpointer  data 
)
static

Callback for the diplomatic dialog: give tech.

Definition at line 1014 of file diplodlg.c.

Referenced by create_clause_menu(), and popup_add_menu().

◆ diplomacy_dialog_vision_callback()

static void diplomacy_dialog_vision_callback ( GtkWidget w,
gpointer  data 
)
static

Shared vision menu item activated

Definition at line 1151 of file diplodlg.c.

Referenced by create_clause_menu(), and popup_add_menu().

◆ diplomacy_main_create()

static struct Diplomacy_notebook * diplomacy_main_create ( void  )
static

Create the main tab for diplomatic meetings.

Definition at line 541 of file diplodlg.c.

Referenced by create_diplomacy_dialog().

◆ diplomacy_main_destroy()

static void diplomacy_main_destroy ( void  )
static

Destroy main diplomacy dialog.

Definition at line 586 of file diplodlg.c.

Referenced by diplomacy_destroy().

◆ diplomacy_main_response()

static void diplomacy_main_response ( struct gui_dialog dlg,
int  response,
gpointer  data 
)
static

User has responded to whole diplomacy dialog (main tab).

Definition at line 598 of file diplodlg.c.

Referenced by diplomacy_main_create().

◆ diplomacy_response()

static void diplomacy_response ( struct gui_dialog dlg,
int  response,
gpointer  data 
)
static

User has responded to whole diplomacy dialog (one meeting).

Definition at line 658 of file diplodlg.c.

Referenced by create_diplomacy_dialog().

◆ find_diplomacy_dialog()

static struct Diplomacy_dialog * find_diplomacy_dialog ( struct player they)
static

Find diplomacy dialog between player and other player

Definition at line 1223 of file diplodlg.c.

Referenced by gui_recv_accept_treaty(), gui_recv_cancel_meeting(), gui_recv_create_clause(), gui_recv_remove_clause(), and popup_diplomacy_dialog().

◆ gui_init_meeting()

void gui_init_meeting ( struct treaty ptreaty,
struct player they,
struct player initiator 
)

Someone is initiating meeting with us.

Definition at line 137 of file diplodlg.c.

Referenced by client_init_meeting().

◆ gui_prepare_clause_updt()

void gui_prepare_clause_updt ( struct treaty ptreaty,
struct player they 
)

Prepare to clause creation or removal.

Definition at line 163 of file diplodlg.c.

Referenced by client_recv_create_clause(), and client_recv_remove_clause().

◆ gui_recv_accept_treaty()

void gui_recv_accept_treaty ( struct treaty ptreaty,
struct player they 
)

Server tells us that either party has accepted treaty

Definition at line 120 of file diplodlg.c.

◆ gui_recv_cancel_meeting()

void gui_recv_cancel_meeting ( struct treaty ptreaty,
struct player they,
struct player initiator 
)

Meeting has been cancelled.

Definition at line 146 of file diplodlg.c.

◆ gui_recv_create_clause()

void gui_recv_create_clause ( struct treaty ptreaty,
struct player they 
)

Added clause to the meeting

Definition at line 171 of file diplodlg.c.

◆ gui_recv_remove_clause()

void gui_recv_remove_clause ( struct treaty ptreaty,
struct player they 
)

Removed clause from meeting.

Definition at line 188 of file diplodlg.c.

Referenced by client_recv_remove_clause().

◆ popup_add_menu()

static void popup_add_menu ( GtkMenuShell parent,
gpointer  data 
)
static

Popup menu about adding clauses

Definition at line 248 of file diplodlg.c.

Referenced by create_diplomacy_dialog().

◆ popup_diplomacy_dialog()

static void popup_diplomacy_dialog ( struct treaty ptreaty,
struct player they,
struct player initiator 
)
static

Popup the dialog 10% inside the main-window

Definition at line 205 of file diplodlg.c.

Referenced by gui_init_meeting(), and player_nation_callback().

◆ row_callback()

static void row_callback ( GtkTreeView view,
GtkTreePath path,
GtkTreeViewColumn col,
gpointer  data 
)
static

Some clause activated

Definition at line 515 of file diplodlg.c.

Referenced by create_diplomacy_dialog().

◆ sort_advance_names()

static gint sort_advance_names ( gconstpointer  a,
gconstpointer  b 
)
static

Utility for g_list_sort(). See below.

Definition at line 236 of file diplodlg.c.

Referenced by create_clause_menu(), and popup_add_menu().

◆ update_diplomacy_dialog()

static void update_diplomacy_dialog ( struct Diplomacy_dialog pdialog)
static

Variable Documentation

◆ dialog_list

struct dialog_list* dialog_list
static

◆ dipl_main

struct Diplomacy_notebook* dipl_main
static