35 #ifndef ANA_WINDOW_WINFACTORY 36 #define ANA_WINDOW_WINFACTORY 67 static AWindow* createWindow(
const std::string & type,
void *dock = 0,
69 static AWindow* createWindow(
int type,
void *dock = 0,
71 static bool initTypes();
72 static std::string typeString(
int type,
int subtype = 0 );
73 static int typeID(
const std::string & type );
74 static bool exist(
int type );
75 static bool exist(
const std::string & type );
76 static int registerType(
const std::string & type, WinCreator creator,
77 bool visibleinCtrlWin=
false );
78 static int registerType(
const std::string & type,
AWindowCreator *c,
79 bool visibleinCtrlWin=
false );
80 static std::set<std::string> types();
81 static const std::map<std::string, int> &
typeID() {
return( TypeID ); }
82 static const std::map<int, std::string> &
typeNames()
83 {
return( TypeNames ); }
84 static const std::map<int, carto::rc_ptr<AWindowCreator> > &
creators()
85 {
return( Creators ); }
86 static bool hasControlWindowButton(
int type );
87 static void setHasControlWindowButton(
int type,
bool visible );
97 static std::map<std::string, int>
TypeID;
98 static std::map<int, carto::rc_ptr<AWindowCreator> >
Creators;
101 friend class StaticInitializers;
static const std::map< std::string, int > & typeID()
Virtual functor for AWindowFactory.
Virtual functor for AWindowFactory, using a function pointer.
Abstract base class Anatomist window.
static std::set< int > CtrlWinVisibleTypes
static std::map< std::string, int > TypeID
Window creator: (string) type -> new window.
static std::map< int, carto::rc_ptr< AWindowCreator > > Creators
static const std::map< int, carto::rc_ptr< AWindowCreator > > & creators()
static std::map< int, std::string > TypeNames
AWindow *(* WinCreator)(void *dock, carto::Object)
virtual ~AWindowCreator()
static const std::map< int, std::string > & typeNames()
AWindowCreatorFunc(AWindowFactory::WinCreator func)
virtual AWindow * operator()(void *dock, carto::Object) const =0