summaryrefslogtreecommitdiffhomepage
path: root/dev/Usr/LibCF/Core.cc
diff options
context:
space:
mode:
authorAmlal <amlal.elmahrouss@icloud.com>2025-02-24 09:07:56 +0100
committerAmlal <amlal.elmahrouss@icloud.com>2025-02-24 09:07:56 +0100
commit40773d41fa7898e7f03b0de011a9740061ade0aa (patch)
tree66a425fdc830be4ea33b1d75454038036f17d3c7 /dev/Usr/LibCF/Core.cc
parentcb6d0477d6ea65b6364bfbcd872552bec6fbc22a (diff)
Add LibFont and LibLocale, port structs that I made for app-kit to LibCF too.
Signed-off-by: Amlal <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'dev/Usr/LibCF/Core.cc')
-rw-r--r--dev/Usr/LibCF/Core.cc48
1 files changed, 48 insertions, 0 deletions
diff --git a/dev/Usr/LibCF/Core.cc b/dev/Usr/LibCF/Core.cc
new file mode 100644
index 00000000..28306c56
--- /dev/null
+++ b/dev/Usr/LibCF/Core.cc
@@ -0,0 +1,48 @@
+/* -------------------------------------------
+
+ Copyright (C) 2024 Amlal El Mahrouss, all rights reserved
+
+------------------------------------------- */
+
+#include <LibCF/Core.h>
+
+LibCF::CFRect::operator bool()
+{
+ return width > 0 && height > 0;
+}
+
+/***********************************************************************************/
+/// @brief returns true if size matches.
+/***********************************************************************************/
+BOOL LibCF::CFRect::sizeMatches(LibCF::CFRect& rect) noexcept
+{
+ return rect.height == height && rect.width == width;
+}
+
+/***********************************************************************************/
+/// @brief returns true if position matches.
+/***********************************************************************************/
+BOOL LibCF::CFRect::positionMatches(LibCF::CFRect& rect) noexcept
+{
+ return rect.y == y && rect.x == x;
+}
+
+/***********************************************************************************/
+/// @brief Check if point is within the current MLPoint.
+/// @param point the current point to check.
+/// @retval true if point is within this point.
+/// @retval the validations have failed, false otherwise true.
+/***********************************************************************************/
+BOOL LibCF::CFPoint::isWithin(LibCF::CFPoint& withinOf)
+{
+ return x_1 >= withinOf.x_1 && x_2 <= (withinOf.x_2) &&
+ y_1 >= withinOf.y_1 && y_2 <= (withinOf.y_2);
+}
+
+/***********************************************************************************/
+/// @brief if Point object is correctly set up.
+/***********************************************************************************/
+LibCF::CFPoint::operator bool()
+{
+ return x_1 > x_2 && y_1 > y_2;
+} \ No newline at end of file