538 {
"CLEAR_CHAT_LOGS",
N_(
"_Clear Chat Log"),
541 {
"SAVE_CHAT_LOGS",
N_(
"Save Chat _Log"),
545 {
"LOCAL_OPTIONS",
N_(
"_Local Client"),
548 {
"MESSAGE_OPTIONS",
N_(
"_Message"),
551 {
"SERVER_OPTIONS",
N_(
"_Remote Server"),
554 {
"SAVE_OPTIONS",
N_(
"Save Options _Now"),
557 {
"SAVE_OPTIONS_ON_EXIT",
N_(
"Save Options on _Exit"),
562 {
"RELOAD_TILESET",
N_(
"_Reload Tileset"),
567 {
"GAME_SAVE",
N_(
"_Save Game"),
570 {
"GAME_SAVE_AS",
N_(
"Save Game _As..."),
573 {
"MAPIMG_SAVE",
N_(
"Save Map _Image"),
576 {
"MAPIMG_SAVE_AS",
N_(
"Save _Map Image As..."),
579 {
"LEAVE",
N_(
"_Leave"),
582 {
"QUIT",
N_(
"_Quit"),
587 {
"FIND_CITY",
N_(
"_Find City"),
590 {
"WORKLISTS",
N_(
"Work_lists"),
593 {
"RALLY_DLG",
N_(
"Rally point dialog"),
596 {
"INFRA_DLG",
N_(
"Infra dialog"),
599 {
"EDIT_MODE",
N_(
"_Editing Mode"),
602 {
"TOGGLE_FOG",
N_(
"Toggle Fog of _War"),
605 {
"SCENARIO_PROPERTIES",
N_(
"Game/Scenario Properties"),
608 {
"SCENARIO_SAVE",
N_(
"Save Scenario"),
611 {
"CLIENT_LUA_SCRIPT",
N_(
"Client _Lua Script"),
616 {
"SHOW_CITY_OUTLINES",
N_(
"Cit_y Outlines"),
619 {
"SHOW_CITY_OUTPUT",
N_(
"City Output"),
622 {
"SHOW_MAP_GRID",
N_(
"Map _Grid"),
625 {
"SHOW_NAT_BORDERS",
N_(
"National _Borders"),
628 {
"SHOW_NATIVE_TILES",
N_(
"Native Tiles"),
631 {
"SHOW_CITY_FULL_BAR",
N_(
"City Full Bar"),
634 {
"SHOW_CITY_NAMES",
N_(
"City _Names"),
637 {
"SHOW_CITY_GROWTH",
N_(
"City G_rowth"),
640 {
"SHOW_CITY_PRODUCTIONS",
N_(
"City _Production"),
643 {
"SHOW_CITY_BUY_COST",
N_(
"City Buy Cost"),
646 {
"SHOW_CITY_TRADE_ROUTES",
N_(
"City Tra_deroutes"),
649 {
"SHOW_TERRAIN",
N_(
"_Terrain"),
652 {
"SHOW_COASTLINE",
N_(
"C_oastline"),
655 {
"SHOW_PATHS",
N_(
"_Paths"),
658 {
"SHOW_IRRIGATION",
N_(
"_Irrigation"),
661 {
"SHOW_MINES",
N_(
"_Mines"),
664 {
"SHOW_BASES",
N_(
"_Bases"),
667 {
"SHOW_RESOURCES",
N_(
"_Resources"),
670 {
"SHOW_HUTS",
N_(
"_Huts"),
673 {
"SHOW_POLLUTION",
N_(
"Po_llution & Fallout"),
676 {
"SHOW_CITIES",
N_(
"Citi_es"),
679 {
"SHOW_UNITS",
N_(
"_Units"),
682 {
"SHOW_UNIT_SOLID_BG",
N_(
"Unit Solid Background"),
685 {
"SHOW_UNIT_SHIELDS",
N_(
"Unit shields"),
688 {
"SHOW_STACK_SIZE",
N_(
"Unit Stack Size"),
691 {
"SHOW_FOCUS_UNIT",
N_(
"Focu_s Unit"),
694 {
"SHOW_FOG_OF_WAR",
N_(
"Fog of _War"),
698 {
"FULL_SCREEN",
N_(
"_Fullscreen"),
701 {
"CENTER_VIEW",
N_(
"_Center View"),
706 {
"SELECT_SINGLE",
N_(
"_Single Unit (Unselect Others)"),
709 {
"SELECT_ALL_ON_TILE",
N_(
"_All On Tile"),
712 {
"SELECT_SAME_TYPE_TILE",
N_(
"Same Type on _Tile"),
715 {
"SELECT_SAME_TYPE_CONT",
N_(
"Same Type on _Continent"),
718 {
"SELECT_SAME_TYPE",
N_(
"Same Type _Everywhere"),
721 {
"SELECT_DLG",
N_(
"Unit Selection Dialog"),
726 {
"UNIT_GOTO",
N_(
"_Go to"),
729 {
"UNIT_GOTO_CITY",
N_(
"Go _to/Airlift to City..."),
732 {
"UNIT_RETURN",
N_(
"_Return to Nearest City"),
735 {
"UNIT_EXPLORE",
N_(
"Auto E_xplore"),
738 {
"UNIT_PATROL",
N_(
"_Patrol"),
741 {
"UNIT_TELEPORT",
N_(
"_Teleport"),
744 {
"UNIT_SENTRY",
N_(
"_Sentry"),
747 {
"UNSENTRY_ALL",
N_(
"Uns_entry All On Tile"),
750 {
"UNIT_BOARD",
N_(
"_Load"),
753 {
"UNIT_DEBOARD",
N_(
"_Unload"),
756 {
"UNIT_UNLOAD_TRANSPORTER",
N_(
"U_nload All From Transporter"),
759 {
"UNIT_HOMECITY",
N_(
"Set _Home City"),
762 {
"UNIT_UPGRADE",
N_(
"Upgr_ade"),
765 {
"UNIT_CONVERT",
N_(
"C_onvert"),
768 {
"UNIT_DISBAND",
N_(
"_Disband"),
771 {
"DO_ACTION",
N_(
"_Do..."),
774 {
"UNIT_WAIT",
N_(
"_Wait"),
777 {
"UNIT_DONE",
N_(
"_Done"),
782 {
"BUILD_CITY",
N_(
"_Build City"),
785 {
"AUTO_WORKER",
N_(
"_Auto Worker"),
788 {
"BUILD_ROAD",
N_(
"Build _Road"),
791 {
"BUILD_IRRIGATION",
N_(
"Build _Irrigation"),
794 {
"BUILD_MINE",
N_(
"Build _Mine"),
797 {
"CULTIVATE",
N_(
"Cultivate"),
800 {
"PLANT",
N_(
"Plant"),
803 {
"TRANSFORM_TERRAIN",
N_(
"Transf_orm Terrain"),
806 {
"CONNECT_ROAD",
N_(
"Connect With Roa_d"),
809 {
"CONNECT_RAIL",
N_(
"Connect With Rai_l"),
812 {
"CONNECT_MAGLEV",
N_(
"Connect With _Maglev"),
815 {
"CONNECT_IRRIGATION",
N_(
"Connect With Irri_gation"),
818 {
"CLEAN",
N_(
"_Clean"),
823 {
"FORTIFY",
N_(
"Fortify"),
826 {
"BUILD_FORTRESS",
N_(
"Build Fortress"),
829 {
"BUILD_AIRBASE",
N_(
"Build Airbase"),
832 {
"PARADROP",
N_(
"P_aradrop"),
835 {
"PILLAGE",
N_(
"_Pillage"),
840 {
"MAP_VIEW",
N_(
"?noun:_View"),
843 {
"REPORT_UNITS",
N_(
"_Units"),
846 {
"REPORT_NATIONS",
N_(
"_Nations"),
849 {
"REPORT_CITIES",
N_(
"_Cities"),
852 {
"REPORT_ECONOMY",
N_(
"_Economy"),
855 {
"REPORT_RESEARCH",
N_(
"_Research"),
859 {
"TAX_RATES",
N_(
"_Tax Rates..."),
862 {
"POLICIES",
N_(
"_Policies..."),
865 {
"START_REVOLUTION",
N_(
"_Revolution..."),
869 {
"REPORT_WOW",
N_(
"_Wonders of the World"),
872 {
"REPORT_TOP_CITIES",
N_(
"Top Cities"),
875 {
"REPORT_MESSAGES",
N_(
"_Messages"),
878 {
"REPORT_DEMOGRAPHIC",
N_(
"_Demographics"),
881 {
"REPORT_SPACESHIP",
N_(
"_Spaceship"),
884 {
"REPORT_ACHIEVEMENTS",
N_(
"_Achievements"),
890 {
"BG_SELECT_1",
N_(
"Select Battle Group 1"),
893 {
"BG_ASSIGN_1",
N_(
"Assign Battle Group 1"),
896 {
"BG_APPEND_1",
N_(
"Append to Battle Group 1"),
899 {
"BG_SELECT_2",
N_(
"Select Battle Group 2"),
902 {
"BG_ASSIGN_2",
N_(
"Assign Battle Group 2"),
905 {
"BG_APPEND_2",
N_(
"Append to Battle Group 2"),
908 {
"BG_SELECT_3",
N_(
"Select Battle Group 3"),
911 {
"BG_ASSIGN_3",
N_(
"Assign Battle Group 3"),
914 {
"BG_APPEND_3",
N_(
"Append to Battle Group 3"),
917 {
"BG_SELECT_4",
N_(
"Select Battle Group 4"),
920 {
"BG_ASSIGN_4",
N_(
"Assign Battle Group 4"),
923 {
"BG_APPEND_4",
N_(
"Append to Battle Group 4"),
928 {
"HELP_OVERVIEW",
N_(
"?help:Overview"),
931 {
"HELP_PLAYING",
N_(
"Strategy and Tactics"),
934 {
"HELP_POLICIES",
N_(
"Policies"),
937 {
"HELP_TERRAIN",
N_(
"Terrain"),
940 {
"HELP_ECONOMY",
N_(
"Economy"),
943 {
"HELP_CITIES",
N_(
"Cities"),
946 {
"HELP_IMPROVEMENTS",
N_(
"City Improvements"),
949 {
"HELP_WONDERS",
N_(
"Wonders of the World"),
952 {
"HELP_UNITS",
N_(
"Units"),
955 {
"HELP_COMBAT",
N_(
"Combat"),
958 {
"HELP_ZOC",
N_(
"Zones of Control"),
961 {
"HELP_GOVERNMENT",
N_(
"Government"),
964 {
"HELP_DIPLOMACY",
N_(
"Diplomacy"),
967 {
"HELP_TECH",
N_(
"Technology"),
970 {
"HELP_SPACE_RACE",
N_(
"Space Race"),
973 {
"HELP_RULESET",
N_(
"About Current Ruleset"),
976 {
"HELP_TILESET",
N_(
"About Current Tileset"),
979 {
"HELP_MUSICSET",
N_(
"About Current Musicset"),
982 {
"HELP_NATIONS",
N_(
"About Nations"),
985 {
"HELP_CONNECTING",
N_(
"Connecting"),
988 {
"HELP_CONTROLS",
N_(
"Controls"),
991 {
"HELP_GOVERNOR",
N_(
"Citizen Governor"),
994 {
"HELP_CHATLINE",
N_(
"Chatline"),
997 {
"HELP_WORKLIST_EDITOR",
N_(
"Worklist Editor"),
1000 {
"HELP_LANGUAGES",
N_(
"Languages"),
1003 {
"HELP_COPYING",
N_(
"Copying"),
1006 {
"HELP_ABOUT",
N_(
"About Freeciv"),
3355 const char *new_name)
3427 struct unit_list *
punits;
3480#define CREATE_SUB_ITEM(_sub_target_, _sub_target_key_, _sub_target_name_) \
3482 fc_snprintf(actname, sizeof(actname), "subtgt_%d", j); \
3483 act = g_simple_action_new(actname, NULL); \
3484 g_action_map_add_action(map, G_ACTION(act)); \
3485 g_object_set_data(G_OBJECT(act), _sub_target_key_, _sub_target_); \
3486 g_signal_connect(act, "activate", G_CALLBACK(unit_goto_and_callback), \
3488 fc_snprintf(subname, sizeof(subname), "%s", _sub_target_name_); \
3489 fc_snprintf(actname, sizeof(actname), "app.subtgt_%d", j++); \
3490 menu_item_append_unref(sub_target_menu, \
3491 g_menu_item_new(subname, actname)); \
3537#undef CREATE_SUB_ITEM
3582 if (pextra->buildable) {
3607 if (pextra->buildable) {
3632 if (pextra->buildable) {
3681 if (pextra->buildable) {
3721 if (ptile ||
ptype) {
3966 if (pextra !=
NULL) {
3971 if (pextra !=
NULL) {
4037 if (pextra !=
NULL) {
4042 if (pextra !=
NULL) {
4069 if (pextra !=
NULL) {
4074 if (pextra !=
NULL) {
enum action_sub_target_kind action_get_sub_target_kind(const struct action *paction)
const char * action_get_ui_name_mnemonic(action_id act_id, const char *mnemonic)
#define action_noninternal_iterate_end
static struct action * action_by_number(action_id act_id)
#define action_id_get_actor_kind(act_id)
#define action_noninternal_iterate(_act_)
#define action_id_get_target_kind(act_id)
#define action_id_has_complex_target(act_id)
bool actres_removes_extra(enum action_result result, const struct extra_type *pextra)
bool actres_creates_extra(enum action_result result, const struct extra_type *pextra)
enum client_states client_state(void)
void send_report_request(enum report_type type)
bool can_client_issue_orders(void)
bool client_has_player(void)
bool can_client_change_view(void)
bool can_units_do_connect(struct unit_list *punits, enum unit_activity activity, struct extra_type *tgt)
void disconnect_from_server(bool leaving_sound)
@ REPORT_WONDERS_OF_THE_WORLD
@ REPORT_WONDERS_OF_THE_WORLD_LONG
void send_save_game(const char *filename)
bool is_server_running(void)
bool can_client_access_hack(void)
bool can_conn_enable_editing(const struct connection *pconn)
void key_coastline_toggle(void)
void key_irrigation_toggle(void)
void key_unit_sentry(void)
void key_city_output_toggle(void)
void request_unit_return(struct unit *punit)
void request_unit_fortify(struct unit *punit)
void request_unit_caravan_action(struct unit *punit, action_id action)
void key_focus_unit_toggle(void)
void key_unit_auto_explore(void)
void key_unit_connect(enum unit_activity activity, struct extra_type *tgt)
void key_city_full_bar_toggle(void)
void key_bases_toggle(void)
void key_map_native_toggle(void)
void key_resources_toggle(void)
void request_unit_goto(enum unit_orders last_order, action_id act_id, int sub_tgt_id)
void key_unit_paradrop(void)
struct unit_list * get_units_in_focus(void)
void key_unit_teleport(void)
void key_unit_shields_toggle(void)
void key_city_productions_toggle(void)
void key_unit_plant(void)
void key_unit_fortress(void)
void key_unit_pillage(void)
void request_unit_unload(struct unit *pcargo)
void key_editor_toggle_fogofwar(void)
void request_new_unit_activity_targeted(struct unit *punit, enum unit_activity act, struct extra_type *tgt)
void key_unit_irrigate(void)
void request_unit_build_city(struct unit *punit)
void key_unit_unload_all(void)
void key_cities_toggle(void)
void key_city_outlines_toggle(void)
void key_unit_homecity(void)
void key_unit_patrol(void)
void key_unit_solid_bg_toggle(void)
void key_terrain_toggle(void)
void key_paths_toggle(void)
void key_unit_wakeup_others(void)
void key_unit_stack_size_toggle(void)
void key_huts_toggle(void)
void key_fog_of_war_toggle(void)
void key_units_toggle(void)
void key_unit_select_battlegroup(int battlegroup, bool append)
void key_map_grid_toggle(void)
void key_pollution_toggle(void)
void key_city_growth_toggle(void)
void key_unit_action_select_tgt(void)
void key_city_buycost_toggle(void)
int get_num_units_in_focus(void)
void key_unit_transform(void)
void key_city_trade_routes_toggle(void)
void key_city_names_toggle(void)
void request_unit_select(struct unit_list *punits, enum unit_select_type_mode seltype, enum unit_select_location_mode selloc)
void key_unit_auto_work(void)
void key_unit_airbase(void)
void key_unit_convert(void)
void key_unit_clean(void)
void key_editor_toggle(void)
void key_unit_assign_battlegroup(int battlegroup, bool append)
void key_unit_cultivate(void)
void key_mines_toggle(void)
void key_map_borders_toggle(void)
#define can_unit_do_activity_targeted_client(_punit_, _act_, _tgt_)
#define can_units_do_activity_targeted_client(_punits_, _act_, _tgt_)
#define can_units_do_activity_client(_punits_, _act_)
struct unit struct city struct unit struct tile struct extra_type const struct act_prob *act_probs int actor_unit_id struct unit struct unit * punit
bool editor_is_active(void)
const char * government_name_translation(const struct government *pgovern)
bool untargeted_revolution_allowed(void)
bool can_change_to_government(struct player *pplayer, const struct government *gov)
#define governments_iterate(NAME_pgov)
#define governments_iterate_end
void log_output_window(void)
void clear_output_window(void)
void city_report_dialog_popup(bool raise)
void unit_select_dialog_popup(struct tile *ptile)
void popup_upgrade_dialog(struct unit_list *punits)
void popup_disband_dialog(struct unit_list *punits)
void editgui_refresh(void)
void property_editor_popup(struct property_editor *pe, enum editor_object_type objtype)
struct property_editor * editprop_get_property_editor(void)
void property_editor_reload(struct property_editor *pe, enum editor_object_type objtype)
void popup_find_dialog(void)
void popup_multiplier_dialog(void)
void popup_rates_dialog(void)
void popup_goto_dialog(void)
void fullscreen_opt_refresh(struct option *poption)
gboolean map_canvas_focus(void)
void popup_quit_dialog(void)
#define GUI_GTK_OPTION(optname)
void setup_dialog(GtkWidget *shell, GtkWidget *parent)
void popup_help_dialog_string(const char *item)
void infra_dialog_popup(void)
void luaconsole_dialog_popup(bool raise)
void center_on_unit(void)
void popup_messageopt_dialog(void)
void meswin_dialog_popup(bool raise)
void option_dialog_popup(const char *name, const struct option_set *poptset)
void save_mapimg_dialog_popup(void)
void mapimg_client_save(const char *filename)
void save_game_dialog_popup(void)
void save_scenario_dialog_popup(void)
void popup_players_dialog(bool raise)
void rally_dialog_popup(void)
void science_report_dialog_popup(bool raise)
void economy_report_dialog_popup(bool raise)
void units_report_dialog_popup(bool raise)
void science_report_dialog_popdown(void)
void popup_spaceship_dialog(struct player *pplayer)
bool request_transport(struct unit *cargo, struct tile *ptile)
void popup_worklists_report(void)
static GtkApplication * fc_app
GtkApplication * gui_app(void)
#define submenu_append_unref(menu, name, submenu)
#define menu_item_insert_unref(menu, index, item)
#define menu_item_append_unref(menu, item)
void popup_revolution_dialog(void)
#define HELP_MUSICSET_ITEM
#define HELP_TERRAIN_ITEM
#define HELP_LANGUAGES_ITEM
#define HELP_CONNECTING_ITEM
#define HELP_TILESET_ITEM
#define HELP_CHATLINE_ITEM
#define HELP_RULESET_ITEM
#define HELP_GOVERNMENT_ITEM
#define HELP_MULTIPLIER_ITEM
#define HELP_PLAYING_ITEM
#define HELP_IMPROVEMENTS_ITEM
#define HELP_WORKLIST_EDITOR_ITEM
#define HELP_WONDERS_ITEM
#define HELP_SPACE_RACE_ITEM
#define HELP_COPYING_ITEM
#define HELP_OVERVIEW_ITEM
#define HELP_NATIONS_ITEM
#define HELP_DIPLOMACY_ITEM
#define HELP_ECONOMY_ITEM
#define HELP_CONTROLS_ITEM
Impr_type_id improvement_number(const struct impr_type *pimprove)
const char * improvement_name_translation(const struct impr_type *pimprove)
#define improvement_iterate_end
#define improvement_iterate(_p)
#define fc_assert_ret(condition)
#define fc_assert(condition)
#define FC_STATIC_ASSERT(cond, tag)
struct terrain_misc terrain_control
Multiplier_type_id multiplier_count(void)
const struct option_set * server_optset
const struct option_set * client_optset
void options_save(option_save_log_callback log_cb)
struct client_options gui_options
struct extra_type * road_extra_get(const struct road_type *proad)
struct road_type * road_by_gui_type(enum road_gui_type gui_type)
struct specialist * specialist_by_number(const Specialist_type_id id)
Specialist_type_id specialist_number(const struct specialist *sp)
const char * specialist_plural_translation(const struct specialist *sp)
#define specialist_type_iterate_end
#define specialist_type_iterate(sp)
struct civ_game::@32::@35 client
struct packet_game_info info
struct government * government_during_revolution
bool draw_city_productions
bool draw_fortress_airbase
bool draw_unit_stack_size
bool draw_city_trade_routes
bool save_options_on_exit
bool solid_color_behind_units
enum borders_mode borders
struct terrain * cultivate_result
struct terrain * plant_result
struct terrain * transform_result
int fc_snprintf(char *str, size_t n, const char *format,...)
#define sz_strlcpy(dest, src)
const char * advance_name_translation(const struct advance *padvance)
Tech_type_id advance_number(const struct advance *padvance)
#define advance_iterate(_p)
#define advance_iterate_end
void tile_virtual_destroy(struct tile *vtile)
bool tile_apply_activity(struct tile *ptile, Activity_type_id act, struct extra_type *tgt)
struct tile * tile_virtual_new(const struct tile *ptile)
const char * tile_get_info_text(const struct tile *ptile, bool include_nuisances, int linebreaks)
struct city * tile_city(const struct tile *ptile)
#define tile_terrain(_tile)
bool tilespec_reread(const char *new_tileset_name, bool game_fully_initialized, float scale)
bool unit_can_est_trade_route_here(const struct unit *punit)
bool unit_can_add_or_build_city(const struct civ_map *nmap, const struct unit *punit)
bool can_unit_change_homecity(const struct civ_map *nmap, const struct unit *punit)
bool can_unit_do_autoworker(const struct unit *punit)
bool can_unit_teleport(const struct civ_map *nmap, const struct unit *punit)
bool can_unit_paradrop(const struct civ_map *nmap, const struct unit *punit)
bool unit_can_help_build_wonder_here(const struct civ_map *nmap, const struct unit *punit)
#define MAX_NUM_BATTLEGROUPS
bool units_can_convert(const struct civ_map *nmap, const struct unit_list *punits)
bool units_are_occupied(const struct unit_list *punits)
bool units_can_unload(const struct civ_map *nmap, const struct unit_list *punits)
bool can_units_do_base_gui(const struct unit_list *punits, enum base_gui_type base_gui)
bool can_units_do_any_road(const struct civ_map *nmap, const struct unit_list *punits)
bool units_can_upgrade(const struct civ_map *nmap, const struct unit_list *punits)
bool units_have_activity_on_tile(const struct unit_list *punits, enum unit_activity activity)
bool units_have_type_flag(const struct unit_list *punits, enum unit_type_flag_id flag, bool has_flag)
bool can_units_do(const struct unit_list *punits, bool(can_fn)(const struct unit *punit))
bool units_can_do_action(const struct unit_list *punits, action_id act_id, bool can_do)
bool units_can_load(const struct unit_list *punits)
bool can_units_do_on_map(const struct civ_map *nmap, const struct unit_list *punits, bool(can_fn)(const struct civ_map *nmap, const struct unit *punit))
#define unit_list_iterate(unitlist, punit)
#define unit_list_iterate_end
const struct unit_type * unit_type_get(const struct unit *punit)
const struct unit_type * can_upgrade_unittype(const struct player *pplayer, const struct unit_type *punittype)
const char * utype_name_translation(const struct unit_type *punittype)
bool utype_can_do_action(const struct unit_type *putype, const action_id act_id)