Introduced const

This commit is contained in:
Rebekah 2022-04-22 23:26:14 -04:00
parent 5f3c03a8e8
commit 6a74df3391
Signed by: oneechanhax
GPG Key ID: 183EB7902964DAE5
17 changed files with 65 additions and 54 deletions

View File

@ -44,11 +44,11 @@ public:
[[deprecated]] int mouse_dy; [[deprecated]] int mouse_dy;
bool fake_scroll = false; bool fake_scroll = false;
glez::rgba GetColor(); glez::rgba GetColor() const;
bool gui_rainbow = true; bool gui_rainbow = true;
glez::rgba gui_color; glez::rgba gui_color;
glez::font& GetFont(); const glez::font& GetFont() const;
virtual void Update() override; virtual void Update() override;
virtual void OnKeyPress(CatKey key, bool repeat) override; virtual void OnKeyPress(CatKey key, bool repeat) override;

View File

@ -33,7 +33,7 @@ public:
ItemSublist(std::string title, List* list); ItemSublist(std::string title, List* list);
virtual void SetParent(IWidget*) override; virtual void SetParent(IWidget*) override;
virtual bool IsHovered() override; virtual bool IsHovered() const override;
virtual void Update() override; virtual void Update() override;
virtual void Draw(int x, int y) override; virtual void Draw(int x, int y) override;
virtual void OnKeyPress(CatKey code, bool repeated) override; virtual void OnKeyPress(CatKey code, bool repeated) override;

View File

@ -34,7 +34,7 @@ public:
void Change(float amount); void Change(float amount);
virtual void Update() override; virtual void Update() override;
virtual bool ConsumesKey(CatKey key) override; virtual bool ConsumesKey(CatKey key) const override;
virtual void OnMousePress() override; virtual void OnMousePress() override;
virtual void OnFocusLose() override; virtual void OnFocusLose() override;
virtual void OnKeyPress(CatKey key, bool repeat) override; virtual void OnKeyPress(CatKey key, bool repeat) override;

View File

@ -41,7 +41,7 @@ public:
public: public:
Background(); Background();
~Background(); ~Background();
virtual bool AlwaysVisible() override; virtual bool AlwaysVisible() const override;
virtual void Draw(int x, int y) override; virtual void Draw(int x, int y) override;
virtual void Update() override; virtual void Update() override;
void MakeParticle(); void MakeParticle();

View File

