GUI
Public Member Functions | Private Attributes | Static Private Attributes | List of all members
App Class Reference

Application's main class. More...

#include <App.h>

Public Member Functions

 App (int argc, char **argv)
 Constructor. Parses command-line arguments. More...
 
virtual ~App ()
 
void initAllegro ()
 Initalizes Allegro5 library. More...
 
void init ()
 Initializes interface and sets the gui. More...
 
bool loop (bool waitForEvent=false)
 Application's main loop. More...
 
void setButtonOnClick (Event &event)
 
WidgetcreateWidget (GUISystem *guiSystem)
 

Private Attributes

ALLEGRO_DISPLAY * display
 
ALLEGRO_EVENT_QUEUE * queue
 
ALLEGRO_FONT * font
 
GUISystemguiSystem
 
Rendererrenderer
 
Handle< EditBoxeditBox
 
Handle< TextFieldtextField
 
Handle< ButtonsetButton
 
Handle< EditBoxmultilineEdit
 
Handle< WidgetcustomWidget
 

Static Private Attributes

static bool initialized = false
 Used for preventing multiple instances. More...
 

Detailed Description

Application's main class.

Definition at line 26 of file App.h.

Constructor & Destructor Documentation

◆ App()

App::App ( int  argc,
char **  argv 
)

Constructor. Parses command-line arguments.

Parameters
argcArgument count
argvArgument vector

Definition at line 17 of file App.cpp.

References initialized.

◆ ~App()

App::~App ( )
virtual

Definition at line 27 of file App.cpp.

References display, and queue.

Member Function Documentation

◆ createWidget()

Widget * App::createWidget ( GUISystem guiSystem)

◆ init()

void App::init ( )

◆ initAllegro()

void App::initAllegro ( )

Initalizes Allegro5 library.

Definition at line 35 of file App.cpp.

◆ loop()

bool App::loop ( bool  waitForEvent = false)

Application's main loop.

Parameters
waitForEventIf true, blocks the application until an Allegro's event come.
Returns
Has the application finished.

Definition at line 92 of file App.cpp.

References guiSystem, gui::GUISystem::handleEvents(), gui::GUISystem::keyChar(), gui::GUISystem::keyDown(), gui::GUISystem::mouseButtonDown(), gui::GUISystem::mouseButtonUp(), gui::GUISystem::mouseMove(), queue, and gui::GUISystem::render().

◆ setButtonOnClick()

void App::setButtonOnClick ( Event event)

Definition at line 150 of file App.cpp.

References editBox, gui::EditBox::getText(), gui::TextField::setText(), and textField.

Member Data Documentation

◆ customWidget

Handle<Widget> App::customWidget
private

Definition at line 77 of file App.h.

◆ display

ALLEGRO_DISPLAY* App::display
private

Definition at line 65 of file App.h.

◆ editBox

Handle<EditBox> App::editBox
private

Definition at line 73 of file App.h.

◆ font

ALLEGRO_FONT* App::font
private

Definition at line 67 of file App.h.

◆ guiSystem

GUISystem* App::guiSystem
private

Definition at line 69 of file App.h.

◆ initialized

bool App::initialized = false
staticprivate

Used for preventing multiple instances.

Definition at line 82 of file App.h.

◆ multilineEdit

Handle<EditBox> App::multilineEdit
private

Definition at line 76 of file App.h.

◆ queue

ALLEGRO_EVENT_QUEUE* App::queue
private

Definition at line 66 of file App.h.

◆ renderer

Renderer* App::renderer
private

Definition at line 70 of file App.h.

◆ setButton

Handle<Button> App::setButton
private

Definition at line 75 of file App.h.

◆ textField

Handle<TextField> App::textField
private

Definition at line 74 of file App.h.


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