30 #ifndef _CEGUIWindowFactoryManager_h_
31 #define _CEGUIWindowFactoryManager_h_
33 #include "CEGUIBase.h"
34 #include "CEGUIString.h"
35 #include "CEGUISingleton.h"
36 #include "CEGUILogger.h"
37 #include "CEGUIIteratorBase.h"
42 # pragma warning(push)
43 # pragma warning(disable : 4275)
44 # pragma warning(disable : 4251)
102 const String& getActiveTarget(
void)
const;
111 uint getStackedTargetCount(
void)
const;
116 typedef std::vector<String> TargetTypeStack;
118 TargetTypeStack d_targetStack;
131 Logger::getSingleton().logEvent(
"CEGUI::WindowFactoryManager singleton created");
141 Logger::getSingleton().logEvent(
"CEGUI::WindowFactoryManager singleton destroyed");
178 void removeFactory(
const String& name);
237 bool isFactoryPresent(
const String& name)
const;
265 void addWindowTypeAlias(
const String& aliasName,
const String& targetType);
285 void removeWindowTypeAlias(
const String& aliasName,
const String& targetType);
315 void addFalagardWindowMapping(
const String& newType,
const String& targetType,
const String& lookName,
const String& renderer);
324 void removeFalagardWindowMapping(
const String& type);
337 bool isFalagardMappedType(
const String& type)
const;
351 const String& getMappedLookForType(
const String& type)
const;
365 const String& getMappedRendererForType(
const String& type)
const;
385 String getDereferencedAliasType(
const String& type)
const;
399 const FalagardWindowMapping& getFalagardMappingForType(
const String& type)
const;
405 typedef std::map<String, WindowFactory*, String::FastLessCompare> WindowFactoryRegistry;
406 typedef std::map<String, AliasTargetStack, String::FastLessCompare> TypeAliasRegistry;
407 typedef std::map<String, FalagardWindowMapping, String::FastLessCompare> FalagardMapRegistry;
409 WindowFactoryRegistry d_factoryRegistry;
410 TypeAliasRegistry d_aliasRegistry;
411 FalagardMapRegistry d_falagardRegistry;
425 WindowFactoryIterator getIterator(
void)
const;
432 TypeAliasIterator getAliasIterator(
void)
const;
439 FalagardMappingIterator getFalagardMappingIterator()
const;
445 #if defined(_MSC_VER)
446 # pragma warning(pop)
449 #endif // end of guard _CEGUIWindowFactoryManager_h_