19#include <application.h>
51 using Application::Application;
100 static inline std::array<ImTextureID, 2>
m_InsLogo{
nullptr,
nullptr };
123 constexpr static float BOTTOM_VIEW_COLLAPSED_MIN_HEIGHT = 23.0F;
124 constexpr static float BOTTOM_VIEW_UNCOLLAPSED_MIN_HEIGHT = 200.0F;
127 enum class BottomViewTabItem
133 BottomViewTabItem bottomViewSelectedTab = BottomViewTabItem::None;
134 inline static float bottomViewHeight = BOTTOM_VIEW_COLLAPSED_MIN_HEIGHT;
137 ImTextureID m_HeaderBackground =
nullptr;
142 COLOR_GROUP_HEADER_TEXT,
143 COLOR_GROUP_HEADER_BG,
144 COLOR_GROUP_OUTER_BORDER,
147 std::vector<ImVec4> m_colors = {
148 { 1.0, 1.0, 1.0, 1.0 },
149 { 1.0, 1.0, 1.0, 0.25 },
150 { 1.0, 1.0, 1.0, 0.25 },
153 std::vector<const char*> m_colorsNames = {
Font size chooser window.
GlobalActions
Possible Global Actions to perform in the GUI.
Definition GlobalActions.hpp:18
@ None
None.
Definition GlobalActions.hpp:19
Abstract parent class for all nodes.
Definition Node.hpp:86
Pins in the GUI for information exchange.
Definition Pin.hpp:43
Application class providing all relevant GUI callbacks.
Definition NodeEditorApplication.hpp:35
static ImPlotStyle imPlotReferenceStyle
Default style of the ImPlot library to compare changes against.
Definition NodeEditorApplication.hpp:106
static float defaultFontRatio()
Ratio to multiply for default GUI elements.
static std::array< ImTextureID, 2 > m_InstinctLogo
Pointer to the texture for the instinct logo.
Definition NodeEditorApplication.hpp:97
static float leftPaneWidth
Width of the left pane.
Definition NodeEditorApplication.hpp:108
static constexpr float SPLITTER_THICKNESS
Thickness of the splitter between left and right pane.
Definition NodeEditorApplication.hpp:111
NodeEditorApplication & operator=(const NodeEditorApplication &)=delete
Copy assignment operator.
static float windowFontRatio()
Ratio to multiply for GUI window elements.
bool OnQuitRequest() override
Called when the user request the application to close.
static float headerFontRatio()
Ratio to multiply for node header elements.
static ImTextureID m_RoseFigure
Pointer to the texture for the rose figure (ImuSimulator node)
Definition NodeEditorApplication.hpp:103
static std::array< ImTextureID, 2 > m_InsLogo
Pointer to the texture for the INS logo.
Definition NodeEditorApplication.hpp:100
void OnStart() override
Called when the application is started.
static void ShowRenameNodeRequest(Node *&renameNode)
Shows a PopupModal where the user can rename the node.
static float monoFontRatio()
Ratio to multiply for log output GUI elements.
NodeEditorApplication(NodeEditorApplication &&)=delete
Move constructor.
void ShowSaveAsRequested()
Shows a PopupModel where the user can select a path to save his flow to.
NodeEditorApplication(const NodeEditorApplication &)=delete
Copy constructor.
friend void windows::ShowFontSizeEditor(bool *show)
Shows a window for choosing the font size.
static bool _showQueueSizeOnPins
Shows the queue size on the pins (every frame the queue mutex will be locked)
Definition NodeEditorApplication.hpp:94
void ShowLoadRequested()
Shows a PopupModel loading a new flow.
static void ShowRenamePinRequest(Pin *&renamePin)
Shows a PopupModal where the user can rename the pin.
void ShowQuitRequested()
Shows a PopupModal asking the user if he wants to quit with unsaved changes.
void OnStop() override
Called when the application is stopped.
NodeEditorApplication()=delete
Default constructor.
void ShowClearNodesRequested()
Shows a PopupModel to clear the current flow.
void OnFrame(float deltaTime) override
Called on every frame.
static float rightPaneWidth
Width of the right pane.
Definition NodeEditorApplication.hpp:109
~NodeEditorApplication() override=default
Destructor.
NodeEditorApplication & operator=(NodeEditorApplication &&)=delete
Move assignment operator.
int frameCountNavigate
Frame counter to block the navigate to content function till nodes are correctly loaded.
Definition NodeEditorApplication.hpp:91
static float menuBarHeight
Height of the menu bar on top.
Definition NodeEditorApplication.hpp:110