ManiVault 1.0.0
A Flexible and Extensible Visual Analytics Framework for High-Dimensional Data
Loading...
Searching...
No Matches
hdps::gui::RectangleAction< RectangleType, NumericalRangeActionType > Class Template Reference

#include <RectangleAction.h>

Inheritance diagram for hdps::gui::RectangleAction< RectangleType, NumericalRangeActionType >:
hdps::gui::GroupAction hdps::gui::WidgetAction hdps::util::Serializable

Classes

class  EditWidget
 

Public Types

enum class  Axis { X = 0 , Y , Count }
 
enum  WidgetFlag { LineEdit = 0x00001 , Default = LineEdit }
 
using RectangleChangedCB = std::function< void()>
 
- Public Types inherited from hdps::gui::GroupAction
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 }
 

Public Member Functions

 RectangleAction (QObject *parent, const QString &title, const RectangleType &rectangle=RectangleType())
 
RectangleType getRectangle () const
 
void setRectangle (const RectangleType &rectangle)
 
NumericalRangeActionType & getRangeAction (const Axis &axis)
 
const NumericalRangeActionType & getRangeAction (const Axis &axis) const
 
- Public Member Functions inherited from hdps::gui::GroupAction
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)
 

Protected Attributes

RectangleChangedCB _rectangleChanged
 

Additional Inherited Members

- Signals inherited from hdps::gui::GroupAction
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)
 
- 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

template<typename RectangleType, typename NumericalRangeActionType>
class hdps::gui::RectangleAction< RectangleType, NumericalRangeActionType >

Rectangle action class

Base rectangle class for storing a rectangle and interfacing with it

Author
Thomas Kroes

Member Typedef Documentation

◆ RectangleChangedCB

template<typename RectangleType , typename NumericalRangeActionType >
using hdps::gui::RectangleAction< RectangleType, NumericalRangeActionType >::RectangleChangedCB = std::function<void()>

Templated classes with Q_OBJECT macro are not allowed, so use function pointers in stead

Member Enumeration Documentation

◆ Axis

template<typename RectangleType , typename NumericalRangeActionType >
enum class hdps::gui::RectangleAction::Axis
strong

Axis enum for distinguishing between x- and y axis range of the rectangle

Enumerator

Along x-axis

Count 

Along y-axis

◆ WidgetFlag

template<typename RectangleType , typename NumericalRangeActionType >
enum hdps::gui::RectangleAction::WidgetFlag

Describes the widget settings

Enumerator
LineEdit 
Default 

Widget includes a line edit

Constructor & Destructor Documentation

◆ RectangleAction()

template<typename RectangleType , typename NumericalRangeActionType >
hdps::gui::RectangleAction< RectangleType, NumericalRangeActionType >::RectangleAction ( QObject *  parent,
const QString &  title,
const RectangleType &  rectangle = RectangleType() 
)
inline

Constructor

Parameters
parentPointer to parent object
titleTitle of the action
rectangleRectangle
defaultRectangleDefault rectangle

Member Function Documentation

◆ getRangeAction() [1/2]

template<typename RectangleType , typename NumericalRangeActionType >
NumericalRangeActionType & hdps::gui::RectangleAction< RectangleType, NumericalRangeActionType >::getRangeAction ( const Axis axis)
inline

◆ getRangeAction() [2/2]

template<typename RectangleType , typename NumericalRangeActionType >
const NumericalRangeActionType & hdps::gui::RectangleAction< RectangleType, NumericalRangeActionType >::getRangeAction ( const Axis axis) const
inline

◆ getRectangle()

template<typename RectangleType , typename NumericalRangeActionType >
RectangleType hdps::gui::RectangleAction< RectangleType, NumericalRangeActionType >::getRectangle ( ) const
inline

Get rectangle

Returns
Rectangle

◆ getWidget()

template<typename RectangleType , typename NumericalRangeActionType >
QWidget * hdps::gui::RectangleAction< RectangleType, NumericalRangeActionType >::getWidget ( QWidget *  parent,
const std::int32_t &  widgetFlags 
)
inlineoverrideprotectedvirtual

Get widget representation of the rectangle action

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

Reimplemented from hdps::gui::GroupAction.

◆ setRectangle()

template<typename RectangleType , typename NumericalRangeActionType >
void hdps::gui::RectangleAction< RectangleType, NumericalRangeActionType >::setRectangle ( const RectangleType &  rectangle)
inline

Set rectangle to rectangle

Parameters
rectangleRectangle

Member Data Documentation

◆ _rectangleChanged

template<typename RectangleType , typename NumericalRangeActionType >
RectangleChangedCB hdps::gui::RectangleAction< RectangleType, NumericalRangeActionType >::_rectangleChanged
protected

Range actions for the x- and y axis of the rectangle


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