summaryrefslogtreecommitdiffhomepage
path: root/Public/Developer/SystemLib/Sources/Window.c
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@el-mahrouss-logic.com>2024-04-05 21:40:26 +0200
committerAmlal El Mahrouss <amlal@el-mahrouss-logic.com>2024-04-05 21:40:34 +0200
commit5152c2282a1a680a272322f0bd3275fdf43e1530 (patch)
tree9cb1272d1eb8e34212148408aba0bc2bc45c58d4 /Public/Developer/SystemLib/Sources/Window.c
parent21fe8d0b7d48e92ba0d45c084bf868c94bb67cd7 (diff)
WiP: Bump.
Signed-off-by: Amlal El Mahrouss <amlal@el-mahrouss-logic.com>
Diffstat (limited to 'Public/Developer/SystemLib/Sources/Window.c')
-rw-r--r--Public/Developer/SystemLib/Sources/Window.c28
1 files changed, 17 insertions, 11 deletions
diff --git a/Public/Developer/SystemLib/Sources/Window.c b/Public/Developer/SystemLib/Sources/Window.c
index 2527e041..196ac537 100644
--- a/Public/Developer/SystemLib/Sources/Window.c
+++ b/Public/Developer/SystemLib/Sources/Window.c
@@ -9,6 +9,14 @@
/// invalid resource handle, they always start from 1.
#define kInvalidRsrc (0U)
+/// @brief Color refs.
+
+const ColorRef kRgbRed = 0x000000FF;
+const ColorRef kRgbGreen = 0x0000FF00;
+const ColorRef kRgbBlue = 0x00FF0000;
+const ColorRef kRgbBlack = 0x00000000;
+const ColorRef kRgbWhite = 0xFFFFFFFF;
+
/////////////////////////////////////////////////////////////////////////
CA_EXTERN_C WindowPort* WmCreateWindow(const CharacterTypeUTF8* name,
@@ -16,6 +24,9 @@ CA_EXTERN_C WindowPort* WmCreateWindow(const CharacterTypeUTF8* name,
CA_MUST_PASS(name);
CA_MUST_PASS(rsrcId != kInvalidRsrc);
+ if (!name) return NullPtr;
+ if (rsrcId == kInvalidRsrc) return NullPtr;
+
return (WindowPort*)kSharedApplication->Invoke(
kSharedApplication, kCallCreateWindow, name, rsrcId);
}
@@ -24,6 +35,7 @@ CA_EXTERN_C WindowPort* WmCreateWindow(const CharacterTypeUTF8* name,
CA_EXTERN_C VoidType WmReleaseWindow(WindowPort* winPort) {
CA_MUST_PASS(winPort);
+ if (!winPort) return;
kSharedApplication->Invoke(kSharedApplication, kCallCloseWindow, winPort);
}
@@ -35,6 +47,9 @@ CA_EXTERN_C WindowPort* WmCreateMenu(const CharacterTypeUTF8* name,
CA_MUST_PASS(name);
CA_MUST_PASS(rsrcId != kInvalidRsrc);
+ if (!name) return NullPtr;
+ if (rsrcId == kInvalidRsrc) return NullPtr;
+
return (WindowPort*)kSharedApplication->Invoke(kSharedApplication,
kCallCreateMenu, name, rsrcId);
}
@@ -44,15 +59,14 @@ CA_EXTERN_C WindowPort* WmCreateMenu(const CharacterTypeUTF8* name,
CA_EXTERN_C VoidType WmReleaseMenu(WindowPort* winPort) {
CA_MUST_PASS(winPort);
+ if (!winPort) return;
kSharedApplication->Invoke(kSharedApplication, kCallCloseMenu, winPort);
}
/////////////////////////////////////////////////////////////////////////
CA_EXTERN_C Int32Type WmMoveWindow(WindowPort* id, WmPoint where) {
- if (!id) {
- return kWmErrInvalidArg;
- }
+ if (!id) return kWmErrInvalidArg;
id->windowPosition.X = where.X;
id->windowPosition.Y = where.Y;
@@ -60,11 +74,3 @@ CA_EXTERN_C Int32Type WmMoveWindow(WindowPort* id, WmPoint where) {
return 0;
}
-
-/// @brief Color refs.
-
-const ColorRef kRgbRed = 0x000000FF;
-const ColorRef kRgbGreen = 0x0000FF00;
-const ColorRef kRgbBlue = 0x00FF0000;
-const ColorRef kRgbBlack = 0x00000000;
-const ColorRef kRgbWhite = 0xFFFFFFFF;