Freeciv21
Develop your civilization from humble roots to a global empire
events.cpp File Reference
#include <cstdlib>
#include "fcintl.h"
#include "log.h"
#include "shared.h"
#include "support.h"
#include "events.h"
+ Include dependency graph for events.cpp:

Go to the source code of this file.

Macros

#define GEN_EV(event, section, descr)
 

Enumerations

enum  event_section_n {
  E_S_ADVANCE , E_S_BUILD , E_S_CITY , E_S_D_ME ,
  E_S_D_THEM , E_S_GLOBAL , E_S_HUT , E_S_NATION ,
  E_S_TREATY , E_S_UNIT , E_S_VOTE , E_S_WONDER ,
  E_S_XYZZY
}
 

Functions

const char * get_event_message_text (enum event_type event)
 Returns the translated description of the given event. More...
 
static int compar_event_message_texts (const void *i1, const void *i2)
 Comparison function for qsort; i1 and i2 are pointers to an event (enum event_type). More...
 
const char * get_event_tag (enum event_type event)
 Returns a string for the sound to be used for this message type. More...
 
void events_init ()
 Initialize events. More...
 
void events_free ()
 Free events. More...
 

Variables

static const char * event_sections []
 
struct {
   const char *   enum_name
 
   char *   tag_name
 
   enum event_section_n   esn
 
   const char *   descr_orig
 
   const char *   full_descr
 
   enum event_type   event
 
events []
 
static int event_to_index [E_COUNT]
 
enum event_type sorted_events [E_COUNT]
 

Macro Definition Documentation

◆ GEN_EV

#define GEN_EV (   event,
  section,
  descr 
)
Value:
{ \
#event, nullptr, section, descr, nullptr, event \
}

Definition at line 52 of file events.cpp.

Enumeration Type Documentation

◆ event_section_n

Enumerator
E_S_ADVANCE 
E_S_BUILD 
E_S_CITY 
E_S_D_ME 
E_S_D_THEM 
E_S_GLOBAL 
E_S_HUT 
E_S_NATION 
E_S_TREATY 
E_S_UNIT 
E_S_VOTE 
E_S_WONDER 
E_S_XYZZY 

Definition at line 24 of file events.cpp.

Function Documentation

◆ compar_event_message_texts()

static int compar_event_message_texts ( const void *  i1,
const void *  i2 
)
static

Comparison function for qsort; i1 and i2 are pointers to an event (enum event_type).

Definition at line 256 of file events.cpp.

Referenced by events_init().

◆ events_free()

void events_free ( )

Free events.

Definition at line 330 of file events.cpp.

Referenced by message_options_free().

◆ events_init()

void events_init ( )

Initialize events.

Now also initialise sorted_events[].

Definition at line 283 of file events.cpp.

◆ get_event_message_text()

const char* get_event_message_text ( enum event_type  event)

Returns the translated description of the given event.

Definition at line 239 of file events.cpp.

Referenced by compar_event_message_texts(), and message_dlg::fill_data().

◆ get_event_tag()

const char* get_event_tag ( enum event_type  event)

Returns a string for the sound to be used for this message type.

Definition at line 268 of file events.cpp.

Referenced by play_sound_for_event(), and tileset_lookup_sprite_tags().

Variable Documentation

◆ descr_orig

const char* descr_orig

Definition at line 66 of file events.cpp.

Referenced by events_init().

◆ enum_name

const char* enum_name

Definition at line 63 of file events.cpp.

Referenced by events_init().

◆ esn

enum event_section_n esn

Definition at line 64 of file events.cpp.

Referenced by events_free(), and events_init().

◆ event

enum event_type event

Definition at line 67 of file events.cpp.

