raSystem  1.0 bata
raGui.h
Go to the documentation of this file.
1 
2 #pragma once
3 namespace raSystem
4 {
5  // Verwendete Symbole vordefinieren
6  class raGUI;
8  {
10  float fRHW;
13  static DWORD dwFVF;
14  };
15  enum RAPI raGUIMessageType
16  {
17  RA_GMT_CREATE, // Das Element wurde erstellt.
18  RA_GMT_DELETE, // Das Element wird gelöscht.
19  RA_GMT_ENTERPAGE, // Betreten einer Seite
20  RA_GMT_MOVE, // Das Element soll bewegt werden.
21  RA_GMT_RENDER, // Das Element soll gerendert werden.
22  RA_GMT_ELEMENTCLICKED, // Ein Element wurde angeklickt.
23  RA_GMT_LBUTTONDOWN, // Linker Mausknopf gedrückt
24  RA_GMT_LBUTTONUP, // Linker Mausknopf losgelassen
25  RA_GMT_RBUTTONDOWN, // Rechter Mausknopf gedrückt
26  RA_GMT_RBUTTONUP, // Rechter Mausknopf losgelassen
27  RA_GMT_KEYDOWN, // Tastaturtaste gedrückt
28  RA_GMT_KEYUP, // Tastaturtaste losgelassen
29  RA_GMT_KEYREPEAT, // Wiederholter Knopfdruck (Taste bleibt gedrückt)
30  RA_GMT_SELECTION // Auswahl bei einer Liste wurde geändert
31  };
32 
33  // ******************************************************************
34  // Struktur für eine Nachricht
36  {
37  raGUIMessageType Type; // Typ der Nachricht
38  int aiInt[8]; // 8 Integer
39  float afFloat[8]; // 8 Fließkommazahlen
40  void* apPointer[8]; // 8 Zeiger
41  };
42 
43  // ******************************************************************
44  // Aufzählung für Oberflächenelementtypen
45  enum RAPI raGUIElementType
46  {
47  RA_GET_FRAME, // Rahmen
48  RA_GET_BUTTON, // Knopf
49  RA_GET_TEXT, // Text
50  RA_GET_IMAGE, // Bild
51  RA_GET_CHECKBOX, // Check-Box
52  RA_GET_RADIOBOX, // Radio-Box
53  RA_GET_INPUT, // Eingabefeld
54  RA_GET_LIST // Liste
55  };
56 
57  // ******************************************************************
58  // Klasse für ein Oberflächenelement
60  {
61  friend class raGUI;
62  friend class raGUIFrame;
63  friend class raGUIButton;
64  friend class raGUIText;
65  friend class raGUIImage;
66  friend class raGUICheckBox;
67  friend class raGUIRadioBox;
68  friend class raGUIInput;
69  friend class raGUIList;
70 
71  private:
72  // Variablen
73  int m_iID; // ID des Elements
74  raGUIElementType m_Type; // Typ des Elements
75  int m_iPage; // Auf welcher Seite ist das Element?
76  raGUI* m_pGUI; // Zu welcher Oberfläche das Element gehört
77  raVector2 m_vPosition; // Position der linken oberen Ecke
78  raVector2 m_vSize; // Breite und Höhe
79  BOOL m_bVisible; // Sichtbar?
80  BOOL m_bEnabled; // Aktiviert?
81  BOOL m_bPressed; // Wird das Element gerade gedrückt?
82 
83  public:
84  // Methoden
85  virtual int ReceiveMessage(const raGUIMessage* pMsg) = 0; // Das Element erhält eine Nachricht.
86 
87  // Inline-Methoden
88  int GetID() {return m_iID;}
89  raGUIElementType GetType() {return m_Type;}
90  int GetPage() {return m_iPage;}
91  raGUI* GetGUI() {return m_pGUI;}
92  const raVector2& GetPosition() {return m_vPosition;}
93  const raVector2& GetSize() {return m_vSize;}
94  BOOL IsVisible() {return m_bVisible;}
95  BOOL IsEnabled() {return m_bEnabled;}
96  BOOL IsPressed() {return m_bPressed;}
97  void SetPage(int iPage) {m_iPage = iPage;}
98  void SetPosition(raVector2 vPos) {m_vPosition = vPos;}
99  void SetSize(raVector2 vSize) {m_vSize = vSize;}
100  void Show(BOOL bShow) {m_bVisible = bShow;}
101  void Enable(BOOL bEnable) {m_bEnabled = bEnable;}
102  };
103 
104  // ******************************************************************
105  // Klasse für einen Rahmen
106  class RAPI raGUIFrame : public raGUIElement
107  {
108  friend class raGUI;
109 
110  public:
111  // Methoden
112  int ReceiveMessage(const raGUIMessage* pMsg); // Das Element erhält eine Nachricht.
113  };
114 
115  // ******************************************************************
116  // Klasse für einen Knopf
118  {
119  friend class raGUI;
120 
121  private:
122  // Variablen
123  char m_acText[256]; // Text
124  BOOL m_bIsListScrollBtn; // Ist es ein Knopf einer Liste (zum Scrollen)?
125  BOOL m_bIsScrollUpBtn; // Ist es ein Knopf zum Hochscrollen?
126  int m_iList; // ID der zugehörigen Liste
127 
128  public:
129  // Methoden
130  int ReceiveMessage(const raGUIMessage* pMsg); // Das Element erhält eine Nachricht.
131 
132  // Inline-Methoden
133  char* GetText() {return m_acText;}
134  void SetText(char* pcText) {strcpy(m_acText, pcText);}
135  };
136 
137  // ******************************************************************
138  // Klasse für einen Text
139  class RAPI raGUIText : public raGUIElement
140  {
141  friend class raGUI;
142 
143  private:
144  // Variablen
145  char m_acText[4096]; // Text
146  raColor m_Color; // Farbe
147  raVector2 m_vTextSize; // Größe
148  DWORD m_dwTextFlags; // Flags für die Textdarstellung
149 
150  public:
151  // Methoden
152  int ReceiveMessage(const raGUIMessage* pMsg); // Das Element erhält eine Nachricht.
153 
154  // Inline-Methoden
155  char* GetText() {return m_acText;}
156  const raColor& GetColor() {return m_Color;}
157  const raVector2& GetTextSize() {return m_vTextSize;}
158  DWORD GetTextFlags() {return m_dwTextFlags;}
159  void SetText(char* pcText) {strcpy(m_acText, pcText);}
160  void SetColor(const raColor& c) {m_Color = c;}
161  void SetTextSize(const raVector2& s) {m_vTextSize = s;}
162  void SetTextFlags(DWORD f) {m_dwTextFlags = f;}
163  };
164 
165  // ******************************************************************
166  // Klasse für ein Bild
167  class RAPI raGUIImage : public raGUIElement
168  {
169  friend class raGUI;
170 
171  private:
172  // Variablen
173  ID3D11Texture2D* m_pTexture; // Die Textur
174  raVector2 m_vTopLeftTex; // Linke obere Texturkoordinaten
175  raVector2 m_vBottomRightTex; // Rechte untere Texturkoordinaten
176  raColor m_Color; // Farbe
177 
178  public:
179  // Methoden
180  int ReceiveMessage(const raGUIMessage* pMsg); // Das Element erhält eine Nachricht.
181 
182  // Inline-Methoden
183  ID3D11Texture2D* GetTexture() {return m_pTexture;}
184  raVector2 GetTopLeftTex() {return m_vTopLeftTex;}
185  raVector2 GetBottomRightTex() {return m_vBottomRightTex;}
186  raColor GetColor() {return m_Color;}
187  void SetTexture(ID3D11Texture2D* t) {m_pTexture = t;}
188  void SetTopLeftTex(raVector2 v) {m_vTopLeftTex = v;}
189  void SetBottomRightTex(raVector2 v) {m_vBottomRightTex = v;}
190  void SetColor(raColor c) {m_Color = c;}
191  };
192 
193  // ******************************************************************
194  // Klasse für eine Check-Box
196  {
197  friend class raGUI;
198 
199  private:
200  // Variablen
201  char m_acText[256]; // Text
202  BOOL m_bChecked; // Angekreuzt?
203 
204  public:
205  // Methoden
206  int ReceiveMessage(const raGUIMessage* pMsg); // Das Element erhält eine Nachricht.
207 
208  // Inline-Methoden
209  char* GetText() {return m_acText;}
210  BOOL IsChecked() {return m_bChecked;}
211  void SetText(char* pcText) {strcpy(m_acText, pcText);}
212  void Check(BOOL bCheck) {m_bChecked = bCheck;}
213  };
214 
215  // ******************************************************************
216  // Klasse für eine Radio-Box
218  {
219  friend class raGUI;
220 
221  private:
222  // Variablen
223  char m_acText[256]; // Text
224  int m_iGroup; // Gruppen-ID
225  BOOL m_bChecked; // Angekreuzt?
226 
227  public:
228  // Methoden
229  int ReceiveMessage(const raGUIMessage* pMsg); // Das Element erhält eine Nachricht.
230  int Check(BOOL bCheck); // Status ändern
231 
232  // Inline-Methoden
233  char* GetText() {return m_acText;}
234  BOOL IsChecked() {return m_bChecked;}
235  int GetGroup() {return m_iGroup;}
236  void SetText(char* pcText) {strcpy(m_acText, pcText);}
237  void SetGroup(int iGroup) {m_iGroup = iGroup; Check(m_bChecked);}
238  };
239 
240  // ******************************************************************
241  // Klasse für ein Eingabefeld
242  class RAPI raGUIInput : public raGUIElement
243  {
244  friend class raGUI;
245 
246  private:
247  // Variablen
248  char m_acText[4096]; // Text
249  BOOL m_bPassword; // Passwortfeld?
250  char m_PasswordChar; // Zeichen für Passwort
251  int m_iCursor; // Wo der Cursor gerade ist
252  int m_iScrolling; // Ab wo der Text angezeigt wird
253 
254  public:
255  // Methoden
256  int ReceiveMessage(const raGUIMessage* pMsg); // Das Element erhält eine Nachricht.
257 
258  // Inline-Methoden
259  char* GetText() {return m_acText;}
260  BOOL IsPassword() {return m_bPassword;}
261  char GetPasswordChar() {return m_PasswordChar;}
262  int GetCursor() {return m_iCursor;}
263  void SetText(char* pcText) {strcpy(m_acText, pcText); m_iCursor = strlen(m_acText);}
264  void SetPassword(BOOL b) {m_bPassword = b;}
265  void SetPasswordChar(char c) {m_PasswordChar = c;}
266  void SetCursor(int iCursor) {m_iCursor = iCursor;}
267  };
268 
269  // ******************************************************************
270  // Struktur für einen Listeneintrag
272  {
273  int iID; // ID dieses Eintrags
274  char acText[256]; // Text
275  void* pData; // Daten
276  };
277 
278  // ******************************************************************
279  // Klasse für eine Liste
280  class RAPI raGUIList : public raGUIElement
281  {
282  friend class raGUI;
283 
284  private:
285  // Variablen
286  raList<raGUIListEntry>* m_pList; // Die Liste der Einträge
287  int m_iCursor; // ID des angewählten Listeneintrags
288  int m_iScrolling; // ID des ersten sichtbaren Listeneintrags
289  int m_iNextEntryID; // ID des nächsten Eintrags, der erstellt wird
290  int m_iScrollUpBtn; // ID des Knopfes zum Hochscrollen
291  int m_iScrollDnBtn; // ID des Knopfes zum Runterscrollen
292  float m_fLineHeight; // Zeilenhöhe
293  int m_iOldCursor; // Alter Cursor
294 
295  public:
296  // Methoden
297  int ReceiveMessage(const raGUIMessage* pMsg); // Das Element erhält eine Nachricht.
298  raGUIListEntry* GetEntry(int iID); // Liefert einen Listeneintrag
299  raListEntry<raGUIListEntry>* GetEntryListEntry(int iID); // Liefert einen Listeneintrag
300  int AddEntry(char* pcText, void* pData); // Fügt einen Eintrag hinzu
301  int DeleteEntry(int iID); // Löscht einen Eintrag
302  int GetEntryOrder(int iID); // Liefert die Ordnung eines Eintrags
303  raGUIListEntry* GetEntryByOrder(int iOrder); // Liefert den Eintrag mit einer bestimmten Ordnung
304  int GetPrevEntry(int iID); // Liefert vorherigen Eintrag
305  int GetNextEntry(int iID); // Liefert nächsten Eintrag
306  int Correct(); // Korrigiert eventuelle Fehler
307 
308  // Inline-Methoden
309  int Clear() {return m_pList->Clear();}
310  int GetCursor() {return m_iCursor;}
311  float GetLineHeight() {return m_fLineHeight;}
312  int GetNumEntries() {return m_pList->GetNumEntries();}
313  raGUIListEntry* GetSelectedEntry() {return GetEntry(m_iCursor);}
314  void SetCursor(int i) {m_iCursor = i;}
315  void SetLineHeight(float f) {m_fLineHeight = f;}
316  };
317 
318  // ******************************************************************
319  // Struktur für einen Skin
321  {
322  ID3D11Texture2D* pSkinTexture; // Textur für den Skin
323  ID3DX11Effect* pEffect; // Effekt für die Oberflächenelemente
324  raVector2 vCursorSize; // Größe des Cursors
325  raColor CursorColor1; // Farbe 1 des Cursors
326  raColor CursorColor2; // Farbe 2 des Cursors
327  raVector2 vCursorHotSpot; // Hot-Spot des Cursors
328  float fCursorSpeed; // Geschwindigkeit des Cursors
329  raColor EnabledColor; // Farbe für aktivierte Elemente
330  raColor DisabledColor; // Farbe für deaktivierte Elemente
331  raColor HighlightColor; // Farbe für hervorgehobene Elemente
332  raVector2 vTextSize; // Größe der Texte
333  raColor EnabledTextColor; // Farbe für Texte aktivierter Elemente
334  raColor DisabledTextColor; // Farbe für Texte deaktivierter Elemente
335  raColor HighlightTextColor; // Farbe für Texte hervorgehobener Elemente
336  };
337 
338  // ******************************************************************
339  // Klasse für die Benutzeroberfläche
340  class RAPI raGUI
341  {
342  friend class raGUIElement;
343  friend class raGUIFrame;
344  friend class raGUIText;
345  friend class raGUIImage;
346  friend class raGUIButton;
347  friend class raGUICheckBox;
348  friend class raGUIRadioBox;
349  friend class raGUIInput;
350  friend class raGUIList;
351 
352  public:
353  // Konstruktor und Destruktor
354  raGUI(raDirectX *dx);
355  ~raGUI() {Exit();}
356 
357  // Methoden
358  int Init(raGUISkin* pSkin, void* pMsgProc, raVector2 vSize, raVector2 vScaling = raVector2(1.0f)); // Initialisierung
359  int Exit();
360  int Move(const float fTime, BOOL* pbButtons, float* pfButtons); // Bewegen
361  int Render(const float fTime); // Rendern
362  int RenderCursor(const float fTime); // Mauszeiger rendern
363  int PostMessage(int iID, raGUIMessage* pMsg); // Sendet eine Nachricht an ein Element
364  int BroadcastMessage(raGUIMessage* pMsg, int iPage = -1); // Schickt eine Nachricht an alle Elemente
365  raListEntry<raGUIElement*>* GetElementListEntry(int iID); // Liefert den Listeneintrag eines Elements
366  raGUIElement* GetElement(int iID); // Liefert Zeiger auf ein Element
367  int DeleteElement(int iID); // Löscht ein Element
368  int SetCurrentPage(int iPage); // Setzt die aktive Seite
369 
370  // Fügt ein Rechteck zu den Vertizes hinzu
371  int AddRect(const raVector2& vTopLeft,
372  const raVector2& vSize,
373  const raColor& Color,
374  const raVector2& vTopLeftTex,
375  const raVector2& vSizeOnTex,
376  raGUIVertex* pOut = NULL);
377 
378  // Fügt mehrere Rechtecke in einer Reihe hinzu
379  int AddRects1D(const raVector2& vTopLeft,
380  const raVector2& vSize,
381  float fNumRects,
382  const raVector2& vTranslation,
383  const raColor& Color,
384  const raVector2& vTopLeftTex,
385  const raVector2& vSizeOnTex);
386 
387  // Fügt mehrere Rechtecke zweidimensional hinzu
388  int AddRects2D(raVector2 vTopLeft,
389  const raVector2& vSize,
390  const float fNumColumns,
391  float fNumRows,
392  const raColor& Color,
393  const raVector2& vTopLeftTex,
394  const raVector2& vSizeOnTex);
395 
396  // Fügt einen ganzen Rahmen hinzu
397  int AddFrame(const raVector2& vTopLeft,
398  const raVector2& vSize,
399  const raColor& Color,
400  const raVector2& vTopLeftOnTex);
401 
402  // Erstellt ein neues Element
403  raGUIElement* CreateElement(int iID,
404  raGUIElementType Type,
405  int iPage,
406  raVector2 vPosition,
407  raVector2 vSize);
408 
409  // Erstellt einen neuen Rahmen
410  int CreateFrame(int iID,
411  int iPage,
412  raVector2 vPosition,
413  raVector2 vSize);
414 
415  // Erstellt einen neuen Knopf
416  int CreateButton(int iID,
417  int iPage,
418  raVector2 vPosition,
419  raVector2 vSize,
420  char* pcText);
421 
422  // Erstellt ein neues Bild
423  int CreateImage(int iID,
424  int iPage,
425  raVector2 vPosition,
426  raVector2 vSize,
427  ID3D11Texture2D* pTexture,
428  raVector2 vTopLeftTex = raVector2(0.0f, 0.0f),
429  raVector2 vBottomRightTex = raVector2(1.0f, 1.0f),
430  raColor Color = raColor(1.0f));
431 
432  // Erstellt eine neue Check-Box
433  int CreateCheckBox(int iID,
434  int iPage,
435  raVector2 vPosition,
436  raVector2 vSize,
437  char* pcText,
438  BOOL bChecked = FALSE);
439 
440  // Erstellt eine neue Radio-Box
441  int CreateRadioBox(int iID,
442  int iPage,
443  raVector2 vPosition,
444  raVector2 vSize,
445  char* pcText,
446  int iGroup = 0,
447  BOOL bChecked = FALSE);
448 
449  // Erstellt ein neues Eingabefeld
450  int CreateInput(int iID,
451  int iPage,
452  raVector2 vPosition,
453  raVector2 vSize,
454  char* pcText = "",
455  BOOL bPassword = FALSE,
456  char PasswordChar = '*');
457 
458  // Erstellt eine neue Liste
459  int CreateList(int iID,
460  int iPage,
461  raVector2 vPosition,
462  raVector2 vSize,
463  float fLineHeight);
464 
465  // Inline-Methoden
466  BOOL WasButtonPressed(int b) {return !m_pbOldButtons[b] && m_pbButtons[b];}
467  BOOL WasButtonReleased(int b) {return m_pbOldButtons[b] && !m_pbButtons[b];}
468  raGUISkin GetSkin() {return m_Skin;}
469  ID3DX11Effect* GetImageEffect() {return m_pImageEffect;}
470  int GetCurrentPage() {return m_iCurrentPage;}
471  raVector2 GetCursorPos() {return m_vCursorPos;}
472  void* GetMessageProc() {return m_pMsgProc;}
473  void SetSkin(raGUISkin* pSkin) {m_Skin = *pSkin;}
474  void SetCursorPos(raVector2 v) {m_vCursorPos = v;}
475  void SetMessageProc(void *pProc) {m_pMsgProc = pProc;}
476  private:
477  // Variablen
478  raList<raGUIElement*>* m_pElements; // Liste der Elemente
479  int m_iFocus; // Das Element, das den Fokus hat (ID)
480  ID3D11Buffer* m_pVertexBuffer; // Der Vertex-Buffer
481  BOOL* m_pbButtons; // Zustand der analogen Knöpfe (digital)
482  BOOL* m_pbOldButtons; // Ehemaliger Zustand der analogen Knöpfe (digital)
483  float* m_pfButtons; // Zustand der analogen Knöpfe
484  raGUISkin m_Skin; // Skin für die Benutzeroberfläche
485  ID3DX11Effect* m_pImageEffect; // Effekt für Bilder
486  int m_iCurrentPage; // Aktive Seite
487  raVector2 m_vCursorPos; // Cursorposition
488  raVector2 m_vSize; // Größe
489  raVector2 m_vScaling; // Skalierung
490  void* m_pMsgProc; // Funktion für Kommandonachrichten
491  int m_aiKeyRepeat[108]; // Array für wiederholten Tastendruck
492  DWORD m_dwOldTime; // Alte Zeit
493  UINT m_nVertices;
494  UINT m_nIndices;
495  raDirectX *m_dx;
496  };
497 }
498 // ******************************************************************
char * GetText()
Definition: raGui.h:259
RA_GMT_ENTERPAGE
Definition: raGui.h:17
ID3D11Texture2D * pSkinTexture
Definition: raGui.h:322
DWORD GetTextFlags()
Definition: raGui.h:158
void SetTextSize(const raVector2 &s)
Definition: raGui.h:161
raVector2 vTexture
Definition: raGui.h:12
RA_GET_IMAGE
Definition: raGui.h:47
raColor CursorColor2
Definition: raGui.h:326
char * GetText()
Definition: raGui.h:133
raVector2 GetCursorPos()
Definition: raGui.h:471
const raColor & GetColor()
Definition: raGui.h:156
const raVector2 & GetTextSize()
Definition: raGui.h:157
void SetPassword(BOOL b)
Definition: raGui.h:264
int GetCurrentPage()
Definition: raGui.h:470
raColor HighlightColor
Definition: raGui.h:331
raColor Diffuse
Definition: raGui.h:11
RA_GET_BUTTON
Definition: raGui.h:47
void SetSkin(raGUISkin *pSkin)
Definition: raGui.h:473
ID3DX11Effect * pEffect
Definition: raGui.h:323
raVector2 vCursorSize
Definition: raGui.h:324
const raVector2 & GetSize()
Definition: raGui.h:93
#define RAPI
Definition: raMain.h:11
ID3D11Texture2D * GetTexture()
Definition: raGui.h:183
void SetPasswordChar(char c)
Definition: raGui.h:265
void SetTextFlags(DWORD f)
Definition: raGui.h:162
RA_GMT_KEYREPEAT
Definition: raGui.h:17
void SetCursorPos(raVector2 v)
Definition: raGui.h:474
raGUISkin GetSkin()
Definition: raGui.h:468
void SetTopLeftTex(raVector2 v)
Definition: raGui.h:188
RA_GET_TEXT
Definition: raGui.h:47
raVector2 GetTopLeftTex()
Definition: raGui.h:184
RA_GET_RADIOBOX
Definition: raGui.h:47
Definition: raColor.h:5
raGUI * GetGUI()
Definition: raGui.h:91
raGUIListEntry * GetSelectedEntry()
Definition: raGui.h:313
void SetSize(raVector2 vSize)
Definition: raGui.h:99
raVector2 GetBottomRightTex()
Definition: raGui.h:185
int GetNumEntries()
Definition: raGui.h:312
void SetBottomRightTex(raVector2 v)
Definition: raGui.h:189
int iID
Definition: raGui.h:273
RA_GMT_KEYDOWN
Definition: raGui.h:17
RA_GMT_RENDER
Definition: raGui.h:17
RA_GMT_MOVE
Definition: raGui.h:17
void SetColor(raColor c)
Definition: raGui.h:190
raColor EnabledColor
Definition: raGui.h:329
void Show(BOOL bShow)
Definition: raGui.h:100
BOOL IsPassword()
Definition: raGui.h:260
void SetText(char *pcText)
Definition: raGui.h:236
static DWORD dwFVF
Definition: raGui.h:13
void SetCursor(int iCursor)
Definition: raGui.h:266
void SetTexture(ID3D11Texture2D *t)
Definition: raGui.h:187
void * GetMessageProc()
Definition: raGui.h:472
RA_GMT_ELEMENTCLICKED
Definition: raGui.h:17
RA_GMT_LBUTTONUP
Definition: raGui.h:17
RA_GMT_LBUTTONDOWN
Definition: raGui.h:17
BOOL WasButtonPressed(int b)
Definition: raGui.h:466
RA_GET_CHECKBOX
Definition: raGui.h:47
bool Clear()
Definition: raList.h:183
void * pData
Definition: raGui.h:275
raColor DisabledTextColor
Definition: raGui.h:334
Definition: raList.h:10
interface ID3DX11Effect ID3DX11Effect
void SetText(char *pcText)
Definition: raGui.h:263
void Enable(BOOL bEnable)
Definition: raGui.h:101
void SetText(char *pcText)
Definition: raGui.h:134
RA_GMT_DELETE
Definition: raGui.h:17
raColor HighlightTextColor
Definition: raGui.h:335
void SetPage(int iPage)
Definition: raGui.h:97
raColor CursorColor1
Definition: raGui.h:325
const raVector2 & GetPosition()
Definition: raGui.h:92
void SetText(char *pcText)
Definition: raGui.h:211
raColor DisabledColor
Definition: raGui.h:330
RA_GMT_RBUTTONUP
Definition: raGui.h:17
char * GetText()
Definition: raGui.h:155
Definition: raList.h:3
void Check(BOOL bCheck)
Definition: raGui.h:212
raGUIMessageType Type
Definition: raGui.h:37
raVector2 vTextSize
Definition: raGui.h:332
void SetCursor(int i)
Definition: raGui.h:314
ID3D11Buffer D3D11_BUFFER_DESC void * pData
Definition: raSDKmesh.h:238
RA_GET_INPUT
Definition: raGui.h:47
raGUIElementType GetType()
Definition: raGui.h:89
Definition: raGui.h:271
raColor EnabledTextColor
Definition: raGui.h:333
raColor GetColor()
Definition: raGui.h:186
float GetLineHeight()
Definition: raGui.h:311
raVector3 vPosition
Definition: raGui.h:9
RA_GET_FRAME
Definition: raGui.h:47
char GetPasswordChar()
Definition: raGui.h:261
float fCursorSpeed
Definition: raGui.h:328
void SetGroup(int iGroup)
Definition: raGui.h:237
ID3DX11Effect * GetImageEffect()
Definition: raGui.h:469
RA_GMT_CREATE
Definition: raGui.h:17
RA_GMT_RBUTTONDOWN
Definition: raGui.h:17
raVector2 vCursorHotSpot
Definition: raGui.h:327
RA_GMT_KEYUP
Definition: raGui.h:17
void SetPosition(raVector2 vPos)
Definition: raGui.h:98
BOOL WasButtonReleased(int b)
Definition: raGui.h:467
void SetColor(const raColor &c)
Definition: raGui.h:160
void SetMessageProc(void *pProc)
Definition: raGui.h:475
void SetText(char *pcText)
Definition: raGui.h:159
void SetLineHeight(float f)
Definition: raGui.h:315