00001 00032 #ifndef LL_LLVIEWERUICTRLFACTORY_H 00033 #define LL_LLVIEWERUICTRLFACTORY_H 00034 00035 #include "lluictrlfactory.h" 00036 00037 class LLControlGroup; 00038 class LLColorSwatchCtrl; 00039 class LLInventoryPanel; 00040 class LLNameListCtrl; 00041 class LLNameEditor; 00042 class LLTextureCtrl; 00043 class LLWebBrowserCtrl; 00044 class LLViewerTextEditor; 00045 class LLMediaRemoteCtrl; 00046 class LLJoystickAgentTurn; 00047 class LLJoystickAgentSlide; 00048 00049 class LLViewerUICtrlFactory : public LLUICtrlFactory 00050 { 00051 public: 00052 LLViewerUICtrlFactory(); 00053 // do not call! needs to be public so run-time can clean up the singleton 00054 virtual ~LLViewerUICtrlFactory(); 00055 00056 // specific typed getters 00057 static LLColorSwatchCtrl* getColorSwatchByName(LLPanel* panelp, const LLString& name); 00058 static LLNameListCtrl* getNameListByName(LLPanel* panelp, const LLString& name); 00059 static LLTextureCtrl* getTexturePickerByName(LLPanel* panelp, const LLString& name); 00060 static LLWebBrowserCtrl* getWebBrowserByName(LLPanel* panelp, const LLString& name); 00061 static LLViewerTextEditor* getViewerTextEditorByName( LLPanel* panelp, const LLString& name); 00062 static LLNameEditor* getNameEditorByName(LLPanel* panelp, const LLString& name); 00063 static LLMediaRemoteCtrl* getMediaRemoteByName(LLPanel* panelp, const LLString& name); 00064 static LLJoystickAgentTurn* getJoystickAgentTurnByName(LLPanel* panelp, const LLString& name); 00065 static LLJoystickAgentSlide* getJoystickAgentSlideByName(LLPanel* panelp, const LLString& name); 00066 00067 }; 00068 00069 extern LLUICtrlFactory* gUICtrlFactory; 00070 00071 #endif //LL_LLVIEWERUICTRLFACTORY_H