1 /*=========================================================================
4 Module: $RCSfile: bbtkWxGUIPackageBrowser.h,v $
6 Date: $Date: 2008/04/24 13:56:34 $
7 Version: $Revision: 1.4 $
9 Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
10 l'Image). All rights reserved. See Doc/License.txt or
11 http://www.creatis.insa-lyon.fr/Public/bbtk/License.html for details.
13 This software is distributed WITHOUT ANY WARRANTY; without even
14 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15 PURPOSE. See the above copyright notices for more information.
17 =========================================================================*//**
18 * \brief Short description in one line
20 * Long description which
21 * can span multiple lines
33 #ifdef _USE_WXWIDGETS_
36 #ifndef __bbtkWxGUIPackageBrowser_h__
37 #define __bbtkWxGUIPackageBrowser_h__
42 #include "bbtkInterpreter.h"
44 class wxTreeMultiCtrl;
48 //================================================================
49 class WxGUIPackageBrowser;
50 //================================================================
53 //================================================================
54 /// Abstract class which defines the callbacks invoked by WxGUIPackageBrowser
55 class BBTK_EXPORT WxGUIPackageBrowserUser
58 WxGUIPackageBrowserUser() {}
59 ~WxGUIPackageBrowserUser() {}
60 /// Callback invoked when the 'run' button is pressed
61 virtual void WxGUIPackageBrowserRun() {}
63 //================================================================
65 //================================================================
66 class WxGUIPackageBrowserBlackBox : public wxPanel
69 WxGUIPackageBrowserBlackBox(wxWindow* parent,
70 WxGUIPackageBrowser* browser,
71 BlackBoxDescriptor::Pointer descr);
72 ~WxGUIPackageBrowserBlackBox();
75 WxGUIPackageBrowser* mBrowser;
76 BlackBoxDescriptor::Pointer mDescriptor;
78 //================================================================
81 //================================================================
82 /// A package browser panel
83 class BBTK_EXPORT WxGUIPackageBrowser : public wxPanel
86 WxGUIPackageBrowser( wxWindow *parent,
87 WxGUIPackageBrowserUser* user = 0 );
88 ~WxGUIPackageBrowser();
91 void BuildFromFactory(Factory::Pointer f);
94 WxGUIPackageBrowserUser* mUser;
95 Interpreter::Pointer mInterpreter;
96 wxTreeMultiCtrl* mTree;
99 //================================================================
102 //================================================================
103 /// Browser in a frame
104 class BBTK_EXPORT WxGUIPackageBrowserWindow : public wxFrame
105 //, public WxGUICommandUser
108 WxGUIPackageBrowserWindow( wxWindow *parent, wxString title, wxSize size);
109 ~WxGUIPackageBrowserWindow();
110 // void Open(const std::string& filename) { mBrowser->Open(filename); }
111 // void WxGUICommandEnter(const std::string& s);
116 WxGUIPackageBrowser* mBrowser;
118 //================================================================
124 #endif // __bbtkWxGUIPackageBrowser_h__
126 #endif //_USE_WXWIDGETS_