Freeciv-3.2
Loading...
Searching...
No Matches
Data Structures | Typedefs | Enumerations | Functions | Variables
pages.c File Reference
#include <stdio.h>
#include <time.h>
#include <sys/stat.h>
#include <gtk/gtk.h>
#include "fcintl.h"
#include "log.h"
#include "mem.h"
#include "shared.h"
#include "support.h"
#include "dataio.h"
#include "game.h"
#include "mapimg.h"
#include "version.h"
#include "client_main.h"
#include "climisc.h"
#include "clinet.h"
#include "connectdlg_common.h"
#include "packhand.h"
#include "servers.h"
#include "update_queue.h"
#include "chatline.h"
#include "connectdlg.h"
#include "dialogs.h"
#include "graphics.h"
#include "gui_main.h"
#include "gui_stuff.h"
#include "mapview.h"
#include "optiondlg.h"
#include "plrdlg.h"
#include "repodlgs.h"
#include "voteinfo_bar.h"
#include "pages.h"

Go to the source code of this file.

Data Structures

struct  server_scan_timer_data
 
struct  save_dialog
 

Typedefs

typedef void(* save_dialog_action_fn_t) (const char *filename)
 
typedef struct fileinfo_list *(* save_dialog_files_fn_t) (void)
 

Enumerations

enum  save_dialog_columns { SD_COL_PRETTY_NAME = 0 , SD_COL_FULL_PATH , SD_COL_NUM }
 
enum  save_dialog_response { SD_RES_BROWSE , SD_RES_DELETE , SD_RES_SAVE }
 
enum  connection_state { LOGIN_TYPE , NEW_PASSWORD_TYPE , ENTER_PASSWORD_TYPE , WAITING_TYPE }
 
enum  connection_list_columns {
  CL_COL_PLAYER_NUMBER = 0 , CL_COL_USER_NAME , CL_COL_READY_STATE , CL_COL_PLAYER_NAME ,
  CL_COL_FLAG , CL_COL_COLOR , CL_COL_NATION , CL_COL_TEAM ,
  CL_COL_CONN_ID , CL_COL_STYLE , CL_COL_WEIGHT , CL_COL_COLLAPSED ,
  CL_NUM_COLUMNS
}
 

Functions

static void connection_state_reset (void)
 
static void start_new_game_callback (GtkWidget *w, gpointer data)
 
static void start_scenario_callback (GtkWidget *w, gpointer data)
 
static void load_saved_game_callback (GtkWidget *w, gpointer data)
 
static void connect_network_game_callback (GtkWidget *w, gpointer data)
 
static void open_settings (void)
 
static void main_callback (GtkWidget *w, gpointer data)
 
static gboolean intro_expose (GtkWidget *w, cairo_t *cr, gpointer *data)
 
static void intro_free (GtkWidget *w, gpointer *data)
 
GtkWidgetcreate_main_page (void)
 
static GtkListStoresave_dialog_store_new (void)
 
static void save_dialog_store_update (GtkListStore *store, const struct fileinfo_list *files)
 
static void save_dialog_update (struct save_dialog *pdialog)
 
static void save_dialog_file_chooser_callback (GtkWidget *widget, gint response, gpointer data)
 
static void save_dialog_file_chooser_popup (const char *title, GtkFileChooserAction action, save_dialog_action_fn_t cb)
 
static void save_dialog_response_callback (GtkWidget *w, gint response, gpointer data)
 
static void save_dialog_row_callback (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *column, gpointer data)
 
static void save_dialog_entry_callback (GtkEntry *entry, gpointer data)
 
static void save_dialog_list_callback (GtkTreeSelection *selection, gpointer data)
 
static GtkWidgetsave_dialog_new (const char *title, const char *savelabel, const char *savefilelabel, save_dialog_action_fn_t action, save_dialog_files_fn_t files)
 
static void update_server_list (enum server_scan_type sstype, const struct server_list *list)
 
void destroy_server_scans (void)
 
static gboolean check_server_scan (gpointer data)
 
static void server_scan_error (struct server_scan *scan, const char *message)
 
static void update_network_lists (void)
 
static gboolean update_network_statusbar (gpointer data)
 
static void clear_network_statusbar (void)
 
void append_network_statusbar (const char *text, bool force)
 
GtkWidgetcreate_statusbar (void)
 
static void set_connection_state (enum connection_state state)
 
void handle_authentication_req (enum authentication_type type, const char *message)
 
static void connect_callback (GtkWidget *w, gpointer data)
 
static void network_activate_callback (GtkTreeView *view, GtkTreePath *arg1, GtkTreeViewColumn *arg2, gpointer data)
 
static void update_server_playerlist (const struct server *pserver)
 
static void network_list_callback (GtkTreeSelection *select, gpointer data)
 
static void update_network_page (void)
 
GtkWidgetcreate_network_page (void)
 
static GtkTreeStoreconnection_list_store_new (void)
 
static void client_aitoggle_player (void *data)
 
static void client_take_player (struct player *pplayer)
 
static void object_put (GObject *object, struct player *pplayer, struct connection *pconn)
 
