2 * ModuleBase_PagedContainer.h
4 * Created on: Mar 13, 2015
8 #ifndef MODULEBASE_PAGEDCONTAINER_H_
9 #define MODULEBASE_PAGEDCONTAINER_H_
11 #include <ModuleBase.h>
12 #include <ModuleBase_ModelWidget.h>
14 class ModuleBase_PageBase;
18 * This is an abstract interface to be used for not model container widget such as switch or tool box.
20 class MODULEBASE_EXPORT ModuleBase_PagedContainer : public ModuleBase_ModelWidget
24 ModuleBase_PagedContainer(QWidget* theParent, const Config_WidgetAPI* theData,
25 const std::string& theParentId);
26 virtual ~ModuleBase_PagedContainer();
28 virtual int addPage( ModuleBase_PageBase* theWidget,
29 const QString& theName,
30 const QString& theCaseId,
31 const QPixmap& theIcon );
33 // ModuleBase_ModelWidget
34 virtual QList<QWidget*> getControls() const;
35 virtual bool focusTo();
36 virtual void setHighlighted(bool isHighlighted);
37 virtual void enableFocusProcessing();
40 virtual int currentPageIndex() const = 0;
41 virtual void setCurrentPageIndex(int ) = 0;
42 // ModuleBase_ModelWidget
43 virtual void activateCustom();
44 virtual bool storeValueCustom() const;
45 virtual bool restoreValueCustom();
51 bool myIsFocusOnCurrentPage;
52 QStringList myCaseIds;
53 QList<ModuleBase_PageBase*> myPages;
57 #endif /* MODULEBASE_PAGEDCONTAINER_H_ */