00001 /*========================================================================= 00002 Program: bbtk 00003 Module: $RCSfile: bbtkWidgetBlackBoxWindow.h,v $ 00004 Language: C++ 00005 Date: $Date: 2009/06/10 11:36:51 $ 00006 Version: $Revision: 1.3 $ 00007 ========================================================================*/ 00008 00009 00010 /* --------------------------------------------------------------------- 00011 00012 * Copyright (c) CREATIS-LRMN (Centre de Recherche en Imagerie Medicale) 00013 * Authors : Eduardo Davila, Laurent Guigues, Jean-Pierre Roux 00014 * 00015 * This software is governed by the CeCILL-B license under French law and 00016 * abiding by the rules of distribution of free software. You can use, 00017 * modify and/ or redistribute the software under the terms of the CeCILL-B 00018 * license as circulated by CEA, CNRS and INRIA at the following URL 00019 * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html 00020 * or in the file LICENSE.txt. 00021 * 00022 * As a counterpart to the access to the source code and rights to copy, 00023 * modify and redistribute granted by the license, users are provided only 00024 * with a limited warranty and the software's author, the holder of the 00025 * economic rights, and the successive licensors have only limited 00026 * liability. 00027 * 00028 * The fact that you are presently reading this means that you have had 00029 * knowledge of the CeCILL-B license and that you accept its terms. 00030 * ------------------------------------------------------------------------ */ 00048 #ifndef __bbtkWidgetBlackBoxWindow_h__ 00049 #define __bbtkWidgetBlackBoxWindow_h__ 00050 00051 00052 #include "bbtkWidgetBlackBox.h" 00053 00054 namespace bbtk 00055 { 00056 00057 00058 //================================================================== 00059 // The base of the hierarchy of windows associated to a WidgetBlackBox 00060 //EED 10/06/2009 /*BBTK_EXPORT*/ 00061 template <class W> 00062 class /*BBTK_EXPORT*/ WidgetBlackBoxWindow 00063 { 00064 public: 00065 typedef typename WidgetBlackBox<W>::Pointer WidgetBlackBoxPointer; 00066 typedef typename WidgetBlackBox<W>::WeakPointer WidgetBlackBoxWeakPointer; 00067 00068 WidgetBlackBoxWindow(WidgetBlackBoxPointer box); 00069 virtual ~WidgetBlackBoxWindow(); 00070 virtual void bbShow(); 00071 virtual void bbHide(); 00072 virtual void bbDestroy(); 00073 bool bbIsShown() { return mShown; } 00074 virtual WidgetBlackBoxPointer bbGetBlackBox() { return mBox.lock(); } 00075 //virtual wxDialog* bbGetDialog() { return 0; } 00076 //virtual wxFrame* bbGetFrame() { return 0; } 00077 virtual bool bbIsDialog() { return false; } 00078 virtual bool bbIsFrame() { return false; } 00079 private: 00080 WidgetBlackBoxWeakPointer mBox; 00081 bool mShown; 00082 }; 00083 //================================================================== 00084 00085 00086 } //namespace bbtk 00087 00088 #include "bbtkWidgetBlackBoxWindow.txx" 00089 00090 #endif //__bbtkWidgetBlackBoxWindow_h__ 00091