static bool object_extract (GObject *object, struct player **ppplayer, struct connection **ppconn)
 
static void game_options_callback (GtkWidget *w, gpointer data)
 
static void ai_skill_callback (GtkWidget *w, gpointer data)
 
static void ruleset_selected (const char *name)
 
static void ruleset_entry_changed (GtkWidget *w, gpointer data)
 
static void ai_fill_changed_by_user (GtkWidget *w, gpointer data)
 
void ai_fill_changed_by_server (int aifill)
 
void update_start_page (void)
 
static void conn_menu_team_chosen (GObject *object, gpointer data)
 
static void conn_menu_ready_chosen (GObject *object, gpointer data)
 
static void conn_menu_nation_chosen (GObject *object, gpointer data)
 
static void conn_menu_player_command (GObject *object, gpointer data)
 
static void conn_menu_player_take (GObject *object, gpointer data)
 
static void conn_menu_connection_command (GObject *object, gpointer data)
 
static void show_conn_popup (struct player *pplayer, struct connection *pconn)
 
static void conn_menu_info_chosen (GObject *object, gpointer data)
 
static GtkWidgetcreate_conn_menu (struct player *pplayer, struct connection *pconn)
 
static gboolean delayed_unselect_path (gpointer data)
 
static gboolean connection_list_event (GtkWidget *widget, GdkEventButton *event, gpointer data)
 
static void connection_list_row_callback (GtkTreeView *tree_view, GtkTreeIter *iter, GtkTreePath *path, gpointer data)
 
static bool conn_list_selection (struct player **ppplayer, struct connection **ppconn)
 
static void conn_list_select_conn (struct connection *pconn)
 
static void ready_button_callback (GtkWidget *w, gpointer data)
 
static void nation_button_callback (GtkWidget *w, gpointer data)
 
static void observe_button_callback (GtkWidget *w, gpointer data)
 
static void update_start_page_buttons (void)
 
static bool model_get_player_iter (GtkTreeModel *model, GtkTreeIter *iter, GtkTreeIter *start, const struct player *pplayer)
 
static bool model_get_conn_iter (GtkTreeModel *model, GtkTreeIter *iter, GtkTreeIter *parent, GtkTreeIter *start, const struct connection *pconn)
 
void real_conn_list_dialog_update (void *unused)
 
static void add_tree_col (GtkWidget *treeview, GType gtype, const char *title, int colnum, const char *key)
 
GtkWidgetcreate_start_page (void)
 
void handle_game_load (bool load_successful, const char *filename)
 
static void load_filename (const char *filename)
 
static void load_callback (void)
 
static void load_browse_callback (GtkWidget *w, gpointer data)
 
static void update_load_page (void)
 
GtkWidgetcreate_load_page (void)
 
static void scenario_list_callback (void)
 
static void scenario_callback (void)
 
static void scenario_browse_callback (GtkWidget *w, gpointer data)
 
static void update_scenario_page (void)
 
GtkWidgetcreate_scenario_page (void)
 
enum client_pages get_current_client_page (void)
 
void real_set_client_page (enum client_pages new_page)
 
static struct fileinfo_listsave_dialog_savegame_list (void)
 
void save_game_dialog_popup (void)
 
static void save_dialog_save_scenario (const char *filename)
 
static struct fileinfo_listsave_dialog_scenario_list (void)
 
void save_scenario_dialog_popup (void)
 
static struct fileinfo_listsave_dialog_mapimg_list (void)
 
void save_mapimg_dialog_popup (void)
 
void mapimg_client_save (const char *filename)
 
void set_rulesets (int num_rulesets, char **rulesets)
 

Variables

static GtkWidgetscenario_description
 
static GtkWidgetscenario_authors
 
static GtkWidgetscenario_filename
 
static GtkWidgetscenario_version
 
static GtkListStoreload_store
 
static GtkListStorescenario_store
 
static GtkListStoremeta_store
 
static GtkListStorelan_store
 
static GtkListStoreserver_playerlist_store
 
static GtkWidgetserver_playerlist_view
 
static GtkTreeSelectionload_selection
 
static GtkTreeSelectionscenario_selection
 
static GtkTreeSelectionmeta_selection
 
static GtkTreeSelectionlan_selection
 
static enum client_pages current_page = -1
 
static struct server_scan_timer_data meta_scan = { NULL, 0 }
 
static struct server_scan_timer_data lan_scan = { NULL, 0 }
 
static GtkWidgetstatusbar
 
static GtkWidgetstatusbar_frame
 
static GQueuestatusbar_queue
 
static guint statusbar_timer = 0
 
static GtkWidgetruleset_combo
 
static bool holding_srv_list_mutex = FALSE
 
static GtkWidgetnetwork_login_label
 
static GtkWidgetnetwork_login
 
static GtkWidgetnetwork_host_label
 
static GtkWidgetnetwork_host
 
static GtkWidgetnetwork_port_label
 
static GtkWidgetnetwork_port
 
static GtkWidgetnetwork_password_label
 
static GtkWidgetnetwork_password
 
static GtkWidgetnetwork_confirm_password_label
 
