Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!
Werbeanzeige
Zitat
Nartürlich, D. Scherfgen möchte auch Geld verdienen, aber, ich glaube, dies währe alles doch eine Überlegung wert.
Zitat
und auch Turiotals, eine Online-Bibliothek...
Anonymous
unregistriert
Quellcode |
|
1 2 3 4 5 6 7 8 9 |
// Vertexformat #define DRX_GUI_FVF (D3DFVF_XYZRHW | D3DFVF_DIFFUSE | D3DFVF_TEX1) struct DIREX_API drxGUIVertex { drxVector3 vPosition; // Positionsangabe float fRHW; // 1/w D3DCOLOR Diffuse; // Streufarbe drxVector2 vTexture; // Texturkoordinaten }; |
Quellcode |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
// Aufzählung für Nachrichtentypen enum DIREX_API drxGUIMessageType { DRX_GMT_CREATE, // Das Element wurde erstellt. DRX_GMT_DELETE, // Das Element wird gelöscht. DRX_GMT_ENTERPAGE, // Betreten einer Seite DRX_GMT_MOVE, // Das Element soll bewegt werden. DRX_GMT_RENDER, // Das Element soll gerendert werden. DRX_GMT_ELEMENTCLICKED, // Ein Element wurde angeklickt. DRX_GMT_LBUTTONDOWN, // Linker Mausknopf gedrückt DRX_GMT_LBUTTONUP, // Linker Mausknopf losgelassen DRX_GMT_RBUTTONDOWN, // Rechter Mausknopf gedrückt DRX_GMT_RBUTTONUP, // Rechter Mausknopf losgelassen DRX_GMT_KEYDOWN, // Tastaturtaste gedrückt DRX_GMT_KEYUP, // Tastaturtaste losgelassen DRX_GMT_KEYREPEAT, // Wiederholter Knopfdruck (Taste bleibt gedrückt) DRX_GMT_SELECTION // Auswahl bei einer Liste wurde geändert }; |
Quellcode |
|
1 2 3 4 5 6 7 8 |
// Struktur für eine Nachricht struct DIREX_API drxGUIMessage { drxGUIMessageType Type; // Typ der Nachricht int aiInt[8]; // 8 Integer float afFloat[8]; // 8 Fließkommazahlen void* apPointer[8]; // 8 Zeiger }; |
Quellcode |
|
1 2 3 4 5 6 7 8 9 10 11 12 |
// Aufzählung für Oberflächenelementtypen enum DIREX_API drxGUIElementType { DRX_GET_FRAME, // Rahmen DRX_GET_BUTTON, // Knopf DRX_GET_TEXT, // Text DRX_GET_IMAGE, // Bild DRX_GET_CHECKBOX, // Check-Box DRX_GET_RADIOBOX, // Radio-Box DRX_GET_INPUT, // Eingabefeld DRX_GET_LIST, // Liste }; |
Quellcode |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
// Klasse für ein Oberflächenelement class DIREX_API drxGUIElement { friend class drxGUI; friend class drxGUIFrame; friend class drxGUIButton; friend class drxGUIText; friend class drxGUIImage; friend class drxGUICheckBox; friend class drxGUIRadioBox; friend class drxGUIInput; friend class drxGUIList; private: // Variablen // ID des Elements int m_iID; // Typ des Elements drxGUIElementType m_Type; // Auf welcher Seite ist das Element? int m_iPage; // Zu welcher Oberfläche das Element gehört drxGUI* m_pGUI; // Position der linken oberen Ecke drxVector2 m_vPosition; // Breite und Höhe drxVector2 m_vSize; // Sichtbar? BOOL m_bVisible; // Aktiviert? BOOL m_bEnabled; // Wird das Element gerade gedrückt? BOOL m_bPressed; public: // Methoden // Das Element erhält eine Nachricht. virtual drxResult ReceiveMessage(const drxGUIMessage* pMsg) = 0; // Inline-Methoden inline int GetID() {return m_iID;} inline drxGUIElementType GetType() {return m_Type;} inline int GetPage() {return m_iPage;} inline drxGUI* GetGUI() {return m_pGUI;} inline drxVector2 GetPosition() {return m_vPosition;} inline drxVector2 GetSize() {return m_vSize;} inline BOOL IsVisible() {return m_bVisible;} inline BOOL IsEnabled() {return m_bEnabled;} inline BOOL IsPressed() {return m_bPressed;} inline void SetPage(int iPage) {m_iPage = iPage;} inline void SetPosition(drxVector2 vPos) {m_vPosition = vPos;} inline void SetSize(drxVector2 vSize) {m_vSize = vSize;} inline void Show(BOOL bShow) {m_bVisible = bShow;} inline void Enable(BOOL bEnable) {m_bEnabled = bEnable;} }; |
Anonymous
unregistriert
Anonymous
unregistriert
Anonymous
unregistriert
Administrator
Anonymous
unregistriert
Werbeanzeige