The Battle for Wesnoth  1.13.10+dev
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
gui2::dialogs::lua_interpreter::controller Class Reference

The controller is responsible to hold all the input widgets, and a pointer to the model and view. More...

Public Member Functions

 controller (lua_kernel_base &lk)
void bind (window &window)
 Bind my pointers to the widgets found in the window. More...
void handle_copy_button_clicked (window &window)
 Copy text to the clipboard. More...
void handle_clear_button_clicked (window &window)
 Clear the text. More...
void input_keypress_callback (bool &handled, bool &halt, const SDL_Keycode key, window &window)
 Handle return key (execute) or tab key (tab completion) More...
void update_view ()
 Update the view based on the model. More...

Private Member Functions

void execute ()
void tab ()
void search (int direction)

Private Attributes

std::string text_entry_
const std::unique_ptr
< lua_interpreter::lua_model
const std::unique_ptr
< lua_interpreter::input_model
const std::unique_ptr
< lua_interpreter::view


class lua_interpreter

Detailed Description

The controller is responsible to hold all the input widgets, and a pointer to the model and view.

It is responsible to bind the input signals to appropriate handler methods, which it holds. It is also responsible to ask the view to update based on the output of the model, typically in response to some input.

Definition at line 365 of file lua_interpreter.cpp.

Constructor & Destructor Documentation

gui2::dialogs::lua_interpreter::controller::controller ( lua_kernel_base lk)

Definition at line 381 of file lua_interpreter.cpp.

Member Function Documentation

void gui2::dialogs::lua_interpreter::controller::bind ( window window)

Bind my pointers to the widgets found in the window.

Find all the widgets managed by the controller and connect them to handler methods.

Definition at line 445 of file lua_interpreter.cpp.

References _(), desktop::clipboard::available(), gui2::event::connect_signal_mouse_left_click(), gui2::event::connect_signal_pre_key_press(), handle_clear_button_clicked(), handle_copy_button_clicked(), input_keypress_callback(), and LOG_LUA.

void gui2::dialogs::lua_interpreter::controller::execute ( )

Definition at line 549 of file lua_interpreter.cpp.

References LOG_LUA.

void gui2::dialogs::lua_interpreter::controller::handle_clear_button_clicked ( window window)

Clear the text.

Definition at line 497 of file lua_interpreter.cpp.

Referenced by bind().

void gui2::dialogs::lua_interpreter::controller::handle_copy_button_clicked ( window window)

Copy text to the clipboard.

Definition at line 490 of file lua_interpreter.cpp.

References desktop::clipboard::copy_to_clipboard().

Referenced by bind().

void gui2::dialogs::lua_interpreter::controller::input_keypress_callback ( bool &  handled,
bool &  halt,
const SDL_Keycode  key,
window window 

Handle return key (execute) or tab key (tab completion)

Definition at line 506 of file lua_interpreter.cpp.

References LOG_LUA, and gui2::widget::set_is_dirty().

Referenced by bind().

void gui2::dialogs::lua_interpreter::controller::search ( int  direction)

Definition at line 662 of file lua_interpreter.cpp.

void gui2::dialogs::lua_interpreter::controller::tab ( )

Definition at line 585 of file lua_interpreter.cpp.

References utils::word_completion().

void gui2::dialogs::lua_interpreter::controller::update_view ( )

Update the view based on the model.

Definition at line 433 of file lua_interpreter.cpp.

References LOG_LUA.

Friends And Related Function Documentation

friend class lua_interpreter

Definition at line 404 of file lua_interpreter.cpp.

Member Data Documentation

button* gui2::dialogs::lua_interpreter::controller::clear_button

Definition at line 368 of file lua_interpreter.cpp.

button* gui2::dialogs::lua_interpreter::controller::copy_button

Definition at line 367 of file lua_interpreter.cpp.

const std::unique_ptr<lua_interpreter::input_model> gui2::dialogs::lua_interpreter::controller::input_model_

Definition at line 374 of file lua_interpreter.cpp.

const std::unique_ptr<lua_interpreter::lua_model> gui2::dialogs::lua_interpreter::controller::lua_model_

Definition at line 373 of file lua_interpreter.cpp.

text_box* gui2::dialogs::lua_interpreter::controller::text_entry

Definition at line 370 of file lua_interpreter.cpp.

std::string gui2::dialogs::lua_interpreter::controller::text_entry_

Definition at line 371 of file lua_interpreter.cpp.

const std::unique_ptr<lua_interpreter::view> gui2::dialogs::lua_interpreter::controller::view_

Definition at line 375 of file lua_interpreter.cpp.

The documentation for this class was generated from the following file: