00001 /*========================================================================= 00002 Program: bbtk 00003 Module: $RCSfile: bbtkWxGUIPackageBrowser.h,v $ 00004 Language: C++ 00005 Date: $Date: 2008/10/17 08:18:15 $ 00006 Version: $Revision: 1.5 $ 00007 =========================================================================*/ 00008 00009 /* --------------------------------------------------------------------- 00010 00011 * Copyright (c) CREATIS-LRMN (Centre de Recherche en Imagerie Medicale) 00012 * Authors : Eduardo Davila, Laurent Guigues, Jean-Pierre Roux 00013 * 00014 * This software is governed by the CeCILL-B license under French law and 00015 * abiding by the rules of distribution of free software. You can use, 00016 * modify and/ or redistribute the software under the terms of the CeCILL-B 00017 * license as circulated by CEA, CNRS and INRIA at the following URL 00018 * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html 00019 * or in the file LICENSE.txt. 00020 * 00021 * As a counterpart to the access to the source code and rights to copy, 00022 * modify and redistribute granted by the license, users are provided only 00023 * with a limited warranty and the software's author, the holder of the 00024 * economic rights, and the successive licensors have only limited 00025 * liability. 00026 * 00027 * The fact that you are presently reading this means that you have had 00028 * knowledge of the CeCILL-B license and that you accept its terms. 00029 * ------------------------------------------------------------------------ */ 00030 00031 00047 /* 00048 #ifdef _USE_WXWIDGETS_ 00049 00050 00051 #ifndef __bbtkWxGUIPackageBrowser_h__ 00052 #define __bbtkWxGUIPackageBrowser_h__ 00053 00054 00055 #include "bbtkWx.h" 00056 00057 #include "bbtkInterpreter.h" 00058 00059 class wxTreeMultiCtrl; 00060 00061 namespace bbtk 00062 { 00063 //================================================================ 00064 class WxGUIPackageBrowser; 00065 //================================================================ 00066 00067 00068 //================================================================ 00070 class BBTK_EXPORT WxGUIPackageBrowserUser 00071 { 00072 public: 00073 WxGUIPackageBrowserUser() {} 00074 ~WxGUIPackageBrowserUser() {} 00076 virtual void WxGUIPackageBrowserRun() {} 00077 }; 00078 //================================================================ 00079 00080 //================================================================ 00081 class WxGUIPackageBrowserBlackBox : public wxPanel 00082 { 00083 public: 00084 WxGUIPackageBrowserBlackBox(wxWindow* parent, 00085 WxGUIPackageBrowser* browser, 00086 BlackBoxDescriptor::Pointer descr); 00087 ~WxGUIPackageBrowserBlackBox(); 00088 00089 private: 00090 WxGUIPackageBrowser* mBrowser; 00091 BlackBoxDescriptor::Pointer mDescriptor; 00092 } ; 00093 //================================================================ 00094 00095 00096 //================================================================ 00098 class BBTK_EXPORT WxGUIPackageBrowser : public wxPanel 00099 { 00100 public: 00101 WxGUIPackageBrowser( wxWindow *parent, 00102 WxGUIPackageBrowserUser* user = 0 ); 00103 ~WxGUIPackageBrowser(); 00104 00105 void IncludeAll(); 00106 void BuildFromFactory(Factory::Pointer f); 00107 00108 private: 00109 WxGUIPackageBrowserUser* mUser; 00110 Interpreter::Pointer mInterpreter; 00111 wxTreeMultiCtrl* mTree; 00112 00113 }; 00114 //================================================================ 00115 00116 00117 //================================================================ 00119 class BBTK_EXPORT WxGUIPackageBrowserWindow : public wxFrame 00120 //, public WxGUICommandUser 00121 { 00122 public: 00123 WxGUIPackageBrowserWindow( wxWindow *parent, wxString title, wxSize size); 00124 ~WxGUIPackageBrowserWindow(); 00125 // void Open(const std::string& filename) { mBrowser->Open(filename); } 00126 // void WxGUICommandEnter(const std::string& s); 00127 00128 00129 private : 00130 00131 WxGUIPackageBrowser* mBrowser; 00132 }; 00133 //================================================================ 00134 00135 00136 } // namespace bbtk 00137 00138 00139 #endif // __bbtkWxGUIPackageBrowser_h__ 00140 00141 #endif //_USE_WXWIDGETS_ 00142 */