ALBA
albaWizardManager.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: ALBA (Agile Library for Biomedical Applications)
4 Module: albaWizardManager
5 Authors: Gianluigi Crimi
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 __albaWizardManager_H__
18#define __albaWizardManager_H__
19
20//----------------------------------------------------------------------------
21// includes :
22//----------------------------------------------------------------------------
23#include "albaDefines.h"
24#include "albaVect3d.h"
25#include "albaOpManager.h"
26#include "albaWizard.h"
27
28//----------------------------------------------------------------------------
29// forward reference
30//----------------------------------------------------------------------------
34
35#ifdef ALBA_EXPORTS
36#include "albaDllMacros.h"
37EXPORT_STL_VECTOR(ALBA_EXPORT,albaWizard *);
38#endif
39
46{
47public:
48
51
54
56 virtual void OnEvent(albaEventBase *alba_event);
57
58
59private:
60
62 virtual void WizardAdd(albaWizard *wizard, wxString menuPath = "");
63
64 std::vector<albaWizard *> GetWizardList(){return m_WizardList;};
65
67 virtual void FillMenu(wxMenu* wizardMenu);
68
70 virtual void WizardRun(albaWizard *wizard, void *wizard_param = NULL);
71
73 virtual void WizardRun(int wizardId);
74
76 virtual void WizardContinue(int opSuccess);
77
79 virtual void VmeSelected(albaVME* node);
80
82 virtual void VmeModified(albaVME* node);
83
85 virtual void EnableWizardMenus(bool CanEnable = true);
86
88 virtual void SetToolbar(wxToolBar *tb) {m_ToolBar = tb;};
89
91 virtual void SetMenubar(wxMenuBar *mb) {m_MenuBar = mb;};
92
94 virtual void EnableToolbar(bool CanEnable = true);
95
97 virtual void SetListener(albaObserver *Listener) {m_Listener = Listener;};
98
100 virtual void WarningIfCantUndo (bool warn) {m_Warn = warn;};
101
103 virtual bool GetWarningIfCantUndo(){return m_Warn;};
104
105
107 albaString GetDescription();
108
110 void FillSettingDialog(albaGUISettingsDialog *settingDialog);
111
113 void OnRunOp(albaEvent *e);
114
116 virtual void WizzardStop();
117
119 virtual void Notify(int msg);
120
121 int m_NumWizard;
122 std::vector<albaWizard *> m_WizardList;
123 albaWizard *m_RunningWizard;
124 albaWizardSettings *m_Settings;
125 wxMenuBar *m_MenuBar;
126 wxToolBar *m_ToolBar;
127 albaObserver *m_Listener;
128 albaVME *m_Selected;
129 bool m_Warn;
130 albaWizardWaitOp *m_WaitOp;
131
132 friend class albaLogicWithManagers; // class albaWizardManager can now access data directly
133 friend class albaWizardManagerTest; // for testing
134};
135#endif
#define EXPORT_STL_VECTOR(declspec_, T_)
Definition: albaDllMacros.h:84
Implementation of the message object for the Subject/Observer design pattern.
Definition: albaEventBase.h:49
albaEvent - Class implementing ALBA application events.
Definition: albaEvent.h:55
class name: albaGUISettingsDialog.
albaLogicWithManagers provide:
Interface implementing the Observer of the Subject/Observer design pattern.
Definition: albaObserver.h:36
albaString - performs common string operations on c-strings.
Definition: albaString.h:43
albaVME -
Definition: albaVME.h:150
Class Name: albaWizardManager.
~albaWizardManager()
Default destructor.
virtual void OnEvent(albaEventBase *alba_event)
Event Management.
albaWizardManager()
Default constructor.
class name :albaWizardSettings class that manage wizard specific settings
class name: albaOpWizardWait Simple op with only an next-step button create to insert pause during wi...
Class Name: albaWizard.
Definition: albaWizard.h:46