ALBA
albaGUISettingsDialog.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: ALBA (Agile Library for Biomedical Applications)
4 Module: albaGUISettingsDialog
5 Authors: Silvano Imboden
6
7 Copyright (c) BIC
8 All rights reserved. See Copyright.txt or
9
10
11 This software is distributed WITHOUT ANY WARRANTY; without even
12 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
13 PURPOSE. See the above copyright notice for more information.
14
15=========================================================================*/
16
17#ifndef __albaGUISettingsDialog_H__
18#define __albaGUISettingsDialog_H__
19
20//----------------------------------------------------------------------------
21// Include:
22//----------------------------------------------------------------------------
23#include "albaEvent.h"
24#include "albaObserver.h"
25//#include "albaString.h"
26#include <vector>
27
28//----------------------------------------------------------------------------
29// forward declarations :
30//----------------------------------------------------------------------------
31class albaGUITree;
32class albaGUI;
33class albaGUIHolder;
34class albaGUIBitmaps;
35class albaGUIDialog;
36
42class ALBA_EXPORT albaGUISettingsDialog : public albaObserver
43{
44
45public:
47 albaGUISettingsDialog(wxString dialog_title = _("Application Settings"));
50
52 void OnEvent(albaEventBase *alba_event);
53
55 void AddPage(albaGUI *ui, wxString label, wxString parent_label= "");
56
58 void RemovePage(wxString label);
59
61 bool ShowModal();
62
63protected:
64
65 struct Page {
67 wxString label;
69 } ;
70
71 std::vector<Page*> m_List;
75
77 void AddRoot();
79 Page* GetPageByName(wxString name);
80};
81#endif // _albaGUISettingsDialog_H_
Implementation of the message object for the Subject/Observer design pattern.
Definition: albaEventBase.h:49
albaGUIDialog is the base class for albaDialogs.
Definition: albaGUIDialog.h:76
class name: albaGUIHolder Secialized panel in which a developer can put a albaGUI.
Definition: albaGUIHolder.h:32
class name: albaGUISettingsDialog.
void RemovePage(wxString label)
RemovePage – kills the specified page and all its children.
Page * GetPageByName(wxString name)
retrieve the page through the name
~albaGUISettingsDialog()
destructor
albaGUISettingsDialog(wxString dialog_title=_("Application Settings"))
constructor
void AddRoot()
add a root to the gui setting tree
void AddPage(albaGUI *ui, wxString label, wxString parent_label="")
AddPage to the dialog.
void OnEvent(albaEventBase *alba_event)
Answer to the messages coming from interface.
std::vector< Page * > m_List
bool ShowModal()
Show the Settings Dialog.
albaGUITree allows a simplified and lot easier use of a wxWindows tree widget.
Definition: albaGUITree.h:97
albaGUI is a panel with function to easily create GUI.
Definition: albaGUI.h:110
Interface implementing the Observer of the Subject/Observer design pattern.
Definition: albaObserver.h:36