ManiVault 1.0.0
A Flexible and Extensible Visual Analytics Framework for High-Dimensional Data
Loading...
Searching...
No Matches
hdps::gui::GroupAction Class Reference

#include <GroupAction.h>

Inheritance diagram for hdps::gui::GroupAction:
hdps::gui::WidgetAction hdps::util::Serializable hdps::gui::NumericalRangeAction< float, DecimalAction > hdps::gui::NumericalRangeAction< std::int32_t, IntegralAction > hdps::gui::RectangleAction< QRectF, DecimalRangeAction > hdps::gui::RectangleAction< QRect, IntegralRangeAction > InfoAction InfoAction InfoAction hdps::GlobalSettingsGroupAction hdps::gui::HorizontalGroupAction hdps::gui::LockingAction hdps::gui::NumericalRangeAction< NumericalType, NumericalActionType > hdps::gui::PixelSelectionAction hdps::gui::RectangleAction< RectangleType, NumericalRangeActionType > hdps::gui::VerticalGroupAction hdps::gui::WindowLevelAction

Classes

class  HorizontalWidget
 
class  VerticalWidget
 

Public Types

enum  WidgetFlag {
  Horizontal = 0x00001 , Vertical = 0x00002 , NoMargins = 0x00010 , WithMargins = 0x00020 ,
  Default = Horizontal
}
 
enum class  LabelSizingType { Auto , Percentage , Fixed }
 
using WidgetFlagsMap = QMap< const WidgetAction *, std::int32_t >
 
using WidgetFlagsList = QList< std::int32_t >
 
- Public Types inherited from hdps::gui::WidgetAction
enum class  Scope { Private , Public }
 
enum class  HighlightOption { None , Moderate , Strong }
 
enum class  ConfigurationFlag {
  VisibleInMenu = 0x00001 , InternalUseOnly = 0x00002 , NoLabelInGroup = 0x00004 , ForceCollapsedInGroup = 0x00008 ,
  ForceExpandedInGroup = 0x00010 , User = 0x00100 , Default = 0
}
 
enum  ConnectionContextFlag { Api = 0x00008 , Gui = 0x00010 , ApiAndGui = Api | Gui }
 ‍** Describes the connection context options *‍/ More...
 
enum class  ConnectionPermissionFlag {
  None = 0x00000 , PublishViaApi = 0x00001 , PublishViaGui = 0x00002 , PublishViaApiAndGui = PublishViaApi | PublishViaGui ,
  ConnectViaApi = 0x00008 , ConnectViaGui = 0x00010 , ConnectViaApiAndGui = ConnectViaApi | ConnectViaGui , DisconnectViaApi = 0x00040 ,
  DisconnectViaGui = 0x00080 , DisconnectViaApiAndGui = DisconnectViaApi | DisconnectViaGui , ForceNone = 0x00100 , All = PublishViaApiAndGui | ConnectViaApiAndGui | DisconnectViaApiAndGui ,
  Default = All
}
 
- Public Types inherited from hdps::util::Serializable
enum class  State { Idle , Reading , Writing }
 

Signals

void actionsChanged (const WidgetActions &actions)
 
void expanded ()
 
void collapsed ()
 
void readOnlyChanged (const bool &readOnly)
 
void showLabelsChanged (const bool &showLabels)
 
void labelSizingTypeChanged (const LabelSizingType &labelSizingType)
 
void labelWidthPercentageChanged (const std::uint32_t &labelWidthPercentage)
 
void labelWidthFixedChanged (const std::uint32_t &labelWidthFixed)
 
- Signals inherited from hdps::gui::WidgetAction
void idChanged (const QString &id)
 
void sortIndexChanged (std::int32_t sortIndex)
 
void stretchChanged (std::int32_t stretch)
 
void forceHiddenChanged (bool forceHidden)
 
void forceDisabledChanged (bool forceDisabled)
 
void highlightingChanged (const HighlightOption &highlightOption)
 
void isPublishedChanged (const bool &isPublished)
 
void isConnectedChanged (const bool &isConnected)
 
void actionConnected (WidgetAction *action)
 
void actionDisconnected (WidgetAction *action)
 
void connectionPermissionsChanged (std::int32_t connectionPermissions)
 
