Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

Fui.h File Reference

Header for Fly! UI manager and widget classes. More...

#include "../Include/FlyLegacy.h"
#include <list>
#include <vector>
#include <stack>
#include <map>
#include <string>
#include <stdio.h>

Go to the source code of this file.

Classes

class  CFuiComponent
class  CFuiPicture
class  CFuiButton
class  CFuiWindowTitle
class  CFuiCloseButton
class  CFuiMinimizeButton
class  CFuiZoomButton
class  CFuiWindow
class  CFuiPopupMenu
class  CFuiCheckbox
class  CFuiRadioButton
class  CFuiLabel
class  CFuiLine
class  CFuiBox
struct  SMenuBarItem
class  CFuiMenuBar
class  CFuiScrollBar
class  CFuiSlider
class  CFuiGroupBox
class  CFuiGauge
class  CFuiListRow
class  CFuiListColumn
class  CFuiList
class  CFuiScrollArea
class  CFuiTextField
class  CFuiTextArea
class  CFuiProgress
class  CFuiMap
class  CFuiTabPage
class  CFuiTabButton
class  CFuiTabControl
struct  SFuiGraphTracePoint
class  CFuiGraphTrace
class  CFuiGraph
class  CFuiMarquee
class  CFuiHorizontalMarquee
class  CFuiTextPopup
class  CFuiThemeWidget
class  CFuiTheme
class  CFuiManager

Defines

#define FUI_LINE_HORIZONTAL   0
#define FUI_LINE_VERTICAL   1

Typedefs

typedef void(* FuiEventNoticeCb )(Tag window, Tag component, EFuiEvents event, EFuiEvents subevent)

Enumerations

