summaryrefslogtreecommitdiffhomepage
path: root/dev/ZKA/Modules/CoreCG
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-08-24 15:46:47 +0200
committerAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-08-24 15:46:47 +0200
commit30e5aa322bf253cdf48cddf53a1c8a1e9720e705 (patch)
tree7fe1e6f95ff3dc5a78bb5594f443f8bb5e6ee929 /dev/ZKA/Modules/CoreCG
parent7b653878ee84add4172c20f13a436582c744a603 (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/CoreCG')
-rw-r--r--dev/ZKA/Modules/CoreCG/WindowRenderer.hxx29
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();
}