Freeciv-3.1
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 "chat.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 "menu.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 void intro_expose (GtkDrawingArea *w, cairo_t *cr, int width, int height, gpointer data)
 
static void intro_free (GtkWidget *w, gpointer *data)
 
GtkWidget * create_main_page (void)
 
static GtkListStore * save_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 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 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)
 
GtkWidget * create_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)
 
GtkWidget * create_network_page (void)
 
static GtkTreeStore * connection_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 close_conn_menu_popover (void)
 
static void conn_menu_team_chosen (GSimpleAction *action, GVariant *parameter, gpointer data)
 
static void conn_menu_ready_chosen (GSimpleAction *action, GVariant *parameter, gpointer data)
 
static void conn_menu_nation_chosen (GSimpleAction *action, GVariant *parameter, gpointer data)
 
static void conn_menu_player_command (GSimpleAction *action, GVariant *parameter, gpointer data)
 
static void conn_menu_player_take (GSimpleAction *action, GVariant *parameter, gpointer data)
 
static void conn_menu_connection_command (GSimpleAction *action, GVariant *parameter, gpointer data)
 
static void show_conn_popup (struct player *pplayer, struct connection *pconn)
 
static void conn_menu_info_chosen (GSimpleAction *action, GVariant *parameter, gpointer data)
 
static GtkWidget * create_conn_menu (struct player *pplayer, struct connection *pconn)
 
static gboolean delayed_unselect_path (gpointer data)
 
static gboolean connect_list_left_button (GtkGestureClick *gesture, int n_press, double x, double y, gpointer data)
 
static gboolean connect_list_right_button (GtkGestureClick *gesture, int n_press, double x, double y, 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)
 
GtkWidget * create_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)
 
GtkWidget * create_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)
 
GtkWidget * create_scenario_page (void)
 
enum client_pages get_current_client_page (void)
 
void real_set_client_page (enum client_pages new_page)
 
static struct fileinfo_list * save_dialog_savegame_list (void)
 
void save_game_dialog_popup (void)
 
static void save_dialog_save_scenario (const char *filename)
 
static struct fileinfo_list * save_dialog_scenario_list (void)
 
void save_scenario_dialog_popup (void)
 
static struct fileinfo_list * save_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 GtkWidget * scenario_description
 
static GtkWidget * scenario_authors
 
static GtkWidget * scenario_filename
 
static GtkWidget * scenario_version
 
static GtkListStore * load_store
 
static GtkListStore * scenario_store
 
static GtkListStore * meta_store
 
static GtkListStore * lan_store
 
static GtkListStore * server_playerlist_store
 
static GtkWidget * server_playerlist_view
 
static GtkTreeSelection * load_selection
 
static GtkTreeSelection * scenario_selection
 
static GtkTreeSelection * meta_selection
 
static GtkTreeSelection * lan_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 GtkWidget * statusbar
 
static GtkWidget * statusbar_frame
 
static GQueue * statusbar_queue
 
static guint statusbar_timer = 0
 
static GtkWidget * ruleset_combo
 
static GtkWidget * conn_popover = NULL
 
static bool holding_srv_list_mutex = FALSE
 
static GtkWidget * network_login_label
 
static GtkWidget * network_login
 
static GtkWidget * network_host_label
 
static GtkWidget * network_host
 
static GtkWidget * network_port_label
 
static GtkWidget * network_port
 
static GtkWidget * network_password_label
 
static GtkWidget * network_password
 
static GtkWidget * network_confirm_password_label
 
static GtkWidget * network_confirm_password
 
static enum connection_state connection_status
 
GtkWidget * start_message_area
 
static GtkWidget * start_options_table
 
static GtkWidget * observe_button
 
static GtkWidget * ready_button
 
static GtkWidget * nation_button
 
static GtkTreeStore * connection_list_store
 
static GtkTreeView * connection_list_view
 
static GtkWidget * start_aifill_spin = NULL
 
static GtkWidget * ai_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 381 of file pages.c.

◆ save_dialog_files_fn_t

typedef struct fileinfo_list *(* save_dialog_files_fn_t) (void)

Definition at line 381 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 1504 of file pages.c.

◆ connection_state