enum  EFuiWindowIdentifier {
  FUI_WINDOW_FRAME_RATE = 'fpsw', FUI_WINDOW_SITUATION_LOAD = 'Load', FUI_WINDOW_SITUATION_SAVE = 'Save', FUI_WINDOW_SITUATION_SAVE_AS = 'SavA',
  FUI_WINDOW_QUIT = 'Quit', FUI_WINDOW_OPTIONS_SCENERY = 'tree', FUI_WINDOW_OPTIONS_REALISM = 'real', FUI_WINDOW_OPTIONS_STARTUP = 'gogo',
  FUI_WINDOW_OPTIONS_COCKPIT = 'cock', FUI_WINDOW_OPTIONS_TEST_CONTROLS = 'test', FUI_WINDOW_OPTIONS_KEYS_BUTTONS = 'real', FUI_WINDOW_OPTIONS_DATE_TIME = 'date',
  FUI_WINDOW_OPTIONS_SOUND = 'SndO', FUI_WINDOW_ADVENTURES = 'fnow', FUI_WINDOW_QUICKFLIGHT = 'gogo', FUI_WINDOW_TELEPORT = 'goto',
  FUI_WINDOW_TELEPORT_DIRECTORY = 'wdir', FUI_WINDOW_TELEPORT_ALERT = 'alrt', FUI_WINDOW_AIRCRAFT_OPTIONS = 'aplo', FUI_WINDOW_AIRCRAFT_CG = 'cgin',
  FUI_WINDOW_AIRCRAFT_AUTOTUNE = 'tune', FUI_WINDOW_AIRCRAFT_FUEL = 'fuel', FUI_WINDOW_AIRCRAFT_WEIGHT_BALANCE = 'phat', FUI_WINDOW_AIRCRAFT_DAMAGE = 'ouch',
  FUI_WINDOW_AIRCRAFT_SELECT = 'sela', FUI_WINDOW_WEATHER_METAR = 'meta', FUI_WINDOW_WEATHER_OTHER = 'env+', FUI_WINDOW_WEATHER_WINDS = 'wind',
  FUI_WINDOW_WEATHER_CLOUDS = 'clds', FUI_WINDOW_WEATHER_SKY_TWEAKER = 'skyc', FUI_WINDOW_WEATHER_OVERVIEW = 'envr', FUI_WINDOW_INSTANT_REPLAY = 'insR',
  FUI_WINDOW_AXIS = 'axis', FUI_WINDOW_MAP = 'smap', FUI_WINDOW_VECTOR_MAP = 'mapw'
}
enum  EFuiComponentTypes {
  COMPONENT_WINDOW = 'wind', COMPONENT_BUTTON = 'butn', COMPONENT_DOUBLE_BUTTON = 'dbtn', COMPONENT_DEFAULT_BUTTON = 'okbn',
  COMPONENT_CHECKBOX = 'chkb', COMPONENT_RADIOBUTTON = 'radb', COMPONENT_LABEL = 'labl', COMPONENT_LINE = 'line',
  COMPONENT_BOX = 'box_', COMPONENT_PICTURE = 'pict', COMPONENT_POPUPMENU = 'popu', COMPONENT_MENUBAR = 'mbar',
  COMPONENT_SCROLLBAR = 'scrl', COMPONENT_SLIDER = 'slid', COMPONENT_GROUPBOX = 'grbx', COMPONENT_GAUGE = 'gage',
  COMPONENT_LIST = 'list', COMPONENT_SCROLLAREA = 'scla', COMPONENT_TEXTFIELD = 'edit', COMPONENT_TEXTAREA = 'txta',
  COMPONENT_PROGRESS = 'prog', COMPONENT_MAP = 'map_', COMPONENT_TABPAGE = 'ntab', COMPONENT_TABBUTTON = 'tabb',
  COMPONENT_TABCONTROL = 'tabs', COMPONENT_GRAPH = 'grph', COMPONENT_WINDOW_MENUBAR = 'wmbr', COMPONENT_MENU = 'mnu2',
  COMPONENT_DLLVIEW = 'DLLV', COMPONENT_DISCLOSURE = 'disc', COMPONENT_CANVAS = 'canv', COMPONENT_RUNWAY_CANVAS = 'rcvs',
  COMPONENT_MARQUEE = 'mrqe', COMPONENT_HORIZ_MARQUEE = 'hmrq', COMPONENT_WINDOW_NORESIZE = 'winn', COMPONENT_TITLE = 'titl',
  COMPONENT_PALETTE_WINDOW = 'pwin', COMPONENT_PALETTE_WINDOW_TITLE = 'wint', COMPONENT_CLOSE_BUTTON = 'clos', COMPONENT_MINIMIZE_BUTTON = 'mini',
  COMPONENT_ZOOM_BUTTON = 'zoom'
}
enum  EFuiEvents {
  EVENT_IDCHANGED = 'dtid', EVENT_HIDDEN = 'hide', EVENT_SHOWN = 'show', EVENT_ENABLED = 'enbl',
  EVENT_DISABLED = '!enb', EVENT_RESIZED = 'size', EVENT_MOVED = 'move', EVENT_RENAMED = 'name',
  EVENT_COMPONENTDIED = 'dead', EVENT_CHECKED = 'chek', EVENT_UNCHECKED = 'uchk', EVENT_SELECTITEM = 'slct',
  EVENT_BUTTONPRESSED = 'actn', EVENT_TEXTCHANGED = 'delt', EVENT_TEXTSET = 'tset', EVENT_VALUECHANGED = 'valu',
  EVENT_OPENWINDOW = 'open', EVENT_CLOSEWINDOW = 'clos', EVENT_TITLECHANGED = 'titl', EVENT_FOCUSLOST = '!foc',
  EVENT_FOCUSGAINED = 'foci', EVENT_WIDGETTYPECHANGED = 'widg', EVENT_DIALOGDISMISSED = 'dlog', EVENT_DIALOGDISMISSEDOK = 'dlOK',
  EVENT_DIALOGDISMISSEDCANCEL = 'dlCn', EVENT_UPDATE = 'updt', EVENT_ANYSUBEVENT = 0, EVENT_NOSUBEVENT = 0
}
enum  EFuiBinding {
  BIND_H_LEFT = 1<<0, BIND_H_RIGHT = 1<<1, BIND_H_CENTER = 1<<2, BIND_V_TOP = 1<<4,
  BIND_V_BOTTOM = 1<<5, BIND_V_CENTER = 1<<6
}
enum  EFuiJustify {
  JUSTIFY_H_LEFT = 1<<0, JUSTIFY_H_RIGHT = 1<<1, JUSTIFY_H_CENTER = 1<<2, JUSTIFY_V_TOP = 1<<4,
  JUSTIFY_V_BOTTOM = 1<<5, JUSTIFY_V_CENTER = 1<<6
}
enum  EFuiLayer { LAYER_NORMAL, LAYER_FLOATING, LAYER_MODAL, LAYER_FRONTMOST }
enum  EFuiWindowState { FUI_WINDOW_INIT, FUI_WINDOW_OPEN, FUI_WINDOW_CLOSED, FUI_WINDOW_MOVE }
enum  { FUI_GRAPH_TRACE_POINT = 0, FUI_GRAPH_TRACE_LINE = 1 }
enum  EFuiThemeColourType {
  THEME_COLOUR_TEXT = 0, THEME_COLOUR_SHADOW = 1, THEME_COLOUR_SELECTION = 2, THEME_COLOUR_HILITE = 3,
  THEME_COLOUR_TEXTHILITE = 4, THEME_COLOUR_LINE = 5, THEME_COLOUR_TEXTGREY = 6, THEME_COLOUR_FILL = 7,
  THEME_COLOUR_FILLDISABLED = 8, THEME_COLOUR_CARET = 9, THEME_COLOUR_BORDER = 10, THEME_COLOUR_BACK = 11,
  THEME_COLOUR_TRACE = 12, THEME_COLOUR_MAX
}
enum  EFuiThemeSizeType {
  THEME_SIZE_SMALL = 0, THEME_SIZE_NORMAL = 1, THEME_SIZE_LARGE = 2, THEME_SIZE_SMALL_INLINE = 3,
  THEME_SIZE_NORMAL_INLINE = 4, THEME_SIZE_LARGE_INLINE = 5, THEME_SIZE_MAX
}
enum  EFuiThemeFlagType { THEME_FLAG_DONT_DRAW_BACKGROUND = 0, THEME_FLAG_IGNORE_BITMAP_BACKGROUND = 1, THEME_FLAG_USE_SHADOW = 2, THEME_FLAG_MAX }