static GtkWidgetnetwork_confirm_password
 
static enum connection_state connection_status
 
GtkWidgetstart_message_area
 
static GtkWidgetstart_options_table
 
static GtkWidgetobserve_button
 
static GtkWidgetready_button
 
static GtkWidgetnation_button
 
static GtkTreeStoreconnection_list_store
 
static GtkTreeViewconnection_list_view
 
static GtkWidgetstart_aifill_spin = NULL
 
static GtkWidgetai_lvl_combobox = NULL
 
static bool no_ruleset_callback = FALSE
 
static bool send_new_aifill_to_server = TRUE
 

Typedef Documentation

◆ save_dialog_action_fn_t

typedef void(* save_dialog_action_fn_t) (const char *filename)

Definition at line 372 of file pages.c.

◆ save_dialog_files_fn_t

typedef struct fileinfo_list *(* save_dialog_files_fn_t) (void)

Definition at line 372 of file pages.c.

Enumeration Type Documentation

◆ connection_list_columns

Enumerator
CL_COL_PLAYER_NUMBER 
CL_COL_USER_NAME 
CL_COL_READY_STATE 
CL_COL_PLAYER_NAME 
CL_COL_FLAG 
CL_COL_COLOR 
CL_COL_NATION 
CL_COL_TEAM 
CL_COL_CONN_ID 
CL_COL_STYLE 
CL_COL_WEIGHT 
CL_COL_COLLAPSED 
CL_NUM_COLUMNS 

Definition at line 1468 of file pages.c.

◆ connection_state

Enumerator
LOGIN_TYPE 
NEW_PASSWORD_TYPE 
ENTER_PASSWORD_TYPE 
WAITING_TYPE 

Definition at line 852 of file pages.c.

◆ save_dialog_columns

Enumerator
SD_COL_PRETTY_NAME 
SD_COL_FULL_PATH 
SD_COL_NUM 

Definition at line 383 of file pages.c.

◆ save_dialog_response

Enumerator
SD_RES_BROWSE 
SD_RES_DELETE 
SD_RES_SAVE 

Definition at line 390 of file pages.c.

Function Documentation

◆ add_tree_col()

static void add_tree_col ( GtkWidget treeview,
GType  gtype,
const char title,
int  colnum,
const char key 
)
static

Helper function for adding columns to a tree view. If 'key' is not NULL then the added column is added to the object data of the treeview using g_object_set_data under 'key'.

Definition at line 2589 of file pages.c.

Referenced by create_start_page().

◆ ai_fill_changed_by_server()

void ai_fill_changed_by_server ( int  aifill)

Server changed AI fill setting.

Definition at line 1653 of file pages.c.

Referenced by option_gui_update_extra().

◆ ai_fill_changed_by_user()

static void ai_fill_changed_by_user ( GtkWidget w,
gpointer  data 
)
static

Definition at line 1642 of file pages.c.

Referenced by create_start_page().

◆ ai_skill_callback()

static void ai_skill_callback ( GtkWidget w,
gpointer  data 
)
static

AI skill setting callback.

Definition at line 1589 of file pages.c.

Referenced by create_start_page().

◆ append_network_statusbar()

void append_network_statusbar ( const char text,
bool  force 
)

Queue statusbar label text change.

Definition at line 894 of file pages.c.

Referenced by connect_callback(), handle_authentication_req(), real_output_window_append(), and set_connection_state().

◆ check_server_scan()

static gboolean check_server_scan ( gpointer  data)
static

This function updates the list of servers every so often.

Definition at line 791 of file pages.c.

Referenced by update_network_lists().

◆ clear_network_statusbar()

static void clear_network_statusbar ( void  )
static

Clear statusbar queue.

Definition at line 880 of file pages.c.

Referenced by append_network_statusbar(), and real_set_client_page().

◆ client_aitoggle_player()

static void client_aitoggle_player ( void data)
static

Maybe toggle AI of the player if the client could take the player. This function shouldn't be used directly, see in client_take_player().

Definition at line 1509 of file pages.c.

Referenced by client_take_player().

◆ client_take_player()

static void client_take_player ( struct player pplayer)
static

Send the /take command by chat and toggle AI if needed (after that).

Definition at line 1523 of file pages.c.

Referenced by conn_menu_player_take(), conn_menu_player_take(), and nation_button_callback().

◆ conn_list_select_conn()

static void conn_list_select_conn ( struct connection pconn)
static

Selects connection's row in the connection/player list.

Definition at line 2094 of file pages.c.

Referenced by real_conn_list_dialog_update().

◆ conn_list_selection()

static bool conn_list_selection ( struct player **  ppplayer,
struct connection **  ppconn 
)
static

Returns TRUE if a row is selected in the connection/player list. Fills the not null data.

Definition at line 2058 of file pages.c.

Referenced by nation_button_callback(), observe_button_callback(), real_conn_list_dialog_update(), and update_start_page_buttons().

◆ conn_menu_connection_command()

static void conn_menu_connection_command ( GObject object,
gpointer  data 
)
static