@ -28,7 +28,7 @@ namespace ncc {
class Logo : public CBaseWidget { class Logo : public CBaseWidget {
public: public:
Logo(IWidget*); Logo(IWidget*);
virtual bool AlwaysVisible() override; virtual bool AlwaysVisible() const override;
virtual void Draw(int x, int y) override; virtual void Draw(int x, int y) override;
virtual void OnMouseMove(std::pair<int, int>) override; virtual void OnMouseMove(std::pair<int, int>) override;
glez::texture texture; glez::texture texture;

View File

@ -37,7 +37,7 @@ public:
inline virtual void Draw(int x, int y) {}; inline virtual void Draw(int x, int y) {};
virtual void DrawBounds(int x, int y); virtual void DrawBounds(int x, int y);
inline virtual KeyValues* Props() { inline virtual KeyValues* Props() const {
return m_KeyValues; return m_KeyValues;
} }
@ -53,19 +53,19 @@ public:
inline virtual void HandleCustomEvent(std::string_view event) {}; inline virtual void HandleCustomEvent(std::string_view event) {};
inline virtual bool ConsumesKey(CatKey key) { return false; } inline virtual bool ConsumesKey(CatKey key) const { return false; }
inline virtual bool AlwaysVisible() { return this->always_visible; } inline virtual bool AlwaysVisible() const { return this->always_visible; }
inline virtual void Show() { this->visible = true; } inline virtual void Show() { this->visible = true; }
inline virtual void Hide() { this->visible = false; } inline virtual void Hide() { this->visible = false; }
virtual bool IsVisible(); virtual bool IsVisible() const;
virtual bool IsHovered(); virtual bool IsHovered() const;
virtual bool IsFocused(); virtual bool IsFocused() const;
virtual bool IsPressed(); virtual bool IsPressed() const;
inline virtual bool DoesStealFocus() { return true; } inline virtual bool DoesStealFocus() const { return true; }
inline virtual void SetOffset(int x, int y) { inline virtual void SetOffset(int x, int y) {
if (x >= 0) if (x >= 0)
@ -79,28 +79,29 @@ public:
if (y >= 0) if (y >= 0)
this->max_size.second = y; this->max_size.second = y;
} }
inline virtual std::pair<int, int> GetOffset() { inline virtual std::pair<int, int> GetOffset() const {
return this->offset; return this->offset;
} }
inline virtual std::pair<int, int> GetSize() { inline virtual std::pair<int, int> GetSize() const {
return this->size; return this->size;
} }
inline virtual std::pair<int, int> GetMaxSize() { inline virtual std::pair<int, int> GetMaxSize() const {
return this->max_size; return this->max_size;
} }
inline virtual int GetZIndex() { return this->zindex; } inline virtual int GetZIndex() const { return this->zindex; }
inline virtual void SetZIndex(int idx) { this->zindex = idx; } inline virtual void SetZIndex(int idx) { this->zindex = idx; }
inline virtual std::string GetTooltip() { return this->tooltip; } inline virtual std::string GetTooltip() const { return this->tooltip; }
inline virtual PositionMode GetPositionMode() { return this->positionmode; } inline virtual PositionMode GetPositionMode() const { return this->positionmode; }
inline virtual void SetPositionMode(PositionMode mode) { this->positionmode = mode; }; inline virtual void SetPositionMode(PositionMode mode) { this->positionmode = mode; };
inline virtual IWidget* GetParent() { return m_pParent; } inline virtual IWidget* GetParent() const { return m_pParent; }
inline virtual void SetParent(IWidget* parent) { m_pParent = parent; } inline virtual void SetParent(IWidget* parent) { m_pParent = parent; }
inline virtual std::string GetName() { return this->name; } inline virtual std::string GetName() const { return this->name; }
virtual const Canvas* GetCanvas() const;
virtual Canvas* GetCanvas(); virtual Canvas* GetCanvas();
std::pair<int, int> AbsolutePosition(); std::pair<int, int> AbsolutePosition() const;
inline void SetSize(int x, int y) { inline void SetSize(int x, int y) {
if (x >= 0) if (x >= 0)
this->size.first = x; this->size.first = x;

View File

@ -42,7 +42,7 @@ public:
virtual void Draw(int x, int y) = 0; virtual void Draw(int x, int y) = 0;
virtual void DrawBounds(int x, int y) = 0; virtual void DrawBounds(int x, int y) = 0;
virtual KeyValues* Props() = 0; virtual KeyValues* Props() const = 0;
virtual void OnMouseEnter() = 0; virtual void OnMouseEnter() = 0;
virtual void OnMouseLeave() = 0; virtual void OnMouseLeave() = 0;
@ -56,36 +56,37 @@ public:
virtual void HandleCustomEvent(std::string_view event) = 0; virtual void HandleCustomEvent(std::string_view event) = 0;
virtual bool ConsumesKey(CatKey key) = 0; virtual bool ConsumesKey(CatKey key) const = 0;
// Widget will be visible even when gui is turned off // Widget will be visible even when gui is turned off
virtual bool AlwaysVisible() = 0; virtual bool AlwaysVisible() const = 0;
virtual void Show() = 0; virtual void Show() = 0;
virtual void Hide() = 0; virtual void Hide() = 0;
virtual bool IsVisible() = 0; virtual bool IsVisible() const = 0;
virtual bool IsHovered() = 0; virtual bool IsHovered() const = 0;
virtual bool IsFocused() = 0; virtual bool IsFocused() const = 0;
virtual bool IsPressed() = 0; virtual bool IsPressed() const = 0;
virtual bool DoesStealFocus() = 0; virtual bool DoesStealFocus() const = 0;
virtual void SetOffset(int x, int y) = 0; virtual void SetOffset(int x, int y) = 0;
virtual void SetMaxSize(int x, int y) = 0; virtual void SetMaxSize(int x, int y) = 0;
virtual void SetSize(int x, int y) = 0; virtual void SetSize(int x, int y) = 0;
virtual std::pair<int, int> GetOffset() = 0; virtual std::pair<int, int> GetOffset() const = 0;
virtual std::pair<int, int> GetSize() = 0; virtual std::pair<int, int> GetSize() const = 0;
virtual std::pair<int, int> GetMaxSize() = 0; virtual std::pair<int, int> GetMaxSize() const = 0;
virtual int GetZIndex() = 0; virtual int GetZIndex() const = 0;
virtual void SetZIndex(int idx) = 0; virtual void SetZIndex(int idx) = 0;
virtual std::string GetTooltip() = 0; virtual std::string GetTooltip() const = 0;
virtual PositionMode GetPositionMode() = 0; virtual PositionMode GetPositionMode() const = 0;
virtual void SetPositionMode(PositionMode) = 0; virtual void SetPositionMode(PositionMode) = 0;
virtual IWidget* GetParent() = 0; virtual IWidget* GetParent() const = 0;
virtual void SetParent(IWidget*) = 0; virtual void SetParent(IWidget*) = 0;
virtual std::string GetName() = 0; virtual std::string GetName() const = 0;
virtual const Canvas* GetCanvas() const = 0;
virtual Canvas* GetCanvas() = 0; virtual Canvas* GetCanvas() = 0;
}; };

View File

@ -41,7 +41,7 @@ public:
virtual void Draw(int x, int y) override; virtual void Draw(int x, int y) override;
virtual void OnMousePress() override; virtual void OnMousePress() override;
virtual void OnFocusLose() override; virtual void OnFocusLose() override;
virtual bool ConsumesKey(CatKey key) override; virtual bool ConsumesKey(CatKey key) const override;
bool capturing; bool capturing;
int value; int value;
}; };

View File

@ -222,10 +222,10 @@ static glez::rgba RainbowCurrent() {
return FromHSL(fabs(sin(ctime.count())) * 360.0f, 0.85f, 0.9f); return FromHSL(fabs(sin(ctime.count())) * 360.0f, 0.85f, 0.9f);
} }
glez::rgba Canvas::GetColor() { glez::rgba Canvas::GetColor() const {
return gui_rainbow ? RainbowCurrent() : gui_color; return gui_rainbow ? RainbowCurrent() : gui_color;
} }
glez::font& Canvas::GetFont() { const glez::font& Canvas::GetFont() const {
return this->font; return this->font;
} }
void Canvas::OnKeyPress(CatKey key, bool repeat) { void Canvas::OnKeyPress(CatKey key, bool repeat) {

View File

@ -41,7 +41,7 @@ void ItemSublist::SetParent(IWidget* widget) {
listp->AddChild(list); listp->AddChild(list);
} }
bool ItemSublist::IsHovered() { bool ItemSublist::IsHovered() const {
List* parent = dynamic_cast<List*>(GetParent()); List* parent = dynamic_cast<List*>(GetParent());
if (!parent) if (!parent)
throw std::runtime_error("Sublist parent can't be casted to List!"); throw std::runtime_error("Sublist parent can't be casted to List!");

View File

@ -60,7 +60,7 @@ void ItemVariable::Change(float amount) {
} }
} }
bool ItemVariable::ConsumesKey(CatKey key) { bool ItemVariable::ConsumesKey(CatKey key) const {
if (capturing) if (capturing)
return true; return true;
if (key == CatKey::CATKEY_M_WHEEL_DOWN || key == CatKey::CATKEY_M_WHEEL_UP || key == CatKey::CATKEY_MOUSE_1) if (key == CatKey::CATKEY_M_WHEEL_DOWN || key == CatKey::CATKEY_M_WHEEL_UP || key == CatKey::CATKEY_MOUSE_1)

View File

@ -55,7 +55,7 @@ Background::Background()
this->zindex = -999; this->zindex = -999;
} }
bool Background::AlwaysVisible() { bool Background::AlwaysVisible() const {
return (int)particles == 2; return (int)particles == 2;
} }