Functions

void ReplayNotify (Tag id, Tag component, EFuiEvents event, EFuiEvents subevent)
void AxisNotify (Tag id, Tag component, EFuiEvents event, EFuiEvents subevent)
void VectorMapNotify (Tag id, Tag component, EFuiEvents event, EFuiEvents subevent)
void MapNotify (Tag id, Tag component, EFuiEvents event, EFuiEvents subevent)
void FrameRateNotify (Tag id, Tag component, EFuiEvents event, EFuiEvents subevent)


Detailed Description

FUI - Fly! UI

This UI wrapper library implements the Fly! 2 UI widget hierarchy independently of the underlying windowing library

Todo:
Implement application callbacks for button clicks

Definition in file Fui.h.


Define Documentation

#define FUI_LINE_HORIZONTAL   0
 

Definition at line 680 of file Fui.h.

Referenced by CFuiLine::CFuiLine().

#define FUI_LINE_VERTICAL   1
 

Definition at line 681 of file Fui.h.


Typedef Documentation

typedef void(* FuiEventNoticeCb)(Tag window, Tag component, EFuiEvents event, EFuiEvents subevent)
 

Definition at line 214 of file Fui.h.


Enumeration Type Documentation

anonymous enum
 

Enumerator:
FUI_GRAPH_TRACE_POINT 
FUI_GRAPH_TRACE_LINE 

Definition at line 1146 of file Fui.h.

enum EFuiBinding
 

Enumerator:
BIND_H_LEFT 
BIND_H_RIGHT 
BIND_H_CENTER 
BIND_V_TOP 
BIND_V_BOTTOM 
BIND_V_CENTER 

Definition at line 171 of file Fui.h.

enum EFuiComponentTypes
 

Enumerator:
COMPONENT_WINDOW 
COMPONENT_BUTTON 
COMPONENT_DOUBLE_BUTTON 
COMPONENT_DEFAULT_BUTTON 
COMPONENT_CHECKBOX 
COMPONENT_RADIOBUTTON 
COMPONENT_LABEL 
COMPONENT_LINE 
COMPONENT_BOX 
COMPONENT_PICTURE 
COMPONENT_POPUPMENU 
COMPONENT_MENUBAR 
COMPONENT_SCROLLBAR 
COMPONENT_SLIDER 
COMPONENT_GROUPBOX 
COMPONENT_GAUGE 
COMPONENT_LIST 
COMPONENT_SCROLLAREA 
COMPONENT_TEXTFIELD 
COMPONENT_TEXTAREA 
COMPONENT_PROGRESS 
COMPONENT_MAP 
COMPONENT_TABPAGE 
COMPONENT_TABBUTTON 
COMPONENT_TABCONTROL 
COMPONENT_GRAPH 
COMPONENT_WINDOW_MENUBAR 
COMPONENT_MENU 
COMPONENT_DLLVIEW 
COMPONENT_DISCLOSURE 
COMPONENT_CANVAS 
COMPONENT_RUNWAY_CANVAS 
COMPONENT_MARQUEE 
COMPONENT_HORIZ_MARQUEE 
COMPONENT_WINDOW_NORESIZE 
COMPONENT_TITLE 
COMPONENT_PALETTE_WINDOW 
COMPONENT_PALETTE_WINDOW_TITLE 
COMPONENT_CLOSE_BUTTON 
COMPONENT_MINIMIZE_BUTTON 
COMPONENT_ZOOM_BUTTON 