Miscellaneous callback for the conn menu that allows an arbitrary command (/cmdlevel, /cut, etc.) to be run on the connection.

Definition at line 1753 of file pages.c.

Referenced by create_conn_menu().

◆ conn_menu_info_chosen()

static void conn_menu_info_chosen ( GObject object,
gpointer  data 
)
static

Callback for when the "info" entry is chosen from the conn menu.

Definition at line 1798 of file pages.c.

Referenced by create_conn_menu().

◆ conn_menu_nation_chosen()

static void conn_menu_nation_chosen ( GObject object,
gpointer  data 
)
static

Callback for when the pick-nation entry is chosen from the conn menu.

Definition at line 1713 of file pages.c.

Referenced by create_conn_menu().

◆ conn_menu_player_command()

static void conn_menu_player_command ( GObject object,
gpointer  data 
)
static

Miscellaneous callback for the conn menu that allows an arbitrary command (/observe, /remove, /hard, etc.) to be run on the player.

Definition at line 1726 of file pages.c.

Referenced by create_conn_menu().

◆ conn_menu_player_take()

static void conn_menu_player_take ( GObject object,
gpointer  data 
)
static

Take command in the conn menu.

Definition at line 1740 of file pages.c.

Referenced by create_conn_menu().

◆ conn_menu_ready_chosen()

static void conn_menu_ready_chosen ( GObject object,
gpointer  data 
)
static

Callback for when the "ready" entry is chosen from the conn menu.

Definition at line 1700 of file pages.c.

Referenced by create_conn_menu().

◆ conn_menu_team_chosen()

static void conn_menu_team_chosen ( GObject object,
gpointer  data 
)
static

Callback for when a team is chosen from the conn menu.

Definition at line 1683 of file pages.c.

Referenced by create_conn_menu().

◆ connect_callback()

static void connect_callback ( GtkWidget w,
gpointer  data 
)
static

If on the network page, switch page to the login page (with new server and port). if on the login page, send connect and/or authentication requests to the server.

Definition at line 1043 of file pages.c.

Referenced by create_network_page(), and network_activate_callback().

◆ connect_network_game_callback()

static void connect_network_game_callback ( GtkWidget w,
gpointer  data 
)
static

Reset the connection status and switch to network page.

Definition at line 132 of file pages.c.

Referenced by create_main_page().

◆ connection_list_event()

static gboolean connection_list_event ( GtkWidget widget,
GdkEventButton event,
gpointer  data 
)
static

Called on a button event on the pregame player list.

Definition at line 1989 of file pages.c.

Referenced by create_start_page().

◆ connection_list_row_callback()

static void connection_list_row_callback ( GtkTreeView tree_view,
GtkTreeIter iter,
GtkTreePath path,
gpointer  data 
)
static

Mark a row as collapsed or expanded.

Definition at line 2043 of file pages.c.

Referenced by create_start_page().

◆ connection_list_store_new()

static GtkTreeStore * connection_list_store_new ( void  )
inlinestatic

Create a new tree store for connection list.

Definition at line 1488 of file pages.c.

Referenced by create_start_page().

◆ connection_state_reset()

static void connection_state_reset ( void  )
static

Reset the connection state.

Definition at line 998 of file pages.c.

Referenced by connect_network_game_callback().

◆ create_conn_menu()

static GtkWidget * create_conn_menu ( struct player pplayer,
struct connection pconn 
)
static

Called when you click on a player; this function pops up a menu to allow changing the team.

Definition at line 1812 of file pages.c.

Referenced by connect_list_right_button(), and connection_list_event().

◆ create_load_page()

GtkWidget * create_load_page ( void  )

Create the load page.

Definition at line 2904 of file pages.c.

Referenced by setup_widgets().

◆ create_main_page()

GtkWidget * create_main_page ( void  )

Create the main page.

Definition at line 231 of file pages.c.

Referenced by setup_widgets().

◆ create_network_page()

GtkWidget * create_network_page ( void  )

Create the network page.

Definition at line 1201 of file pages.c.

Referenced by setup_widgets().

◆ create_scenario_page()

GtkWidget * create_scenario_page ( void  )

Create the scenario page.

Definition at line 3185 of file pages.c.

Referenced by setup_widgets().

◆ create_start_page()

GtkWidget * create_start_page ( void  )

Create start page.

Definition at line 2623 of file pages.c.

Referenced by setup_widgets().

◆ create_statusbar()

GtkWidget * create_statusbar ( void  )

Create statusbar.

Definition at line 909 of file pages.c.

Referenced by setup_widgets().

◆ delayed_unselect_path()

static gboolean delayed_unselect_path ( gpointer  data)
static

Unselect a tree path.

Definition at line 1973 of file pages.c.

Referenced by connect_list_left_button(), and connection_list_event().

◆ destroy_server_scans()

void destroy_server_scans ( void  )

Free the server scans.

Definition at line 768 of file pages.c.

Referenced by ui_main(), and update_network_lists().

◆ game_options_callback()

static void game_options_callback ( GtkWidget w,
gpointer  data 
)
static

Request the game options dialog.

Definition at line 1581 of file pages.c.

