From 1b2c0ba02b9899a10c9b337eaa1216efc8cf09ba Mon Sep 17 00:00:00 2001 From: Lirusaito Date: Mon, 7 Jan 2013 18:08:42 -0500 Subject: [PATCH] v-d llviewermenufile.cpp functions (and order) for meshupload, decide when Upload Mesh entry should be enabled. --- indra/newview/llviewermenufile.cpp | 50 ++++++++++++------- .../skins/default/xui/en-us/menu_viewer.xml | 4 +- 2 files changed, 34 insertions(+), 20 deletions(-) diff --git a/indra/newview/llviewermenufile.cpp b/indra/newview/llviewermenufile.cpp index 3906075cb..871a9a758 100644 --- a/indra/newview/llviewermenufile.cpp +++ b/indra/newview/llviewermenufile.cpp @@ -120,6 +120,14 @@ class LLFileEnableUpload : public view_listener_t } }; +class LLFileEnableUploadModel : public view_listener_t +{ + bool handleEvent(const LLSD& userdata) + { + return gMeshRepo.meshUploadEnabled(); + } +}; + //============================================================================ #if LL_WINDOWS @@ -302,6 +310,27 @@ class LLFileUploadImage : public view_listener_t, public AIFileUpload } }; +class LLFileUploadModel : public view_listener_t, public AIFileUpload +{ + bool handleEvent(LLPointer event, const LLSD& userdata) + { + start_filepicker(FFLOAD_COLLADA, "dae"); + return true; + } + + protected: + // Inherited from AIFileUpload. + /*virtual*/ void handle_event(std::string const& filename) + { + LLFloaterModelPreview* fmp = new LLFloaterModelPreview(filename); + LLUICtrlFactory::getInstance()->buildFloater(fmp, "floater_model_preview.xml"); + if (fmp) + { + fmp->loadModel(3); + } + } +}; + class LLFileUploadSound : public view_listener_t, public AIFileUpload { bool handleEvent(LLPointer event, const LLSD& userdata) @@ -337,23 +366,6 @@ class LLFileUploadAnim : public view_listener_t, public AIFileUpload } }; -class LLFileUploadMesh : public view_listener_t, public AIFileUpload -{ - bool handleEvent(LLPointer event, const LLSD& userdata) - { - start_filepicker(FFLOAD_COLLADA, "dae"); - return true; - } - - protected: - // Inherited from AIFileUpload. - /*virtual*/ void handle_event(std::string const& filename) - { - LLFloaterModelPreview* floaterp = new LLFloaterModelPreview(filename); - LLUICtrlFactory::getInstance()->buildFloater(floaterp, "floater_model_preview.xml"); - } -}; - class LLFileUploadBulk : public view_listener_t { bool handleEvent(LLPointer event, const LLSD& userdata) @@ -1341,7 +1353,7 @@ void init_menu_file() (new LLFileUploadImage())->registerListener(gMenuHolder, "File.UploadImage"); (new LLFileUploadSound())->registerListener(gMenuHolder, "File.UploadSound"); (new LLFileUploadAnim())->registerListener(gMenuHolder, "File.UploadAnim"); - (new LLFileUploadMesh())->registerListener(gMenuHolder, "File.UploadMesh"); + (new LLFileUploadModel())->registerListener(gMenuHolder, "File.UploadModel"); (new LLFileUploadBulk())->registerListener(gMenuHolder, "File.UploadBulk"); (new LLFileCloseWindow())->registerListener(gMenuHolder, "File.CloseWindow"); (new LLFileCloseAllWindows())->registerListener(gMenuHolder, "File.CloseAllWindows"); @@ -1357,6 +1369,8 @@ void init_menu_file() (new LLFileQuit())->registerListener(gMenuHolder, "File.Quit"); (new LLFileLogOut())->registerListener(gMenuHolder, "File.LogOut"); (new LLFileEnableUpload())->registerListener(gMenuHolder, "File.EnableUpload"); + (new LLFileEnableUploadModel()->registerListener(gMenuHolder, "File.EnableUploadModel"); + (new LLFileEnableSaveAs())->registerListener(gMenuHolder, "File.EnableSaveAs"); } diff --git a/indra/newview/skins/default/xui/en-us/menu_viewer.xml b/indra/newview/skins/default/xui/en-us/menu_viewer.xml index f9c63befc..75f1546c5 100644 --- a/indra/newview/skins/default/xui/en-us/menu_viewer.xml +++ b/indra/newview/skins/default/xui/en-us/menu_viewer.xml @@ -22,8 +22,8 @@ - - + +