45 Ui::CSelectionParamGuiComp, iprm::ISelectionParam>,
104 I_ASSIGN(m_optionsLabelAttrPtr,
"OptionsLabel",
"Command label for the options selector",
false,
"Select");
105 I_ASSIGN(m_infoLabelAttrPtr,
"InfoLabel",
"Information label for the options selector",
false,
"Info");
106 I_ASSIGN(m_infoIconProviderCompPtr,
"InfoIconProvider",
"Provider of the info icon",
false,
"InfoIconProvider");
107 I_ASSIGN(m_iconSizeAttrPtr,
"IconSize",
"Size of the used icons",
false, 32);
108 I_ASSIGN(m_uiModeAttrPtr,
"UiMode",
"Selection representation mode.\n0 - Horizontally layouted combo box group\n1 - Horizontally layouted radio button group\n2 - Vertically layouted radio button group\n3 - Vertically layouted combo box group",
true,
UM_COMBOBOX);
109 I_ASSIGN(m_labelPositionAttrPtr,
"LabelPosition",
"Selection label position.\n0 - Left from the selector,\n1 - On top of the selector",
false,
LP_LEFT);
110 I_ASSIGN(m_labelAlignAttrPtr,
"LabelAlignment",
"Selection label alignment.\n0 - Left-Top,\n1 - Center-Top,\n2 - Right-Top,\n3 - Left-Center,\n4 - Center,\n5 - Right-Center,\n6 - Left-Bottom,\n7 - Center-Bottom,\n8 - Right-Bottom",
false,
LA_LEFT_CENTER);
111 I_ASSIGN(m_labelWidthAttrPtr,
"LabelWidth",
"Fixed label width (in pixels)",
false, 100);
112 I_ASSIGN(m_disableWhenEmptyAttrPtr,
"DisableWhenEmpty",
"Disable the control when no Option is available",
true,
false);
113 I_ASSIGN(m_noSelectionAllowedAttrPtr,
"NoSelectionAllowed",
"Allow the control to reset current index (i.e. set to -1)",
true,
false);
114 I_ASSIGN(m_fillWithDisabledOptionsEnabledAttrPtr,
"FillWithDisabledOptionsEnabled",
"Fill combo box also with disabled options, if enabled",
true,
false);
115 I_ASSIGN(m_useCompleterAttrPtr,
"UseCompleter",
"Enable completer for combo box",
true,
false);
116 I_ASSIGN_MULTI_0(m_infoLabelListAttrPtr,
"InfoLabelList",
"Information label for the options selectors",
false);
117 I_ASSIGN_MULTI_0(m_optionsLabelListAttrPtr,
"OptionsLabelList",
"Command label list for the options selectors",
false);
144 void UpdateComboBoxesView();
145 void UpdateRadioButtonView();
146 void UpdateSelectorLabel();
149 void SetupInfoLabelIcon(QLabel& label);
150 QPixmap GetInfoIcon()
const;
151 void UpdateCompletionModel();
156 I_ATTR(
int, m_uiModeAttrPtr);
157 I_ATTR(
int, m_labelPositionAttrPtr);
158 I_ATTR(
int, m_labelAlignAttrPtr);
159 I_ATTR(
int, m_labelWidthAttrPtr);
161 I_ATTR(
int, m_iconSizeAttrPtr);
162 I_ATTR(
bool, m_disableWhenEmptyAttrPtr);
163 I_ATTR(
bool, m_noSelectionAllowedAttrPtr);
164 I_ATTR(
bool, m_fillWithDisabledOptionsEnabledAttrPtr);
165 I_ATTR(
bool, m_useCompleterAttrPtr);
169 class RadioButtonWidget:
public QFrame
175 const QPixmap& infoIcon,
176 const QString& optionName,
177 const QString& optionDescription,
178 QButtonGroup* buttonGroupPtr,
179 QWidget& parentFrame);
181 QRadioButton* GetRadioButton()
const;
184 QRadioButton* m_radioButtonPtr;
185 QButtonGroup* m_buttonGroupPtr;
193 QList<QLabel*> m_descriptionLabelList;
194 QList<QLabel*> m_optionsLabelList;
195 QList<QLabel*> m_optionInfoLabelList;
196 QPushButton* m_resetButtonWidgetPtr;
198 QStandardItemModel m_completionModel;