Ember
Loading...
Searching...
No Matches
ForgeTreeCanvas.h
Go to the documentation of this file.
1#pragma once
2
4
5namespace EmberForge {
6
8 public:
9 ForgeTreeCanvas(wxWindow *parent, wxWindowID id = wxID_ANY);
10
11 void LoadPreferences();
12
13 protected:
14 void OnBeforePaintOverlays(wxDC &dc) override;
15 void OnKeyDown(wxKeyEvent &event) override;
16 wxColour GetNodeFillColor(EmberCore::ITreeNode *node, bool selected, bool hovered) override;
17 wxColour GetNodeBorderColor(EmberCore::ITreeNode *node, bool selected, bool hovered) override;
18 wxColour GetNodeTextColor(EmberCore::ITreeNode *node, bool selected, bool hovered) override;
19
20 private:
21 static wxColour ApplyTint(const wxColour &color, float tint);
22 bool MatchesHotkey(int keyCode, const EmberCore::String &hotkeyStr) const;
23};
24
25} // namespace EmberForge
Abstract interface for tree nodes that can be visualized.
Definition ITreeNode.h:31
static wxColour ApplyTint(const wxColour &color, float tint)
bool MatchesHotkey(int keyCode, const EmberCore::String &hotkeyStr) const
wxColour GetNodeTextColor(EmberCore::ITreeNode *node, bool selected, bool hovered) override
Returns the text color for a node; override for custom coloring.
wxColour GetNodeFillColor(EmberCore::ITreeNode *node, bool selected, bool hovered) override
Returns the fill color for a node; override for custom coloring.
void OnKeyDown(wxKeyEvent &event) override
Key down handler; override for custom key handling.
wxColour GetNodeBorderColor(EmberCore::ITreeNode *node, bool selected, bool hovered) override
Returns the border color for a node; override for custom coloring.
void OnBeforePaintOverlays(wxDC &dc) override
Called before painting overlays; override to draw custom overlays.
ForgeTreeCanvas(wxWindow *parent, wxWindowID id=wxID_ANY)
Shared tree rendering canvas usable by both EmberForge and EmberMonitor.
Definition TreeCanvas.h:76
std::string String
Framework-agnostic string type.
Definition String.h:14