void configurationFlagToggled (const ConfigurationFlag &configurationFlag, bool set)
 
void configurationChanged (std::int32_t configuration)
 
void scopeChanged (const Scope &scope)
 
void textChanged (const QString &text)
 
void locationChanged (const QString &location)
 

Public Member Functions

Q_INVOKABLE GroupAction (QObject *parent, const QString &title, const bool &expanded=false, const Qt::AlignmentFlag &alignment=Qt::AlignmentFlag::AlignLeft)
 
virtual Qt::AlignmentFlag getAlignment () const final
 
void setExpanded (const bool &expanded)
 
void expand ()
 
void collapse ()
 
void toggle ()
 
bool isExpanded () const
 
bool isCollapsed () const
 
bool isReadOnly () const
 
void setReadOnly (const bool &readOnly)
 
bool getShowLabels () const
 
void setShowLabels (bool showLabels)
 
StretchActionaddStretch (std::int32_t stretch=1)
 
virtual void addAction (WidgetAction *action, std::int32_t widgetFlags=-1) final
 
virtual void removeAction (WidgetAction *action) final
 
virtual void clear () final
 
virtual WidgetActions getActions () final
 
virtual ConstWidgetActions getConstActions () final
 
WidgetFlagsMap getWidgetFlagsMap ()
 
LabelSizingType getLabelSizingType () const
 
void setLabelSizingType (const LabelSizingType &labelSizingType)
 
std::uint32_t getLabelWidthPercentage () const
 
void setLabelWidthPercentage (std::uint32_t labelWidthPercentage)
 
std::uint32_t getLabelWidthFixed () const
 
void setLabelWidthFixed (std::uint32_t labelWidthFixed)
 
void fromVariantMap (const QVariantMap &variantMap) override
 
QVariantMap toVariantMap () const override
 
- Public Member Functions inherited from hdps::gui::WidgetAction
 WidgetAction (QObject *parent, const QString &title)
 
 ~WidgetAction ()
 
virtual WidgetActiongetParentAction () const final
 
virtual WidgetActions getParentActions () const final
 
virtual WidgetActions getChildren () const final
 
virtual bool isRoot () const final
 
virtual bool isLeaf () const final
 
virtual QWidget * createWidget (QWidget *parent) override final
 
virtual QWidget * createCollapsedWidget (QWidget *parent) const final
 
virtual QWidget * createLabelWidget (QWidget *parent, const std::int32_t &widgetFlags=0x00001) const final
 
virtual QMenu * getContextMenu (QWidget *parent=nullptr)
 
QWidget * createWidget (QWidget *parent, const std::int32_t &widgetFlags)
 
virtual std::int32_t getSortIndex () const final
 
virtual void setSortIndex (const std::int32_t &sortIndex) final
 
virtual std::int32_t getStretch () const final
 
virtual void setStretch (const std::int32_t &stretch) final
 
virtual bool getForceHidden () const final
 
virtual void setForceHidden (bool forceHidden) final
 
virtual bool isVisible () const final
 
virtual bool getForceDisabled () const final
 
virtual void setForceDisabled (bool forceDisabled) final
 
virtual bool isEnabled () const final
 
void setText (const QString &text)
 
virtual QString getLocation () const
 
virtual std::int32_t getDefaultWidgetFlags () const final
 
virtual void setDefaultWidgetFlags (const std::int32_t &widgetFlags) final
 
virtual void setDefaultWidgetFlag (const std::int32_t &widgetFlags, bool unset=false) final
 
virtual HighlightOption getHighlighting () const final
 
virtual bool isHighlighted () const final
 
virtual void setHighlighting (const HighlightOption &highlighting) final
 
virtual void setHighlighted (bool highlighted) final
 
virtual void highlight () final
 
virtual void unHighlight () final
 
virtual Scope getScope () const final
 
virtual bool isPrivate () const final
 
virtual bool isPublic () const final
 
virtual bool isPublished () const final
 
virtual bool isConnected () const final
 
virtual bool mayConnectToPublicAction (const WidgetAction *publicAction) const final
 
virtual bool publish (const QString &name="", bool allowDuplicateName=false) final
 
virtual WidgetActiongetPublicAction () final
 
virtual WidgetActiongetPublicCopy () const final
 