Enumerator
LOGIN_TYPE 
NEW_PASSWORD_TYPE 
ENTER_PASSWORD_TYPE 
WAITING_TYPE 

Definition at line 871 of file pages.c.

◆ save_dialog_columns

Enumerator
SD_COL_PRETTY_NAME 
SD_COL_FULL_PATH 
SD_COL_NUM 

Definition at line 392 of file pages.c.

◆ save_dialog_response

Enumerator
SD_RES_BROWSE 
SD_RES_DELETE 
SD_RES_SAVE 

Definition at line 399 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 2706 of file pages.c.

◆ ai_fill_changed_by_server()

void ai_fill_changed_by_server ( int  aifill)

Server changed AI fill setting.

Definition at line 1689 of file pages.c.

◆ ai_fill_changed_by_user()

static void ai_fill_changed_by_user ( GtkWidget *  w,
gpointer  data 
)
static

Definition at line 1678 of file pages.c.

◆ ai_skill_callback()

static void ai_skill_callback ( GtkWidget *  w,
gpointer  data 
)
static

AI skill setting callback.

Definition at line 1625 of file pages.c.

◆ append_network_statusbar()

void append_network_statusbar ( const char *  text,
bool  force 
)

Queue statusbar label text change.

Definition at line 913 of file pages.c.

◆ check_server_scan()

static gboolean check_server_scan ( gpointer  data)
static

This function updates the list of servers every so often.

Definition at line 810 of file pages.c.

◆ clear_network_statusbar()

static void clear_network_statusbar ( void  )
static

Clear statusbar queue.

Definition at line 899 of file pages.c.

◆ 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 1545 of file pages.c.

◆ 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 1559 of file pages.c.

◆ close_conn_menu_popover()

static void close_conn_menu_popover ( void  )
static

◆ 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 2211 of file pages.c.

◆ 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 2175 of file pages.c.

◆ conn_menu_connection_command()

