6#include <QtWidgets/QToolButton>
9#include <iprm/IOptionsList.h>
10#include <iprm/ISelectionParam.h>
11#include <iqtgui/IIconProvider.h>
12#include <iqtgui/TDesignerGuiObserverCompBase.h>
15#include <imtbase/TModelUpdateBinder.h>
16#include <GeneratedFiles/imtgui/ui_CButtonBasedSelectionGuiComp.h>
23class CButtonBasedSelectionGuiComp
24 :
public iqtgui::TDesignerGuiObserverCompBase<Ui::CButtonBasedSelectionGuiComp, iprm::ISelectionParam>
28 typedef iqtgui::TDesignerGuiObserverCompBase<Ui::CButtonBasedSelectionGuiComp, iprm::ISelectionParam> BaseClass;
36 I_BEGIN_COMPONENT(CButtonBasedSelectionGuiComp);
37 I_ASSIGN(m_iconProviderCompPtr,
"IconProvider",
"Icons for buttons",
false,
"IconProvider");
38 I_ASSIGN(m_orientationAttrPtr,
"Orientation",
"Orientation of the toolbar",
true, 0);
39 I_ASSIGN(m_hideTheOnlyButtonAttrPtr,
"HideTheOnlyButton",
"Hide button if there is only one option",
true,
false);
40 I_ASSIGN(m_spacingAttrPtr,
"Spacing",
"Spacing between consecutive buttons",
true, 0);
41 I_ASSIGN(m_iconSizeAttrPtr,
"IconSize",
"Icon size",
true, 16);
42 I_ASSIGN(m_buttonStyleAttrPtr,
"ButtonStyle",
"See Qt::ToolButtonStyle",
true, 0);
45 CButtonBasedSelectionGuiComp();
49 virtual void UpdateGui(
const istd::IChangeable::ChangeSet& changeSet)
override;
50 virtual void OnGuiModelAttached()
override;
51 virtual void OnGuiModelDetached()
override;
54 virtual void OnGuiDesignChanged()
override;
57 void OnButtonClicked(
bool checked);
60 void OnOptionListUpdate(
const istd::IChangeable::ChangeSet& changeSet,
const iprm::IOptionsList* objectPtr);
61 void OnIconsUpdate(
const istd::IChangeable::ChangeSet& changeSet,
const iqtgui::IIconProvider* objectPtr);
64 I_REF(iqtgui::IIconProvider, m_iconProviderCompPtr);
65 I_ATTR(
int, m_orientationAttrPtr);
66 I_ATTR(
bool, m_hideTheOnlyButtonAttrPtr);
67 I_ATTR(
int, m_spacingAttrPtr);
68 I_ATTR(
int, m_iconSizeAttrPtr);
69 I_ATTR(
int, m_buttonStyleAttrPtr);