34#include <NDEVR/RibbonArea.h>
198 virtual QIcon
getIcon()
const {
return QIcon(); };
The core container for objects using the NDEVR API Widget Docking system.
void receiveFullScreenButtonClicked()
Processes a fullscreen button click by emitting the fullscreenSignal.
virtual TranslatedString getTitle() const
Returns the translated title text displayed on this tab.
QPointF m_drag_start_pos
The global position where a drag operation started.
void clickedSignal(SectionContent *content)
Emitted when the tab is clicked.
bool event(QEvent *event) override
Processes generic events such as style changes.
virtual bool isMovable() const
Returns whether this tab can be moved (dragged) by the user.
bool m_tab_moving
Whether the tab is currently being dragged.
void updateRoundedCorners()
Updates the rounded corner radii based on the current docking position.
void isShownUpdated(bool is_shown)
Emitted when the shown state of this tab changes.
QPointF m_local_drag_pos
The local position within the tab where the drag started.
void updateClosableSignal()
Emitted to request an update of the closable state.
virtual void setDocked(bool is_docked)=0
Sets whether this tab is in a docked state.
void setActiveTab(bool active)
Sets whether this tab is the active (selected) tab.
void updateMoveableSignal()
Emitted to request an update of the moveable state.
void setSectionContent(SectionContent *content)
Sets the section content associated with this tab.
virtual void setSelected(bool is_selected)=0
Sets the selected visual state of this tab.
SectionTab(SectionContent *content, QWidget *parent)
Constructs a SectionTab associated with the given section content and parent widget.
virtual void mouseMoveEvent(QMouseEvent *ev) override
Handles mouse move events during tab dragging.
bool m_active_tab
Whether this is the currently active tab.
void fullscreenSignal(bool fullscreen)
Emitted when the fullscreen state is toggled.
FloatingWidget * m_floating_widget
The floating widget hosting this tab, if any.
SectionContent * m_content
The section content this tab represents.
void closableUpdated(bool is_closeable)
Emitted when the closable state of this tab changes.
void setRoundedCorners(int radius_tl, int radius_tr, int radius_bl, int radius_br)
Sets the rounded corner radii for each corner of the tab.
virtual void setLocation(RibbonArea area, bool is_docked)=0
Sets the layout location and docked state of this tab.
void setIsShown(bool shown)
Sets whether this tab should be shown or hidden.
virtual void mouseReleaseEvent(QMouseEvent *ev) override
Handles mouse release events to complete tab dragging or selection.
void closedSignal(SectionContent *content)
Emitted when the tab's close action is triggered.
void moveableUpdated(bool is_moveable)
Emitted when the moveable state of this tab changes.
virtual void leaveEvent(QEvent *event) override
Handles the leave event when the mouse exits the tab.
void activeTabChanged()
Emitted when the active tab changes.
virtual void mousePressEvent(QMouseEvent *event) override
Handles mouse press events to initiate tab dragging.
virtual QIcon getIcon() const
Returns the icon displayed on this tab.
bool m_is_fullscreen
Whether the associated content is in fullscreen mode.
bool isActiveTab() const
Returns whether this tab is currently the active (selected) tab.
void receiveCloseButtonClicked()
Processes a close button click by emitting the closedSignal.
virtual void setFullscreen(bool fullscreen)
Sets whether the associated content is displayed in fullscreen mode.
virtual void setFloatingWidget(FloatingWidget *widget)
Assigns the floating widget that contains this tab when undocked.
virtual bool isShown() const
Returns whether this tab is currently shown.
void fullscreenUpdated(bool is_fullscreen)
Emitted when the fullscreen state of this tab changes.
The core String class for the NDEVR API.
Any text displayed to the user should be defined as a TranslatedString which allows the program to lo...
The primary namespace for the NDEVR SDK.
RibbonArea
Requests a ribbon or tab area to be in a certain location and orientation relative to another widget.