static void conn_menu_connection_command ( GSimpleAction *  action,
GVariant *  parameter,
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 1821 of file pages.c.

◆ conn_menu_info_chosen()

static void conn_menu_info_chosen ( GSimpleAction *  action,
GVariant *  parameter,
gpointer  data 
)
static

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

Definition at line 1870 of file pages.c.

◆ conn_menu_nation_chosen()

static void conn_menu_nation_chosen ( GSimpleAction *  action,
GVariant *  parameter,
gpointer  data 
)
static

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

Definition at line 1769 of file pages.c.

◆ conn_menu_player_command()

static void conn_menu_player_command ( GSimpleAction *  action,
GVariant *  parameter,
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 1786 of file pages.c.

◆ conn_menu_player_take()

static void conn_menu_player_take ( GSimpleAction *  action,
GVariant *  parameter,
gpointer  data 
)
static

Take command in the conn menu.

Definition at line 1804 of file pages.c.

◆ conn_menu_ready_chosen()

static void conn_menu_ready_chosen ( GSimpleAction *  action,
GVariant *  parameter,
gpointer  data 
)
static

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

Definition at line 1752 of file pages.c.

◆ conn_menu_team_chosen()

static void conn_menu_team_chosen ( GSimpleAction *  action,
GVariant *  parameter,
gpointer  data 
)
static

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

Definition at line 1731 of file pages.c.

◆ 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 1065 of file pages.c.

◆ connect_list_left_button()

static gboolean connect_list_left_button ( GtkGestureClick *  gesture,
int  n_press,
double  x,
double  y,
gpointer  data 
)
static

Called on a left button click on the pregame player list.

Definition at line 2078 of file pages.c.

Referenced by create_start_page().

◆ connect_list_right_button()

static gboolean connect_list_right_button ( GtkGestureClick *  gesture,
int  n_press,
double  x,
double  y,
gpointer  data 
)
static

Called on a right button click on the pregame player list.

Definition at line 2107 of file pages.c.

Referenced by create_start_page().

◆ 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 136 of file pages.c.

◆ 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 2160 of file pages.c.

◆ connection_list_store_new()

static GtkTreeStore * connection_list_store_new ( void  )
inlinestatic

Create a new tree store for connection list.

Definition at line 1524 of file pages.c.

◆ connection_state_reset()

static void connection_state_reset ( void  )
static

Reset the connection state.

Definition at line 1020 of file pages.c.

◆ 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 1888 of file pages.c.

◆ create_load_page()

GtkWidget * create_load_page ( void  )

Create the load page.

Definition at line 3044 of file pages.c.

◆ create_main_page()

GtkWidget * create_main_page ( void  )

Create the main page.

Definition at line 234 of file pages.c.

◆ create_network_page()

GtkWidget * create_network_page ( void  )

Create the network page.

Definition at line 1225 of file pages.c.

◆ create_scenario_page()

GtkWidget * create_scenario_page ( void  )

Create the scenario page.

Definition at line 3327 of file pages.c.

◆ create_start_page()

GtkWidget * create_start_page ( void  )

Create start page.

Definition at line 2740 of file pages.c.

◆ create_statusbar()

GtkWidget * create_statusbar ( void  )

Create statusbar.

Definition at line 928 of file pages.c.

◆ delayed_unselect_path()

static gboolean delayed_unselect_path ( gpointer  data)
static

Unselect a tree path.

Definition at line 2062 of file pages.c.

◆ destroy_server_scans()

void destroy_server_scans ( void  )

Free the server scans.

Definition at line 787 of file pages.c.

◆ game_options_callback()

static void game_options_callback ( GtkWidget *  w,
gpointer  data 
)
static

Request the game options dialog.

Definition at line 1617 of file pages.c.

◆ get_current_client_page()

enum client_pages get_current_client_page ( void  )

Returns current client page

Definition at line 3499 of file pages.c.

◆ 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 1029 of file pages.c.

◆ 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 2981 of file pages.c.

◆ intro_expose()

static void intro_expose ( GtkDrawingArea *  w,
cairo_t *  cr,
int  width,
int  height,
gpointer  data 
)
static

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

Definition at line 168 of file pages.c.

◆ intro_free()

static void intro_free ( GtkWidget *  w,
gpointer *  data 
)
static

This is called when main page is getting destroyed.

Definition at line 224 of file pages.c.

◆ 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 3021 of file pages.c.

◆ load_callback()

static void load_callback ( void  )
static

Loads the currently selected game.

Definition at line 3004 of file pages.c.

◆ load_filename()

static void load_filename ( const char *  filename)
static

Load a savegame/scenario.

Definition at line 2996 of file pages.c.

◆ 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 128 of file pages.c.

◆ 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 153 of file pages.c.

◆ 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 3726 of file pages.c.

◆ 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 2432 of file pages.c.

◆ 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 2401 of file pages.c.

◆ nation_button_callback()

static void nation_button_callback ( GtkWidget *  w,
gpointer  data 
)
static

'nation_button' clicked callback.

Definition at line 2276 of file pages.c.

◆ 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 1122 of file pages.c.

◆ 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 1163 of file pages.c.

◆ object_extract()

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

Extract the player and the connection set with object_put(). Returns TRUE if at least one of them isn't NULL.

Definition at line 1590 of file pages.c.

◆ 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 1571 of file pages.c.

◆ observe_button_callback()

static void observe_button_callback ( GtkWidget *  w,
gpointer  data 
)
static

'observe_button' clicked callback.

Definition at line 2296 of file pages.c.

◆ open_settings()

static void open_settings ( void  )
static

Callback to open settings dialog.

Definition at line 145 of file pages.c.

◆ ready_button_callback()

static void ready_button_callback ( GtkWidget *  w,
gpointer  data 
)
static

'ready_button' clicked callback.

Definition at line 2262 of file pages.c.

◆ real_conn_list_dialog_update()

void real_conn_list_dialog_update ( void *  unused)

Update the connected users list at pregame state.

Definition at line 2461 of file pages.c.

◆ 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 3507 of file pages.c.

◆ 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 1663 of file pages.c.

◆ ruleset_selected()

static void ruleset_selected ( const char *  name)
static

Ruleset name has been given

Definition at line 1651 of file pages.c.

◆ save_dialog_entry_callback()

static void save_dialog_entry_callback ( GtkEntry *  entry,
gpointer  data 
)
static

Handle save filename entry activation.

Definition at line 563 of file pages.c.

◆ 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 453 of file pages.c.

◆ 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 478 of file pages.c.

◆ save_dialog_list_callback()

static void save_dialog_list_callback ( GtkTreeSelection *  selection,
gpointer  data 
)
static

Handle the save list selection changes.

Definition at line 571 of file pages.c.

◆ 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 3699 of file pages.c.

◆ 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 592 of file pages.c.

◆ save_dialog_response_callback()

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

Handle save dialog response.

Definition at line 502 of file pages.c.

◆ 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 552 of file pages.c.

◆ 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 3662 of file pages.c.

◆ 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 3635 of file pages.c.

◆ 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 3670 of file pages.c.

◆ save_dialog_store_new()

static GtkListStore * save_dialog_store_new ( void  )
inlinestatic

Create a new file list store.

Definition at line 408 of file pages.c.

◆ 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 418 of file pages.c.

◆ save_dialog_update()

static void save_dialog_update ( struct save_dialog pdialog)
static

Update a save dialog.

Definition at line 436 of file pages.c.

◆ save_game_dialog_popup()

void save_game_dialog_popup ( void  )

Save game dialog.

Definition at line 3643 of file pages.c.

◆ save_mapimg_dialog_popup()

void save_mapimg_dialog_popup ( void  )

Save scenario dialog.

Definition at line 3707 of file pages.c.

◆ save_scenario_dialog_popup()

void save_scenario_dialog_popup ( void  )

Save scenario dialog.

Definition at line 3678 of file pages.c.

◆ scenario_browse_callback()

static void scenario_browse_callback ( GtkWidget *  w,
gpointer  data 
)
static

Call the default GTK requester for scenario loading.

Definition at line 3201 of file pages.c.

◆ scenario_callback()

static void scenario_callback ( void  )
static

Loads the currently selected scenario.

Definition at line 3185 of file pages.c.

◆ scenario_list_callback()

static void scenario_list_callback ( void  )
static

Updates the info for the currently selected scenario.

Definition at line 3129 of file pages.c.

◆ 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 844 of file pages.c.

◆ set_connection_state()

static void set_connection_state ( enum connection_state  state)
static

Update network page connection state.

Definition at line 948 of file pages.c.

◆ 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 3742 of file pages.c.

◆ 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 1839 of file pages.c.

◆ 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 106 of file pages.c.

◆ start_scenario_callback()

static void start_scenario_callback ( GtkWidget *  w,
gpointer  data 
)
static

Go to the scenario page, spawning a server.

Definition at line 119 of file pages.c.

◆ update_load_page()

static void update_load_page ( void  )
static

Update the load page.

Definition at line 3031 of file pages.c.

◆ update_network_lists()

static void update_network_lists ( void  )
static

Stop and restart the metaserver and lan server scans.

Definition at line 857 of file pages.c.

◆ update_network_page()

static void update_network_page ( void  )
static

Update the network page.

Definition at line 1209 of file pages.c.

◆ update_network_statusbar()

static gboolean update_network_statusbar ( gpointer  data)
static

Update statusbar label text.

Definition at line 883 of file pages.c.

◆ update_scenario_page()

static void update_scenario_page ( void  )
static

Update the scenario page.

Definition at line 3211 of file pages.c.

◆ 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 723 of file pages.c.

◆ 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 1134 of file pages.c.

◆ update_start_page()

void update_start_page ( void  )

Update the start page.

Definition at line 1710 of file pages.c.

◆ update_start_page_buttons()

static void update_start_page_buttons ( void  )
static

Update the buttons of the start page.

Definition at line 2316 of file pages.c.

Variable Documentation

◆ ai_lvl_combobox

GtkWidget* ai_lvl_combobox = NULL
static

Definition at line 1500 of file pages.c.

◆ conn_popover

GtkWidget* conn_popover = NULL
static

Definition at line 97 of file pages.c.

Referenced by close_conn_menu_popover(), and create_conn_menu().

◆ connection_list_store

GtkTreeStore* connection_list_store
static

Definition at line 1497 of file pages.c.

◆ connection_list_view

GtkTreeView* connection_list_view
static

Definition at line 1498 of file pages.c.

◆ connection_status

enum connection_state connection_status
static

Definition at line 878 of file pages.c.

◆ current_page

enum client_pages current_page = -1
static

Definition at line 80 of file pages.c.

◆ holding_srv_list_mutex

bool holding_srv_list_mutex = FALSE
static

Definition at line 99 of file pages.c.

◆ lan_scan

struct server_scan_timer_data lan_scan = { NULL, 0 }
static

Definition at line 89 of file pages.c.

◆ lan_selection

GtkTreeSelection * lan_selection
static

Definition at line 76 of file pages.c.

◆ lan_store

GtkListStore * lan_store
static

Definition at line 70 of file pages.c.

◆ load_selection

GtkTreeSelection* load_selection
static

Definition at line 75 of file pages.c.

◆ load_store

GtkListStore* load_store
static

Definition at line 70 of file pages.c.

◆ meta_scan

struct server_scan_timer_data meta_scan = { NULL, 0 }
static

Definition at line 88 of file pages.c.

◆ meta_selection

GtkTreeSelection* meta_selection
static

Definition at line 76 of file pages.c.

◆ meta_store

GtkListStore * meta_store
static

Definition at line 70 of file pages.c.

◆ nation_button

GtkWidget * nation_button
static

Definition at line 1496 of file pages.c.

◆ network_confirm_password

GtkWidget * network_confirm_password
static

Definition at line 718 of file pages.c.

◆ network_confirm_password_label

GtkWidget* network_confirm_password_label
static

Definition at line 718 of file pages.c.

◆ network_host

GtkWidget * network_host
static

Definition at line 715 of file pages.c.

◆ network_host_label

GtkWidget* network_host_label
static

Definition at line 715 of file pages.c.

◆ network_login

GtkWidget * network_login
static

Definition at line 714 of file pages.c.

◆ network_login_label

GtkWidget* network_login_label
static

Definition at line 714 of file pages.c.

◆ network_password

GtkWidget * network_password
static

Definition at line 717 of file pages.c.

◆ network_password_label

GtkWidget* network_password_label
static

Definition at line 717 of file pages.c.

◆ network_port

GtkWidget * network_port
static

Definition at line 716 of file pages.c.

◆ network_port_label

GtkWidget* network_port_label
static

Definition at line 716 of file pages.c.

◆ no_ruleset_callback

bool no_ruleset_callback = FALSE
static

Definition at line 1646 of file pages.c.

◆ observe_button

GtkWidget* observe_button
static

Definition at line 1496 of file pages.c.

◆ ready_button

GtkWidget * ready_button
static

Definition at line 1496 of file pages.c.

◆ ruleset_combo

GtkWidget* ruleset_combo
static

Definition at line 95 of file pages.c.

◆ scenario_authors

GtkWidget* scenario_authors
static

Definition at line 66 of file pages.c.

◆ scenario_description

GtkWidget* scenario_description
static

Definition at line 65 of file pages.c.

◆ scenario_filename

GtkWidget* scenario_filename
static

Definition at line 67 of file pages.c.

◆ scenario_selection

GtkTreeSelection * scenario_selection
static

Definition at line 75 of file pages.c.

◆ scenario_store

GtkListStore * scenario_store
static

Definition at line 70 of file pages.c.

◆ scenario_version

GtkWidget* scenario_version
static

Definition at line 68 of file pages.c.

◆ send_new_aifill_to_server

bool send_new_aifill_to_server = TRUE
static

User changed AI fill setting.

Definition at line 1677 of file pages.c.

◆ server_playerlist_store

GtkListStore* server_playerlist_store
static

Definition at line 72 of file pages.c.

◆ server_playerlist_view

GtkWidget* server_playerlist_view
static

Definition at line 73 of file pages.c.

◆ start_aifill_spin

GtkWidget* start_aifill_spin = NULL
static

Definition at line 1499 of file pages.c.

◆ start_message_area

GtkWidget* start_message_area

Definition at line 1493 of file pages.c.

◆ start_options_table

GtkWidget* start_options_table
static

Definition at line 1495 of file pages.c.

◆ statusbar

GtkWidget* statusbar
static

Definition at line 91 of file pages.c.

◆ statusbar_frame

GtkWidget * statusbar_frame
static

Definition at line 91 of file pages.c.

◆ statusbar_queue

GQueue* statusbar_queue
static

Definition at line 92 of file pages.c.

◆ statusbar_timer

guint statusbar_timer = 0
static

Definition at line 93 of file pages.c.