mirror of
https://github.com/Fennix-Project/Kernel.git
synced 2025-07-05 20:39:19 +00:00
Very simple GUI stub
This commit is contained in:
52
GUI/GUITools.cpp
Normal file
52
GUI/GUITools.cpp
Normal file
@ -0,0 +1,52 @@
|
||||
#include <gui.hpp>
|
||||
|
||||
#include "../kernel.h"
|
||||
|
||||
namespace GraphicalUserInterface
|
||||
{
|
||||
void PutRect(uint32_t X, uint32_t Y, uint32_t Width, uint32_t Height, uint32_t Color)
|
||||
{
|
||||
for (uint32_t i = 0; i < Width; i++)
|
||||
for (uint32_t j = 0; j < Height; j++)
|
||||
Display->SetPixel(X + i, Y + j, Color, 200);
|
||||
}
|
||||
|
||||
void PutBorder(uint32_t X, uint32_t Y, uint32_t Width, uint32_t Height, uint32_t Color)
|
||||
{
|
||||
for (uint32_t i = 0; i < Width; i++)
|
||||
{
|
||||
Display->SetPixel(X + i, Y, Color, 200);
|
||||
Display->SetPixel(X + i, Y + Height - 1, Color, 200);
|
||||
}
|
||||
for (uint32_t i = 0; i < Height; i++)
|
||||
{
|
||||
Display->SetPixel(X, Y + i, Color, 200);
|
||||
Display->SetPixel(X + Width - 1, Y + i, Color, 200);
|
||||
}
|
||||
}
|
||||
|
||||
void PutBorderWithShadow(uint32_t X, uint32_t Y, uint32_t Width, uint32_t Height, uint32_t Color)
|
||||
{
|
||||
uint32_t ShadowColor = (Color ? (Color / 2) : 0x000000);
|
||||
for (uint32_t i = 0; i < Width; i++)
|
||||
{
|
||||
Display->SetPixel(X + i, Y, Color, 200);
|
||||
Display->SetPixel(X + i, Y + Height - 1, Color, 200);
|
||||
}
|
||||
for (uint32_t i = 0; i < Height; i++)
|
||||
{
|
||||
Display->SetPixel(X, Y + i, Color, 200);
|
||||
Display->SetPixel(X + Width - 1, Y + i, Color, 200);
|
||||
}
|
||||
for (uint32_t i = 0; i < Width; i++)
|
||||
{
|
||||
Display->SetPixel(X + i, Y + 1, ShadowColor, 200);
|
||||
Display->SetPixel(X + i, Y + Height - 2, ShadowColor, 200);
|
||||
}
|
||||
for (uint32_t i = 0; i < Height; i++)
|
||||
{
|
||||
Display->SetPixel(X + 1, Y + i, ShadowColor, 200);
|
||||
Display->SetPixel(X + Width - 2, Y + i, ShadowColor, 200);
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user