Referenced by create_start_page().

◆ get_current_client_page()

enum client_pages get_current_client_page ( void  )

Returns current client page

Definition at line 3345 of file pages.c.

Referenced by animation_idle_cb(), get_client_page(), main_message_area_resize(), set_turn_done_button_state(), and update_info_label().

◆ handle_authentication_req()

void handle_authentication_req ( enum authentication_type  type,
const char message 
)

Configure the dialog depending on what type of authentication request the server is making.

Definition at line 1007 of file pages.c.

Referenced by client_handle_packet().

◆ handle_game_load()

void handle_game_load ( bool  load_successful,
const char filename 
)

This regenerates the player information from a loaded game on the server.

Definition at line 2841 of file pages.c.

Referenced by client_handle_packet().

◆ intro_expose()

static gboolean intro_expose ( GtkWidget w,
cairo_t cr,
gpointer data 
)
static

This is called whenever the intro graphic needs a graphics refresh.

Definition at line 164 of file pages.c.

Referenced by create_main_page().

◆ intro_free()

static void intro_free ( GtkWidget w,
gpointer data 
)
static

This is called when main page is getting destroyed.

Definition at line 221 of file pages.c.

Referenced by create_main_page().

◆ load_browse_callback()

static void load_browse_callback ( GtkWidget w,
gpointer  data 
)
static

Call the default GTK+ requester for saved game loading.

Definition at line 2881 of file pages.c.

Referenced by create_load_page().

◆ load_callback()

static void load_callback ( void  )
static

Loads the currently selected game.

Definition at line 2864 of file pages.c.

Referenced by create_load_page().

◆ load_filename()

static void load_filename ( const char filename)
static

◆ load_saved_game_callback()

static void load_saved_game_callback ( GtkWidget w,
gpointer  data 
)
static

Go to the load page, spawning a server.

Definition at line 124 of file pages.c.

Referenced by create_main_page().

◆ main_callback()

static void main_callback ( GtkWidget w,
gpointer  data 
)
static

cancel, by terminating the connection and going back to main page.

Definition at line 149 of file pages.c.

Referenced by create_load_page(), create_network_page(), create_scenario_page(), and create_start_page().

◆ mapimg_client_save()

void mapimg_client_save ( const char filename)

Save map image. On error popup a message window for the user.

Definition at line 3570 of file pages.c.

Referenced by save_mapimg_callback(), save_mapimg_callback(), and save_mapimg_dialog_popup().

◆ model_get_conn_iter()

static bool model_get_conn_iter ( GtkTreeModel model,
GtkTreeIter iter,
GtkTreeIter parent,
GtkTreeIter start,
const struct connection pconn 
)
static

Search a connection iterator in the model. Begin the iteration at 'start' or at the start of the model if 'start' is set to NULL.

Definition at line 2315 of file pages.c.

Referenced by real_conn_list_dialog_update().

◆ model_get_player_iter()

static bool model_get_player_iter ( GtkTreeModel model,
GtkTreeIter iter,
GtkTreeIter start,
const struct player pplayer 
)
static

Search a player iterator in the model. Begin the iteration at 'start' or at the start of the model if 'start' is set to NULL.

Definition at line 2284 of file pages.c.

Referenced by real_conn_list_dialog_update().

◆ nation_button_callback()

static void nation_button_callback ( GtkWidget w,
gpointer  data 
)
static

'nation_button' clicked callback.

Definition at line 2159 of file pages.c.

Referenced by create_start_page().

◆ network_activate_callback()

static void network_activate_callback ( GtkTreeView view,
GtkTreePath arg1,
GtkTreeViewColumn arg2,
gpointer  data 
)
static

Connect on list item double-click.

Definition at line 1098 of file pages.c.

Referenced by create_network_page().

◆ network_list_callback()

static void network_list_callback ( GtkTreeSelection select,
gpointer  data 
)
static

Sets the host, port and player list of the selected server.

Definition at line 1139 of file pages.c.

Referenced by create_network_page().

◆ object_extract()

static bool object_extract ( GObject object,
struct player **  ppplayer,
struct connection **  ppconn 
)
static

◆ object_put()

static void object_put ( GObject object,
struct player pplayer,
struct connection pconn 
)
static

Connect the object to the player and the connection.

Definition at line 1535 of file pages.c.

Referenced by create_conn_menu().

◆ observe_button_callback()

static void observe_button_callback ( GtkWidget w,
gpointer  data 
)
static

'observe_button' clicked callback.

Definition at line 2179 of file pages.c.

Referenced by create_start_page().

◆ open_settings()

static void open_settings ( void  )
static

Callback to open settings dialog.

Definition at line 141 of file pages.c.

Referenced by create_main_page().

◆ ready_button_callback()

static void ready_button_callback ( GtkWidget w,
gpointer  data 
)
static

'ready_button' clicked callback.

Definition at line 2145 of file pages.c.

Referenced by create_start_page().

◆ real_conn_list_dialog_update()

void real_conn_list_dialog_update ( void unused)

Update the connected users list at pregame state.

Definition at line 2344 of file pages.c.