Definition at line 92 of file Fui.h.

enum EFuiEvents
 

Enumerator:
EVENT_IDCHANGED 
EVENT_HIDDEN 
EVENT_SHOWN 
EVENT_ENABLED 
EVENT_DISABLED 
EVENT_RESIZED 
EVENT_MOVED 
EVENT_RENAMED 
EVENT_COMPONENTDIED 
EVENT_CHECKED 
EVENT_UNCHECKED 
EVENT_SELECTITEM 
EVENT_BUTTONPRESSED 
EVENT_TEXTCHANGED 
EVENT_TEXTSET 
EVENT_VALUECHANGED 
EVENT_OPENWINDOW 
EVENT_CLOSEWINDOW 
EVENT_TITLECHANGED 
EVENT_FOCUSLOST 
EVENT_FOCUSGAINED 
EVENT_WIDGETTYPECHANGED 
EVENT_DIALOGDISMISSED 
EVENT_DIALOGDISMISSEDOK 
EVENT_DIALOGDISMISSEDCANCEL 
EVENT_UPDATE 
EVENT_ANYSUBEVENT 
EVENT_NOSUBEVENT 

Definition at line 139 of file Fui.h.

enum EFuiJustify
 

Enumerator:
JUSTIFY_H_LEFT 
JUSTIFY_H_RIGHT 
JUSTIFY_H_CENTER 
JUSTIFY_V_TOP 
JUSTIFY_V_BOTTOM 
JUSTIFY_V_CENTER 

Definition at line 180 of file Fui.h.

enum EFuiLayer
 

Enumerator:
LAYER_NORMAL 
LAYER_FLOATING 
LAYER_MODAL 
LAYER_FRONTMOST 

Definition at line 189 of file Fui.h.

enum EFuiThemeColourType
 

Enumerator:
THEME_COLOUR_TEXT 
THEME_COLOUR_SHADOW 
THEME_COLOUR_SELECTION 
THEME_COLOUR_HILITE 
THEME_COLOUR_TEXTHILITE 
THEME_COLOUR_LINE 
THEME_COLOUR_TEXTGREY 
THEME_COLOUR_FILL 
THEME_COLOUR_FILLDISABLED 
THEME_COLOUR_CARET 
THEME_COLOUR_BORDER 
THEME_COLOUR_BACK 
THEME_COLOUR_TRACE 
THEME_COLOUR_MAX 

Definition at line 1266 of file Fui.h.

enum EFuiThemeFlagType
 

Enumerator:
THEME_FLAG_DONT_DRAW_BACKGROUND 
THEME_FLAG_IGNORE_BITMAP_BACKGROUND 
THEME_FLAG_USE_SHADOW 
THEME_FLAG_MAX 

Definition at line 1293 of file Fui.h.

enum EFuiThemeSizeType
 

Enumerator:
THEME_SIZE_SMALL 
THEME_SIZE_NORMAL 
THEME_SIZE_LARGE 
THEME_SIZE_SMALL_INLINE 
THEME_SIZE_NORMAL_INLINE 
THEME_SIZE_LARGE_INLINE 
THEME_SIZE_MAX 

Definition at line 1283 of file Fui.h.

enum EFuiWindowIdentifier
 

