Freeciv21
Develop your civilization from humble roots to a global empire
req_edit Class Reference

#include <req_edit.h>

+ Inheritance diagram for req_edit:
+ Collaboration diagram for req_edit:

Signals

void rec_vec_may_have_changed (const requirement_vector *vec)
 A requirement vector may have been changed. More...
 

Public Member Functions

 req_edit (ruledit_gui *ui_in, const QString &target, struct requirement_vector *preqs)
 Setup req_edit object. More...
 
void refresh ()
 Refresh the information. More...
 
void add (const char *msg)
 

Public Attributes

struct requirement_vector * req_vector
 

Protected Member Functions

void closeEvent (QCloseEvent *event) override
 User clicked windows close button. More...
 

Private Slots

void select_req ()
 User selected requirement from the list. More...
 
void fill_active ()
 Fill active menus from selected req. More...
 
void add_now ()
 User requested new requirement. More...
 
void delete_now ()
 User requested requirement deletion. More...
 
void close_now ()
 User pushed close button. More...
 
void req_type_menu (QAction *action)
 User selected type for the requirement. More...
 
void req_range_menu (QAction *action)
 User selected range for the requirement. More...
 
void req_present_menu (QAction *action)
 User selected 'present' value for the requirement. More...
 
void univ_value_enum_menu (QAction *action)
 User selected value for the requirement. More...
 
void univ_value_edit ()
 User entered numerical requirement value. More...
 
void incoming_rec_vec_change (const requirement_vector *vec)
 The requirement vector may have been changed. More...
 

Private Member Functions

void clear_selected ()
 Unselect the currently selected requirement. More...
 
void update_selected ()
 The selected requirement has changed. More...
 

Private Attributes

ruledit_guiui
 
QListWidget * req_list
 
struct requirementselected
 
struct requirement selected_values
 
QToolButton * edit_type_button
 
QToolButton * edit_value_enum_button
 
QMenu * edit_value_enum_menu
 
QLineEdit * edit_value_nbr_field
 
QToolButton * edit_range_button
 
QToolButton * edit_present_button
 

Detailed Description

Definition at line 29 of file req_edit.h.

Constructor & Destructor Documentation

◆ req_edit()

req_edit::req_edit ( ruledit_gui ui_in,
const QString &  target,
struct requirement_vector *  preqs 
)
explicit

Setup req_edit object.

Definition at line 38 of file req_edit.cpp.

Member Function Documentation

◆ add()

void req_edit::add ( const char *  msg)

◆ add_now

void req_edit::add_now ( )
privateslot

User requested new requirement.

Definition at line 385 of file req_edit.cpp.

Referenced by req_edit().

◆ clear_selected()

void req_edit::clear_selected ( )
private

Unselect the currently selected requirement.

Definition at line 198 of file req_edit.cpp.

Referenced by delete_now(), incoming_rec_vec_change(), and req_edit().

◆ close_now

void req_edit::close_now ( )
privateslot

User pushed close button.

Definition at line 213 of file req_edit.cpp.

Referenced by req_edit().

◆ closeEvent()

void req_edit::closeEvent ( QCloseEvent *  event)
overrideprotected

User clicked windows close button.

Definition at line 453 of file req_edit.cpp.

◆ delete_now

void req_edit::delete_now ( )
privateslot

User requested requirement deletion.

Definition at line 402 of file req_edit.cpp.

Referenced by req_edit().

◆ fill_active

void req_edit::fill_active ( )
privateslot

Fill active menus from selected req.

Definition at line 272 of file req_edit.cpp.

Referenced by refresh(), and select_req().

◆ incoming_rec_vec_change

void req_edit::incoming_rec_vec_change ( const requirement_vector *  vec)
privateslot

The requirement vector may have been changed.

Parameters
vecthe requirement vector that may have been changed.

Definition at line 426 of file req_edit.cpp.

Referenced by req_edit().

◆ rec_vec_may_have_changed

void req_edit::rec_vec_may_have_changed ( const requirement_vector *  vec)
signal

A requirement vector may have been changed.

Parameters
vecthe requirement vector that was changed.

Referenced by add_now(), delete_now(), ruledit_gui::open_req_edit(), req_present_menu(), req_range_menu(), req_type_menu(), univ_value_edit(), and univ_value_enum_menu().

◆ refresh()

void req_edit::refresh ( )

◆ req_present_menu

void req_edit::req_present_menu ( QAction *  action)
privateslot

User selected 'present' value for the requirement.

Definition at line 336 of file req_edit.cpp.

Referenced by req_edit().

◆ req_range_menu

void req_edit::req_range_menu ( QAction *  action)
privateslot

User selected range for the requirement.

Definition at line 318 of file req_edit.cpp.

Referenced by req_edit().

◆ req_type_menu

void req_edit::req_type_menu ( QAction *  action)
privateslot

User selected type for the requirement.

Definition at line 298 of file req_edit.cpp.

Referenced by req_edit().

◆ select_req

void req_edit::select_req ( )
privateslot

User selected requirement from the list.

Definition at line 222 of file req_edit.cpp.

Referenced by req_edit().

◆ univ_value_edit

void req_edit::univ_value_edit ( )
privateslot

User entered numerical requirement value.

Definition at line 368 of file req_edit.cpp.

Referenced by req_edit().

◆ univ_value_enum_menu

void req_edit::univ_value_enum_menu ( QAction *  action)
privateslot

User selected value for the requirement.

Definition at line 351 of file req_edit.cpp.

Referenced by req_edit().

◆ update_selected()

void req_edit::update_selected ( )
private

The selected requirement has changed.

Definition at line 188 of file req_edit.cpp.

Referenced by req_present_menu(), req_range_menu(), req_type_menu(), select_req(), univ_value_edit(), and univ_value_enum_menu().

Member Data Documentation

◆ edit_present_button

QToolButton* req_edit::edit_present_button
private

Definition at line 62 of file req_edit.h.

Referenced by fill_active(), and req_edit().

◆ edit_range_button

QToolButton* req_edit::edit_range_button
private

Definition at line 61 of file req_edit.h.

Referenced by fill_active(), and req_edit().

◆ edit_type_button

QToolButton* req_edit::edit_type_button
private

Definition at line 57 of file req_edit.h.

Referenced by fill_active(), and req_edit().

◆ edit_value_enum_button

QToolButton* req_edit::edit_value_enum_button
private

Definition at line 58 of file req_edit.h.

Referenced by fill_active(), and req_edit().

◆ edit_value_enum_menu

QMenu* req_edit::edit_value_enum_menu
private

Definition at line 59 of file req_edit.h.

Referenced by fill_active(), and req_edit().

◆ edit_value_nbr_field

QLineEdit* req_edit::edit_value_nbr_field
private

Definition at line 60 of file req_edit.h.

Referenced by fill_active(), req_edit(), and univ_value_edit().

◆ req_list

QListWidget* req_edit::req_list
private

Definition at line 50 of file req_edit.h.

Referenced by refresh(), req_edit(), and select_req().

◆ req_vector

struct requirement_vector* req_edit::req_vector

◆ selected

◆ selected_values

struct requirement req_edit::selected_values
private

Definition at line 52 of file req_edit.h.

Referenced by clear_selected(), incoming_rec_vec_change(), and update_selected().

◆ ui

ruledit_gui* req_edit::ui
private

Definition at line 48 of file req_edit.h.

Referenced by close_now(), closeEvent(), and req_edit().