View File

@ -35,7 +35,7 @@ Logo::Logo(IWidget* parent)
SetSize(576, 288); SetSize(576, 288);
} }
bool Logo::AlwaysVisible() { bool Logo::AlwaysVisible() const {
return (int)logo == 2; return (int)logo == 2;
} }

View File

@ -30,7 +30,7 @@ public:
virtual void Draw(int x, int y) override; virtual void Draw(int x, int y) override;
virtual void HandleCustomEvent(std::string_view event) override; virtual void HandleCustomEvent(std::string_view event) override;
inline virtual PositionMode GetPositionMode() override { return PositionMode::FLOATING; } inline virtual PositionMode GetPositionMode() const override { return PositionMode::FLOATING; }
std::pair<int, int> padding; std::pair<int, int> padding;
}; };

View File

@ -33,15 +33,15 @@ void CBaseWidget::DrawBounds(int x, int y) {
glez::draw::rect_outline(x, y, size.first, size.second, *this->bounds_color, 1); glez::draw::rect_outline(x, y, size.first, size.second, *this->bounds_color, 1);
} }
bool CBaseWidget::IsHovered() { bool CBaseWidget::IsHovered() const {
return this->GetCanvas()->IsVisible() && this->hover; return this->GetCanvas()->IsVisible() && this->hover;
} }
bool CBaseWidget::IsFocused() { bool CBaseWidget::IsFocused() const {
return this->GetCanvas()->IsVisible() && this->focus; return this->GetCanvas()->IsVisible() && this->focus;
} }
bool CBaseWidget::IsPressed() { bool CBaseWidget::IsPressed() const {
return this->GetCanvas()->IsVisible() && this->press; return this->GetCanvas()->IsVisible() && this->press;
} }
@ -66,7 +66,7 @@ void CBaseWidget::Update() {
} }
} }
std::pair<int, int> CBaseWidget::AbsolutePosition() { std::pair<int, int> CBaseWidget::AbsolutePosition() const {
auto result = GetOffset(); auto result = GetOffset();
auto parent = GetParent(); auto parent = GetParent();
while (parent) { while (parent) {
@ -78,10 +78,19 @@ std::pair<int, int> CBaseWidget::AbsolutePosition() {
return result; return result;
} }
bool CBaseWidget::IsVisible() { bool CBaseWidget::IsVisible() const {
return this->visible && (!this->GetParent() || GetParent()->IsVisible()); return this->visible && (!this->GetParent() || GetParent()->IsVisible());
} }
const Canvas* CBaseWidget::GetCanvas() const {
auto* ret = dynamic_cast<const Canvas*>(this);
if (ret)
return ret;
ret = this->GetParent()->GetCanvas();
assert(ret);
return ret;
}
Canvas* CBaseWidget::GetCanvas() { Canvas* CBaseWidget::GetCanvas() {
auto* ret = dynamic_cast<Canvas*>(this); auto* ret = dynamic_cast<Canvas*>(this);
if (ret) if (ret)

View File

@ -72,7 +72,7 @@ void CKeyInput::OnFocusLose() {
this->capturing = false; this->capturing = false;
} }
bool CKeyInput::ConsumesKey(CatKey key) { bool CKeyInput::ConsumesKey(CatKey key) const {
return key != CatKey::CATKEY_MOUSE_1 && this->capturing; return key != CatKey::CATKEY_MOUSE_1 && this->capturing;
} }

View File

@ -24,7 +24,7 @@
#include "gui/canvas.hpp" #include "gui/canvas.hpp"
static std::string WordWrap(std::string& in, int max, glez::font& font) { static std::string WordWrap(std::string& in, int max, const glez::font& font) {
std::stringstream result, line, wordstream, next; std::stringstream result, line, wordstream, next;
std::string word; std::string word;
char ch; char ch;