Referenced by conn_list_dialog_update().

◆ real_set_client_page()

void real_set_client_page ( enum client_pages  new_page)

Changes the current page. The action is delayed.

Definition at line 3353 of file pages.c.

Referenced by set_client_page_callback().

◆ ruleset_entry_changed()

static void ruleset_entry_changed ( GtkWidget w,
gpointer  data 
)
static

Ruleset selection callback. Note that this gets also called when ever user types to entry box. In that case we don't want to set_ruleset() after each letter.

Definition at line 1627 of file pages.c.

Referenced by create_start_page().

◆ ruleset_selected()

static void ruleset_selected ( const char name)
static

Ruleset name has been given

Definition at line 1615 of file pages.c.

Referenced by ruleset_entry_changed().

◆ save_dialog_entry_callback()

static void save_dialog_entry_callback ( GtkEntry entry,
gpointer  data 
)
static

Handle save filename entry activation.

Definition at line 549 of file pages.c.

Referenced by save_dialog_new().

◆ save_dialog_file_chooser_callback()

static void save_dialog_file_chooser_callback ( GtkWidget widget,
gint  response,
gpointer  data 
)
static

Callback for save_dialog_file_chooser_new().

Definition at line 444 of file pages.c.

Referenced by save_dialog_file_chooser_popup().

◆ save_dialog_file_chooser_popup()

static void save_dialog_file_chooser_popup ( const char title,
GtkFileChooserAction  action,
save_dialog_action_fn_t  cb 
)
static

Create a file chooser for both the load and save commands.

Definition at line 464 of file pages.c.

Referenced by load_browse_callback(), save_dialog_response_callback(), and scenario_browse_callback().

◆ save_dialog_list_callback()

static void save_dialog_list_callback ( GtkTreeSelection selection,
gpointer  data 
)
static

Handle the save list selection changes.

Definition at line 557 of file pages.c.

Referenced by save_dialog_new().

◆ save_dialog_mapimg_list()

static struct fileinfo_list * save_dialog_mapimg_list ( void  )
static

Save mapimg 'save_dialog_files_fn_t' implementation. If possible, only the current directory is used. As fallback, the files in the save directories are listed.

Definition at line 3543 of file pages.c.

Referenced by save_mapimg_dialog_popup().

◆ save_dialog_new()

static GtkWidget * save_dialog_new ( const char title,
const char savelabel,
const char savefilelabel,
save_dialog_action_fn_t  action,
save_dialog_files_fn_t  files 
)
static

Create a new save dialog.

Definition at line 578 of file pages.c.

Referenced by save_game_dialog_popup(), save_mapimg_dialog_popup(), and save_scenario_dialog_popup().

◆ save_dialog_response_callback()

static void save_dialog_response_callback ( GtkWidget w,
gint  response,
gpointer  data 
)
static

Handle save dialog response.

Definition at line 489 of file pages.c.

Referenced by save_dialog_entry_callback(), save_dialog_new(), and save_dialog_row_callback().

◆ save_dialog_row_callback()

static void save_dialog_row_callback ( GtkTreeView tree_view,
GtkTreePath path,
GtkTreeViewColumn column,
gpointer  data 
)
static

Handle save list double click.

Definition at line 538 of file pages.c.

Referenced by save_dialog_new().

◆ save_dialog_save_scenario()

static void save_dialog_save_scenario ( const char filename)
static

Save scenario 'save_dialog_action_fn_t' implementation.

Definition at line 3506 of file pages.c.

Referenced by save_scenario_dialog_popup().

◆ save_dialog_savegame_list()

static struct fileinfo_list * save_dialog_savegame_list ( void  )
static

Save game 'save_dialog_files_fn_t' implementation.

Definition at line 3479 of file pages.c.

Referenced by save_game_dialog_popup().

◆ save_dialog_scenario_list()

static struct fileinfo_list * save_dialog_scenario_list ( void  )
static

Save scenario 'save_dialog_files_fn_t' implementation.

Definition at line 3514 of file pages.c.

Referenced by save_scenario_dialog_popup().

◆ save_dialog_store_new()

static GtkListStore * save_dialog_store_new ( void  )
inlinestatic

Create a new file list store.

Definition at line 399 of file pages.c.

Referenced by create_load_page(), and save_dialog_new().

◆ save_dialog_store_update()

static void save_dialog_store_update ( GtkListStore store,
const struct fileinfo_list files 
)
static

Fill a file list store with 'files'.

Definition at line 409 of file pages.c.

Referenced by save_dialog_update(), and update_load_page().

◆ save_dialog_update()

static void save_dialog_update ( struct save_dialog pdialog)
static

Update a save dialog.

Definition at line 427 of file pages.c.

Referenced by save_dialog_new(), and save_dialog_response_callback().

◆ save_game_dialog_popup()

void save_game_dialog_popup ( void  )

Save game dialog.

Definition at line 3487 of file pages.c.

Referenced by save_game_as_callback(), and save_game_as_callback().

◆ save_mapimg_dialog_popup()

void save_mapimg_dialog_popup ( void  )

Save scenario dialog.

