diff options
| author | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2024-08-24 15:46:47 +0200 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2024-08-24 15:46:47 +0200 |
| commit | 30e5aa322bf253cdf48cddf53a1c8a1e9720e705 (patch) | |
| tree | 7fe1e6f95ff3dc5a78bb5594f443f8bb5e6ee929 /dev/ZKA/Modules | |
| parent | 7b653878ee84add4172c20f13a436582c744a603 (diff) | |
[CG] Add button control and worked on improving CG.
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'dev/ZKA/Modules')
| -rw-r--r-- | dev/ZKA/Modules/CoreCG/WindowRenderer.hxx | 29 |
1 files changed, 16 insertions, 13 deletions
diff --git a/dev/ZKA/Modules/CoreCG/WindowRenderer.hxx b/dev/ZKA/Modules/CoreCG/WindowRenderer.hxx index 59ebd9f2..16e4c14c 100644 --- a/dev/ZKA/Modules/CoreCG/WindowRenderer.hxx +++ b/dev/ZKA/Modules/CoreCG/WindowRenderer.hxx @@ -25,6 +25,8 @@ namespace CG enum { cWndFlagNoShow = 0x04, + cWndFlagButton = 0x08, + cWndFlagWindow = 0x0A, }; struct UI_WINDOW_STRUCT final @@ -44,15 +46,6 @@ namespace CG inline struct UI_WINDOW_STRUCT* CGCreateWindow(Int32 flags, const Char* window_name, const Char* class_name, Int32 x, Int32 y, Int32 width, Int32 height) { - const auto cMaxLimit = 214; - - if (width < cMaxLimit || - height < cMaxLimit) - { - ErrLocal() = kErrorInvalidData; - return nullptr; - } - UI_WINDOW_STRUCT* wnd = new UI_WINDOW_STRUCT(); if (!wnd) @@ -140,11 +133,21 @@ namespace CG CGInit(); - CGDrawBitMapInRegion(wnd[index]->display_ptr, wnd[index]->w_h, wnd[index]->w_w, wnd[index]->w_y, wnd[index]->w_x); - CGDrawInRegion(CGColor(0xFF, 0xFF, 0xFF), wnd[index]->w_w, FLATCONTROLS_HEIGHT, wnd[index]->w_y, wnd[index]->w_x); - CGDrawBitMapInRegion(FlatControls, FLATCONTROLS_HEIGHT, FLATCONTROLS_WIDTH, wnd[index]->w_y, wnd[index]->w_x+wnd[index]->w_w-FLATCONTROLS_WIDTH); + // Draw fake controls, just for the looks of it (WINDOW ONLY) + if ((wnd[index]->w_flags & cWndFlagWindow) == cWndFlagWindow) + { + CGDrawBitMapInRegion(wnd[index]->display_ptr, wnd[index]->w_h, wnd[index]->w_w, wnd[index]->w_y, wnd[index]->w_x); + CGDrawInRegion(CGColor(0xFF, 0xFF, 0xFF), wnd[index]->w_w, FLATCONTROLS_HEIGHT, wnd[index]->w_y, wnd[index]->w_x); - CGDrawString(wnd[index]->w_window_name, wnd[index]->w_y + 8, wnd[index]->w_x + 8, CGColor(0x00, 0x00, 0x00)); + CGDrawBitMapInRegion(FlatControls, FLATCONTROLS_HEIGHT, FLATCONTROLS_WIDTH, wnd[index]->w_y, wnd[index]->w_x + wnd[index]->w_w - FLATCONTROLS_WIDTH); + CGDrawString(wnd[index]->w_window_name, wnd[index]->w_y + 8, wnd[index]->w_x + 8, CGColor(0x00, 0x00, 0x00)); + } + else if ((wnd[index]->w_flags & cWndFlagButton) == cWndFlagButton) + { + CGDrawInRegion(CGColor(0xD3, 0x74, 0x00), wnd[index]->w_w + 1, wnd[index]->w_h + 1, wnd[index]->w_y, wnd[index]->w_x); + CGDrawInRegion(CGColor(0xFF, 0xFF, 0xFF), wnd[index]->w_w - 1, wnd[index]->w_h - 1, wnd[index]->w_y + 1, wnd[index]->w_x + 1); + CGDrawString(wnd[index]->w_window_name, wnd[index]->w_y + (wnd[index]->w_y / 2) - 1, wnd[index]->w_x + (wnd[index]->w_x / 2), CGColor(0x00, 0x00, 0x00)); + } CGFini(); } |
