mirror of
https://gitlab.com/hashborgir/d2tweaks-rnd2k.git
synced 2025-12-15 11:41:35 -06:00
Initial commit
This commit is contained in:
57
include/d2tweaks/ui/rect.h
Normal file
57
include/d2tweaks/ui/rect.h
Normal file
@@ -0,0 +1,57 @@
|
||||
#pragma once
|
||||
|
||||
#include <cstdint>
|
||||
|
||||
namespace d2_tweaks {
|
||||
namespace ui {
|
||||
//Special ui rectangle with starting point in the left bottom corner
|
||||
class rect {
|
||||
int32_t m_x, m_y, m_w, m_h;
|
||||
public:
|
||||
rect() : m_x(0), m_y(0), m_w(0), m_h(0) {}
|
||||
rect(int32_t x, int32_t y, int32_t width, int32_t height) : m_x(x), m_y(y), m_w(width), m_h(height) {}
|
||||
|
||||
int32_t get_x() const {
|
||||
return m_x;
|
||||
}
|
||||
|
||||
void set_x(int32_t value) {
|
||||
m_x = value;
|
||||
}
|
||||
|
||||
int32_t get_y() const {
|
||||
return m_y;
|
||||
}
|
||||
|
||||
void set_y(int32_t value) {
|
||||
m_y = value;
|
||||
}
|
||||
|
||||
void set_width(int32_t value) {
|
||||
m_w = value;
|
||||
}
|
||||
|
||||
int32_t get_width() const {
|
||||
return m_w;
|
||||
}
|
||||
|
||||
void set_height(int32_t value) {
|
||||
m_h = value;
|
||||
}
|
||||
|
||||
int32_t get_height() const {
|
||||
return m_h;
|
||||
}
|
||||
|
||||
bool contains(int32_t x, int32_t y) const {
|
||||
return x >= m_x && x < m_x + m_w &&
|
||||
y > m_y - m_h && y <= m_y;
|
||||
}
|
||||
|
||||
bool contains(int32_t x, int32_t y, int32_t offsetX, int32_t offsetY) const {
|
||||
return x >= m_x + offsetX && x < m_x + offsetX + m_w &&
|
||||
y > m_y + offsetY - m_h && y <= m_y + offsetY;
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user