virtual const WidgetActions getConnectedActions () const final
 
virtual WidgetActionsgetConnectedActions () final
 
virtual bool mayPublish (ConnectionContextFlag connectionContextFlags) const final
 
virtual bool mayConnect (ConnectionContextFlag connectionContextFlags) const final
 
virtual bool mayDisconnect (ConnectionContextFlag connectionContextFlags) const final
 
virtual std::int32_t getConnectionPermissions () const final
 
virtual bool isConnectionPermissionFlagSet (ConnectionPermissionFlag connectionPermissionsFlag) final
 
virtual void setConnectionPermissionsFlag (ConnectionPermissionFlag connectionPermissionsFlag, bool unset=false, bool recursive=false) final
 
virtual void setConnectionPermissions (std::int32_t connectionPermissions, bool recursive=false) final
 
virtual void setConnectionPermissionsToNone (bool recursive=false) final
 
virtual void setConnectionPermissionsToForceNone (bool recursive=false) final
 
virtual void setConnectionPermissionsToAll (bool recursive=false) final
 
virtual void cacheConnectionPermissions (bool recursive=false) final
 
virtual void restoreConnectionPermissions (bool recursive=false) final
 
virtual void startDrag () final
 
virtual bool isResettable () const final
 
virtual void reset () final
 
virtual void setSettingsPrefix (const QString &settingsPrefix, const bool &load=true) final
 
virtual void setSettingsPrefix (plugin::Plugin *plugin, const QString &settingsPrefix, const bool &load=true) final
 
virtual QString getSettingsPrefix () const
 
virtual void loadFromSettings () final
 
virtual void saveToSettings () final
 
virtual QVector< WidgetAction * > findChildren (const QString &searchString, bool recursive=true) const final
 
virtual QSize getPopupSizeHint () const final
 
virtual void setPopupSizeHint (const QSize &popupSizeHint) final
 
virtual std::int32_t getConfiguration () const final
 
virtual bool isConfigurationFlagSet (ConfigurationFlag configurationFlag) const final
 
virtual void setConfigurationFlag (ConfigurationFlag configurationFlag, bool unset=false, bool recursive=false) final
 
virtual void setConfiguration (std::int32_t configuration, bool recursive=false) final
 
virtual QString getTypeString (bool humanFriendly=false) const final
 
void fromVariantMap (const QVariantMap &variantMap) override
 
QVariantMap toVariantMap () const override
 
virtual void cacheState (const QString &name="cache") final
 
virtual void restoreState (const QString &name="cache", bool remove=true) final
 
virtual void setStudioMode (bool studioMode, bool recursive=true) final
 
- Public Member Functions inherited from hdps::util::Serializable
 Serializable (const QString &serializationName="")
 
virtual QString getId () const final
 
virtual void setId (const QString &id) final
 
virtual QString getSerializationName () const final
 
virtual void setSerializationName (const QString &serializationName) final
 
virtual void fromParentVariantMap (const QVariantMap &parentVariantMap)
 
virtual void insertIntoVariantMap (QVariantMap &variantMap) const final
 
virtual void fromJsonDocument (const QJsonDocument &jsonDocument) final
 
virtual QJsonDocument toJsonDocument () const final
 
virtual void fromJsonFile (const QString &filePath="") final
 
virtual void toJsonFile (const QString &filePath="") final
 
virtual void makeUnique () final
 

Protected Member Functions

QWidget * getWidget (QWidget *parent, const std::int32_t &widgetFlags) override
 
- Protected Member Functions inherited from hdps::gui::WidgetAction
virtual void makePublic (bool recursive=true) final
 
virtual void connectToPublicAction (WidgetAction *publicAction, bool recursive)
 
virtual void connectToPublicActionByName (const QString &publicActionName) final
 
virtual void disconnectFromPublicAction (bool recursive)
 

Additional Inherited Members

- Static Public Member Functions inherited from hdps::util::Serializable
static QString createId ()
 
- Static Public Attributes inherited from hdps::gui::WidgetAction
static QMap< Scope, QString > scopeNames
 
- Static Protected Member Functions inherited from hdps::util::Serializable
static void fromVariantMap (Serializable *serializable, const QVariantMap &variantMap)
 