Referenced by api_notify_embassies_msg(), api_notify_event_msg(), api_notify_research_embassies_msg(), api_notify_research_msg(), change_build_target(), help_dialog::closeEvent(), units_select::closeEvent(), unit_list_widget::contextMenuEvent(), create_event(), hud_action::enterEvent(), chat_input::event(), mr_menu::event(), fc_game_tab_widget::event(), shortcut_edit::event(), freeciv::city_icon_widget::event(), freeciv::upkeep_widget::event(), freeciv::multi_slider::event(), freeciv::report_widget::event(), chat_widget::eventFilter(), city_dialog::eventFilter(), fc_client::eventFilter(), events_init(), map_view::focusOutEvent(), get_event_message_text(), get_event_sprite(), get_event_tag(), resizable_widget::get_in_event_mouse(), handle_event(), city_dialog::hideEvent(), help_dialog::hideEvent(), close_widget::hideEvent(), illegal_action_msg(), hud_message_box::keyPressEvent(), unit_hud_selector::keyPressEvent(), map_view::keyPressEvent(), hud_action::leaveEvent(), map_view::leaveEvent(), meswin_add(), text_browser_dblclck::mouseDoubleClickEvent(), qfc_dialog::mouseMoveEvent(), units_select::mouseMoveEvent(), map_view::mouseMoveEvent(), research_diagram::mouseMoveEvent(), resizable_widget::mouseMoveEvent(), progress_bar::mousePressEvent(), production_widget::mousePressEvent(), qfc_dialog::mousePressEvent(), minimap_view::mousePressEvent(), top_bar_widget::mousePressEvent(), units_select::mousePressEvent(), map_view::mousePressEvent(), plr_widget::mousePressEvent(), research_diagram::mousePressEvent(), scale_widget::mousePressEvent(), resizable_widget::mousePressEvent(), close_widget::mousePressEvent(), qfc_dialog::mouseReleaseEvent(), map_view::mouseReleaseEvent(), notify_conn(), notify_conn_early(), notify_embassies(), notify_player(), notify_research(), notify_research_embassies(), notify_team(), package_event(), package_event_full(), page_conn_etype(), goto_dialog::paint(), units_select::paint(), xvote::paint(), progress_bar::paintEvent(), qfc_dialog::paintEvent(), goto_dialog::paintEvent(), minimap_view::paintEvent(), national_budget_widget::paintEvent(), indicators_widget::paintEvent(), top_bar_widget::paintEvent(), gold_widget::paintEvent(), turn_done_button::paintEvent(), units_select::paintEvent(), map_view::paintEvent(), research_diagram::paintEvent(), xvote::paintEvent(), scale_widget::paintEvent(), progress_bar::resizeEvent(), map_view::resizeEvent(), city_dialog::showEvent(), help_dialog::showEvent(), fc_client::timerEvent(), vpackage_event(), top_bar_widget::wheelEvent(), and map_view::wheelEvent().

◆ event_sections

const char* event_sections[]
static
Initial value:
= {
N_("Technology: %s"), N_("Improvement: %s"), N_("City: %s"),
N_("Diplomat Action: %s"), N_("Enemy Diplomat: %s"), N_("Global: %s"),
N_("Hut: %s"), N_("Nation: %s"), N_("Treaty: %s"), N_("Unit: %s"),
N_("Vote: %s"), N_("Wonder: %s"), nullptr}
#define N_(String)
Definition: fcintl.h:52

Definition at line 43 of file events.cpp.

Referenced by events_init().

◆ event_to_index

int event_to_index[E_COUNT]
static

Definition at line 232 of file events.cpp.

Referenced by events_init(), get_event_message_text(), and get_event_tag().

◆ 

struct { ... } events[]

◆ full_descr

const char* full_descr

Definition at line 67 of file events.cpp.

Referenced by events_init().

◆ sorted_events

enum event_type sorted_events[E_COUNT]

Definition at line 232 of file events.cpp.

Referenced by events_init().

◆ tag_name

char* tag_name

Definition at line 64 of file events.cpp.

Referenced by city_tile_link(), events_init(), load_sprite(), unit_tile_link(), and unload_sprite().