Enumerator:
FUI_WINDOW_FRAME_RATE 
FUI_WINDOW_SITUATION_LOAD 
FUI_WINDOW_SITUATION_SAVE 
FUI_WINDOW_SITUATION_SAVE_AS 
FUI_WINDOW_QUIT 
FUI_WINDOW_OPTIONS_SCENERY 
FUI_WINDOW_OPTIONS_REALISM 
FUI_WINDOW_OPTIONS_STARTUP 
FUI_WINDOW_OPTIONS_COCKPIT 
FUI_WINDOW_OPTIONS_TEST_CONTROLS 
FUI_WINDOW_OPTIONS_KEYS_BUTTONS 
FUI_WINDOW_OPTIONS_DATE_TIME 
FUI_WINDOW_OPTIONS_SOUND 
FUI_WINDOW_ADVENTURES 
FUI_WINDOW_QUICKFLIGHT 
FUI_WINDOW_TELEPORT 
FUI_WINDOW_TELEPORT_DIRECTORY 
FUI_WINDOW_TELEPORT_ALERT 
FUI_WINDOW_AIRCRAFT_OPTIONS 
FUI_WINDOW_AIRCRAFT_CG 
FUI_WINDOW_AIRCRAFT_AUTOTUNE 
FUI_WINDOW_AIRCRAFT_FUEL 
FUI_WINDOW_AIRCRAFT_WEIGHT_BALANCE 
FUI_WINDOW_AIRCRAFT_DAMAGE 
FUI_WINDOW_AIRCRAFT_SELECT 
FUI_WINDOW_WEATHER_METAR 
FUI_WINDOW_WEATHER_OTHER 
FUI_WINDOW_WEATHER_WINDS 
FUI_WINDOW_WEATHER_CLOUDS 
FUI_WINDOW_WEATHER_SKY_TWEAKER 
FUI_WINDOW_WEATHER_OVERVIEW 
FUI_WINDOW_INSTANT_REPLAY 
FUI_WINDOW_AXIS 
FUI_WINDOW_MAP 
FUI_WINDOW_VECTOR_MAP 

Definition at line 52 of file Fui.h.

enum EFuiWindowState
 

Enumerator:
FUI_WINDOW_INIT 
FUI_WINDOW_OPEN 
FUI_WINDOW_CLOSED 
FUI_WINDOW_MOVE 

Definition at line 469 of file Fui.h.


Function Documentation

void AxisNotify Tag  id,
Tag  component,
EFuiEvents  event,
EFuiEvents  subevent
 

Definition at line 34 of file WindowAxis.cpp.

Referenced by windows_axis_cb().

void FrameRateNotify Tag  id,
Tag  component,
EFuiEvents  event,
EFuiEvents  subevent
 

Todo:
Only update average frame rate once per second, averaged over the last second
Todo:
Adjust vertical scale to average frame rate. Possible maximum framerate scales are 20, 50, 100 and 200 fps, with grid lines at 4, 10, 20 and 40 fps respectively.
Todo:
Implement EVENT_MOVED notify and save window position in INI file

Definition at line 34 of file WindowFrameRate.cpp.

References CFuiManager::AddGraphTrace(), CFuiManager::AddGraphTracePoint(), CFuiManager::ClearGraphTracePoints(), SGlobals::drawRate, EVENT_OPENWINDOW, EVENT_UPDATE, FUI_GRAPH_TRACE_LINE, SGlobals::fuimgr, CFrameRateTracker::GetActualSamples(), CFrameRateTracker::GetMaxSamples(), CFrameRateTracker::GetSample(), globals, MakeRGB(), CFuiManager::SetComponentText(), CFuiManager::SetGraphGridRange(), CFuiManager::SetGraphGridSpacing(), CFuiManager::SetGraphTraceColour(), CFuiManager::SetGraphTraceRange(), and CFuiManager::SetLabelColour().

Referenced by KeyGlobal().

void MapNotify Tag  id,
Tag  component,
EFuiEvents  event,
EFuiEvents  subevent
 

Definition at line 35 of file WindowMap.cpp.

Referenced by KeyGlobal(), and windows_map_cb().

void ReplayNotify Tag  id,
Tag  component,
EFuiEvents  event,
EFuiEvents  subevent
 

Definition at line 34 of file WindowReplay.cpp.

Referenced by windows_replay_cb().

void VectorMapNotify Tag  id,
Tag  component,
EFuiEvents  event,
EFuiEvents  subevent
 

Definition at line 34 of file WindowVectorMap.cpp.

Referenced by KeyGlobal(), and windows_vector_cb().

SourceForge.net Logo Documentation generated by doxygen