static void fromVariantMap (Serializable &serializable, const QVariantMap &variantMap, const QString &key)
 
static QVariantMap toVariantMap (const Serializable *serializable)
 
static void insertIntoVariantMap (const Serializable &serializable, QVariantMap &variantMap, const QString &key)
 
static void insertIntoVariantMap (const Serializable &serializable, QVariantMap &variantMap)
 

Detailed Description

Group action class

Contains zero or more child actions and either displays them horizontally or vertically.

Author
Thomas Kroes

Member Typedef Documentation

◆ WidgetFlagsList

using hdps::gui::GroupAction::WidgetFlagsList = QList<std::int32_t>

◆ WidgetFlagsMap

using hdps::gui::GroupAction::WidgetFlagsMap = QMap<const WidgetAction*, std::int32_t>

Member Enumeration Documentation

◆ LabelSizingType

Label sizing types (in case of vertical group)

Enumerator
Auto 
Percentage 

The widest label in the group action determines the width for the other labels

Fixed 

The label width is a percentage of the available width The label width is fixed width in pixels

◆ WidgetFlag

Describes the widget flags

Enumerator
Horizontal 
Vertical 

Actions are arranged horizontally in the group

NoMargins 

Actions are arranged vertically in the group

WithMargins 

Do not apply margins to widget layout

Default 

Apply standard margins to widget layout

Constructor & Destructor Documentation

◆ GroupAction()

hdps::gui::GroupAction::GroupAction ( QObject *  parent,
const QString &  title,
const bool &  expanded = false,
const Qt::AlignmentFlag &  alignment = Qt::AlignmentFlag::AlignLeft 
)

Constructor

Parameters
parentPointer to parent object
titleGroup title
expandedWhether the group is initially expanded/collapsed
alignmentItem alignment

Member Function Documentation

◆ actionsChanged

void hdps::gui::GroupAction::actionsChanged ( const WidgetActions actions)
signal

Signals that the actions changed to actions

Parameters
actionsUpdate vector of pointers to actions in the group

◆ addAction()

void hdps::gui::GroupAction::addAction ( WidgetAction action,
std::int32_t  widgetFlags = -1 
)
finalvirtual

Add action to the group

Parameters
actionPointer to action to add
widgetFlagsAction widget flags (default flags if -1)

◆ addStretch()

hdps::gui::StretchAction * hdps::gui::GroupAction::addStretch ( std::int32_t  stretch = 1)

Add stretch action to the group (this will add a stretch to the group layout in the widget)

Parameters
stretchLayout stretch
Returns
Pointer to created stretch action (group action is owner of the action)

◆ clear()

void hdps::gui::GroupAction::clear ( )
finalvirtual

Remove all actions

◆ collapse()

void hdps::gui::GroupAction::collapse ( )

Collapse the group

◆ collapsed

void hdps::gui::GroupAction::collapsed ( )
signal

Signals that the group got collapsed

◆ expand()

void hdps::gui::GroupAction::expand ( )

Expand the group

◆ expanded

void hdps::gui::GroupAction::expanded ( )
signal

Signals that the group got expanded

◆ fromVariantMap()

◆ getActions()

WidgetActions hdps::gui::GroupAction::getActions ( )
finalvirtual

Get actions

Returns
Vector of pointers to actions

◆ getAlignment()

Qt::AlignmentFlag hdps::gui::GroupAction::getAlignment ( ) const
finalvirtual

Get item alignment

Returns
Item alignment

◆ getConstActions()

ConstWidgetActions hdps::gui::GroupAction::getConstActions ( )
finalvirtual

Get const actions

Returns
Vector of const pointers to actions

◆ getLabelSizingType()

GroupAction::LabelSizingType hdps::gui::GroupAction::getLabelSizingType ( ) const

Get the label sizing type

Returns
Label sizing type enum

◆ getLabelWidthFixed()

std::uint32_t hdps::gui::GroupAction::getLabelWidthFixed ( ) const

Gets the user label width in pixels

◆ getLabelWidthPercentage()

std::uint32_t hdps::gui::GroupAction::getLabelWidthPercentage ( ) const

Gets the user label width in percentages

◆ getShowLabels()

bool hdps::gui::GroupAction::getShowLabels ( ) const

Gets whether the group should show labels or not