Definition at line 3551 of file pages.c.

Referenced by save_mapimg_as_callback(), and save_mapimg_as_callback().

◆ save_scenario_dialog_popup()

void save_scenario_dialog_popup ( void  )

Save scenario dialog.

Definition at line 3522 of file pages.c.

Referenced by save_scenario_callback(), and save_scenario_callback().

◆ scenario_browse_callback()

static void scenario_browse_callback ( GtkWidget w,
gpointer  data 
)
static

Call the default GTK+ requester for scenario loading.

Definition at line 3059 of file pages.c.

Referenced by create_scenario_page().

◆ scenario_callback()

static void scenario_callback ( void  )
static

Loads the currently selected scenario.

Definition at line 3043 of file pages.c.

Referenced by create_scenario_page().

◆ scenario_list_callback()

static void scenario_list_callback ( void  )
static

Updates the info for the currently selected scenario.

Definition at line 2987 of file pages.c.

Referenced by create_scenario_page().

◆ server_scan_error()

static void server_scan_error ( struct server_scan scan,
const char message 
)
static

Callback function for when there's an error in the server scan.

Definition at line 825 of file pages.c.

Referenced by fc_client::update_network_lists(), and update_network_lists().

◆ set_connection_state()

static void set_connection_state ( enum connection_state  state)
static

Update network page connection state.

Definition at line 930 of file pages.c.

Referenced by connect_callback(), connection_state_reset(), handle_authentication_req(), and real_set_client_page().

◆ set_rulesets()

void set_rulesets ( int  num_rulesets,
char **  rulesets 
)

Set the list of available rulesets. The default ruleset should be "default", and if the user changes this then set_ruleset() should be called.

Definition at line 3586 of file pages.c.

Referenced by handle_ruleset_choices().

◆ show_conn_popup()

static void show_conn_popup ( struct player pplayer,
struct connection pconn 
)
static

Show details about a user in the Connected Users dialog in a popup.

Definition at line 1767 of file pages.c.

Referenced by conn_menu_info_chosen(), and conn_menu_info_chosen().

◆ start_new_game_callback()

static void start_new_game_callback ( GtkWidget w,
gpointer  data 
)
static

Spawn a server, if there isn't one, using the default settings.

Definition at line 102 of file pages.c.

Referenced by create_main_page(), and show_main_page().

◆ start_scenario_callback()

static void start_scenario_callback ( GtkWidget w,
gpointer  data 
)
static

Go to the scenario page, spawning a server.

Definition at line 115 of file pages.c.

Referenced by create_main_page().

◆ update_load_page()

static void update_load_page ( void  )
static

Update the load page.

Definition at line 2891 of file pages.c.

Referenced by real_set_client_page().

◆ update_network_lists()

static void update_network_lists ( void  )
static

Stop and restart the metaserver and lan server scans.

Definition at line 838 of file pages.c.

Referenced by create_network_page(), and real_set_client_page().

◆ update_network_page()

static void update_network_page ( void  )
static

Update the network page.

Definition at line 1185 of file pages.c.

Referenced by real_set_client_page().

◆ update_network_statusbar()

static gboolean update_network_statusbar ( gpointer  data)
static

Update statusbar label text.

Definition at line 864 of file pages.c.

Referenced by create_statusbar().

◆ update_scenario_page()

static void update_scenario_page ( void  )
static

Update the scenario page.

Definition at line 3069 of file pages.c.

Referenced by real_set_client_page().

◆ update_server_list()

static void update_server_list ( enum server_scan_type  sstype,
const struct server_list list 
)
static

update a server list.

Definition at line 704 of file pages.c.

Referenced by check_server_scan().

◆ update_server_playerlist()

static void update_server_playerlist ( const struct server pserver)
static

Fills the server player list with the players in the given server, or clears it if there is no player data.

Definition at line 1110 of file pages.c.

Referenced by network_list_callback().

◆ update_start_page()

void update_start_page ( void  )

Update the start page.

Definition at line 1675 of file pages.c.

Referenced by handle_game_info(), handle_player_info(), and real_set_client_page().

◆ update_start_page_buttons()

static void update_start_page_buttons ( void  )
static

Update the buttons of the start page.

Definition at line 2199 of file pages.c.

Referenced by create_start_page(), and real_conn_list_dialog_update().

Variable Documentation

◆ ai_lvl_combobox

GtkWidget* ai_lvl_combobox = NULL
static

Definition at line 1464 of file pages.c.

Referenced by create_start_page(), and real_conn_list_dialog_update().

◆ connection_list_store

GtkTreeStore* connection_list_store
static

Definition at line 1461 of file pages.c.

Referenced by create_start_page(), and real_conn_list_dialog_update().

◆ connection_list_view

GtkTreeView* connection_list_view
static

◆ connection_status

enum connection_state connection_status
static

◆ current_page

enum client_pages current_page = -1
static

◆ holding_srv_list_mutex

bool holding_srv_list_mutex = FALSE
static

◆ lan_scan

struct server_scan_timer_data lan_scan = { NULL, 0 }
static

◆ lan_selection

GtkTreeSelection * lan_selection
static

Definition at line 74 of file pages.c.

Referenced by create_network_page(), update_network_page(), and update_server_list().

◆ lan_store

GtkListStore * lan_store
static

Definition at line 68 of file pages.c.

Referenced by create_network_page().

◆ load_selection

GtkTreeSelection* load_selection
static

Definition at line 73 of file pages.c.

Referenced by create_load_page(), load_callback(), and real_set_client_page().

◆ load_store

GtkListStore* load_store
static

Definition at line 68 of file pages.c.

Referenced by create_load_page(), load_callback(), and update_load_page().

◆ meta_scan

struct server_scan_timer_data meta_scan = { NULL, 0 }
static

◆ meta_selection

GtkTreeSelection* meta_selection
static

◆ meta_store

GtkListStore * meta_store
static

Definition at line 68 of file pages.c.

Referenced by create_network_page().

◆ nation_button

GtkWidget * nation_button
static

Definition at line 1460 of file pages.c.

Referenced by create_start_page(), nation_button_callback(), and update_start_page_buttons().

◆ network_confirm_password

GtkWidget * network_confirm_password
static

Definition at line 699 of file pages.c.

Referenced by connect_callback(), create_network_page(), and set_connection_state().

◆ network_confirm_password_label

GtkWidget* network_confirm_password_label
static

Definition at line 699 of file pages.c.

Referenced by create_network_page(), and set_connection_state().

◆ network_host

GtkWidget * network_host
static

◆ network_host_label

GtkWidget* network_host_label
static

Definition at line 696 of file pages.c.

Referenced by create_network_page().

◆ network_login

GtkWidget * network_login
static

◆ network_login_label

GtkWidget* network_login_label
static

Definition at line 695 of file pages.c.

Referenced by create_network_page().

◆ network_password

GtkWidget * network_password
static

Definition at line 698 of file pages.c.

Referenced by connect_callback(), create_network_page(), and set_connection_state().

◆ network_password_label

GtkWidget* network_password_label
static

Definition at line 698 of file pages.c.

Referenced by create_network_page(), and set_connection_state().

◆ network_port

GtkWidget * network_port
static

◆ network_port_label

GtkWidget* network_port_label
static

Definition at line 697 of file pages.c.

Referenced by create_network_page().

◆ no_ruleset_callback

bool no_ruleset_callback = FALSE
static

Definition at line 1610 of file pages.c.

Referenced by ruleset_selected(), and set_rulesets().

◆ observe_button

GtkWidget* observe_button
static

Definition at line 1460 of file pages.c.

Referenced by create_start_page(), and update_start_page_buttons().

◆ ready_button

GtkWidget * ready_button
static

Definition at line 1460 of file pages.c.

Referenced by create_start_page(), and update_start_page_buttons().

◆ ruleset_combo

GtkWidget* ruleset_combo
static

Definition at line 93 of file pages.c.

Referenced by create_start_page(), ruleset_entry_changed(), and set_rulesets().

◆ scenario_authors

GtkWidget* scenario_authors
static

◆ scenario_description

GtkWidget* scenario_description
static

Definition at line 63 of file pages.c.

Referenced by create_scenario_page(), and scenario_list_callback().

◆ scenario_filename

GtkWidget* scenario_filename
static

Definition at line 65 of file pages.c.

Referenced by create_scenario_page(), and scenario_list_callback().

◆ scenario_selection

GtkTreeSelection * scenario_selection
static

◆ scenario_store

GtkListStore * scenario_store
static

◆ scenario_version

GtkWidget* scenario_version
static

Definition at line 66 of file pages.c.

Referenced by create_scenario_page(), and scenario_list_callback().

◆ send_new_aifill_to_server

bool send_new_aifill_to_server = TRUE
static

User changed AI fill setting.

Definition at line 1641 of file pages.c.

Referenced by ai_fill_changed_by_server(), and ai_fill_changed_by_user().

◆ server_playerlist_store

GtkListStore* server_playerlist_store
static

Definition at line 70 of file pages.c.

Referenced by create_network_page(), and update_server_playerlist().

◆ server_playerlist_view

GtkWidget* server_playerlist_view
static

Definition at line 71 of file pages.c.

Referenced by create_network_page().

◆ start_aifill_spin

GtkWidget* start_aifill_spin = NULL
static

Definition at line 1463 of file pages.c.

Referenced by ai_fill_changed_by_server(), and create_start_page().

◆ start_message_area

GtkWidget* start_message_area

◆ start_options_table

GtkWidget* start_options_table
static

Definition at line 1459 of file pages.c.

Referenced by create_start_page(), and real_set_client_page().

◆ statusbar

GtkWidget* statusbar
static

◆ statusbar_frame

GtkWidget * statusbar_frame
static

Definition at line 89 of file pages.c.

Referenced by append_network_statusbar(), create_statusbar(), and real_set_client_page().

◆ statusbar_queue

GQueue* statusbar_queue
static

◆ statusbar_timer

guint statusbar_timer = 0
static

Definition at line 91 of file pages.c.

Referenced by create_statusbar().