◆ getWidget()

QWidget * hdps::gui::GroupAction::getWidget ( QWidget *  parent,
const std::int32_t &  widgetFlags 
)
overrideprotectedvirtual

Get widget representation of the group action

Parameters
parentPointer to parent widget
widgetFlagsWidget flags for the configuration of the widget (type)

Reimplemented from hdps::gui::WidgetAction.

Reimplemented in hdps::gui::IntegralRangeAction, hdps::gui::RectangleAction< RectangleType, NumericalRangeActionType >, hdps::gui::RectangleAction< QRect, IntegralRangeAction >, hdps::gui::RectangleAction< QRectF, DecimalRangeAction >, and hdps::gui::ProjectSplashScreenAction.

◆ getWidgetFlagsMap()

GroupAction::WidgetFlagsMap hdps::gui::GroupAction::getWidgetFlagsMap ( )

Get widget flags map (Maps widget action pointer to widget creation flags)

Returns
Widget flags map

◆ isCollapsed()

bool hdps::gui::GroupAction::isCollapsed ( ) const

Get whether the group is collapsed

◆ isExpanded()

bool hdps::gui::GroupAction::isExpanded ( ) const

Get whether the group is expanded

◆ isReadOnly()

bool hdps::gui::GroupAction::isReadOnly ( ) const

Gets the group read-only

◆ labelSizingTypeChanged

void hdps::gui::GroupAction::labelSizingTypeChanged ( const LabelSizingType labelSizingType)
signal

Signals that the label sizing type changed to labelSizingType

Parameters
labelSizingTypeLabel sizing type

◆ labelWidthFixedChanged

void hdps::gui::GroupAction::labelWidthFixedChanged ( const std::uint32_t &  labelWidthFixed)
signal

Signals that the label width in fixed pixels changed to labelWidthFixed

Parameters
labelWidthFixedLabel width in fixed pixels

◆ labelWidthPercentageChanged

void hdps::gui::GroupAction::labelWidthPercentageChanged ( const std::uint32_t &  labelWidthPercentage)
signal

Signals that the label width in percentages changed to labelWidthPercentage

Parameters
labelWidthPercentageLabel width in percentages

◆ readOnlyChanged

void hdps::gui::GroupAction::readOnlyChanged ( const bool &  readOnly)
signal

Signals that the group read-only status changed to readOnly

Parameters
readOnlyRead-only status

◆ removeAction()

void hdps::gui::GroupAction::removeAction ( WidgetAction action)
finalvirtual

Remove action from the group

Parameters
actionPointer to action to add

◆ setExpanded()

void hdps::gui::GroupAction::setExpanded ( const bool &  expanded)

Set expanded/collapsed

◆ setLabelSizingType()

void hdps::gui::GroupAction::setLabelSizingType ( const LabelSizingType labelSizingType)

Sets the label sizing type

Parameters
labelSizingTypeType of label sizing

◆ setLabelWidthFixed()

void hdps::gui::GroupAction::setLabelWidthFixed ( std::uint32_t  labelWidthFixed)

Sets the user label width in pixels (sets the label sizing type to LabelSizingType::Fixed)

Parameters
labelWidthFixedUser label width in pixels

◆ setLabelWidthPercentage()

void hdps::gui::GroupAction::setLabelWidthPercentage ( std::uint32_t  labelWidthPercentage)

Sets the user label width in percentages (sets the label sizing type to LabelSizingType::Percentage)

Parameters
labelWidthPercentageUser label width in percentages

◆ setReadOnly()

void hdps::gui::GroupAction::setReadOnly ( const bool &  readOnly)

Sets the group read-only

Parameters
readOnlyWhether the group is read-only

◆ setShowLabels()

void hdps::gui::GroupAction::setShowLabels ( bool  showLabels)

Sets whether the group should show labels or not

Parameters
showLabelsWhether the group should show labels or not

◆ showLabelsChanged

void hdps::gui::GroupAction::showLabelsChanged ( const bool &  showLabels)
signal

Signals that the group show labels option changed to showLabels

Parameters
showLabelsWhether label are visible or not

◆ toggle()

void hdps::gui::GroupAction::toggle ( )

Toggle the group

◆ toVariantMap()


The documentation for this class was generated from the following files: