aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden
diff options
context:
space:
mode:
Diffstat (limited to 'linden')
-rw-r--r--linden/indra/newview/llviewermenu.cpp2266
-rw-r--r--linden/indra/newview/skins/default/xui/en-us/menu_viewer.xml1706
2 files changed, 3517 insertions, 455 deletions
diff --git a/linden/indra/newview/llviewermenu.cpp b/linden/indra/newview/llviewermenu.cpp
index 3e99384..ae37d96 100644
--- a/linden/indra/newview/llviewermenu.cpp
+++ b/linden/indra/newview/llviewermenu.cpp
@@ -750,10 +750,13 @@ void init_menus()
750 gLandmarkMenu = menu; 750 gLandmarkMenu = menu;
751 */ 751 */
752 752
753 // Advanced (Client) menu is XUI now! \o/
754 /*
753 menu = new LLMenuGL(CLIENT_MENU_NAME); 755 menu = new LLMenuGL(CLIENT_MENU_NAME);
754 init_client_menu(menu); 756 init_client_menu(menu);
755 gMenuBarView->appendMenu( menu ); 757 gMenuBarView->appendMenu( menu );
756 menu->updateParent(LLMenuGL::sMenuContainer); 758 menu->updateParent(LLMenuGL::sMenuContainer);
759 */
757 760
758 menu = new LLMenuGL(SERVER_MENU_NAME); 761 menu = new LLMenuGL(SERVER_MENU_NAME);
759 init_server_menu(menu); 762 init_server_menu(menu);
@@ -7720,6 +7723,2118 @@ class LLWorldDayCycle : public view_listener_t
7720 7723
7721 7724
7722 7725
7726
7727//-------------------------------------------------------------------
7728// Advanced menu
7729//-------------------------------------------------------------------
7730
7731
7732///////////////////
7733// SHOW CONSOLES //
7734///////////////////
7735
7736
7737class LLAdvancedToggleConsole : public view_listener_t
7738{
7739 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
7740 {
7741 LLString console_type = userdata.asString();
7742 if ("frame" == console_type)
7743 {
7744 toggle_visibility( (void*)gDebugView->mFrameStatView );
7745 }
7746 else if ("texture" == console_type)
7747 {
7748 toggle_visibility( (void*)gTextureView );
7749 }
7750 else if ("debug" == console_type)
7751 {
7752 toggle_visibility( (void*)((LLView*)gDebugView->mDebugConsolep) );
7753 }
7754 else if ("fast timers" == console_type)
7755 {
7756 toggle_visibility( (void*)gDebugView->mFastTimerView );
7757 }
7758 else if ("memory" == console_type)
7759 {
7760 toggle_visibility( (void*)gDebugView->mMemoryView );
7761 }
7762 return true;
7763 }
7764};
7765
7766
7767class LLAdvancedCheckConsole : public view_listener_t
7768{
7769 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
7770 {
7771 LLString console_type = userdata["data"].asString();
7772 bool new_value = false;
7773 if ("frame" == console_type)
7774 {
7775 new_value = get_visibility( (void*)gDebugView->mFrameStatView );
7776 }
7777 else if ("texture" == console_type)
7778 {
7779 new_value = get_visibility( (void*)gTextureView );
7780 }
7781 else if ("debug" == console_type)
7782 {
7783 new_value = get_visibility( (void*)((LLView*)gDebugView->mDebugConsolep) );
7784 }
7785 else if ("fast timers" == console_type)
7786 {
7787 new_value = get_visibility( (void*)gDebugView->mFastTimerView );
7788 }
7789 else if ("memory" == console_type)
7790 {
7791 new_value = get_visibility( (void*)gDebugView->mMemoryView );
7792 }
7793
7794 LLString control_name = userdata["control"].asString();
7795 gMenuHolder->findControl(control_name)->setValue(new_value);
7796 return true;
7797 }
7798};
7799
7800
7801
7802//////////////////////////
7803// DUMP INFO TO CONSOLE //
7804//////////////////////////
7805
7806
7807class LLAdvancedDumpInfoToConsole : public view_listener_t
7808{
7809 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
7810 {
7811 LLString info_type = userdata.asString();
7812 if ("region" == info_type)
7813 {
7814 handle_region_dump_settings(NULL);
7815 }
7816 else if ("group" == info_type)
7817 {
7818 handle_dump_group_info(NULL);
7819 }
7820 else if ("capabilities" == info_type)
7821 {
7822 handle_dump_capabilities_info(NULL);
7823 }
7824 return true;
7825 }
7826};
7827
7828
7829
7830///////////////////////////////
7831// RELOAD SETTINGS OVERRIDES //
7832///////////////////////////////
7833
7834
7835class LLAdvancedReloadSettingsOverrides : public view_listener_t
7836{
7837 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
7838 {
7839 reload_personal_settings_overrides(NULL);
7840 return true;
7841 }
7842};
7843
7844
7845
7846//////////////
7847// HUD INFO //
7848//////////////
7849
7850
7851class LLAdvancedToggleHUDInfo : public view_listener_t
7852{
7853 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
7854 {
7855 LLString info_type = userdata.asString();
7856 if ("velocity" == info_type)
7857 {
7858 toggle_visibility( (void*)gVelocityBar );
7859 }
7860 else if ("camera" == info_type)
7861 {
7862 gDisplayCameraPos = !(gDisplayCameraPos);
7863 }
7864 else if ("wind" == info_type)
7865 {
7866 gDisplayWindInfo = !(gDisplayWindInfo);
7867 }
7868 else if ("fov" == info_type)
7869 {
7870 gDisplayFOV = !(gDisplayFOV);
7871 }
7872 return true;
7873 }
7874};
7875
7876class LLAdvancedCheckHUDInfo : public view_listener_t
7877{
7878 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
7879 {
7880 LLString info_type = userdata["data"].asString();
7881 bool new_value = false;
7882 if ("velocity" == info_type)
7883 {
7884 new_value = get_visibility( (void*)gVelocityBar );
7885 }
7886 else if ("camera" == info_type)
7887 {
7888 new_value = gDisplayCameraPos;
7889 }
7890 else if ("wind" == info_type)
7891 {
7892 new_value = gDisplayWindInfo;
7893 }
7894 else if ("fov" == info_type)
7895 {
7896 new_value = gDisplayFOV;
7897 }
7898
7899 LLString control_name = userdata["control"].asString();
7900 gMenuHolder->findControl(control_name)->setValue(new_value);
7901
7902 return true;
7903 }
7904};
7905
7906
7907
7908///////////////////////
7909// CLEAR GROUP CACHE //
7910///////////////////////
7911
7912
7913class LLAdvancedClearGroupCache : public view_listener_t
7914{
7915 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
7916 {
7917 LLGroupMgr::debugClearAllGroups(NULL);
7918 return true;
7919 }
7920};
7921
7922
7923
7924
7925/////////////////
7926// RENDER TYPE //
7927/////////////////
7928
7929
7930U32 render_type_from_string(LLString render_type)
7931{
7932 if ("simple" == render_type)
7933 {
7934 return LLPipeline::RENDER_TYPE_SIMPLE;
7935 }
7936 else if ("alpha" == render_type)
7937 {
7938 return LLPipeline::RENDER_TYPE_ALPHA;
7939 }
7940 else if ("tree" == render_type)
7941 {
7942 return LLPipeline::RENDER_TYPE_TREE;
7943 }
7944 else if ("avatar" == render_type)
7945 {
7946 return LLPipeline::RENDER_TYPE_AVATAR;
7947 }
7948 else if ("terrain" == render_type)
7949 {
7950 return LLPipeline::RENDER_TYPE_TERRAIN;
7951 }
7952 else if ("sky" == render_type)
7953 {
7954 return LLPipeline::RENDER_TYPE_SKY;
7955 }
7956 else if ("water" == render_type)
7957 {
7958 return LLPipeline::RENDER_TYPE_WATER;
7959 }
7960 else if ("ground" == render_type)
7961 {
7962 return LLPipeline::RENDER_TYPE_GROUND;
7963 }
7964 else if ("volume" == render_type)
7965 {
7966 return LLPipeline::RENDER_TYPE_VOLUME;
7967 }
7968 else if ("grass" == render_type)
7969 {
7970 return LLPipeline::RENDER_TYPE_GRASS;
7971 }
7972 else if ("clouds" == render_type)
7973 {
7974 return LLPipeline::RENDER_TYPE_CLOUDS;
7975 }
7976 else if ("particles" == render_type)
7977 {
7978 return LLPipeline::RENDER_TYPE_PARTICLES;
7979 }
7980 else if ("bump" == render_type)
7981 {
7982 return LLPipeline::RENDER_TYPE_BUMP;
7983 }
7984 else
7985 {
7986 return 0;
7987 }
7988}
7989
7990
7991class LLAdvancedToggleRenderType : public view_listener_t
7992{
7993 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
7994 {
7995 U32 render_type = render_type_from_string( userdata.asString() );
7996 if ( render_type != 0 )
7997 {
7998 LLPipeline::toggleRenderTypeControl( (void*)render_type );
7999 }
8000 return true;
8001 }
8002};
8003
8004
8005class LLAdvancedCheckRenderType : public view_listener_t
8006{
8007 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8008 {
8009 U32 render_type = render_type_from_string( userdata["data"].asString() );
8010 bool new_value = false;
8011
8012 if ( render_type != 0 )
8013 {
8014 new_value = LLPipeline::hasRenderTypeControl( (void*)render_type );
8015 }
8016
8017 LLString control_name = userdata["control"].asString();
8018 gMenuHolder->findControl(control_name)->setValue(new_value);
8019 return true;
8020 }
8021};
8022
8023
8024
8025/////////////
8026// FEATURE //
8027/////////////
8028
8029
8030U32 feature_from_string(LLString feature)
8031{
8032 if ("ui" == feature)
8033 {
8034 return LLPipeline::RENDER_DEBUG_FEATURE_UI;
8035 }
8036 else if ("selected" == feature)
8037 {
8038 return LLPipeline::RENDER_DEBUG_FEATURE_SELECTED;
8039 }
8040 else if ("highlighted" == feature)
8041 {
8042 return LLPipeline::RENDER_DEBUG_FEATURE_HIGHLIGHTED;
8043 }
8044 else if ("dynamic textures" == feature)
8045 {
8046 return LLPipeline::RENDER_DEBUG_FEATURE_DYNAMIC_TEXTURES;
8047 }
8048 else if ("foot shadows" == feature)
8049 {
8050 return LLPipeline::RENDER_DEBUG_FEATURE_FOOT_SHADOWS;
8051 }
8052 else if ("fog" == feature)
8053 {
8054 return LLPipeline::RENDER_DEBUG_FEATURE_FOG;
8055 }
8056 else if ("palette" == feature)
8057 {
8058 return LLPipeline::RENDER_DEBUG_FEATURE_PALETTE;
8059 }
8060 else if ("fr info" == feature)
8061 {
8062 return LLPipeline::RENDER_DEBUG_FEATURE_FR_INFO;
8063 }
8064 else if ("flexible" == feature)
8065 {
8066 return LLPipeline::RENDER_DEBUG_FEATURE_FLEXIBLE;
8067 }
8068 else
8069 {
8070 return 0;
8071 }
8072};
8073
8074
8075class LLAdvancedToggleFeature : public view_listener_t
8076{
8077 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8078 {
8079 U32 feature = feature_from_string( userdata.asString() );
8080
8081 if ( feature != 0 )
8082 {
8083 LLPipeline::toggleRenderDebugFeature( (void*)feature );
8084 }
8085
8086 return true;
8087 }
8088};
8089
8090
8091class LLAdvancedCheckFeature : public view_listener_t
8092{
8093 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8094 {
8095 U32 feature = feature_from_string( userdata["data"].asString() );
8096 bool new_value = false;
8097
8098 if ( feature != 0 )
8099 {
8100 new_value = LLPipeline::toggleRenderDebugFeatureControl( (void*)feature );
8101 }
8102
8103 LLString control_name = userdata["control"].asString();
8104 gMenuHolder->findControl(control_name)->setValue(new_value);
8105 return true;
8106 }
8107};
8108
8109
8110
8111//////////////////
8112// INFO DISPLAY //
8113//////////////////
8114
8115
8116U32 info_display_from_string(LLString info_display)
8117{
8118 if ("verify" == info_display)
8119 {
8120 return LLPipeline::RENDER_DEBUG_VERIFY;
8121 }
8122 else if ("bboxes" == info_display)
8123 {
8124 return LLPipeline::RENDER_DEBUG_BBOXES;
8125 }
8126 else if ("points" == info_display)
8127 {
8128 return LLPipeline::RENDER_DEBUG_POINTS;
8129 }
8130 else if ("octree" == info_display)
8131 {
8132 return LLPipeline::RENDER_DEBUG_OCTREE;
8133 }
8134 else if ("occlusion" == info_display)
8135 {
8136 return LLPipeline::RENDER_DEBUG_OCCLUSION;
8137 }
8138 else if ("render batches" == info_display)
8139 {
8140 return LLPipeline::RENDER_DEBUG_BATCH_SIZE;
8141 }
8142 else if ("texture anim" == info_display)
8143 {
8144 return LLPipeline::RENDER_DEBUG_TEXTURE_ANIM;
8145 }
8146 else if ("texture priority" == info_display)
8147 {
8148 return LLPipeline::RENDER_DEBUG_TEXTURE_PRIORITY;
8149 }
8150 else if ("shame" == info_display)
8151 {
8152 return LLPipeline::RENDER_DEBUG_SHAME;
8153 }
8154 else if ("texture area" == info_display)
8155 {
8156 return LLPipeline::RENDER_DEBUG_TEXTURE_AREA;
8157 }
8158 else if ("face area" == info_display)
8159 {
8160 return LLPipeline::RENDER_DEBUG_FACE_AREA;
8161 }
8162 else if ("picking" == info_display)
8163 {
8164 return LLPipeline::RENDER_DEBUG_PICKING;
8165 }
8166 else if ("lights" == info_display)
8167 {
8168 return LLPipeline::RENDER_DEBUG_LIGHTS;
8169 }
8170 else if ("particles" == info_display)
8171 {
8172 return LLPipeline::RENDER_DEBUG_PARTICLES;
8173 }
8174 else if ("composition" == info_display)
8175 {
8176 return LLPipeline::RENDER_DEBUG_COMPOSITION;
8177 }
8178 else if ("glow" == info_display)
8179 {
8180 return LLPipeline::RENDER_DEBUG_GLOW;
8181 }
8182 else
8183 {
8184 return 0;
8185 }
8186};
8187
8188
8189class LLAdvancedToggleInfoDisplay : public view_listener_t
8190{
8191 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8192 {
8193 U32 info_display = info_display_from_string( userdata.asString() );
8194
8195 if ( info_display != 0 )
8196 {
8197 LLPipeline::toggleRenderDebug( (void*)info_display );
8198 }
8199
8200 return true;
8201 }
8202};
8203
8204
8205class LLAdvancedCheckInfoDisplay : public view_listener_t
8206{
8207 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8208 {
8209 U32 info_display = info_display_from_string( userdata["data"].asString() );
8210 bool new_value = false;
8211
8212 if ( info_display != 0 )
8213 {
8214 new_value = LLPipeline::toggleRenderDebugControl( (void*)info_display );
8215 }
8216
8217 LLString control_name = userdata["control"].asString();
8218 gMenuHolder->findControl(control_name)->setValue(new_value);
8219 return true;
8220 }
8221};
8222
8223
8224
8225///////////////////
8226// SELECT BUFFER //
8227///////////////////
8228
8229
8230class LLAdvancedToggleSelectBuffer : public view_listener_t
8231{
8232 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8233 {
8234 gDebugSelect = !(gDebugSelect);
8235 return true;
8236 }
8237};
8238
8239class LLAdvancedCheckSelectBuffer : public view_listener_t
8240{
8241 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8242 {
8243 bool new_value = gDebugSelect;
8244 LLString control_name = userdata["control"].asString();
8245 gMenuHolder->findControl(control_name)->setValue(new_value);
8246 return true;
8247 }
8248};
8249
8250
8251
8252/////////////////////////
8253// RANDOMIZE FRAMERATE //
8254/////////////////////////
8255
8256
8257class LLAdvancedToggleRandomizeFramerate : public view_listener_t
8258{
8259 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8260 {
8261 gRandomizeFramerate = !(gRandomizeFramerate);
8262 return true;
8263 }
8264};
8265
8266class LLAdvancedCheckRandomizeFramerate : public view_listener_t
8267{
8268 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8269 {
8270 bool new_value = gRandomizeFramerate;
8271 LLString control_name = userdata["control"].asString();
8272 gMenuHolder->findControl(control_name)->setValue(new_value);
8273 return true;
8274 }
8275};
8276
8277
8278
8279/////////////////////////
8280// PERIODIC SLOW FRAME //
8281/////////////////////////
8282
8283
8284class LLAdvancedTogglePeriodicSlowFrame : public view_listener_t
8285{
8286 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8287 {
8288 gPeriodicSlowFrame = !(gPeriodicSlowFrame);
8289 return true;
8290 }
8291};
8292
8293class LLAdvancedCheckPeriodicSlowFrame : public view_listener_t
8294{
8295 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8296 {
8297 bool new_value = gPeriodicSlowFrame;
8298 LLString control_name = userdata["control"].asString();
8299 gMenuHolder->findControl(control_name)->setValue(new_value);
8300 return true;
8301 }
8302};
8303
8304
8305
8306////////////////
8307// FRAME TEST //
8308////////////////
8309
8310
8311class LLAdvancedToggleFrameTest : public view_listener_t
8312{
8313 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8314 {
8315 LLPipeline::sRenderFrameTest = !(LLPipeline::sRenderFrameTest);
8316 return true;
8317 }
8318};
8319
8320class LLAdvancedCheckFrameTest : public view_listener_t
8321{
8322 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8323 {
8324 bool new_value = LLPipeline::sRenderFrameTest;
8325 LLString control_name = userdata["control"].asString();
8326 gMenuHolder->findControl(control_name)->setValue(new_value);
8327 return true;
8328 }
8329};
8330
8331
8332
8333///////////////////////////
8334// HIDE SELECTED OBJECTS //
8335///////////////////////////
8336
8337
8338class LLAdvancedToggleHideSelectedObjects : public view_listener_t
8339{
8340 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8341 {
8342 gHideSelectedObjects = !(gHideSelectedObjects);
8343 return true;
8344 }
8345};
8346
8347class LLAdvancedCheckHideSelectedObjects : public view_listener_t
8348{
8349 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8350 {
8351 bool new_value = gHideSelectedObjects;
8352 LLString control_name = userdata["control"].asString();
8353 gMenuHolder->findControl(control_name)->setValue(new_value);
8354 return true;
8355 }
8356};
8357
8358
8359
8360///////////////////////////
8361// SELECTED TEXTURE INFO //
8362///////////////////////////
8363
8364
8365class LLAdvancedSelectedTextureInfo : public view_listener_t
8366{
8367 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8368 {
8369 handle_selected_texture_info(NULL);
8370 return true;
8371 }
8372};
8373
8374
8375
8376//////////////////////
8377// TOGGLE WIREFRAME //
8378//////////////////////
8379
8380
8381class LLAdvancedToggleWireframe : public view_listener_t
8382{
8383 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8384 {
8385 gUseWireframe = !(gUseWireframe);
8386 return true;
8387 }
8388};
8389
8390class LLAdvancedCheckWireframe : public view_listener_t
8391{
8392 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8393 {
8394 bool new_value = gUseWireframe;
8395 LLString control_name = userdata["control"].asString();
8396 gMenuHolder->findControl(control_name)->setValue(new_value);
8397 return true;
8398 }
8399};
8400
8401
8402
8403//////////////////////
8404// DISABLE TEXTURES //
8405//////////////////////
8406
8407
8408class LLAdvancedToggleDisableTextures : public view_listener_t
8409{
8410 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8411 {
8412 menu_toggle_variable((void*)&LLViewerImage::sDontLoadVolumeTextures);
8413 return true;
8414 }
8415};
8416
8417class LLAdvancedCheckDisableTextures : public view_listener_t
8418{
8419 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8420 {
8421 bool new_value = menu_check_variable((void*)&LLViewerImage::sDontLoadVolumeTextures);
8422 LLString control_name = userdata["control"].asString();
8423 gMenuHolder->findControl(control_name)->setValue(new_value);
8424 return true;
8425 }
8426};
8427
8428
8429
8430//////////////////////////
8431// DUMP SCRIPTED CAMERA //
8432//////////////////////////
8433
8434
8435class LLAdvancedDumpScriptedCamera : public view_listener_t
8436{
8437 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8438 {
8439 handle_dump_followcam(NULL);
8440 return true;
8441 }
8442};
8443
8444
8445
8446//////////////////////////////
8447// DUMP REGION OBJECT CACHE //
8448//////////////////////////////
8449
8450
8451class LLAdvancedDumpRegionObjectCache : public view_listener_t
8452{
8453 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8454 {
8455 handle_dump_region_object_cache(NULL);
8456 return true;
8457 }
8458};
8459
8460
8461
8462////////////////
8463// SLURL TEST //
8464////////////////
8465
8466
8467class LLAdvancedSLURLTest : public view_listener_t
8468{
8469 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8470 {
8471 handle_slurl_test(NULL);
8472 return true;
8473 }
8474};
8475
8476
8477
8478////////////////////////
8479// TOGGLE EDITABLE UI //
8480////////////////////////
8481
8482
8483class LLAdvancedToggleEditableUI : public view_listener_t
8484{
8485 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8486 {
8487 edit_ui(NULL);
8488 return true;
8489 }
8490};
8491
8492// *TODO: Add corresponding "Check" for EditableUI, so it can
8493// become a menu_item_check. Need to add check_edit_ui(void*)
8494// or functional equivalent to do that.
8495
8496
8497
8498//////////////////////
8499// ASYNC KEYSTROKES //
8500//////////////////////
8501
8502
8503class LLAdvancedToggleAsyncKeystrokes : public view_listener_t
8504{
8505 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8506 {
8507 gHandleKeysAsync = !(gHandleKeysAsync);
8508 return true;
8509 }
8510};
8511
8512class LLAdvancedCheckAsyncKeystrokes : public view_listener_t
8513{
8514 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8515 {
8516 bool new_value = gHandleKeysAsync;
8517 LLString control_name = userdata["control"].asString();
8518 gMenuHolder->findControl(control_name)->setValue(new_value);
8519 return true;
8520 }
8521};
8522
8523
8524
8525/////////////////////
8526// DUMP SELECT MGR //
8527/////////////////////
8528
8529
8530class LLAdvancedDumpSelectMgr : public view_listener_t
8531{
8532 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8533 {
8534 dump_select_mgr(NULL);
8535 return true;
8536 }
8537};
8538
8539
8540
8541////////////////////
8542// DUMP INVENTORY //
8543////////////////////
8544
8545
8546class LLAdvancedDumpInventory : public view_listener_t
8547{
8548 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8549 {
8550 dump_inventory(NULL);
8551 return true;
8552 }
8553};
8554
8555
8556
8557///////////////////////
8558// DUMP FOCUS HOLDER //
8559///////////////////////
8560
8561
8562class LLAdvancedDumpFocusHolder : public view_listener_t
8563{
8564 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8565 {
8566 handle_dump_focus(NULL);
8567 return true;
8568 }
8569};
8570
8571
8572
8573////////////////////////////////
8574// PRINT SELECTED OBJECT INFO //
8575////////////////////////////////
8576
8577
8578class LLAdvancedPrintSelectedObjectInfo : public view_listener_t
8579{
8580 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8581 {
8582 print_object_info(NULL);
8583 return true;
8584 }
8585};
8586
8587
8588
8589//////////////////////
8590// PRINT AGENT INFO //
8591//////////////////////
8592
8593
8594class LLAdvancedPrintAgentInfo : public view_listener_t
8595{
8596 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8597 {
8598 print_agent_nvpairs(NULL);
8599 return true;
8600 }
8601};
8602
8603
8604
8605////////////////////////////////
8606// PRINT TEXTURE MEMORY STATS //
8607////////////////////////////////
8608
8609
8610class LLAdvancedPrintTextureMemoryStats : public view_listener_t
8611{
8612 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8613 {
8614 output_statistics(NULL);
8615 return true;
8616 }
8617};
8618
8619
8620
8621//////////////////////
8622// DEBUG SELECT MGR //
8623//////////////////////
8624
8625
8626class LLAdvancedToggleDebugSelectMgr : public view_listener_t
8627{
8628 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8629 {
8630 gDebugSelectMgr = !(gDebugSelectMgr);
8631 return true;
8632 }
8633};
8634
8635class LLAdvancedCheckDebugSelectMgr : public view_listener_t
8636{
8637 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8638 {
8639 bool new_value = gDebugSelectMgr;
8640 LLString control_name = userdata["control"].asString();
8641 gMenuHolder->findControl(control_name)->setValue(new_value);
8642 return true;
8643 }
8644};
8645
8646
8647
8648//////////////////
8649// DEBUG CLICKS //
8650//////////////////
8651
8652
8653class LLAdvancedToggleDebugClicks : public view_listener_t
8654{
8655 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8656 {
8657 gDebugClicks = !(gDebugClicks);
8658 return true;
8659 }
8660};
8661
8662class LLAdvancedCheckDebugClicks : public view_listener_t
8663{
8664 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8665 {
8666 bool new_value = gDebugClicks;
8667 LLString control_name = userdata["control"].asString();
8668 gMenuHolder->findControl(control_name)->setValue(new_value);
8669 return true;
8670 }
8671};
8672
8673
8674
8675/////////////////
8676// DEBUG VIEWS //
8677/////////////////
8678
8679
8680class LLAdvancedToggleDebugViews : public view_listener_t
8681{
8682 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8683 {
8684 LLView::sDebugRects = !(LLView::sDebugRects);
8685 return true;
8686 }
8687};
8688
8689class LLAdvancedCheckDebugViews : public view_listener_t
8690{
8691 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8692 {
8693 bool new_value = LLView::sDebugRects;
8694 LLString control_name = userdata["control"].asString();
8695 gMenuHolder->findControl(control_name)->setValue(new_value);
8696 return true;
8697 }
8698};
8699
8700
8701
8702///////////////////////
8703// XUI NAME TOOLTIPS //
8704///////////////////////
8705
8706
8707class LLAdvancedToggleXUINameTooltips : public view_listener_t
8708{
8709 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8710 {
8711 toggle_show_xui_names(NULL);
8712 return true;
8713 }
8714};
8715
8716class LLAdvancedCheckXUINameTooltips : public view_listener_t
8717{
8718 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8719 {
8720 bool new_value = check_show_xui_names(NULL);
8721 LLString control_name = userdata["control"].asString();
8722 gMenuHolder->findControl(control_name)->setValue(new_value);
8723 return true;
8724 }
8725};
8726
8727
8728
8729////////////////////////
8730// DEBUG MOUSE EVENTS //
8731////////////////////////
8732
8733
8734class LLAdvancedToggleDebugMouseEvents : public view_listener_t
8735{
8736 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8737 {
8738 LLView::sDebugMouseHandling = !(LLView::sDebugMouseHandling);
8739 return true;
8740 }
8741};
8742
8743class LLAdvancedCheckDebugMouseEvents : public view_listener_t
8744{
8745 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8746 {
8747 bool new_value = LLView::sDebugMouseHandling;
8748 LLString control_name = userdata["control"].asString();
8749 gMenuHolder->findControl(control_name)->setValue(new_value);
8750 return true;
8751 }
8752};
8753
8754
8755
8756////////////////
8757// DEBUG KEYS //
8758////////////////
8759
8760
8761class LLAdvancedToggleDebugKeys : public view_listener_t
8762{
8763 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8764 {
8765 LLView::sDebugKeys = !(LLView::sDebugKeys);
8766 return true;
8767 }
8768};
8769
8770class LLAdvancedCheckDebugKeys : public view_listener_t
8771{
8772 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8773 {
8774 bool new_value = LLView::sDebugKeys;
8775 LLString control_name = userdata["control"].asString();
8776 gMenuHolder->findControl(control_name)->setValue(new_value);
8777 return true;
8778 }
8779};
8780
8781
8782
8783///////////////////////
8784// DEBUG WINDOW PROC //
8785///////////////////////
8786
8787
8788class LLAdvancedToggleDebugWindowProc : public view_listener_t
8789{
8790 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8791 {
8792 gDebugWindowProc = !(gDebugWindowProc);
8793 return true;
8794 }
8795};
8796
8797class LLAdvancedCheckDebugWindowProc : public view_listener_t
8798{
8799 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8800 {
8801 bool new_value = gDebugWindowProc;
8802 LLString control_name = userdata["control"].asString();
8803 gMenuHolder->findControl(control_name)->setValue(new_value);
8804 return true;
8805 }
8806};
8807
8808
8809
8810////////////////////////////
8811// DEBUG TEXT EDITOR TIPS //
8812////////////////////////////
8813
8814
8815class LLAdvancedToggleDebugTextEditorTips : public view_listener_t
8816{
8817 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8818 {
8819 gDebugTextEditorTips = !(gDebugTextEditorTips);
8820 return true;
8821 }
8822};
8823
8824class LLAdvancedCheckDebugTextEditorTips : public view_listener_t
8825{
8826 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8827 {
8828 bool new_value = gDebugTextEditorTips;
8829 LLString control_name = userdata["control"].asString();
8830 gMenuHolder->findControl(control_name)->setValue(new_value);
8831 return true;
8832 }
8833};
8834
8835
8836
8837///////////////////////
8838// SHOW FLOATER TEST //
8839///////////////////////
8840
8841
8842class LLAdvancedShowFloaterTest : public view_listener_t
8843{
8844 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8845 {
8846 LLFloaterTest::show(NULL);
8847 return true;
8848 }
8849};
8850
8851
8852
8853/////////////////////////
8854// EXPORT MENUS TO XML //
8855/////////////////////////
8856
8857
8858class LLAdvancedExportMenusToXML : public view_listener_t
8859{
8860 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8861 {
8862 handle_export_menus_to_xml(NULL);
8863 return true;
8864 }
8865};
8866
8867
8868
8869/////////////
8870// EDIT UI //
8871/////////////
8872
8873
8874class LLAdvancedEditUI : public view_listener_t
8875{
8876 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8877 {
8878 LLFloaterEditUI::show(NULL);
8879 return true;
8880 }
8881};
8882
8883
8884
8885//////////////////////
8886// LOAD UI FROM XML //
8887//////////////////////
8888
8889
8890class LLAdvancedLoadUIFromXML : public view_listener_t
8891{
8892 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8893 {
8894 handle_load_from_xml(NULL);
8895 return true;
8896 }
8897};
8898
8899
8900
8901////////////////////
8902// SAVE UI TO XML //
8903////////////////////
8904
8905
8906class LLAdvancedSaveUIToXML : public view_listener_t
8907{
8908 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8909 {
8910 handle_save_to_xml(NULL);
8911 return true;
8912 }
8913};
8914
8915
8916
8917///////////////
8918// XUI NAMES //
8919///////////////
8920
8921
8922class LLAdvancedToggleXUINames : public view_listener_t
8923{
8924 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8925 {
8926 toggle_show_xui_names(NULL);
8927 return true;
8928 }
8929};
8930
8931class LLAdvancedCheckXUINames : public view_listener_t
8932{
8933 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8934 {
8935 bool new_value = check_show_xui_names(NULL);
8936 LLString control_name = userdata["control"].asString();
8937 gMenuHolder->findControl(control_name)->setValue(new_value);
8938 return true;
8939 }
8940};
8941
8942
8943
8944////////////////////////
8945// GRAB BAKED TEXTURE //
8946////////////////////////
8947
8948
8949class LLAdvancedGrabBakedTexture : public view_listener_t
8950{
8951 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8952 {
8953 LLString texture_type = userdata.asString();
8954 if ("eyes" == texture_type)
8955 {
8956 handle_grab_texture( (void*)LLVOAvatar::TEX_EYES_BAKED );
8957 }
8958 else if ("head" == texture_type)
8959 {
8960 handle_grab_texture( (void*)LLVOAvatar::TEX_HEAD_BAKED );
8961 }
8962 else if ("upper" == texture_type)
8963 {
8964 handle_grab_texture( (void*)LLVOAvatar::TEX_UPPER_BAKED );
8965 }
8966 else if ("lower" == texture_type)
8967 {
8968 handle_grab_texture( (void*)LLVOAvatar::TEX_SKIRT_BAKED );
8969 }
8970 else if ("skirt" == texture_type)
8971 {
8972 handle_grab_texture( (void*)LLVOAvatar::TEX_SKIRT_BAKED );
8973 }
8974
8975 return true;
8976 }
8977};
8978
8979class LLAdvancedEnableGrabBakedTexture : public view_listener_t
8980{
8981 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
8982 {
8983 LLString texture_type = userdata["data"].asString();
8984 bool new_value = false;
8985
8986 if ("iris" == texture_type)
8987 {
8988 new_value = enable_grab_texture( (void*)LLVOAvatar::TEX_EYES_BAKED );
8989 }
8990 else if ("head" == texture_type)
8991 {
8992 new_value = enable_grab_texture( (void*)LLVOAvatar::TEX_HEAD_BAKED );
8993 }
8994 else if ("upper" == texture_type)
8995 {
8996 new_value = enable_grab_texture( (void*)LLVOAvatar::TEX_UPPER_BAKED );
8997 }
8998 else if ("lower" == texture_type)
8999 {
9000 new_value = enable_grab_texture( (void*)LLVOAvatar::TEX_LOWER_BAKED );
9001 }
9002 else if ("skirt" == texture_type)
9003 {
9004 new_value = enable_grab_texture( (void*)LLVOAvatar::TEX_SKIRT_BAKED );
9005 }
9006
9007 LLString control_name = userdata["control"].asString();
9008 gMenuHolder->findControl(control_name)->setValue(new_value);
9009 return true;
9010 }
9011};
9012
9013
9014
9015//////////////////////
9016// ALLOW IDLE / AFK //
9017//////////////////////
9018
9019
9020class LLAdvancedToggleAllowIdleAFK : public view_listener_t
9021{
9022 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9023 {
9024 gAllowIdleAFK = !(gAllowIdleAFK);
9025 return true;
9026 }
9027};
9028
9029class LLAdvancedCheckAllowIdleAFK : public view_listener_t
9030{
9031 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9032 {
9033 bool new_value = gAllowIdleAFK;
9034 LLString control_name = userdata["control"].asString();
9035 gMenuHolder->findControl(control_name)->setValue(new_value);
9036 return true;
9037 }
9038};
9039
9040
9041
9042///////////////////////
9043// APPEARANCE TO XML //
9044///////////////////////
9045
9046
9047class LLAdvancedAppearanceToXML : public view_listener_t
9048{
9049 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9050 {
9051 LLVOAvatar::dumpArchetypeXML(NULL);
9052 return true;
9053 }
9054};
9055
9056
9057
9058///////////////////////////////
9059// TOGGLE CHARACTER GEOMETRY //
9060///////////////////////////////
9061
9062
9063class LLAdvancedToggleCharacterGeometry : public view_listener_t
9064{
9065 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9066 {
9067 handle_god_request_avatar_geometry(NULL);
9068 return true;
9069 }
9070};
9071
9072class LLAdvancedEnableCharacterGeometry : public view_listener_t
9073{
9074 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9075 {
9076 enable_god_customer_service(NULL);
9077 return true;
9078 }
9079};
9080
9081
9082
9083/////////////////////////////
9084// TEST MALE / TEST FEMALE //
9085/////////////////////////////
9086
9087
9088class LLAdvancedTestMale : public view_listener_t
9089{
9090 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9091 {
9092 handle_test_male(NULL);
9093 return true;
9094 }
9095};
9096
9097
9098class LLAdvancedTestFemale : public view_listener_t
9099{
9100 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9101 {
9102 handle_test_female(NULL);
9103 return true;
9104 }
9105};
9106
9107
9108
9109///////////////
9110// TOGGLE PG //
9111///////////////
9112
9113
9114class LLAdvancedTogglePG : public view_listener_t
9115{
9116 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9117 {
9118 handle_toggle_pg(NULL);
9119 return true;
9120 }
9121};
9122
9123
9124
9125/////////////////////////
9126// ALLOW SELECT AVATAR //
9127/////////////////////////
9128
9129
9130class LLAdvancedToggleAllowSelectAvatar : public view_listener_t
9131{
9132 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9133 {
9134 gAllowSelectAvatar = !(gAllowSelectAvatar);
9135 return true;
9136 }
9137};
9138
9139class LLAdvancedCheckAllowSelectAvatar : public view_listener_t
9140{
9141 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9142 {
9143 bool new_value = gAllowSelectAvatar;
9144 LLString control_name = userdata["control"].asString();
9145 gMenuHolder->findControl(control_name)->setValue(new_value);
9146 return true;
9147 }
9148};
9149
9150
9151
9152////////////////////////////
9153// ALLOW TAP-TAP-HOLD RUN //
9154////////////////////////////
9155
9156
9157class LLAdvancedToggleAllowTapTapHoldRun : public view_listener_t
9158{
9159 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9160 {
9161 gAllowTapTapHoldRun = !(gAllowTapTapHoldRun);
9162 return true;
9163 }
9164};
9165
9166class LLAdvancedCheckAllowTapTapHoldRun : public view_listener_t
9167{
9168 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9169 {
9170 bool new_value = gAllowTapTapHoldRun;
9171 LLString control_name = userdata["control"].asString();
9172 gMenuHolder->findControl(control_name)->setValue(new_value);
9173 return true;
9174 }
9175};
9176
9177
9178
9179/////////////////////////////
9180// FORCE PARAMS TO DEFAULT //
9181/////////////////////////////
9182
9183
9184class LLAdvancedForceParamsToDefault : public view_listener_t
9185{
9186 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9187 {
9188 LLAgent::clearVisualParams(NULL);
9189 return true;
9190 }
9191};
9192
9193
9194
9195//////////////////////////
9196// RELOAD VERTEX SHADER //
9197//////////////////////////
9198
9199
9200class LLAdvancedReloadVertexShader : public view_listener_t
9201{
9202 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9203 {
9204 reload_vertex_shader(NULL);
9205 return true;
9206 }
9207};
9208
9209
9210
9211////////////////////
9212// ANIMATION INFO //
9213////////////////////
9214
9215
9216class LLAdvancedToggleAnimationInfo : public view_listener_t
9217{
9218 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9219 {
9220 LLVOAvatar::sShowAnimationDebug = !(LLVOAvatar::sShowAnimationDebug);
9221 return true;
9222 }
9223};
9224
9225class LLAdvancedCheckAnimationInfo : public view_listener_t
9226{
9227 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9228 {
9229 bool new_value = LLVOAvatar::sShowAnimationDebug;
9230 LLString control_name = userdata["control"].asString();
9231 gMenuHolder->findControl(control_name)->setValue(new_value);
9232 return true;
9233 }
9234};
9235
9236
9237
9238////////////////////////////
9239// SLOW MOTION ANIMATIONS //
9240////////////////////////////
9241
9242
9243class LLAdvancedToggleSlowMotionAnimations : public view_listener_t
9244{
9245 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9246 {
9247 slow_mo_animations(NULL);
9248 return true;
9249 }
9250};
9251
9252// *TODO: Add a corresponding "Check" event for SlowMotionAnimations,
9253// so that it can become a menu_item_check with the "X" indicator.
9254// See indra/newview/skins/xui/en_us/menu_viewer.xml
9255
9256
9257
9258//////////////////
9259// SHOW LOOK AT //
9260//////////////////
9261
9262
9263class LLAdvancedToggleShowLookAt : public view_listener_t
9264{
9265 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9266 {
9267 LLHUDEffectLookAt::sDebugLookAt = !(LLHUDEffectLookAt::sDebugLookAt);
9268 return true;
9269 }
9270};
9271
9272class LLAdvancedCheckShowLookAt : public view_listener_t
9273{
9274 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9275 {
9276 bool new_value = LLHUDEffectLookAt::sDebugLookAt;
9277 LLString control_name = userdata["control"].asString();
9278 gMenuHolder->findControl(control_name)->setValue(new_value);
9279 return true;
9280 }
9281};
9282
9283
9284
9285///////////////////
9286// SHOW POINT AT //
9287///////////////////
9288
9289
9290class LLAdvancedToggleShowPointAt : public view_listener_t
9291{
9292 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9293 {
9294 LLHUDEffectPointAt::sDebugPointAt = !(LLHUDEffectPointAt::sDebugPointAt);
9295 return true;
9296 }
9297};
9298
9299class LLAdvancedCheckShowPointAt : public view_listener_t
9300{
9301 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9302 {
9303 bool new_value = LLHUDEffectPointAt::sDebugPointAt;
9304 LLString control_name = userdata["control"].asString();
9305 gMenuHolder->findControl(control_name)->setValue(new_value);
9306 return true;
9307 }
9308};
9309
9310
9311
9312/////////////////////////
9313// DEBUG JOINT UPDATES //
9314/////////////////////////
9315
9316
9317class LLAdvancedToggleDebugJointUpdates : public view_listener_t
9318{
9319 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9320 {
9321 LLVOAvatar::sJointDebug = !(LLVOAvatar::sJointDebug);
9322 return true;
9323 }
9324};
9325
9326class LLAdvancedCheckDebugJointUpdates : public view_listener_t
9327{
9328 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9329 {
9330 bool new_value = LLVOAvatar::sJointDebug;
9331 LLString control_name = userdata["control"].asString();
9332 gMenuHolder->findControl(control_name)->setValue(new_value);
9333 return true;
9334 }
9335};
9336
9337
9338
9339/////////////////
9340// DISABLE LOD //
9341/////////////////
9342
9343
9344class LLAdvancedToggleDisableLOD : public view_listener_t
9345{
9346 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9347 {
9348 LLViewerJoint::sDisableLOD = !(LLViewerJoint::sDisableLOD);
9349 return true;
9350 }
9351};
9352
9353class LLAdvancedCheckDisableLOD : public view_listener_t
9354{
9355 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9356 {
9357 bool new_value = LLViewerJoint::sDisableLOD;
9358 LLString control_name = userdata["control"].asString();
9359 gMenuHolder->findControl(control_name)->setValue(new_value);
9360 return true;
9361 }
9362};
9363
9364
9365
9366/////////////////////////
9367// DEBUG CHARACTER VIS //
9368/////////////////////////
9369
9370
9371class LLAdvancedToggleDebugCharacterVis : public view_listener_t
9372{
9373 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9374 {
9375 LLVOAvatar::sDebugInvisible = !(LLVOAvatar::sDebugInvisible);
9376 return true;
9377 }
9378};
9379
9380class LLAdvancedCheckDebugCharacterVis : public view_listener_t
9381{
9382 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9383 {
9384 bool new_value = LLVOAvatar::sDebugInvisible;
9385 LLString control_name = userdata["control"].asString();
9386 gMenuHolder->findControl(control_name)->setValue(new_value);
9387 return true;
9388 }
9389};
9390
9391
9392
9393//////////////////////////
9394// SHOW COLLISION PLANE //
9395//////////////////////////
9396
9397/***************************
9398 *
9399 * Disabled. See DEV-14477
9400 *
9401 ***************************
9402
9403class LLAdvancedToggleShowCollisionPlane : public view_listener_t
9404{
9405 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9406 {
9407 LLVOAvatar::sShowFootPlane = !(LLVOAvatar::sShowFootPlane);
9408 return true;
9409 }
9410};
9411
9412class LLAdvancedCheckShowCollisionPlane : public view_listener_t
9413{
9414 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9415 {
9416 bool new_value = LLVOAvatar::sShowFootPlane;
9417 LLString control_name = userdata["control"].asString();
9418 gMenuHolder->findControl(control_name)->setValue(new_value);
9419 return true;
9420 }
9421};
9422
9423***************************/
9424
9425
9426/////////////////////////////
9427// SHOW COLLISION SKELETON //
9428/////////////////////////////
9429
9430
9431class LLAdvancedToggleShowCollisionSkeleton : public view_listener_t
9432{
9433 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9434 {
9435 LLVOAvatar::sShowCollisionVolumes = !(LLVOAvatar::sShowCollisionVolumes);
9436 return true;
9437 }
9438};
9439
9440class LLAdvancedCheckShowCollisionSkeleton : public view_listener_t
9441{
9442 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9443 {
9444 bool new_value = LLVOAvatar::sShowCollisionVolumes;
9445 LLString control_name = userdata["control"].asString();
9446 gMenuHolder->findControl(control_name)->setValue(new_value);
9447 return true;
9448 }
9449};
9450
9451
9452
9453//////////////////////////
9454// DISPLAY AGENT TARGET //
9455//////////////////////////
9456
9457
9458class LLAdvancedToggleDisplayAgentTarget : public view_listener_t
9459{
9460 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9461 {
9462 LLAgent::sDebugDisplayTarget = !(LLAgent::sDebugDisplayTarget);
9463 return true;
9464 }
9465};
9466
9467class LLAdvancedCheckDisplayAgentTarget : public view_listener_t
9468{
9469 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9470 {
9471 bool new_value = LLAgent::sDebugDisplayTarget;
9472 LLString control_name = userdata["control"].asString();
9473 gMenuHolder->findControl(control_name)->setValue(new_value);
9474 return true;
9475 }
9476};
9477
9478
9479
9480///////////////////////////
9481// DEBUG AVATAR ROTATION //
9482///////////////////////////
9483
9484
9485class LLAdvancedToggleDebugAvatarRotation : public view_listener_t
9486{
9487 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9488 {
9489 gDebugAvatarRotation = !(gDebugAvatarRotation);
9490 return true;
9491 }
9492};
9493
9494class LLAdvancedCheckDebugAvatarRotation : public view_listener_t
9495{
9496 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9497 {
9498 bool new_value = gDebugAvatarRotation;
9499 LLString control_name = userdata["control"].asString();
9500 gMenuHolder->findControl(control_name)->setValue(new_value);
9501 return true;
9502 }
9503};
9504
9505
9506
9507//////////////////////
9508// DUMP ATTACHMENTS //
9509//////////////////////
9510
9511
9512class LLAdvancedDumpAttachments : public view_listener_t
9513{
9514 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9515 {
9516 handle_dump_attachments(NULL);
9517 return true;
9518 }
9519};
9520
9521
9522
9523/////////////////////
9524// REBAKE TEXTURES //
9525/////////////////////
9526
9527
9528class LLAdvancedRebakeTextures : public view_listener_t
9529{
9530 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9531 {
9532 handle_rebake_textures(NULL);
9533 return true;
9534 }
9535};
9536
9537
9538
9539///////////////////////////
9540// DEBUG AVATAR TEXTURES //
9541///////////////////////////
9542
9543
9544class LLAdvancedDebugAvatarTextures : public view_listener_t
9545{
9546 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9547 {
9548 handle_debug_avatar_textures(NULL);
9549 return true;
9550 }
9551};
9552
9553
9554
9555////////////////////////////////
9556// DUMP AVATAR LOCAL TEXTURES //
9557////////////////////////////////
9558
9559
9560class LLAdvancedDumpAvatarLocalTextures : public view_listener_t
9561{
9562 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9563 {
9564 handle_dump_avatar_local_textures(NULL);
9565 return true;
9566 }
9567};
9568
9569
9570
9571/////////////////
9572// MESSAGE LOG //
9573/////////////////
9574
9575
9576class LLAdvancedEnableMessageLog : public view_listener_t
9577{
9578 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9579 {
9580 handle_viewer_enable_message_log(NULL);
9581 return true;
9582 }
9583};
9584
9585class LLAdvancedDisableMessageLog : public view_listener_t
9586{
9587 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9588 {
9589 handle_viewer_disable_message_log(NULL);
9590 return true;
9591 }
9592};
9593
9594
9595
9596/////////////////
9597// DROP PACKET //
9598/////////////////
9599
9600
9601class LLAdvancedDropPacket : public view_listener_t
9602{
9603 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9604 {
9605 drop_packet(NULL);
9606 return true;
9607 }
9608};
9609
9610
9611
9612/////////////////////////
9613// FRAME STATS LOGGING //
9614/////////////////////////
9615
9616
9617class LLAdvancedFrameStatsLogging : public view_listener_t
9618{
9619 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9620 {
9621 LLString command = userdata.asString();
9622 if ("start logging" == command)
9623 {
9624 LLFrameStats::startLogging(NULL);
9625 }
9626 else if ("stop logging" == command)
9627 {
9628 LLFrameStats::stopLogging(NULL);
9629 }
9630 else if ("timed logging 10" == command)
9631 {
9632 LLFrameStats::timedLogging10(NULL);
9633 }
9634 else if ("timed logging 30" == command)
9635 {
9636 LLFrameStats::timedLogging30(NULL);
9637 }
9638 else if ("timed logging 60" == command)
9639 {
9640 LLFrameStats::timedLogging60(NULL);
9641 }
9642
9643 return true;
9644 }
9645};
9646
9647
9648
9649/////////////////
9650// AGENT PILOT //
9651/////////////////
9652
9653
9654class LLAdvancedAgentPilot : public view_listener_t
9655{
9656 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9657 {
9658 LLString command = userdata.asString();
9659 if ("start playback" == command)
9660 {
9661 LLAgentPilot::startPlayback(NULL);
9662 }
9663 else if ("stop playback" == command)
9664 {
9665 LLAgentPilot::stopPlayback(NULL);
9666 }
9667 else if ("start record" == command)
9668 {
9669 LLAgentPilot::startRecord(NULL);
9670 }
9671 else if ("stop record" == command)
9672 {
9673 LLAgentPilot::saveRecord(NULL);
9674 }
9675
9676 return true;
9677 }
9678};
9679
9680
9681
9682//////////////////////
9683// AGENT PILOT LOOP //
9684//////////////////////
9685
9686
9687class LLAdvancedToggleAgentPilotLoop : public view_listener_t
9688{
9689 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9690 {
9691 LLAgentPilot::sLoop = !(LLAgentPilot::sLoop);
9692 return true;
9693 }
9694};
9695
9696class LLAdvancedCheckAgentPilotLoop : public view_listener_t
9697{
9698 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9699 {
9700 bool new_value = LLAgentPilot::sLoop;
9701 LLString control_name = userdata["control"].asString();
9702 gMenuHolder->findControl(control_name)->setValue(new_value);
9703 return true;
9704 }
9705};
9706
9707
9708
9709/////////////////////////
9710// SHOW OBJECT UPDATES //
9711/////////////////////////
9712
9713
9714class LLAdvancedToggleShowObjectUpdates : public view_listener_t
9715{
9716 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9717 {
9718 gShowObjectUpdates = !(gShowObjectUpdates);
9719 return true;
9720 }
9721};
9722
9723class LLAdvancedCheckShowObjectUpdates : public view_listener_t
9724{
9725 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9726 {
9727 bool new_value = gShowObjectUpdates;
9728 LLString control_name = userdata["control"].asString();
9729 gMenuHolder->findControl(control_name)->setValue(new_value);
9730 return true;
9731 }
9732};
9733
9734
9735
9736////////////////////
9737// COMPRESS IMAGE //
9738////////////////////
9739
9740
9741class LLAdvancedCompressImage : public view_listener_t
9742{
9743 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9744 {
9745 handle_compress_image(NULL);
9746 return true;
9747 }
9748};
9749
9750
9751
9752//////////////////////
9753// CLOTHING FLOATER //
9754//////////////////////
9755
9756
9757class LLAdvancedToggleClothingFloater : public view_listener_t
9758{
9759 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9760 {
9761 handle_clothing(NULL);
9762 return true;
9763 }
9764};
9765
9766// There is no LLAdvancedCheckClothingFloater.
9767
9768
9769
9770/////////////////////////
9771// SHOW DEBUG SETTINGS //
9772/////////////////////////
9773
9774
9775class LLAdvancedShowDebugSettings : public view_listener_t
9776{
9777 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9778 {
9779 LLFloaterSettingsDebug::show(NULL);
9780 return true;
9781 }
9782};
9783
9784
9785
9786////////////////////////
9787// VIEW ADMIN OPTIONS //
9788////////////////////////
9789
9790
9791class LLAdvancedToggleViewAdminOptions : public view_listener_t
9792{
9793 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9794 {
9795 handle_admin_override_toggle(NULL);
9796 return true;
9797 }
9798};
9799
9800class LLAdvancedCheckViewAdminOptions : public view_listener_t
9801{
9802 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9803 {
9804 bool new_value = check_admin_override(NULL);
9805 LLString control_name = userdata["control"].asString();
9806 gMenuHolder->findControl(control_name)->setValue(new_value);
9807 return true;
9808 }
9809};
9810
9811
9812
9813//////////////////
9814// ADMIN STATUS //
9815//////////////////
9816
9817
9818class LLAdvancedRequestAdminStatus : public view_listener_t
9819{
9820 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9821 {
9822 handle_god_mode(NULL);
9823 return true;
9824 }
9825};
9826
9827class LLAdvancedLeaveAdminStatus : public view_listener_t
9828{
9829 bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
9830 {
9831 handle_leave_god_mode(NULL);
9832 return true;
9833 }
9834};
9835
9836
9837
7723static void addMenu(view_listener_t *menu, const char *name) 9838static void addMenu(view_listener_t *menu, const char *name)
7724{ 9839{
7725 sMenus.push_back(menu); 9840 sMenus.push_back(menu);
@@ -7928,4 +10043,155 @@ void initialize_menus()
7928 addMenu(new LLSomethingSelected(), "SomethingSelected"); 10043 addMenu(new LLSomethingSelected(), "SomethingSelected");
7929 addMenu(new LLSomethingSelectedNoHUD(), "SomethingSelectedNoHUD"); 10044 addMenu(new LLSomethingSelectedNoHUD(), "SomethingSelectedNoHUD");
7930 addMenu(new LLEditableSelected(), "EditableSelected"); 10045 addMenu(new LLEditableSelected(), "EditableSelected");
10046
10047
10048 // Advanced (top level menu)
10049 addMenu(new LLAdvancedToggleConsole(), "Advanced.ToggleConsole");
10050 addMenu(new LLAdvancedCheckConsole(), "Advanced.CheckConsole");
10051 addMenu(new LLAdvancedDumpInfoToConsole(), "Advanced.DumpInfoToConsole");
10052 addMenu(new LLAdvancedReloadSettingsOverrides(), "Advanced.ReloadSettingsOverrides");
10053
10054 // Advanced > HUD Info
10055 addMenu(new LLAdvancedToggleHUDInfo(), "Advanced.ToggleHUDInfo");
10056 addMenu(new LLAdvancedCheckHUDInfo(), "Advanced.CheckHUDInfo");
10057
10058 addMenu(new LLAdvancedClearGroupCache(), "Advanced.ClearGroupCache");
10059
10060 // Advanced > Render > Types
10061 addMenu(new LLAdvancedToggleRenderType(), "Advanced.ToggleRenderType");
10062 addMenu(new LLAdvancedCheckRenderType(), "Advanced.CheckRenderType");
10063
10064 // Advanced > Render > Features
10065 addMenu(new LLAdvancedToggleFeature(), "Advanced.ToggleFeature");
10066 addMenu(new LLAdvancedCheckFeature(), "Advanced.CheckFeature");
10067
10068 // Advanced > Render > Info Displays
10069 addMenu(new LLAdvancedToggleInfoDisplay(), "Advanced.ToggleInfoDisplay");
10070 addMenu(new LLAdvancedCheckInfoDisplay(), "Advanced.CheckInfoDisplay");
10071 addMenu(new LLAdvancedToggleSelectBuffer(), "Advanced.ToggleSelectBuffer");
10072 addMenu(new LLAdvancedCheckSelectBuffer(), "Advanced.CheckSelectBuffer");
10073 addMenu(new LLAdvancedToggleRandomizeFramerate(), "Advanced.ToggleRandomizeFramerate");
10074 addMenu(new LLAdvancedCheckRandomizeFramerate(), "Advanced.CheckRandomizeFramerate");
10075 addMenu(new LLAdvancedTogglePeriodicSlowFrame(), "Advanced.TogglePeriodicSlowFrame");
10076 addMenu(new LLAdvancedCheckPeriodicSlowFrame(), "Advanced.CheckPeriodicSlowFrame");
10077 addMenu(new LLAdvancedToggleFrameTest(), "Advanced.ToggleFrameTest");
10078 addMenu(new LLAdvancedCheckFrameTest(), "Advanced.CheckFrameTest");
10079 addMenu(new LLAdvancedToggleHideSelectedObjects(), "Advanced.ToggleHideSelectedObjects");
10080 addMenu(new LLAdvancedCheckHideSelectedObjects(), "Advanced.CheckHideSelectedObjects");
10081 addMenu(new LLAdvancedSelectedTextureInfo(), "Advanced.SelectedTextureInfo");
10082 addMenu(new LLAdvancedToggleWireframe(), "Advanced.ToggleWireframe");
10083 addMenu(new LLAdvancedCheckWireframe(), "Advanced.CheckWireframe");
10084 addMenu(new LLAdvancedToggleDisableTextures(), "Advanced.ToggleDisableTextures");
10085 addMenu(new LLAdvancedCheckDisableTextures(), "Advanced.CheckDisableTextures");
10086
10087 // Advanced > World
10088 addMenu(new LLAdvancedDumpScriptedCamera(), "Advanced.DumpScriptedCamera");
10089 addMenu(new LLAdvancedDumpRegionObjectCache(), "Advanced.DumpRegionObjectCache");
10090
10091 // Advanced > UI
10092 addMenu(new LLAdvancedSLURLTest(), "Advanced.SLURLTest");
10093 addMenu(new LLAdvancedToggleEditableUI(), "Advanced.ToggleEditableUI");
10094 //addMenu(new LLAdvancedCheckEditableUI(), "Advanced.CheckEditableUI");
10095 addMenu(new LLAdvancedToggleAsyncKeystrokes(), "Advanced.ToggleAsyncKeystrokes");
10096 addMenu(new LLAdvancedCheckAsyncKeystrokes(), "Advanced.CheckAsyncKeystrokes");
10097 addMenu(new LLAdvancedDumpSelectMgr(), "Advanced.DumpSelectMgr");
10098 addMenu(new LLAdvancedDumpInventory(), "Advanced.DumpInventory");
10099 addMenu(new LLAdvancedDumpFocusHolder(), "Advanced.DumpFocusHolder");
10100 addMenu(new LLAdvancedPrintSelectedObjectInfo(), "Advanced.PrintSelectedObjectInfo");
10101 addMenu(new LLAdvancedPrintAgentInfo(), "Advanced.PrintAgentInfo");
10102 addMenu(new LLAdvancedPrintTextureMemoryStats(), "Advanced.PrintTextureMemoryStats");
10103 addMenu(new LLAdvancedToggleDebugSelectMgr(), "Advanced.ToggleDebugSelectMgr");
10104 addMenu(new LLAdvancedCheckDebugSelectMgr(), "Advanced.CheckDebugSelectMgr");
10105 addMenu(new LLAdvancedToggleDebugClicks(), "Advanced.ToggleDebugClicks");
10106 addMenu(new LLAdvancedCheckDebugClicks(), "Advanced.CheckDebugClicks");
10107 addMenu(new LLAdvancedCheckDebugViews(), "Advanced.CheckDebugViews");
10108 addMenu(new LLAdvancedToggleDebugViews(), "Advanced.ToggleDebugViews");
10109 addMenu(new LLAdvancedToggleXUINameTooltips(), "Advanced.ToggleXUINameTooltips");
10110 addMenu(new LLAdvancedCheckXUINameTooltips(), "Advanced.CheckXUINameTooltips");
10111 addMenu(new LLAdvancedToggleDebugMouseEvents(), "Advanced.ToggleDebugMouseEvents");
10112 addMenu(new LLAdvancedCheckDebugMouseEvents(), "Advanced.CheckDebugMouseEvents");
10113 addMenu(new LLAdvancedToggleDebugKeys(), "Advanced.ToggleDebugKeys");
10114 addMenu(new LLAdvancedCheckDebugKeys(), "Advanced.CheckDebugKeys");
10115 addMenu(new LLAdvancedToggleDebugWindowProc(), "Advanced.ToggleDebugWindowProc");
10116 addMenu(new LLAdvancedCheckDebugWindowProc(), "Advanced.CheckDebugWindowProc");
10117 addMenu(new LLAdvancedToggleDebugTextEditorTips(), "Advanced.ToggleDebugTextEditorTips");
10118 addMenu(new LLAdvancedCheckDebugTextEditorTips(), "Advanced.CheckDebugTextEditorTips");
10119
10120 // Advanced > XUI
10121 addMenu(new LLAdvancedShowFloaterTest(), "Advanced.ShowFloaterTest");
10122 addMenu(new LLAdvancedExportMenusToXML(), "Advanced.ExportMenusToXML");
10123 addMenu(new LLAdvancedEditUI(), "Advanced.EditUI");
10124 addMenu(new LLAdvancedLoadUIFromXML(), "Advanced.LoadUIFromXML");
10125 addMenu(new LLAdvancedSaveUIToXML(), "Advanced.SaveUIToXML");
10126 addMenu(new LLAdvancedToggleXUINames(), "Advanced.ToggleXUINames");
10127 addMenu(new LLAdvancedCheckXUINames(), "Advanced.CheckXUINames");
10128
10129 // Advanced > Character > Grab Baked Texture
10130 addMenu(new LLAdvancedGrabBakedTexture(), "Advanced.GrabBakedTexture");
10131 addMenu(new LLAdvancedEnableGrabBakedTexture(), "Advanced.EnableGrabBakedTexture");
10132
10133 // Advanced > Character > Character Tests
10134 addMenu(new LLAdvancedToggleAllowIdleAFK(), "Advanced.ToggleAllowIdleAFK");
10135 addMenu(new LLAdvancedCheckAllowIdleAFK(), "Advanced.CheckAllowIdleAFK");
10136 addMenu(new LLAdvancedAppearanceToXML(), "Advanced.AppearanceToXML");
10137 addMenu(new LLAdvancedToggleCharacterGeometry(), "Advanced.ToggleCharacterGeometry");
10138 addMenu(new LLAdvancedTestMale(), "Advanced.TestMale");
10139 addMenu(new LLAdvancedTestFemale(), "Advanced.TestFemale");
10140 addMenu(new LLAdvancedTogglePG(), "Advanced.TogglePG");
10141 addMenu(new LLAdvancedToggleAllowSelectAvatar(), "Advanced.ToggleAllowSelectAvatar");
10142 addMenu(new LLAdvancedCheckAllowSelectAvatar(), "Advanced.CheckAllowSelectAvatar");
10143
10144 // Advanced > Character (toplevel)
10145 addMenu(new LLAdvancedToggleAllowTapTapHoldRun(), "Advanced.ToggleAllowTapTapHoldRun");
10146 addMenu(new LLAdvancedCheckAllowTapTapHoldRun(), "Advanced.CheckAllowTapTapHoldRun");
10147 addMenu(new LLAdvancedForceParamsToDefault(), "Advanced.ForceParamsToDefault");
10148 addMenu(new LLAdvancedReloadVertexShader(), "Advanced.ReloadVertexShader");
10149 addMenu(new LLAdvancedToggleAnimationInfo(), "Advanced.ToggleAnimationInfo");
10150 addMenu(new LLAdvancedCheckAnimationInfo(), "Advanced.CheckAnimationInfo");
10151 addMenu(new LLAdvancedToggleSlowMotionAnimations(), "Advanced.ToggleSlowMotionAnimations");
10152 //addMenu(new LLAdvancedCheckSlowMotionAnimations(), "Advanced.CheckSlowMotionAnimations");
10153 addMenu(new LLAdvancedToggleShowLookAt(), "Advanced.ToggleShowLookAt");
10154 addMenu(new LLAdvancedCheckShowLookAt(), "Advanced.CheckShowLookAt");
10155 addMenu(new LLAdvancedToggleShowPointAt(), "Advanced.ToggleShowPointAt");
10156 addMenu(new LLAdvancedCheckShowPointAt(), "Advanced.CheckShowPointAt");
10157 addMenu(new LLAdvancedToggleDebugJointUpdates(), "Advanced.ToggleDebugJointUpdates");
10158 addMenu(new LLAdvancedCheckDebugJointUpdates(), "Advanced.CheckDebugJointUpdates");
10159 addMenu(new LLAdvancedToggleDisableLOD(), "Advanced.ToggleDisableLOD");
10160 addMenu(new LLAdvancedCheckDisableLOD(), "Advanced.CheckDisableLOD");
10161 addMenu(new LLAdvancedToggleDebugCharacterVis(), "Advanced.ToggleDebugCharacterVis");
10162 addMenu(new LLAdvancedCheckDebugCharacterVis(), "Advanced.CheckDebugCharacterVis");
10163// addMenu(new LLAdvancedToggleShowCollisionPlane(), "Advanced.ToggleShowCollisionPlane");
10164// addMenu(new LLAdvancedCheckShowCollisionPlane(), "Advanced.CheckShowCollisionPlane");
10165 addMenu(new LLAdvancedToggleShowCollisionSkeleton(), "Advanced.ToggleShowCollisionSkeleton");
10166 addMenu(new LLAdvancedCheckShowCollisionSkeleton(), "Advanced.CheckShowCollisionSkeleton");
10167 addMenu(new LLAdvancedToggleDisplayAgentTarget(), "Advanced.ToggleDisplayAgentTarget");
10168 addMenu(new LLAdvancedCheckDisplayAgentTarget(), "Advanced.CheckDisplayAgentTarget");
10169 addMenu(new LLAdvancedToggleDebugAvatarRotation(), "Advanced.ToggleDebugAvatarRotation");
10170 addMenu(new LLAdvancedCheckDebugAvatarRotation(), "Advanced.CheckDebugAvatarRotation");
10171 addMenu(new LLAdvancedDumpAttachments(), "Advanced.DumpAttachments");
10172 addMenu(new LLAdvancedRebakeTextures(), "Advanced.RebakeTextures");
10173 addMenu(new LLAdvancedDebugAvatarTextures(), "Advanced.DebugAvatarTextures");
10174 addMenu(new LLAdvancedDumpAvatarLocalTextures(), "Advanced.DumpAvatarLocalTextures");
10175
10176 // Advanced > Network
10177 addMenu(new LLAdvancedEnableMessageLog(), "Advanced.EnableMessageLog");
10178 addMenu(new LLAdvancedDisableMessageLog(), "Advanced.DisableMessageLog");
10179 addMenu(new LLAdvancedDropPacket(), "Advanced.DropPacket");
10180
10181 // Advanced > Recorder
10182 addMenu(new LLAdvancedFrameStatsLogging(), "Advanced.FrameStatsLogging");
10183 addMenu(new LLAdvancedAgentPilot(), "Advanced.AgentPilot");
10184 addMenu(new LLAdvancedToggleAgentPilotLoop(), "Advanced.ToggleAgentPilotLoop");
10185 addMenu(new LLAdvancedCheckAgentPilotLoop(), "Advanced.CheckAgentPilotLoop");
10186
10187 // Advanced (toplevel)
10188 addMenu(new LLAdvancedToggleShowObjectUpdates(), "Advanced.ToggleShowObjectUpdates");
10189 addMenu(new LLAdvancedCheckShowObjectUpdates(), "Advanced.CheckShowObjectUpdates");
10190 addMenu(new LLAdvancedCompressImage(), "Advanced.CompressImage");
10191 addMenu(new LLAdvancedToggleClothingFloater(), "Advanced.ToggleClothingFloater");
10192 addMenu(new LLAdvancedShowDebugSettings(), "Advanced.ShowDebugSettings");
10193 addMenu(new LLAdvancedToggleViewAdminOptions(), "Advanced.ToggleViewAdminOptions");
10194 addMenu(new LLAdvancedCheckViewAdminOptions(), "Advanced.CheckViewAdminOptions");
10195 addMenu(new LLAdvancedRequestAdminStatus(), "Advanced.RequestAdminStatus");
10196 addMenu(new LLAdvancedLeaveAdminStatus(), "Advanced.LeaveAdminStatus");
7931} 10197}
diff --git a/linden/indra/newview/skins/default/xui/en-us/menu_viewer.xml b/linden/indra/newview/skins/default/xui/en-us/menu_viewer.xml
index 92521bc..737fb56 100644
--- a/linden/indra/newview/skins/default/xui/en-us/menu_viewer.xml
+++ b/linden/indra/newview/skins/default/xui/en-us/menu_viewer.xml
@@ -1,862 +1,1658 @@
1<?xml version="1.0" encoding="utf-8" standalone="yes" ?> 1<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
2<menu_bar bottom="-18" drop_shadow="false" enabled="true" follows="left|top|right" 2
3 height="18" left="0" mouse_opaque="true" name="Main Menu" opaque="false" 3<menu_bar name="Main Menu" drop_shadow="false" follows="left|top|right"
4 tear_off="false" width="802"> 4 opaque="false" tear_off="false">
5 <menu bottom="273" create_jump_keys="true" drop_shadow="true" enabled="true" 5
6 height="263" label="File" left="0" mouse_opaque="false" name="File" 6
7 opaque="true" tear_off="true" width="243"> 7 <!-- FILE -->
8 <tearoff_menu bottom="-10" enabled="true" height="10" label="~~~~~~~~~~~" left="0" 8
9 mouse_opaque="true" name="~~~~~~~~~~~" width="243" /> 9 <menu name="File" create_jump_keys="true" label="File"
10 <menu_item_call bottom="-29" enabled="true" height="19" label="Upload Image (L$[COST])..." 10 opaque="true" tear_off="true">
11 left="0" mouse_opaque="true" name="Upload Image" shortcut="control|U" 11 <menu_item_call name="Upload Image" label="Upload Image (L$[COST])..."
12 width="243"> 12 shortcut="control|U">
13 <on_click function="File.UploadImage" userdata="" /> 13 <on_click function="File.UploadImage" userdata="" />
14 <on_enable function="File.EnableUpload" /> 14 <on_enable function="File.EnableUpload" />
15 </menu_item_call> 15 </menu_item_call>
16 <menu_item_call bottom="-48" enabled="true" height="19" label="Upload Sound (L$[COST])..." 16 <menu_item_call name="Upload Sound" label="Upload Sound (L$[COST])...">
17 left="0" mouse_opaque="true" name="Upload Sound" width="243">
18 <on_click function="File.UploadSound" userdata="" /> 17 <on_click function="File.UploadSound" userdata="" />
19 <on_enable function="File.EnableUpload" /> 18 <on_enable function="File.EnableUpload" />
20 </menu_item_call> 19 </menu_item_call>
21 <menu_item_call bottom="-67" enabled="true" height="19" label="Upload Animation (L$[COST])..." 20 <menu_item_call name="Upload Animation"
22 left="0" mouse_opaque="true" name="Upload Animation" width="243"> 21 label="Upload Animation (L$[COST])...">
23 <on_click function="File.UploadAnim" userdata="" /> 22 <on_click function="File.UploadAnim" userdata="" />
24 <on_enable function="File.EnableUpload" /> 23 <on_enable function="File.EnableUpload" />
25 </menu_item_call> 24 </menu_item_call>
26 <menu_item_call bottom="-86" enabled="true" height="19" 25 <menu_item_call name="Bulk Upload"
27 label="Bulk Upload (L$[COST] per file)..." left="0" mouse_opaque="true" 26 label="Bulk Upload (L$[COST] per file)...">
28 name="Bulk Upload" width="243">
29 <on_click function="File.UploadBulk" userdata="" /> 27 <on_click function="File.UploadBulk" userdata="" />
30 </menu_item_call> 28 </menu_item_call>
31 <menu_item_separator bottom="-94" enabled="true" height="8" label="-----------" left="0" 29 <menu_item_separator />
32 mouse_opaque="true" name="separator" width="243" /> 30 <menu_item_call name="Close Window" label="Close Window"
33 <menu_item_call bottom="-113" enabled="true" height="19" label="Close Window" left="0" 31 shortcut="control|W">
34 mouse_opaque="true" name="Close Window" shortcut="control|W" width="243">
35 <on_click function="File.CloseWindow" userdata="" /> 32 <on_click function="File.CloseWindow" userdata="" />
36 <on_enable function="File.EnableCloseWindow" userdata="" /> 33 <on_enable function="File.EnableCloseWindow" userdata="" />
37 </menu_item_call> 34 </menu_item_call>
38 <menu_item_call bottom="-113" enabled="true" height="19" label="Close All Windows" left="0" 35 <menu_item_call name="Close All Windows" label="Close All Windows"
39 mouse_opaque="true" name="Close All Windows" shortcut="control|shift|W" 36 shortcut="control|shift|W">
40 width="243">
41 <on_click function="File.CloseAllWindows" userdata="" /> 37 <on_click function="File.CloseAllWindows" userdata="" />
42 <on_enable function="File.EnableCloseAllWindows" userdata="" /> 38 <on_enable function="File.EnableCloseAllWindows" userdata="" />
43 </menu_item_call> 39 </menu_item_call>
44 <menu_item_separator bottom="-121" enabled="true" height="8" label="-----------" left="0" 40 <menu_item_separator />
45 mouse_opaque="true" name="separator2" width="243" /> 41 <menu_item_call name="Save Texture As..." label="Save Texture As...">
46 <menu_item_call bottom="-140" enabled="true" height="19" label="Save Texture As..." left="0"
47 mouse_opaque="true" name="Save Texture As..." width="243">
48 <on_click function="File.SaveTexture" userdata="" /> 42 <on_click function="File.SaveTexture" userdata="" />
49 <on_enable function="File.EnableSaveAs" /> 43 <on_enable function="File.EnableSaveAs" />
50 </menu_item_call> 44 </menu_item_call>
51 <menu_item_separator bottom="-148" enabled="true" height="8" label="-----------" left="0" 45 <menu_item_separator />
52 mouse_opaque="true" name="separator3" width="243" /> 46 <menu_item_call name="Take Snapshot" label="Take Snapshot"
53 <menu_item_call bottom="-167" enabled="true" height="19" label="Take Snapshot" left="0" 47 shortcut="control|shift|S">
54 mouse_opaque="true" name="Take Snapshot" shortcut="control|shift|S"
55 width="243">
56 <on_click function="File.TakeSnapshot" userdata="" /> 48 <on_click function="File.TakeSnapshot" userdata="" />
57 </menu_item_call> 49 </menu_item_call>
58 <menu_item_call bottom="-186" enabled="true" height="19" label="Snapshot to Disk" left="0" 50 <menu_item_call name="Snapshot to Disk" label="Snapshot to Disk"
59 mouse_opaque="true" name="Snapshot to Disk" shortcut="control|`" 51 shortcut="control|`" useMacCtrl="true">
60 useMacCtrl="true" width="243">
61 <on_click function="File.TakeSnapshotToDisk" userdata="" /> 52 <on_click function="File.TakeSnapshotToDisk" userdata="" />
62 </menu_item_call> 53 </menu_item_call>
63 <menu_item_separator bottom="-194" enabled="true" height="8" label="-----------" left="0" 54 <menu_item_separator />
64 mouse_opaque="true" name="separator4" width="243" /> 55 <menu_item_call name="Quit" label="Quit" shortcut="control|Q">
65 <menu_item_call bottom="-259" enabled="true" height="19" label="Quit" left="0"
66 mouse_opaque="true" name="Quit" shortcut="control|Q" width="243">
67 <on_click function="File.Quit" userdata="" /> 56 <on_click function="File.Quit" userdata="" />
68 </menu_item_call> 57 </menu_item_call>
69 </menu> 58 </menu>
70 <menu bottom="97" create_jump_keys="true" drop_shadow="true" enabled="true" 59
71 height="439" label="Edit" left="38" mouse_opaque="false" name="Edit" 60
72 opaque="true" tear_off="true" width="153"> 61
73 <menu_item_call bottom="-29" enabled="false" height="19" label="Undo" left="0" 62 <!-- EDIT -->
74 mouse_opaque="true" name="Undo" shortcut="control|Z" width="153"> 63
64 <menu name="Edit" create_jump_keys="true" label="Edit"
65 opaque="true" tear_off="true">
66 <menu_item_call name="Undo" enabled="false" label="Undo"
67 shortcut="control|Z">
75 <on_click function="Edit.Undo" userdata="" /> 68 <on_click function="Edit.Undo" userdata="" />
76 <on_enable function="Edit.EnableUndo" /> 69 <on_enable function="Edit.EnableUndo" />
77 </menu_item_call> 70 </menu_item_call>
78 <menu_item_call bottom="-48" enabled="false" height="19" label="Redo" left="0" 71 <menu_item_call name="Redo" enabled="false" label="Redo"
79 mouse_opaque="true" name="Redo" shortcut="control|Y" width="153"> 72 shortcut="control|Y">
80 <on_click function="Edit.Redo" userdata="" /> 73 <on_click function="Edit.Redo" userdata="" />
81 <on_enable function="Edit.EnableRedo" /> 74 <on_enable function="Edit.EnableRedo" />
82 </menu_item_call> 75 </menu_item_call>
83 <menu_item_separator bottom="-56" enabled="true" height="8" label="-----------" left="0" 76 <menu_item_separator />
84 mouse_opaque="true" name="separator" width="153" /> 77 <menu_item_call name="Cut" enabled="false" label="Cut" shortcut="control|X">
85 <menu_item_call bottom="-75" enabled="false" height="19" label="Cut" left="0"
86 mouse_opaque="true" name="Cut" shortcut="control|X" width="153">
87 <on_click function="Edit.Cut" userdata="" /> 78 <on_click function="Edit.Cut" userdata="" />
88 <on_enable function="Edit.EnableCut" /> 79 <on_enable function="Edit.EnableCut" />
89 </menu_item_call> 80 </menu_item_call>
90 <menu_item_call bottom="-94" enabled="false" height="19" label="Copy" left="0" 81 <menu_item_call name="Copy" enabled="false" label="Copy"
91 mouse_opaque="true" name="Copy" shortcut="control|C" width="153"> 82 shortcut="control|C">
92 <on_click function="Edit.Copy" userdata="" /> 83 <on_click function="Edit.Copy" userdata="" />
93 <on_enable function="Edit.EnableCopy" /> 84 <on_enable function="Edit.EnableCopy" />
94 </menu_item_call> 85 </menu_item_call>
95 <menu_item_call bottom="-113" enabled="false" height="19" label="Paste" left="0" 86 <menu_item_call name="Paste" enabled="false" label="Paste"
96 mouse_opaque="true" name="Paste" shortcut="control|V" width="153"> 87 shortcut="control|V">
97 <on_click function="Edit.Paste" userdata="" /> 88 <on_click function="Edit.Paste" userdata="" />
98 <on_enable function="Edit.EnablePaste" /> 89 <on_enable function="Edit.EnablePaste" />
99 </menu_item_call> 90 </menu_item_call>
100 <menu_item_call bottom="-132" enabled="false" height="19" label="Delete" left="0" 91 <menu_item_call name="Delete" enabled="false" label="Delete" shortcut="Del">
101 mouse_opaque="true" name="Delete" shortcut="Del" width="153">
102 <on_click function="Edit.Delete" userdata="" /> 92 <on_click function="Edit.Delete" userdata="" />
103 <on_enable function="Edit.EnableDelete" /> 93 <on_enable function="Edit.EnableDelete" />
104 </menu_item_call> 94 </menu_item_call>
105 <menu_item_separator bottom="-140" enabled="true" height="8" label="-----------" left="0" 95 <menu_item_separator />
106 mouse_opaque="true" name="separator2" width="153" /> 96 <menu_item_call name="Search..." label="Search..." shortcut="control|F">
107 <menu_item_call bottom="-159" enabled="true" height="19" label="Search..." left="0"
108 mouse_opaque="true" name="Search..." shortcut="control|F" width="153">
109 <on_click function="Edit.Search" userdata="" /> 97 <on_click function="Edit.Search" userdata="" />
110 </menu_item_call> 98 </menu_item_call>
111 <menu_item_separator bottom="-167" enabled="true" height="8" label="-----------" left="0" 99 <menu_item_separator />
112 mouse_opaque="true" name="separator3" width="153" /> 100 <menu_item_call name="Select All" enabled="false" label="Select All"
113 <menu_item_call bottom="-186" enabled="false" height="19" label="Select All" left="0" 101 shortcut="control|A">
114 mouse_opaque="true" name="Select All" shortcut="control|A" width="153">
115 <on_click function="Edit.SelectAll" userdata="" /> 102 <on_click function="Edit.SelectAll" userdata="" />
116 <on_enable function="Edit.EnableSelectAll" /> 103 <on_enable function="Edit.EnableSelectAll" />
117 </menu_item_call> 104 </menu_item_call>
118 <menu_item_call bottom="-205" enabled="false" height="19" label="Deselect" left="0" 105 <menu_item_call name="Deselect" enabled="false" label="Deselect"
119 mouse_opaque="true" name="Deselect" shortcut="control|E" width="153"> 106 shortcut="control|E">
120 <on_click function="Edit.Deselect" userdata="" /> 107 <on_click function="Edit.Deselect" userdata="" />
121 <on_enable function="Edit.EnableDeselect" /> 108 <on_enable function="Edit.EnableDeselect" />
122 </menu_item_call> 109 </menu_item_call>
123 <menu_item_separator bottom="-213" enabled="true" height="8" label="-----------" left="0" 110 <menu_item_separator />
124 mouse_opaque="true" name="separator4" width="153" /> 111 <menu_item_call name="Duplicate" enabled="false" label="Duplicate"
125 <menu_item_call bottom="-232" enabled="false" height="19" label="Duplicate" left="0" 112 shortcut="control|D">
126 mouse_opaque="true" name="Duplicate" shortcut="control|D" width="153">
127 <on_click function="Edit.Duplicate" userdata="" /> 113 <on_click function="Edit.Duplicate" userdata="" />
128 <on_enable function="Edit.EnableDuplicate" /> 114 <on_enable function="Edit.EnableDuplicate" />
129 </menu_item_call> 115 </menu_item_call>
130 <menu_item_separator bottom="-240" enabled="true" height="8" label="-----------" left="0" 116 <menu_item_separator />
131 mouse_opaque="true" name="separator5" width="153" /> 117 <menu name="Attach Object" create_jump_keys="true" label="Attach Object"
132 <menu bottom="-554" create_jump_keys="true" drop_shadow="true" enabled="true" 118 opaque="true" tear_off="true" />
133 height="554" label="Attach Object" left="0" mouse_opaque="false" 119 <menu name="Detach Object" create_jump_keys="true" label="Detach Object"
134 name="Attach Object" opaque="true" tear_off="true" width="117" /> 120 opaque="true" tear_off="true" />
135 <menu bottom="-554" create_jump_keys="true" drop_shadow="true" enabled="true" 121 <menu name="Take Off Clothing" create_jump_keys="true"
136 height="554" label="Detach Object" left="191" mouse_opaque="false" 122 label="Take Off Clothing" opaque="true" tear_off="true">
137 name="Detach Object" opaque="true" tear_off="true" width="118" /> 123 <menu_item_call name="Shirt" enabled="false" label="Shirt">
138 <menu bottom="-554" create_jump_keys="true" drop_shadow="true" enabled="true"
139 height="204" label="Take Off Clothing" left="0" mouse_opaque="false"
140 name="Take Off Clothing" opaque="true" tear_off="true" width="118">
141 <menu_item_call bottom="-29" enabled="false" height="19" label="Shirt" left="0"
142 mouse_opaque="true" name="Shirt" width="118">
143 <on_click function="Edit.TakeOff" userdata="shirt" /> 124 <on_click function="Edit.TakeOff" userdata="shirt" />
144 <on_enable function="Edit.EnableTakeOff" userdata="shirt" /> 125 <on_enable function="Edit.EnableTakeOff" userdata="shirt" />
145 </menu_item_call> 126 </menu_item_call>
146 <menu_item_call bottom="-48" enabled="false" height="19" label="Pants" left="0" 127 <menu_item_call name="Pants" enabled="false" label="Pants">
147 mouse_opaque="true" name="Pants" width="118">
148 <on_click function="Edit.TakeOff" userdata="pants" /> 128 <on_click function="Edit.TakeOff" userdata="pants" />
149 <on_enable function="Edit.EnableTakeOff" userdata="pants" /> 129 <on_enable function="Edit.EnableTakeOff" userdata="pants" />
150 </menu_item_call> 130 </menu_item_call>
151 <menu_item_call bottom="-67" enabled="false" height="19" label="Shoes" left="0" 131 <menu_item_call name="Shoes" enabled="false" label="Shoes">
152 mouse_opaque="true" name="Shoes" width="118">
153 <on_click function="Edit.TakeOff" userdata="shoes" /> 132 <on_click function="Edit.TakeOff" userdata="shoes" />
154 <on_enable function="Edit.EnableTakeOff" userdata="shoes" /> 133 <on_enable function="Edit.EnableTakeOff" userdata="shoes" />
155 </menu_item_call> 134 </menu_item_call>
156 <menu_item_call bottom="-86" enabled="false" height="19" label="Socks" left="0" 135 <menu_item_call name="Socks" enabled="false" label="Socks">
157 mouse_opaque="true" name="Socks" width="118">
158 <on_click function="Edit.TakeOff" userdata="socks" /> 136 <on_click function="Edit.TakeOff" userdata="socks" />
159 <on_enable function="Edit.EnableTakeOff" userdata="socks" /> 137 <on_enable function="Edit.EnableTakeOff" userdata="socks" />
160 </menu_item_call> 138 </menu_item_call>
161 <menu_item_call bottom="-105" enabled="false" height="19" label="Jacket" left="0" 139 <menu_item_call name="Jacket" enabled="false" label="Jacket">
162 mouse_opaque="true" name="Jacket" width="118">
163 <on_click function="Edit.TakeOff" userdata="jacket" /> 140 <on_click function="Edit.TakeOff" userdata="jacket" />
164 <on_enable function="Edit.EnableTakeOff" userdata="jacket" /> 141 <on_enable function="Edit.EnableTakeOff" userdata="jacket" />
165 </menu_item_call> 142 </menu_item_call>
166 <menu_item_call bottom="-124" enabled="false" height="19" label="Gloves" left="0" 143 <menu_item_call name="Gloves" enabled="false" label="Gloves">
167 mouse_opaque="true" name="Gloves" width="118">
168 <on_click function="Edit.TakeOff" userdata="gloves" /> 144 <on_click function="Edit.TakeOff" userdata="gloves" />
169 <on_enable function="Edit.EnableTakeOff" userdata="gloves" /> 145 <on_enable function="Edit.EnableTakeOff" userdata="gloves" />
170 </menu_item_call> 146 </menu_item_call>
171 <menu_item_call bottom="-143" enabled="false" height="19" label="Undershirt" left="0" 147 <menu_item_call name="Menu Undershirt" enabled="false" label="Undershirt">
172 mouse_opaque="true" name="Menu Undershirt" width="118">
173 <on_click function="Edit.TakeOff" userdata="undershirt" /> 148 <on_click function="Edit.TakeOff" userdata="undershirt" />
174 <on_enable function="Edit.EnableTakeOff" userdata="undershirt" /> 149 <on_enable function="Edit.EnableTakeOff" userdata="undershirt" />
175 </menu_item_call> 150 </menu_item_call>
176 <menu_item_call bottom="-162" enabled="false" height="19" label="Underpants" left="0" 151 <menu_item_call name="Menu Underpants" enabled="false" label="Underpants">
177 mouse_opaque="true" name="Menu Underpants" width="118">
178 <on_click function="Edit.TakeOff" userdata="underpants" /> 152 <on_click function="Edit.TakeOff" userdata="underpants" />
179 <on_enable function="Edit.EnableTakeOff" userdata="underpants" /> 153 <on_enable function="Edit.EnableTakeOff" userdata="underpants" />
180 </menu_item_call> 154 </menu_item_call>
181 <menu_item_call bottom="-181" enabled="false" height="19" label="Skirt" left="0" 155 <menu_item_call name="Skirt" enabled="false" label="Skirt">
182 mouse_opaque="true" name="Skirt" width="118">
183 <on_click function="Edit.TakeOff" userdata="skirt" /> 156 <on_click function="Edit.TakeOff" userdata="skirt" />
184 <on_enable function="Edit.EnableTakeOff" userdata="skirt" /> 157 <on_enable function="Edit.EnableTakeOff" userdata="skirt" />
185 </menu_item_call> 158 </menu_item_call>
186 <menu_item_call bottom="-200" enabled="true" height="19" label="All Clothes" left="0" 159 <menu_item_call name="All Clothes" label="All Clothes">
187 mouse_opaque="true" name="All Clothes" width="118">
188 <on_click function="Edit.TakeOff" userdata="all" /> 160 <on_click function="Edit.TakeOff" userdata="all" />
189 </menu_item_call> 161 </menu_item_call>
190 </menu> 162 </menu>
191 <menu_item_separator bottom="-305" enabled="true" height="8" label="-----------" left="0" 163 <menu_item_separator />
192 mouse_opaque="true" name="separator6" width="153" /> 164 <menu_item_call name="Gestures..." label="Gestures..." shortcut="control|G">
193 <menu_item_call bottom="-324" enabled="true" height="19" label="Gestures..." left="0"
194 mouse_opaque="true" name="Gestures..." shortcut="control|G" width="153">
195 <on_click function="ShowFloater" userdata="gestures" /> 165 <on_click function="ShowFloater" userdata="gestures" />
196 </menu_item_call> 166 </menu_item_call>
197 <menu_item_call bottom="-343" enabled="true" height="19" label="Profile..." left="0" 167 <menu_item_call name="Profile..." label="Profile...">
198 mouse_opaque="true" name="Profile..." width="153">
199 <on_click function="ShowAgentProfile" userdata="agent" /> 168 <on_click function="ShowAgentProfile" userdata="agent" />
200 </menu_item_call> 169 </menu_item_call>
201 <menu_item_call bottom="-362" enabled="true" height="19" label="Appearance..." left="0" 170 <menu_item_call name="Appearance..." label="Appearance...">
202 mouse_opaque="true" name="Appearance..." width="153">
203 <on_click function="ShowFloater" userdata="appearance" /> 171 <on_click function="ShowFloater" userdata="appearance" />
204 <on_enable function="Edit.EnableCustomizeAvatar" /> 172 <on_enable function="Edit.EnableCustomizeAvatar" />
205 </menu_item_call> 173 </menu_item_call>
206 <menu_item_separator bottom="-370" enabled="true" height="8" label="-----------" left="0" 174 <menu_item_separator />
207 mouse_opaque="true" name="separator7" width="153" /> 175 <menu_item_check name="Friends..." label="Friends..."
208 <menu_item_check bottom="-389" enabled="true" height="19" label="Friends..." left="0" 176 shortcut="control|shift|F">
209 mouse_opaque="true" name="Friends..." shortcut="control|shift|F"
210 width="153">
211 <on_click function="ShowFloater" userdata="friends" /> 177 <on_click function="ShowFloater" userdata="friends" />
212 <on_check function="FloaterVisible" userdata="friends" /> 178 <on_check function="FloaterVisible" userdata="friends" />
213 </menu_item_check> 179 </menu_item_check>
214 <menu_item_call bottom="-408" enabled="true" height="19" label="Groups..." left="0" 180 <menu_item_call name="Groups..." label="Groups...">
215 mouse_opaque="true" name="Groups..." width="153">
216 <on_click function="ShowAgentGroups" userdata="agent" /> 181 <on_click function="ShowAgentGroups" userdata="agent" />
217 </menu_item_call> 182 </menu_item_call>
218 <menu_item_separator bottom="-416" enabled="true" height="8" label="-----------" left="0" 183 <menu_item_separator />
219 mouse_opaque="true" name="separator8" width="153" /> 184 <menu_item_call name="Preferences..." label="Preferences..."
220 <menu_item_call bottom="-435" enabled="true" height="19" label="Preferences..." left="0" 185 shortcut="control|P">
221 mouse_opaque="true" name="Preferences..." shortcut="control|P" width="153">
222 <on_click function="ShowFloater" userdata="preferences" /> 186 <on_click function="ShowFloater" userdata="preferences" />
223 </menu_item_call> 187 </menu_item_call>
224 </menu> 188 </menu>
225 <menu bottom="-1" create_jump_keys="true" drop_shadow="true" enabled="true" 189
226 height="537" label="View" left="80" mouse_opaque="false" name="View" 190
227 opaque="true" tear_off="true" width="211"> 191
228 <tearoff_menu bottom="-10" enabled="true" height="10" label="~~~~~~~~~~~" left="0" 192 <!-- VIEW -->
229 mouse_opaque="true" name="~~~~~~~~~~~" width="211" /> 193
230 <menu_item_call bottom="-29" enabled="true" height="19" label="Mouselook" left="0" 194 <menu create_jump_keys="true" label="View" name="View"
231 mouse_opaque="true" name="Mouselook" shortcut="M" width="211"> 195 opaque="true" tear_off="true">
196 <menu_item_call name="Mouselook" label="Mouselook" shortcut="M">
232 <on_click function="View.Mouselook" userdata="" /> 197 <on_click function="View.Mouselook" userdata="" />
233 <on_enable function="View.EnableMouselook" /> 198 <on_enable function="View.EnableMouselook" />
234 </menu_item_call> 199 </menu_item_call>
235 <menu_item_check bottom="-48" enabled="true" height="19" label="Build" left="0" 200 <menu_item_check name="Build" label="Build" shortcut="B">
236 mouse_opaque="true" name="Build" shortcut="B" width="211">
237 <on_click function="View.BuildMode" userdata="" /> 201 <on_click function="View.BuildMode" userdata="" />
238 <on_check function="View.CheckBuildMode" /> 202 <on_check function="View.CheckBuildMode" />
239 </menu_item_check> 203 </menu_item_check>
240 <menu_item_check bottom="-48" enabled="true" height="19" label="Joystick Flycam" left="0" 204 <menu_item_check name="Joystick Flycam" label="Joystick Flycam"
241 mouse_opaque="true" name="Joystick Flycam" shortcut="alt|shift|F" 205 shortcut="alt|shift|F">
242 width="211">
243 <on_click function="View.JoystickFlycam" userdata="" /> 206 <on_click function="View.JoystickFlycam" userdata="" />
244 <on_check function="View.CheckJoystickFlycam" /> 207 <on_check function="View.CheckJoystickFlycam" />
245 </menu_item_check> 208 </menu_item_check>
246 <menu_item_call bottom="-67" enabled="true" height="19" label="Reset View" left="0" 209 <menu_item_call name="Reset View" label="Reset View" shortcut="Esc">
247 mouse_opaque="true" name="Reset View" shortcut="Esc" width="211">
248 <on_click function="View.ResetView" userdata="" /> 210 <on_click function="View.ResetView" userdata="" />
249 </menu_item_call> 211 </menu_item_call>
250 <menu_item_call bottom="-86" enabled="false" height="19" label="Look at Last Chatter" left="0" 212 <menu_item_call name="Look at Last Chatter" enabled="false"
251 mouse_opaque="true" name="Look at Last Chatter" shortcut="control|\" 213 label="Look at Last Chatter" shortcut="control|\">
252 width="211">
253 <on_click function="View.LookAtLastChatter" userdata="" /> 214 <on_click function="View.LookAtLastChatter" userdata="" />
254 <on_enable function="View.EnableLastChatter" /> 215 <on_enable function="View.EnableLastChatter" />
255 </menu_item_call> 216 </menu_item_call>
256 <menu_item_separator bottom="-94" enabled="true" height="8" label="-----------" left="0" 217 <menu_item_separator />
257 mouse_opaque="true" name="separator" width="211" /> 218 <menu_item_check name="Toolbar" label="Toolbar">
258 <menu_item_check bottom="-113" enabled="true" height="19" label="Toolbar" left="0"
259 mouse_opaque="true" name="Toolbar" width="211">
260 <on_click function="ShowFloater" userdata="toolbar" /> 219 <on_click function="ShowFloater" userdata="toolbar" />
261 <on_check function="FloaterVisible" userdata="toolbar" /> 220 <on_check function="FloaterVisible" userdata="toolbar" />
262 </menu_item_check> 221 </menu_item_check>
263 <menu_item_check bottom="-132" enabled="true" height="19" label="Local Chat" left="0" 222 <menu_item_check name="Chat History" label="Local Chat" shortcut="control|H">
264 mouse_opaque="true" name="Chat History" shortcut="control|H" width="211">
265 <on_click function="ShowFloater" userdata="chat history" /> 223 <on_click function="ShowFloater" userdata="chat history" />
266 <on_check function="FloaterVisible" userdata="chat history" /> 224 <on_check function="FloaterVisible" userdata="chat history" />
267 </menu_item_check> 225 </menu_item_check>
268 <menu_item_check bottom="-151" enabled="true" height="19" label="Communicate" left="0" 226 <menu_item_check name="Instant Message" label="Communicate"
269 mouse_opaque="true" name="Instant Message" shortcut="control|T" width="211"> 227 shortcut="control|T">
270 <on_click function="ShowFloater" userdata="im" /> 228 <on_click function="ShowFloater" userdata="im" />
271 <on_check function="FloaterVisible" userdata="im" /> 229 <on_check function="FloaterVisible" userdata="im" />
272 </menu_item_check> 230 </menu_item_check>
273 <menu_item_call bottom="-170" enabled="true" height="19" label="Inventory" left="0" 231 <menu_item_call name="Inventory" label="Inventory" shortcut="control|I">
274 mouse_opaque="true" name="Inventory" shortcut="control|I" width="211">
275 <on_click function="ShowFloater" userdata="inventory" /> 232 <on_click function="ShowFloater" userdata="inventory" />
276 </menu_item_call> 233 </menu_item_call>
277 <menu_item_check bottom="-189" enabled="true" height="19" label="Active Speakers" left="0" 234 <menu_item_check name="Active Speakers" label="Active Speakers">
278 mouse_opaque="true" name="Active Speakers" width="211">
279 <on_click function="ShowFloater" userdata="active speakers" /> 235 <on_click function="ShowFloater" userdata="active speakers" />
280 <on_check function="FloaterVisible" userdata="active speakers" /> 236 <on_check function="FloaterVisible" userdata="active speakers" />
281 </menu_item_check> 237 </menu_item_check>
282 <menu_item_check bottom="-189" enabled="true" height="19" label="Mute List" left="0" 238 <menu_item_check name="Mute List" label="Mute List">
283 mouse_opaque="true" name="Mute List" width="211">
284 <on_click function="ShowFloater" userdata="mute list" /> 239 <on_click function="ShowFloater" userdata="mute list" />
285 <on_check function="FloaterVisible" userdata="mute list" /> 240 <on_check function="FloaterVisible" userdata="mute list" />
286 </menu_item_check> 241 </menu_item_check>
287 <menu_item_separator bottom="-197" enabled="true" height="8" label="-----------" left="0" 242 <menu_item_separator />
288 mouse_opaque="true" name="separator2" width="211" /> 243 <menu_item_check name="Camera Controls" label="Camera Controls">
289 <menu_item_check bottom="-216" enabled="true" height="19" label="Camera Controls" left="0"
290 mouse_opaque="true" name="Camera Controls" width="211">
291 <on_click function="ShowFloater" userdata="camera controls" /> 244 <on_click function="ShowFloater" userdata="camera controls" />
292 <on_check function="FloaterVisible" userdata="camera controls" /> 245 <on_check function="FloaterVisible" userdata="camera controls" />
293 </menu_item_check> 246 </menu_item_check>
294 <menu_item_check bottom="-235" enabled="true" height="19" label="Movement Controls" left="0" 247 <menu_item_check name="Movement Controls" label="Movement Controls">
295 mouse_opaque="true" name="Movement Controls" width="211">
296 <on_click function="ShowFloater" userdata="movement controls" /> 248 <on_click function="ShowFloater" userdata="movement controls" />
297 <on_check function="FloaterVisible" userdata="movement controls" /> 249 <on_check function="FloaterVisible" userdata="movement controls" />
298 </menu_item_check> 250 </menu_item_check>
299 <menu_item_check bottom="-254" enabled="true" height="19" label="World Map" left="0" 251 <menu_item_check name="World Map" label="World Map" shortcut="control|M">
300 mouse_opaque="true" name="World Map" shortcut="control|M" width="211">
301 <on_click function="ShowFloater" userdata="world map" /> 252 <on_click function="ShowFloater" userdata="world map" />
302 <on_check control="ShowWorldMap" /> 253 <on_check control="ShowWorldMap" />
303 </menu_item_check> 254 </menu_item_check>
304 <menu_item_check bottom="-273" enabled="true" height="19" label="Mini-Map" left="0" 255 <menu_item_check name="Mini-Map" label="Mini-Map" shortcut="control|shift|M">
305 mouse_opaque="true" name="Mini-Map" shortcut="control|shift|M" width="211">
306 <on_click function="ShowFloater" userdata="mini map" /> 256 <on_click function="ShowFloater" userdata="mini map" />
307 <on_check control="ShowMiniMap" /> 257 <on_check control="ShowMiniMap" />
308 </menu_item_check> 258 </menu_item_check>
309 <menu_item_separator bottom="-281" enabled="true" height="8" label="-----------" left="0" 259 <menu_item_separator />
310 mouse_opaque="true" name="separator3" width="211" /> 260 <menu_item_check name="Statistics Bar" label="Statistics Bar"
311 <menu_item_check bottom="-300" enabled="true" height="19" label="Statistics Bar" left="0" 261 shortcut="control|shift|1">
312 mouse_opaque="true" name="Statistics Bar" shortcut="control|shift|1"
313 width="211">
314 <on_click function="ShowFloater" userdata="stat bar" /> 262 <on_click function="ShowFloater" userdata="stat bar" />
315 <on_check function="FloaterVisible" userdata="stat bar" /> 263 <on_check function="FloaterVisible" userdata="stat bar" />
316 </menu_item_check> 264 </menu_item_check>
317 <menu_item_check bottom="-319" enabled="true" height="19" label="Property Lines" left="0" 265 <menu_item_check name="Property Lines" label="Property Lines"
318 mouse_opaque="true" name="Property Lines" shortcut="control|alt|shift|P" 266 shortcut="control|alt|shift|P">
319 width="211">
320 <on_click function="ToggleControl" userdata="ShowPropertyLines" /> 267 <on_click function="ToggleControl" userdata="ShowPropertyLines" />
321 <on_check control="ShowPropertyLines" /> 268 <on_check control="ShowPropertyLines" />
322 </menu_item_check> 269 </menu_item_check>
323 <menu_item_check bottom="-338" enabled="true" height="19" label="Land Owners" left="0" 270 <menu_item_check name="Land Owners" label="Land Owners">
324 mouse_opaque="true" name="Land Owners" width="211">
325 <on_click function="ToggleControl" userdata="ShowParcelOwners" /> 271 <on_click function="ToggleControl" userdata="ShowParcelOwners" />
326 <on_check control="ShowParcelOwners" /> 272 <on_check control="ShowParcelOwners" />
327 </menu_item_check> 273 </menu_item_check>
328 <menu_item_separator bottom="-346" enabled="true" height="8" label="-----------" left="0" 274 <menu_item_separator />
329 mouse_opaque="true" name="separator4" width="211" /> 275 <menu name="Hover Tips" create_jump_keys="true" label="Hover Tips"
330 <menu bottom="-554" create_jump_keys="true" drop_shadow="true" enabled="true" 276 opaque="true" tear_off="true">
331 height="79" label="Hover Tips" left="0" mouse_opaque="false" 277 <menu_item_check name="Show Tips" label="Show Tips"
332 name="Hover Tips" opaque="true" tear_off="true" width="158"> 278 shortcut="control|shift|T">
333 <menu_item_check bottom="-29" enabled="true" height="19" label="Show Tips" left="0"
334 mouse_opaque="true" name="Show Tips" shortcut="control|shift|T" width="158">
335 <on_click function="View.ShowHoverTips" userdata="" /> 279 <on_click function="View.ShowHoverTips" userdata="" />
336 <on_check function="View.CheckShowHoverTips" /> 280 <on_check function="View.CheckShowHoverTips" />
337 </menu_item_check> 281 </menu_item_check>
338 <menu_item_separator bottom="-37" enabled="true" height="8" label="-----------" left="0" 282 <menu_item_separator />
339 mouse_opaque="true" name="separator" width="158" /> 283 <menu_item_check name="Land Tips" label="Land Tips">
340 <menu_item_check bottom="-56" enabled="true" height="19" label="Land Tips" left="0"
341 mouse_opaque="true" name="Land Tips" width="158">
342 <on_click function="ToggleControl" userdata="ShowLandHoverTip" /> 284 <on_click function="ToggleControl" userdata="ShowLandHoverTip" />
343 <on_enable function="View.CheckShowHoverTips" /> 285 <on_enable function="View.CheckShowHoverTips" />
344 <on_check control="ShowLandHoverTip" /> 286 <on_check control="ShowLandHoverTip" />
345 </menu_item_check> 287 </menu_item_check>
346 <menu_item_check bottom="-75" enabled="true" height="19" label="Tips On All Objects" left="0" 288 <menu_item_check name="Tips On All Objects" label="Tips On All Objects">
347 mouse_opaque="true" name="Tips On All Objects" width="158">
348 <on_click function="ToggleControl" userdata="ShowAllObjectHoverTip" /> 289 <on_click function="ToggleControl" userdata="ShowAllObjectHoverTip" />
349 <on_enable function="View.CheckShowHoverTips" /> 290 <on_enable function="View.CheckShowHoverTips" />
350 <on_check control="ShowAllObjectHoverTip" /> 291 <on_check control="ShowAllObjectHoverTip" />
351 </menu_item_check> 292 </menu_item_check>
352 </menu> 293 </menu>
353 <menu_item_check bottom="-403" enabled="true" height="19" label="Highlight Transparent" left="0" 294 <menu_item_check name="Highlight Transparent" label="Highlight Transparent"
354 mouse_opaque="true" name="Highlight Transparent" shortcut="control|alt|T" 295 shortcut="control|alt|T">
355 width="211">
356 <on_click function="View.HighlightTransparent" userdata="" /> 296 <on_click function="View.HighlightTransparent" userdata="" />
357 <on_check function="View.CheckHighlightTransparent" /> 297 <on_check function="View.CheckHighlightTransparent" />
358 </menu_item_check> 298 </menu_item_check>
359 <menu_item_check bottom="-384" enabled="true" height="19" label="Beacons Always On" left="0" 299 <menu_item_check name="Beacons Always On" label="Beacons Always On"
360 mouse_opaque="true" name="Beacons Always On" shortcut="control|N" 300 shortcut="control|N">
361 width="211">
362 <on_click function="ToggleControl" userdata="BeaconAlwaysOn" /> 301 <on_click function="ToggleControl" userdata="BeaconAlwaysOn" />
363 <on_check control="BeaconAlwaysOn" /> 302 <on_check control="BeaconAlwaysOn" />
364 </menu_item_check> 303 </menu_item_check>
365 <menu bottom="-554" create_jump_keys="true" drop_shadow="true" enabled="true" 304 <menu name="Beacons" create_jump_keys="true" label="Beacons"
366 height="117" label="Beacons" left="0" mouse_opaque="false" name="Beacons" 305 opaque="true" tear_off="true">
367 opaque="true" tear_off="true" width="129"> 306 <menu_item_check name="Scripted Objects With Touch Only"
368 <menu_item_check bottom="-29" enabled="true" height="19" 307 label="Scripted Objects with Touch Only">
369 label="Scripted Objects with Touch Only" left="0" mouse_opaque="true"
370 name="Scripted Objects With Touch Only" width="129">
371 <on_click function="View.ToggleBeacon" userdata="scripttouchbeacon" /> 308 <on_click function="View.ToggleBeacon" userdata="scripttouchbeacon" />
372 <on_check function="View.CheckBeaconEnabled" userdata="scripttouchbeacon" /> 309 <on_check function="View.CheckBeaconEnabled" userdata="scripttouchbeacon" />
373 </menu_item_check> 310 </menu_item_check>
374 <menu_item_check bottom="-48" enabled="true" height="19" label="Scripted Objects" left="0" 311 <menu_item_check name="Scripted Objects" label="Scripted Objects">
375 mouse_opaque="true" name="Scripted Objects" width="129">
376 <on_click function="View.ToggleBeacon" userdata="scriptsbeacon" /> 312 <on_click function="View.ToggleBeacon" userdata="scriptsbeacon" />
377 <on_check function="View.CheckBeaconEnabled" userdata="scriptsbeacon" /> 313 <on_check function="View.CheckBeaconEnabled" userdata="scriptsbeacon" />
378 </menu_item_check> 314 </menu_item_check>
379 <menu_item_check bottom="-67" enabled="true" height="19" label="Physical Objects" left="0" 315 <menu_item_check name="Physical Objects" label="Physical Objects">
380 mouse_opaque="true" name="Physical Objects" width="129">
381 <on_click function="View.ToggleBeacon" userdata="physicalbeacon" /> 316 <on_click function="View.ToggleBeacon" userdata="physicalbeacon" />
382 <on_check function="View.CheckBeaconEnabled" userdata="physicalbeacon" /> 317 <on_check function="View.CheckBeaconEnabled" userdata="physicalbeacon" />
383 </menu_item_check> 318 </menu_item_check>
384 <menu_item_check bottom="-86" enabled="true" height="19" label="Sound Sources" left="0" 319 <menu_item_check name="Sound Sources" label="Sound Sources">
385 mouse_opaque="true" name="Sound Sources" width="129">
386 <on_click function="View.ToggleBeacon" userdata="soundsbeacon" /> 320 <on_click function="View.ToggleBeacon" userdata="soundsbeacon" />
387 <on_check function="View.CheckBeaconEnabled" userdata="soundsbeacon" /> 321 <on_check function="View.CheckBeaconEnabled" userdata="soundsbeacon" />
388 </menu_item_check> 322 </menu_item_check>
389 <menu_item_check bottom="-105" enabled="true" height="19" label="Particle Sources" left="0" 323 <menu_item_check name="Particle Sources" label="Particle Sources">
390 mouse_opaque="true" name="Particle Sources" width="129">
391 <on_click function="View.ToggleBeacon" userdata="particlesbeacon" /> 324 <on_click function="View.ToggleBeacon" userdata="particlesbeacon" />
392 <on_check function="View.CheckBeaconEnabled" userdata="particlesbeacon" /> 325 <on_check function="View.CheckBeaconEnabled" userdata="particlesbeacon" />
393 </menu_item_check> 326 </menu_item_check>
394 <menu_item_separator bottom="-113" enabled="true" height="8" label="-----------" left="0" 327 <menu_item_separator />
395 mouse_opaque="true" name="separator" width="129" /> 328 <menu_item_check name="Render Highlights" label="Render Highlights">
396 <menu_item_check bottom="-121" enabled="true" height="19" label="Render Highlights" left="0"
397 mouse_opaque="true" name="Render Highlights" width="129">
398 <on_click function="View.ToggleBeacon" userdata="renderhighlights" /> 329 <on_click function="View.ToggleBeacon" userdata="renderhighlights" />
399 <on_check function="View.CheckBeaconEnabled" userdata="renderhighlights" /> 330 <on_check function="View.CheckBeaconEnabled" userdata="renderhighlights" />
400 </menu_item_check> 331 </menu_item_check>
401 <menu_item_check bottom="-140" enabled="true" height="19" label="Render Beacons" left="0" 332 <menu_item_check name="Render Beacons" label="Render Beacons">
402 mouse_opaque="true" name="Render Beacons" width="129">
403 <on_click function="View.ToggleBeacon" userdata="renderbeacons" /> 333 <on_click function="View.ToggleBeacon" userdata="renderbeacons" />
404 <on_check function="View.CheckBeaconEnabled" userdata="renderbeacons" /> 334 <on_check function="View.CheckBeaconEnabled" userdata="renderbeacons" />
405 </menu_item_check> 335 </menu_item_check>
406 <menu_item_separator bottom="-159" enabled="true" height="8" label="-----------" left="0" 336 <menu_item_separator />
407 mouse_opaque="true" name="separator2" width="129" /> 337 <menu_item_check name="Hide Particles" label="Hide Particles">
408 <menu_item_check bottom="-167" enabled="true" height="19" label="Hide Particles" left="0"
409 mouse_opaque="true" name="Hide Particles" width="129">
410 <on_click function="View.ToggleRenderType" userdata="hideparticles" /> 338 <on_click function="View.ToggleRenderType" userdata="hideparticles" />
411 <on_check function="View.CheckRenderType" userdata="hideparticles" /> 339 <on_check function="View.CheckRenderType" userdata="hideparticles" />
412 </menu_item_check> 340 </menu_item_check>
413 <menu_item_separator bottom="-186" enabled="true" height="8" label="-----------" left="0" 341 <menu_item_separator />
414 mouse_opaque="true" name="separator3" width="129" /> 342 <menu name="Beacon Width" color="0 0 0 1" create_jump_keys="true"
415 <menu bottom="-205" color="0 0 0 1" create_jump_keys="true" drop_shadow="true" 343 label="Beacon Width" opaque="true" tear_off="true">
416 enabled="true" height="117" label="Beacon Width" left="0" 344 <menu_item_call name="Beacon Width 1" label="1">
417 mouse_opaque="false" name="Beacon Width" opaque="true" tear_off="true"
418 width="129">
419 <menu_item_call bottom="-19" enabled="true" height="19" label="1" left="0" mouse_opaque="true"
420 name="Beacon Width 1" width="188">
421 <on_click function="View.BeaconWidth" userdata="1" /> 345 <on_click function="View.BeaconWidth" userdata="1" />
422 </menu_item_call> 346 </menu_item_call>
423 <menu_item_call bottom="-19" enabled="true" height="19" label="4" left="0" mouse_opaque="true" 347 <menu_item_call name="Beacon Width 4" label="4">
424 name="Beacon Width 4" width="188">
425 <on_click function="View.BeaconWidth" userdata="4" /> 348 <on_click function="View.BeaconWidth" userdata="4" />
426 </menu_item_call> 349 </menu_item_call>
427 <menu_item_call bottom="-19" enabled="true" height="19" label="16" left="0" mouse_opaque="true" 350 <menu_item_call name="Beacon Width 16" label="16">
428 name="Beacon Width 16" width="188">
429 <on_click function="View.BeaconWidth" userdata="16" /> 351 <on_click function="View.BeaconWidth" userdata="16" />
430 </menu_item_call> 352 </menu_item_call>
431 <menu_item_call bottom="-19" enabled="true" height="19" label="32" left="0" mouse_opaque="true" 353 <menu_item_call name="Beacon Width 32" label="32">
432 name="Beacon Width 32" width="188">
433 <on_click function="View.BeaconWidth" userdata="32" /> 354 <on_click function="View.BeaconWidth" userdata="32" />
434 </menu_item_call> 355 </menu_item_call>
435 </menu> 356 </menu>
436 </menu> 357 </menu>
437 <menu_item_check bottom="-441" enabled="true" height="19" label="Show HUD Attachments" left="0" 358 <menu_item_check name="Show HUD Attachments" label="Show HUD Attachments"
438 mouse_opaque="true" name="Show HUD Attachments" shortcut="alt|shift|H" 359 shortcut="alt|shift|H">
439 width="211">
440 <on_click function="View.ShowHUDAttachments" userdata="" /> 360 <on_click function="View.ShowHUDAttachments" userdata="" />
441 <on_check function="View.CheckHUDAttachments" /> 361 <on_check function="View.CheckHUDAttachments" />
442 </menu_item_check> 362 </menu_item_check>
443 <menu_item_separator bottom="-449" enabled="true" height="8" label="-----------" left="0" 363 <menu_item_separator />
444 mouse_opaque="true" name="separator5" width="211" /> 364 <menu_item_call name="Zoom In" label="Zoom In" shortcut="control|0">
445 <menu_item_call bottom="-468" enabled="true" height="19" label="Zoom In" left="0"
446 mouse_opaque="true" name="Zoom In" shortcut="control|0" width="211">
447 <on_click function="View.ZoomIn" userdata="" /> 365 <on_click function="View.ZoomIn" userdata="" />
448 </menu_item_call> 366 </menu_item_call>
449 <menu_item_call bottom="-487" enabled="true" height="19" label="Zoom Default" left="0" 367 <menu_item_call name="Zoom Default" label="Zoom Default"
450 mouse_opaque="true" name="Zoom Default" shortcut="control|9" width="211"> 368 shortcut="control|9">
451 <on_click function="View.ZoomDefault" userdata="" /> 369 <on_click function="View.ZoomDefault" userdata="" />
452 </menu_item_call> 370 </menu_item_call>
453 <menu_item_call bottom="-506" enabled="true" height="19" label="Zoom Out" left="0" 371 <menu_item_call name="Zoom Out" label="Zoom Out" shortcut="control|8">
454 mouse_opaque="true" name="Zoom Out" shortcut="control|8" width="211">
455 <on_click function="View.ZoomOut" userdata="" /> 372 <on_click function="View.ZoomOut" userdata="" />
456 </menu_item_call> 373 </menu_item_call>
457 <menu_item_separator bottom="-514" enabled="true" height="8" label="-----------" left="0" 374 <menu_item_separator />
458 mouse_opaque="true" name="separator6" width="211" /> 375 <menu_item_call name="Toggle Fullscreen" label="Toggle Fullscreen"
459 <menu_item_call bottom="-19" enabled="true" height="19" label="Toggle Fullscreen" left="0" 376 shortcut="alt|Enter">
460 mouse_opaque="true" name="Toggle Fullscreen" shortcut="alt|Enter"
461 width="188">
462 <on_click function="View.Fullscreen" userdata="" /> 377 <on_click function="View.Fullscreen" userdata="" />
463 </menu_item_call> 378 </menu_item_call>
464 <menu_item_call bottom="-38" enabled="true" height="19" label="Set UI Size to Default" left="0" 379 <menu_item_call name="Set UI Size to Default" label="Set UI Size to Default">
465 mouse_opaque="true" name="Set UI Size to Default" width="188">
466 <on_click function="View.DefaultUISize" userdata="" /> 380 <on_click function="View.DefaultUISize" userdata="" />
467 </menu_item_call> 381 </menu_item_call>
468 </menu> 382 </menu>
469 <menu bottom="-18" create_jump_keys="true" drop_shadow="true" enabled="true" 383
470 height="339" label="World" left="0" mouse_opaque="false" name="World" 384
471 opaque="true" tear_off="true" width="185"> 385
472 <menu_item_call bottom="-29" enabled="true" height="19" label="Chat" left="0" 386 <!-- WORLD -->
473 mouse_opaque="true" name="Chat" shortcut="" width="185"> 387
388 <menu name="World" create_jump_keys="true" label="World"
389 opaque="true" tear_off="true">
390 <menu_item_call name="Chat" label="Chat" shortcut="">
474 <on_click function="World.Chat" userdata="" /> 391 <on_click function="World.Chat" userdata="" />
475 </menu_item_call> 392 </menu_item_call>
476 <menu_item_check bottom="-67" enabled="true" height="19" label="Always Run" left="0" 393 <menu_item_check name="Always Run" label="Always Run" shortcut="control|R">
477 mouse_opaque="true" name="Always Run" shortcut="control|R" width="185">
478 <on_click function="World.AlwaysRun" userdata="" /> 394 <on_click function="World.AlwaysRun" userdata="" />
479 <on_check function="World.CheckAlwaysRun" userdata="" /> 395 <on_check function="World.CheckAlwaysRun" userdata="" />
480 </menu_item_check> 396 </menu_item_check>
481 <menu_item_check bottom="-86" enabled="true" height="19" label="Fly" left="0" 397 <menu_item_check name="Fly" label="Fly" shortcut="Home">
482 mouse_opaque="true" name="Fly" shortcut="Home" width="185">
483 <on_click function="World.Fly" userdata="" /> 398 <on_click function="World.Fly" userdata="" />
484 <on_enable function="World.EnableFly" /> 399 <on_enable function="World.EnableFly" />
485 <on_check control="FlyBtnState" /> 400 <on_check control="FlyBtnState" />
486 </menu_item_check> 401 </menu_item_check>
487 <menu_item_separator bottom="-94" enabled="true" height="8" label="-----------" left="0" 402 <menu_item_separator />
488 mouse_opaque="true" name="separator" width="185" /> 403 <menu_item_call name="Create Landmark Here" label="Create Landmark Here">
489 <menu_item_call bottom="-113" enabled="true" height="19" label="Create Landmark Here" left="0"
490 mouse_opaque="true" name="Create Landmark Here" width="185">
491 <on_click function="World.CreateLandmark" userdata="" /> 404 <on_click function="World.CreateLandmark" userdata="" />
492 <on_enable function="World.EnableCreateLandmark" userdata="" /> 405 <on_enable function="World.EnableCreateLandmark" userdata="" />
493 </menu_item_call> 406 </menu_item_call>
494 <menu_item_call bottom="-132" enabled="true" height="19" label="Set Home to Here" left="0" 407 <menu_item_call name="Set Home to Here" label="Set Home to Here">
495 mouse_opaque="true" name="Set Home to Here" width="185">
496 <on_click function="World.SetHomeLocation" userdata="" /> 408 <on_click function="World.SetHomeLocation" userdata="" />
497 <on_enable function="World.EnableSetHomeLocation" userdata="" /> 409 <on_enable function="World.EnableSetHomeLocation" userdata="" />
498 </menu_item_call> 410 </menu_item_call>
499 <menu_item_separator bottom="-140" enabled="true" height="8" label="-----------" left="0" 411 <menu_item_separator />
500 mouse_opaque="true" name="separator2" width="185" /> 412 <menu_item_call name="Teleport Home" label="Teleport Home"
501 <menu_item_call bottom="-159" enabled="true" height="19" label="Teleport Home" left="0" 413 shortcut="control|shift|H">
502 mouse_opaque="true" name="Teleport Home" shortcut="control|shift|H"
503 width="185">
504 <on_click function="World.TeleportHome" userdata="" /> 414 <on_click function="World.TeleportHome" userdata="" />
505 <on_enable function="World.EnableTeleportHome" userdata="" /> 415 <on_enable function="World.EnableTeleportHome" userdata="" />
506 </menu_item_call> 416 </menu_item_call>
507 <menu_item_separator bottom="-167" enabled="true" height="8" label="-----------" left="0" 417 <menu_item_separator />
508 mouse_opaque="true" name="separator3" width="185" /> 418 <menu_item_call name="Set Away" label="Set Away">
509 <menu_item_call bottom="-186" enabled="true" height="19" label="Set Away" left="0"
510 mouse_opaque="true" name="Set Away" width="185">
511 <on_click function="World.SetAway" userdata="" /> 419 <on_click function="World.SetAway" userdata="" />
512 </menu_item_call> 420 </menu_item_call>
513 <menu_item_call bottom="-205" enabled="true" height="19" label="Set Busy" left="0" 421 <menu_item_call name="Set Busy" label="Set Busy">
514 mouse_opaque="true" name="Set Busy" width="185">
515 <on_click function="World.SetBusy" userdata="" /> 422 <on_click function="World.SetBusy" userdata="" />
516 </menu_item_call> 423 </menu_item_call>
517 <menu_item_call bottom="-281" enabled="false" height="19" label="Stop All Animations" left="0" 424 <menu_item_call name="Stop All Animations" enabled="false"
518 mouse_opaque="true" name="Stop All Animations" width="250"> 425 label="Stop All Animations">
519 <on_click function="Tools.StopAllAnimations" userdata="" /> 426 <on_click function="Tools.StopAllAnimations" userdata="" />
520 </menu_item_call> 427 </menu_item_call>
521 <menu_item_separator bottom="-213" enabled="true" height="8" label="-----------" left="0" 428 <menu_item_separator />
522 mouse_opaque="true" name="separator4" width="185" /> 429 <menu_item_call name="Account History..." label="Account History...">
523 <menu_item_call bottom="-232" enabled="true" height="19" label="Account History..." left="0"
524 mouse_opaque="true" name="Account History..." width="185">
525 <on_click function="PromptShowURL" 430 <on_click function="PromptShowURL"
526 userdata="WebLaunchAccountHistory,http://secondlife.com/account/transactions.php" /> 431 userdata="WebLaunchAccountHistory,http://secondlife.com/account/transactions.php" />
527 </menu_item_call> 432 </menu_item_call>
528 <menu_item_call bottom="-267" enabled="true" height="19" label="Manage My Account..." left="0" 433 <menu_item_call name="Manage My Account..." label="Manage My Account...">
529 mouse_opaque="true" name="Manage My Account..." width="166">
530 <on_click function="PromptShowURL" 434 <on_click function="PromptShowURL"
531 userdata="WebLaunchJoinNow,http://secondlife.com/account/" /> 435 userdata="WebLaunchJoinNow,http://secondlife.com/account/" />
532 </menu_item_call> 436 </menu_item_call>
533 <menu_item_call bottom="-286" enabled="true" height="19" label="Buy L$..." left="0" 437 <menu_item_call name="Buy and Sell L$..." label="Buy L$...">
534 mouse_opaque="true" name="Buy and Sell L$..." width="166">
535 <on_click function="ShowFloater" userdata="buy currency" /> 438 <on_click function="ShowFloater" userdata="buy currency" />
536 </menu_item_call> 439 </menu_item_call>
537 <menu_item_separator bottom="-213" enabled="true" height="8" label="-----------" left="0" 440 <menu_item_separator />
538 mouse_opaque="true" name="separator5" width="185" /> 441 <menu_item_call name="My Land..." label="My Land...">
539 <menu_item_call bottom="-251" enabled="true" height="19" label="My Land..." left="0"
540 mouse_opaque="true" name="My Land..." width="185">
541 <on_click function="ShowFloater" userdata="my land" /> 442 <on_click function="ShowFloater" userdata="my land" />
542 </menu_item_call> 443 </menu_item_call>
543 <menu_item_call bottom="-270" enabled="true" height="19" label="About Land..." left="0" 444 <menu_item_call name="About Land..." label="About Land...">
544 mouse_opaque="true" name="About Land..." width="185">
545 <on_click function="ShowFloater" userdata="about land" /> 445 <on_click function="ShowFloater" userdata="about land" />
546 </menu_item_call> 446 </menu_item_call>
547 <menu_item_call bottom="-289" enabled="true" height="19" label="Buy Land..." left="0" 447 <menu_item_call name="Buy Land..." label="Buy Land...">
548 mouse_opaque="true" name="Buy Land..." width="185">
549 <on_click function="ShowFloater" userdata="buy land" /> 448 <on_click function="ShowFloater" userdata="buy land" />
550 <on_enable function="World.EnableBuyLand" /> 449 <on_enable function="World.EnableBuyLand" />
551 </menu_item_call> 450 </menu_item_call>
552 <menu_item_call bottom="-308" enabled="true" height="19" label="Region/Estate..." left="0" 451 <menu_item_call name="Region/Estate..." label="Region/Estate...">
553 mouse_opaque="true" name="Region/Estate..." width="185">
554 <on_click function="ShowFloater" userdata="about region" /> 452 <on_click function="ShowFloater" userdata="about region" />
555 </menu_item_call> 453 </menu_item_call>
556 <menu_item_separator bottom="-316" enabled="true" height="8" label="-----------" left="0" 454 <menu_item_separator />
557 mouse_opaque="true" name="separator6" width="185" /> 455 <menu name="Environment Settings" create_jump_keys="true"
558 <menu bottom="-554" create_jump_keys="true" drop_shadow="true" enabled="true" 456 label="Environment Settings" opaque="true" tear_off="true">
559 height="117" label="Environment Settings" left="0" mouse_opaque="false" 457 <menu_item_call name="Sunrise" label="Sunrise">
560 name="Environment Settings" opaque="true" tear_off="true" width="169">
561 <menu_item_call bottom="-29" enabled="true" height="19" label="Sunrise" left="0"
562 mouse_opaque="true" name="Sunrise" width="169">
563 <on_click function="World.EnvSettings" userdata="sunrise" /> 458 <on_click function="World.EnvSettings" userdata="sunrise" />
564 </menu_item_call> 459 </menu_item_call>
565 <menu_item_call bottom="-48" enabled="true" height="19" label="Midday" left="0" 460 <menu_item_call name="Noon" label="Midday" shortcut="control|shift|Y">
566 mouse_opaque="true" name="Noon" shortcut="control|shift|Y" width="169">
567 <on_click function="World.EnvSettings" userdata="noon" /> 461 <on_click function="World.EnvSettings" userdata="noon" />
568 </menu_item_call> 462 </menu_item_call>
569 <menu_item_call bottom="-67" enabled="true" height="19" label="Sunset" left="0" 463 <menu_item_call name="Sunset" label="Sunset" shortcut="control|shift|N">
570 mouse_opaque="true" name="Sunset" shortcut="control|shift|N" width="169">
571 <on_click function="World.EnvSettings" userdata="sunset" /> 464 <on_click function="World.EnvSettings" userdata="sunset" />
572 </menu_item_call> 465 </menu_item_call>
573 <menu_item_call bottom="-86" enabled="true" height="19" label="Midnight" left="0" 466 <menu_item_call name="Midnight" label="Midnight">
574 mouse_opaque="true" name="Midnight" width="169">
575 <on_click function="World.EnvSettings" userdata="midnight" /> 467 <on_click function="World.EnvSettings" userdata="midnight" />
576 </menu_item_call> 468 </menu_item_call>
577 <menu_item_call bottom="-105" enabled="false" height="19" label="Revert to Region Default" 469 <menu_item_call name="Revert to Region Default" enabled="false"
578 left="0" mouse_opaque="true" name="Revert to Region Default" width="169"> 470 label="Revert to Region Default">
579 <on_click function="World.EnvSettings" userdata="default" /> 471 <on_click function="World.EnvSettings" userdata="default" />
580 </menu_item_call> 472 </menu_item_call>
581 <menu_item_separator bottom="-113" enabled="true" height="8" label="-----------" left="0" 473 <menu_item_separator />
582 mouse_opaque="true" name="separator" width="169" /> 474 <menu_item_call name="Environment Editor" enabled="false"
583 <menu_item_call bottom="-132" enabled="false" height="19" label="Environment Editor" left="0" 475 label="Environment Editor">
584 mouse_opaque="true" name="Environment Editor" width="169">
585 <on_click function="World.EnvSettings" userdata="editor" /> 476 <on_click function="World.EnvSettings" userdata="editor" />
586 </menu_item_call> 477 </menu_item_call>
587 </menu> 478 </menu>
588 </menu> 479 </menu>
589 <menu bottom="-18" create_jump_keys="true" drop_shadow="true" enabled="true" 480
590 height="510" label="Tools" left="0" mouse_opaque="false" name="Tools" 481
591 opaque="true" tear_off="true" visible="false" width="250"> 482
592 <menu bottom="-554" create_jump_keys="true" drop_shadow="true" enabled="true" 483 <!-- TOOLS -->
593 height="109" label="Select Tool" left="0" mouse_opaque="false" 484
594 name="Select Tool" opaque="true" tear_off="true" width="118"> 485 <menu name="Tools" create_jump_keys="true" label="Tools"
595 <menu_item_call bottom="-29" enabled="true" height="19" label="Focus" left="0" 486 opaque="true" tear_off="true" visible="false">
596 mouse_opaque="true" name="Focus" shortcut="control|1" width="118"> 487 <menu name="Select Tool" create_jump_keys="true" label="Select Tool"
488 opaque="true" tear_off="true">
489 <menu_item_call name="Focus" label="Focus" shortcut="control|1">
597 <on_click function="Tools.SelectTool" userdata="focus" /> 490 <on_click function="Tools.SelectTool" userdata="focus" />
598 </menu_item_call> 491 </menu_item_call>
599 <menu_item_call bottom="-48" enabled="true" height="19" label="Move" left="0" 492 <menu_item_call name="Move" label="Move" shortcut="control|2">
600 mouse_opaque="true" name="Move" shortcut="control|2" width="118">
601 <on_click function="Tools.SelectTool" userdata="move" /> 493 <on_click function="Tools.SelectTool" userdata="move" />
602 </menu_item_call> 494 </menu_item_call>
603 <menu_item_call bottom="-67" enabled="true" height="19" label="Edit" left="0" 495 <menu_item_call name="Edit" label="Edit" shortcut="control|3">
604 mouse_opaque="true" name="Edit" shortcut="control|3" width="118">
605 <on_click function="Tools.SelectTool" userdata="edit" /> 496 <on_click function="Tools.SelectTool" userdata="edit" />
606 </menu_item_call> 497 </menu_item_call>
607 <menu_item_call bottom="-86" enabled="true" height="19" label="Create" left="0" 498 <menu_item_call name="Create" label="Create" shortcut="control|4">
608 mouse_opaque="true" name="Create" shortcut="control|4" width="118">
609 <on_click function="Tools.SelectTool" userdata="create" /> 499 <on_click function="Tools.SelectTool" userdata="create" />
610 </menu_item_call> 500 </menu_item_call>
611 <menu_item_call bottom="-105" enabled="true" height="19" label="Land" left="0" 501 <menu_item_call name="Land" label="Land" shortcut="control|5">
612 mouse_opaque="true" name="Land" shortcut="control|5" width="118">
613 <on_click function="Tools.SelectTool" userdata="land" /> 502 <on_click function="Tools.SelectTool" userdata="land" />
614 </menu_item_call> 503 </menu_item_call>
615 </menu> 504 </menu>
616 <menu_item_separator bottom="-37" enabled="true" height="8" label="-----------" left="0" 505 <menu_item_separator />
617 mouse_opaque="true" name="separator" width="250" /> 506 <menu_item_check name="Select Only My Objects"
618 <menu_item_check bottom="-56" enabled="true" height="19" label="Select Only My Objects" left="0" 507 label="Select Only My Objects">
619 mouse_opaque="true" name="Select Only My Objects" width="250">
620 <on_click function="Tools.SelectOnlyMyObjects" userdata="agents" /> 508 <on_click function="Tools.SelectOnlyMyObjects" userdata="agents" />
621 <on_check control="SelectOwnedOnly" /> 509 <on_check control="SelectOwnedOnly" />
622 </menu_item_check> 510 </menu_item_check>
623 <menu_item_check bottom="-75" enabled="true" height="19" label="Select Only Movable Objects" 511 <menu_item_check name="Select Only Movable Objects"
624 left="0" mouse_opaque="true" name="Select Only Movable Objects" width="250"> 512 label="Select Only Movable Objects">
625 <on_click function="Tools.SelectOnlyMovableObjects" userdata="movable" /> 513 <on_click function="Tools.SelectOnlyMovableObjects" userdata="movable" />
626 <on_check control="SelectMovableOnly" /> 514 <on_check control="SelectMovableOnly" />
627 </menu_item_check> 515 </menu_item_check>
628 <menu_item_check bottom="-94" enabled="true" height="19" label="Select By Surrounding" left="0" 516 <menu_item_check name="Select By Surrounding" label="Select By Surrounding">
629 mouse_opaque="true" name="Select By Surrounding" width="250">
630 <on_click function="Tools.SelectBySurrounding" userdata="" /> 517 <on_click function="Tools.SelectBySurrounding" userdata="" />
631 <on_check control="RectangleSelectInclusive" /> 518 <on_check control="RectangleSelectInclusive" />
632 </menu_item_check> 519 </menu_item_check>
633 <menu_item_check bottom="-113" enabled="true" height="19" label="Show Hidden Selection" left="0" 520 <menu_item_check name="Show Hidden Selection" label="Show Hidden Selection">
634 mouse_opaque="true" name="Show Hidden Selection" width="250">
635 <on_click function="Tools.ShowHiddenSelection" userdata="" /> 521 <on_click function="Tools.ShowHiddenSelection" userdata="" />
636 <on_check control="RenderHiddenSelections" /> 522 <on_check control="RenderHiddenSelections" />
637 </menu_item_check> 523 </menu_item_check>
638 <menu_item_check bottom="-132" enabled="true" height="19" 524 <menu_item_check name="Show Light Radius for Selection"
639 label="Show Light Radius for Selection" left="0" mouse_opaque="true" 525 label="Show Light Radius for Selection">
640 name="Show Light Radius for Selection" width="250">
641 <on_click function="Tools.ShowSelectionLightRadius" userdata="" /> 526 <on_click function="Tools.ShowSelectionLightRadius" userdata="" />
642 <on_check control="RenderLightRadius" /> 527 <on_check control="RenderLightRadius" />
643 </menu_item_check> 528 </menu_item_check>
644 <menu_item_check bottom="-151" enabled="true" height="19" label="Show Selection Beam" left="0" 529 <menu_item_check name="Show Selection Beam" label="Show Selection Beam">
645 mouse_opaque="true" name="Show Selection Beam" width="250">
646 <on_click function="ToggleControl" userdata="ShowSelectionBeam" /> 530 <on_click function="ToggleControl" userdata="ShowSelectionBeam" />
647 <on_check control="ShowSelectionBeam" /> 531 <on_check control="ShowSelectionBeam" />
648 </menu_item_check> 532 </menu_item_check>
649 <menu_item_separator bottom="-159" enabled="true" height="8" label="-----------" left="0" 533 <menu_item_separator />
650 mouse_opaque="true" name="separator2" width="250" /> 534 <menu_item_check name="Snap to Grid" enabled="false" label="Snap to Grid"
651 <menu_item_check bottom="-178" enabled="false" height="19" label="Snap to Grid" left="0" 535 shortcut="G">
652 mouse_opaque="true" name="Snap to Grid" shortcut="G" width="250">
653 <on_click function="ToggleControl" userdata="SnapEnabled" /> 536 <on_click function="ToggleControl" userdata="SnapEnabled" />
654 <on_check control="SnapEnabled" /> 537 <on_check control="SnapEnabled" />
655 <on_enable function="Tools.EnableToolNotPie" /> 538 <on_enable function="Tools.EnableToolNotPie" />
656 </menu_item_check> 539 </menu_item_check>
657 <menu_item_call bottom="-197" enabled="false" height="19" label="Snap Object XY to Grid" 540 <menu_item_call name="Snap Object XY to Grid" enabled="false"
658 left="0" mouse_opaque="true" name="Snap Object XY to Grid" 541 label="Snap Object XY to Grid" shortcut="shift|X">
659 shortcut="shift|X" width="250">
660 <on_click function="Tools.SnapObjectXY" userdata="" /> 542 <on_click function="Tools.SnapObjectXY" userdata="" />
661 <on_enable function="Tools.EnableToolNotPie" /> 543 <on_enable function="Tools.EnableToolNotPie" />
662 </menu_item_call> 544 </menu_item_call>
663 <menu_item_call bottom="-216" enabled="false" height="19" label="Use Selection for Grid" 545 <menu_item_call name="Use Selection for Grid" enabled="false"
664 left="0" mouse_opaque="true" name="Use Selection for Grid" 546 label="Use Selection for Grid" shortcut="shift|G">
665 shortcut="shift|G" width="250">
666 <on_click function="Tools.UseSelectionForGrid" userdata="" /> 547 <on_click function="Tools.UseSelectionForGrid" userdata="" />
667 <on_enable function="SomethingSelected" /> 548 <on_enable function="SomethingSelected" />
668 </menu_item_call> 549 </menu_item_call>
669 <menu_item_call bottom="-235" enabled="false" height="19" label="Grid Options..." left="0" 550 <menu_item_call name="Grid Options..." enabled="false"
670 mouse_opaque="true" name="Grid Options..." shortcut="control|shift|B" 551 label="Grid Options..." shortcut="control|shift|B">
671 width="250">
672 <on_click function="ShowFloater" userdata="grid options" /> 552 <on_click function="ShowFloater" userdata="grid options" />
673 <on_enable function="Tools.EnableToolNotPie" /> 553 <on_enable function="Tools.EnableToolNotPie" />
674 </menu_item_call> 554 </menu_item_call>
675 <menu_item_separator bottom="-243" enabled="true" height="8" label="-----------" left="0" 555 <menu_item_separator />
676 mouse_opaque="true" name="separator3" width="250" /> 556 <menu_item_check name="Edit Linked Parts" enabled="false"
677 <menu_item_check bottom="" enabled="false" height="" label="Edit Linked Parts" left="" 557 label="Edit Linked Parts" shortcut="">
678 mouse_opaque="true" name="Edit Linked Parts" shortcut="" width="">
679 <on_click function="ToggleControl" userdata="EditLinkedParts" /> 558 <on_click function="ToggleControl" userdata="EditLinkedParts" />
680 <on_click function="Tools.EditLinkedParts" userdata="" /> 559 <on_click function="Tools.EditLinkedParts" userdata="" />
681 <on_check control="EditLinkedParts" /> 560 <on_check control="EditLinkedParts" />
682 <on_enable function="Tools.EnableToolNotPie" /> 561 <on_enable function="Tools.EnableToolNotPie" />
683 </menu_item_check> 562 </menu_item_check>
684 <menu_item_call bottom="-262" enabled="false" height="19" label="Link" left="0" 563 <menu_item_call name="Link" enabled="false" label="Link"
685 mouse_opaque="true" name="Link" shortcut="control|L" width="250"> 564 shortcut="control|L">
686 <on_click function="Tools.Link" userdata="" /> 565 <on_click function="Tools.Link" userdata="" />
687 <on_enable function="Tools.EnableLink" /> 566 <on_enable function="Tools.EnableLink" />
688 </menu_item_call> 567 </menu_item_call>
689 <menu_item_call bottom="-281" enabled="false" height="19" label="Unlink" left="0" 568 <menu_item_call name="Unlink" enabled="false" label="Unlink"
690 mouse_opaque="true" name="Unlink" shortcut="control|shift|L" width="250"> 569 shortcut="control|shift|L">
691 <on_click function="Tools.Unlink" userdata="" /> 570 <on_click function="Tools.Unlink" userdata="" />
692 <on_enable function="Tools.EnableUnlink" /> 571 <on_enable function="Tools.EnableUnlink" />
693 </menu_item_call> 572 </menu_item_call>
694 <menu_item_separator bottom="-289" enabled="true" height="8" label="-----------" left="0" 573 <menu_item_separator />
695 mouse_opaque="true" name="separator4" width="250" /> 574 <menu_item_call name="Focus on Selection" enabled="false"
696 <menu_item_call bottom="-308" enabled="false" height="19" label="Focus on Selection" left="0" 575 label="Focus on Selection" shortcut="H">
697 mouse_opaque="true" name="Focus on Selection" shortcut="H" width="250">
698 <on_click function="Tools.LookAtSelection" userdata="focus" /> 576 <on_click function="Tools.LookAtSelection" userdata="focus" />
699 <on_enable function="Tools.SomethingSelectedNoHUD" /> 577 <on_enable function="Tools.SomethingSelectedNoHUD" />
700 </menu_item_call> 578 </menu_item_call>
701 <menu_item_call bottom="-327" enabled="false" height="19" label="Zoom to Selection" left="0" 579 <menu_item_call name="Zoom to Selection" enabled="false"
702 mouse_opaque="true" name="Zoom to Selection" shortcut="shift|H" width="250"> 580 label="Zoom to Selection" shortcut="shift|H">
703 <on_click function="Tools.LookAtSelection" userdata="zoom" /> 581 <on_click function="Tools.LookAtSelection" userdata="zoom" />
704 <on_enable function="Tools.SomethingSelectedNoHUD" /> 582 <on_enable function="Tools.SomethingSelectedNoHUD" />
705 </menu_item_call> 583 </menu_item_call>
706 <menu_item_call bottom="-346" enabled="false" height="19" label="Buy Object" left="0" 584 <menu_item_call name="Menu Object Take" enabled="false" label="Buy Object"
707 mouse_opaque="true" name="Menu Object Take" visible="false" width="250"> 585 visible="false">
708 <on_click function="Tools.BuyOrTake" userdata="" /> 586 <on_click function="Tools.BuyOrTake" userdata="" />
709 <on_enable function="Tools.EnableBuyOrTake" userdata="Buy,Take" /> 587 <on_enable function="Tools.EnableBuyOrTake" userdata="Buy,Take" />
710 </menu_item_call> 588 </menu_item_call>
711 <menu_item_call bottom="-365" enabled="false" height="19" label="Take Copy" left="0" 589 <menu_item_call name="Take Copy" enabled="false" label="Take Copy">
712 mouse_opaque="true" name="Take Copy" width="250">
713 <on_click function="Tools.TakeCopy" userdata="" /> 590 <on_click function="Tools.TakeCopy" userdata="" />
714 <on_enable function="Tools.EnableTakeCopy" /> 591 <on_enable function="Tools.EnableTakeCopy" />
715 </menu_item_call> 592 </menu_item_call>
716 <menu_item_call enabled="false" label="Return Object" mouse_opaque="true" name="Return..."> 593 <menu_item_call name="Return..." enabled="false" label="Return Object">
717 <on_click function="Object.Return" /> 594 <on_click function="Object.Return" />
718 <on_enable function="Object.EnableReturn" /> 595 <on_enable function="Object.EnableReturn" />
719 </menu_item_call> 596 </menu_item_call>
720 <menu_item_separator bottom="-411" enabled="true" height="8" label="-----------" left="0" 597 <menu_item_call name="Save Object Back to My Inventory" enabled="false"
721 mouse_opaque="true" name="separator6" width="250" /> 598 label="Save Object Back to My Inventory">
722 <menu_item_call bottom="-384" enabled="false" height="19"
723 label="Save Object Back to My Inventory" left="0" mouse_opaque="true"
724 name="Save Object Back to My Inventory" width="250">
725 <on_click function="Tools.SaveToInventory" userdata="" /> 599 <on_click function="Tools.SaveToInventory" userdata="" />
726 <on_enable function="Tools.EnableSaveToInventory" /> 600 <on_enable function="Tools.EnableSaveToInventory" />
727 </menu_item_call> 601 </menu_item_call>
728 <menu_item_call bottom="-403" enabled="false" height="19" 602 <menu_item_call name="Save Object Back to Object Contents" enabled="false"
729 label="Save Object Back to Object Contents" left="0" mouse_opaque="true" 603 label="Save Object Back to Object Contents">
730 name="Save Object Back to Object Contents" width="250">
731 <on_click function="Tools.SaveToObjectInventory" userdata="" /> 604 <on_click function="Tools.SaveToObjectInventory" userdata="" />
732 <on_enable function="Tools.EnableSaveToObjectInventory" /> 605 <on_enable function="Tools.EnableSaveToObjectInventory" />
733 </menu_item_call> 606 </menu_item_call>
734 <menu_item_separator bottom="-411" enabled="true" height="8" label="-----------" left="0" 607 <menu_item_separator />
735 mouse_opaque="true" name="separator6" width="250" /> 608 <menu_item_call name="Show Script Warning/Error Window"
736 <menu_item_call bottom="-430" enabled="true" height="19" 609 label="Show Script Warning/Error Window">
737 label="Show Script Warning/Error Window" left="0" mouse_opaque="true"
738 name="Show Script Warning/Error Window" width="250">
739 <on_click function="ShowFloater" userdata="script errors" /> 610 <on_click function="ShowFloater" userdata="script errors" />
740 </menu_item_call> 611 </menu_item_call>
741 <menu_item_call bottom="-449" enabled="false" height="19" 612 <menu_item_call name="Recompile Scripts in Selection" enabled="false"
742 label="Recompile Scripts in Selection" left="0" mouse_opaque="true" 613 label="Recompile Scripts in Selection">
743 name="Recompile Scripts in Selection" width="250">
744 <on_click function="Tools.SelectedScriptAction" userdata="compile" /> 614 <on_click function="Tools.SelectedScriptAction" userdata="compile" />
745 <on_enable function="EditableSelected" /> 615 <on_enable function="EditableSelected" />
746 </menu_item_call> 616 </menu_item_call>
747 <menu_item_call bottom="-468" enabled="false" height="19" label="Reset Scripts in Selection" 617 <menu_item_call name="Reset Scripts in Selection" enabled="false"
748 left="0" mouse_opaque="true" name="Reset Scripts in Selection" width="250"> 618 label="Reset Scripts in Selection">
749 <on_click function="Tools.SelectedScriptAction" userdata="reset" /> 619 <on_click function="Tools.SelectedScriptAction" userdata="reset" />
750 <on_enable function="EditableSelected" /> 620 <on_enable function="EditableSelected" />
751 </menu_item_call> 621 </menu_item_call>
752 <menu_item_call bottom="-487" enabled="false" height="19" 622 <menu_item_call name="Set Scripts to Running in Selection" enabled="false"
753 label="Set Scripts to Running in Selection" left="0" mouse_opaque="true" 623 label="Set Scripts to Running in Selection">
754 name="Set Scripts to Running in Selection" width="250">
755 <on_click function="Tools.SelectedScriptAction" userdata="start" /> 624 <on_click function="Tools.SelectedScriptAction" userdata="start" />
756 <on_enable function="EditableSelected" /> 625 <on_enable function="EditableSelected" />
757 </menu_item_call> 626 </menu_item_call>
758 <menu_item_call bottom="-506" enabled="false" height="19" 627 <menu_item_call name="Set Scripts to Not Running in Selection"
759 label="Set Scripts to Not Running in Selection" left="0" 628 enabled="false" label="Set Scripts to Not Running in Selection">
760 mouse_opaque="true" name="Set Scripts to Not Running in Selection"
761 width="250">
762 <on_click function="Tools.SelectedScriptAction" userdata="stop" /> 629 <on_click function="Tools.SelectedScriptAction" userdata="stop" />
763 <on_enable function="EditableSelected" /> 630 <on_enable function="EditableSelected" />
764 </menu_item_call> 631 </menu_item_call>
765 </menu> 632 </menu>
766 <menu bottom="219" create_jump_keys="true" drop_shadow="true" enabled="true" 633
767 height="317" label="Help" left="227" mouse_opaque="false" name="Help" 634
768 opaque="true" tear_off="true" width="166"> 635
769 <menu_item_call bottom="-29" enabled="true" height="19" label="Second Life Help" left="0" 636 <!-- HELP -->
770 mouse_opaque="true" name="Second Life Help" shortcut="F1" width="166"> 637
638 <menu create_jump_keys="true" label="Help" name="Help"
639 opaque="true" tear_off="true">
640 <menu_item_call name="Second Life Help" label="Second Life Help"
641 shortcut="F1">
771 <on_click function="ShowFloater" userdata="help f1" /> 642 <on_click function="ShowFloater" userdata="help f1" />
772 </menu_item_call> 643 </menu_item_call>
773 <menu_item_call bottom="-48" enabled="true" height="19" label="Tutorial" left="0" 644 <menu_item_call name="Tutorial" label="Tutorial">
774 mouse_opaque="true" name="Tutorial" width="166">
775 <on_click function="ShowFloater" userdata="help tutorial" /> 645 <on_click function="ShowFloater" userdata="help tutorial" />
776 </menu_item_call> 646 </menu_item_call>
777 <menu_item_separator bottom="-75" enabled="true" height="8" label="-----------" left="0" 647 <menu_item_separator />
778 mouse_opaque="true" name="separator" width="166" /> 648 <menu_item_call name="Official Linden Blog..."
779 <menu_item_call bottom="-94" enabled="true" height="19" label="Official Linden Blog..." 649 label="Official Linden Blog...">
780 left="0" mouse_opaque="true" name="Official Linden Blog..." width="166">
781 <on_click function="PromptShowURL" 650 <on_click function="PromptShowURL"
782 userdata="WebLaunchSupportWiki,http://blog.secondlife.com/" /> 651 userdata="WebLaunchSupportWiki,http://blog.secondlife.com/" />
783 </menu_item_call> 652 </menu_item_call>
784 <menu_item_separator bottom="-102" enabled="true" height="8" label="-----------" left="0" 653 <menu_item_separator />
785 mouse_opaque="true" name="separator2" width="166" /> 654 <menu_item_call name="Scripting Guide..." label="Scripting Guide...">
786 <menu_item_call bottom="-121" enabled="true" height="19" label="Scripting Guide..." left="0"
787 mouse_opaque="true" name="Scripting Guide..." width="166">
788 <on_click function="PromptShowFile" userdata="WebLaunchLSLGuide,lsl_guide.html" /> 655 <on_click function="PromptShowFile" userdata="WebLaunchLSLGuide,lsl_guide.html" />
789 </menu_item_call> 656 </menu_item_call>
790 <menu_item_call bottom="-140" enabled="true" height="19" label="Scripting Portal..." left="0" 657 <menu_item_call name="Scripting Portal..." label="Scripting Portal...">
791 mouse_opaque="true" name="Scripting Portal..." width="166">
792 <on_click function="PromptShowURL" 658 <on_click function="PromptShowURL"
793 userdata="WebLaunchLSLWiki,http://wiki.secondlife.com/wiki/LSL_Portal" /> 659 userdata="WebLaunchLSLWiki,http://wiki.secondlife.com/wiki/LSL_Portal" />
794 </menu_item_call> 660 </menu_item_call>
795 <menu_item_separator bottom="-148" enabled="true" height="8" label="-----------" left="0" 661 <menu_item_separator />
796 mouse_opaque="true" name="separator3" width="166" /> 662 <menu_item_call name="Report Abuse..." label="Report Abuse...">
797 <menu_item_call bottom="-194" enabled="true" height="19" label="Report Abuse..." left="0"
798 mouse_opaque="true" name="Report Abuse..." width="166">
799 <on_click function="ShowFloater" userdata="complaint reporter" /> 663 <on_click function="ShowFloater" userdata="complaint reporter" />
800 </menu_item_call> 664 </menu_item_call>
801 <menu_item_call bottom="-213" enabled="true" height="19" label="Bumps, Pushes &amp; Hits..." 665 <menu_item_call name="Bumps, Pushes &amp;amp; Hits..."
802 left="0" mouse_opaque="true" name="Bumps, Pushes &amp;amp; Hits..." 666 label="Bumps, Pushes &amp; Hits...">
803 width="166">
804 <on_click function="ShowFloater" userdata="mean events" /> 667 <on_click function="ShowFloater" userdata="mean events" />
805 </menu_item_call> 668 </menu_item_call>
806 <menu_item_call label="Lag Meter" name="Lag Meter"> 669 <menu_item_call name="Lag Meter" label="Lag Meter">
807 <on_click function="ShowFloater" userdata="lag meter" /> 670 <on_click function="ShowFloater" userdata="lag meter" />
808 </menu_item_call> 671 </menu_item_call>
809 <menu_item_separator bottom="-411" enabled="true" height="8" label="-----------" left="0" 672 <menu_item_separator />
810 mouse_opaque="true" name="separator7" width="250" /> 673 <menu name="Bug Reporting" create_jump_keys="true" label="Bug Reporting"
811 <menu bottom="-554" create_jump_keys="true" drop_shadow="true" enabled="true" 674 opaque="true" tear_off="true">
812 height="109" label="Bug Reporting" left="0" mouse_opaque="false" 675 <menu_item_call name="Public Issue Tracker..."
813 name="Bug Reporting" opaque="true" tear_off="true" width="118"> 676 label="Public Issue Tracker...">
814 <menu_item_call bottom="-94" enabled="true" height="19" label="Public Issue Tracker..."
815 left="0" mouse_opaque="true" name="Public Issue Tracker..." width="166">
816 <on_click function="PromptShowURL" 677 <on_click function="PromptShowURL"
817 userdata="WebLaunchPublicIssue,http://jira.secondlife.com" /> 678 userdata="WebLaunchPublicIssue,http://jira.secondlife.com" />
818 </menu_item_call> 679 </menu_item_call>
819 <menu_item_call bottom="-94" enabled="true" height="19" label="Public Issue Tracker Help..." 680 <menu_item_call name="Publc Issue Tracker Help..."
820 left="0" mouse_opaque="true" name="Publc Issue Tracker Help..." width="166"> 681 label="Public Issue Tracker Help...">
821 <on_click function="PromptShowURL" 682 <on_click function="PromptShowURL"
822 userdata="WebLaunchPublicIssueHelp,http://wiki.secondlife.com/wiki/Issue_tracker" /> 683 userdata="WebLaunchPublicIssueHelp,http://wiki.secondlife.com/wiki/Issue_tracker" />
823 </menu_item_call> 684 </menu_item_call>
824 <menu_item_separator bottom="-411" enabled="true" height="8" label="-----------" left="0" 685 <menu_item_separator />
825 mouse_opaque="true" name="separator7" width="250" /> 686 <menu_item_call name="Bug Reporing 101..." label="Bug Reporting 101...">
826 <menu_item_call bottom="-94" enabled="true" height="19" label="Bug Reporting 101..." left="0"
827 mouse_opaque="true" name="Bug Reporing 101..." width="166">
828 <on_click function="PromptShowURL" 687 <on_click function="PromptShowURL"
829 userdata="WebLaunchBugReport101,http://wiki.secondlife.com/wiki/Bug_Reporting_101" /> 688 userdata="WebLaunchBugReport101,http://wiki.secondlife.com/wiki/Bug_Reporting_101" />
830 </menu_item_call> 689 </menu_item_call>
831 <menu_item_call bottom="-94" enabled="true" height="19" label="Security Issues..." left="0" 690 <menu_item_call name="Security Issues..." label="Security Issues...">
832 mouse_opaque="true" name="Security Issues..." width="166">
833 <on_click function="PromptShowURL" 691 <on_click function="PromptShowURL"
834 userdata="WebLaunchSecurityIssues,http://wiki.secondlife.com/wiki/Security_issues" /> 692 userdata="WebLaunchSecurityIssues,http://wiki.secondlife.com/wiki/Security_issues" />
835 </menu_item_call> 693 </menu_item_call>
836 <menu_item_call bottom="-94" enabled="true" height="19" label="QA Wiki..." left="0" 694 <menu_item_call name="QA Wiki..." label="QA Wiki...">
837 mouse_opaque="true" name="QA Wiki..." width="166">
838 <on_click function="PromptShowURL" 695 <on_click function="PromptShowURL"
839 userdata="WebLaunchQAWiki,http://wiki.secondlife.com/wiki/QA_Portal" /> 696 userdata="WebLaunchQAWiki,http://wiki.secondlife.com/wiki/QA_Portal" />
840 </menu_item_call> 697 </menu_item_call>
841 <menu_item_separator bottom="-411" enabled="true" height="8" label="-----------" left="0" 698 <menu_item_separator />
842 mouse_opaque="true" name="separator9" width="250" /> 699 <menu_item_call name="Report Bug..." label="Report Bug...">
843 <menu_item_call bottom="-240" enabled="true" height="19" label="Report Bug..." left="0"
844 mouse_opaque="true" name="Report Bug..." width="166">
845 <on_click function="PromptShowURL" 700 <on_click function="PromptShowURL"
846 userdata="WebLaunchPublicIssue,http://jira.secondlife.com" /> 701 userdata="WebLaunchPublicIssue,http://jira.secondlife.com" />
847 </menu_item_call> 702 </menu_item_call>
848 </menu> 703 </menu>
849 <menu_item_separator bottom="-221" enabled="true" height="8" label="-----------" left="0" 704 <menu_item_separator />
850 mouse_opaque="true" name="separator5" width="166" /> 705 <menu_item_call name="Release Notes..." label="Release Notes...">
851 <menu_item_call bottom="-121" enabled="true" height="19" label="Release Notes..." left="0"
852 mouse_opaque="true" name="Release Notes..." width="166">
853 <on_click function="PromptShowFile" userdata="WebLaunchReleaseNotes,releasenotes.txt" /> 706 <on_click function="PromptShowFile" userdata="WebLaunchReleaseNotes,releasenotes.txt" />
854 </menu_item_call> 707 </menu_item_call>
855 <menu_item_separator bottom="-294" enabled="true" height="8" label="-----------" left="0" 708 <menu_item_separator />
856 mouse_opaque="true" name="separator6" width="166" /> 709 <menu_item_call name="About Second Life..." label="About Second Life...">
857 <menu_item_call bottom="-313" enabled="true" height="19" label="About Second Life..." left="0"
858 mouse_opaque="true" name="About Second Life..." width="166">
859 <on_click function="ShowFloater" userdata="about" /> 710 <on_click function="ShowFloater" userdata="about" />
860 </menu_item_call> 711 </menu_item_call>
861 </menu> 712 </menu>
713
714
715 <!-- ADVANCED -->
716
717 <menu name="Advanced" drop_shadow="true" opaque="true" tear_off="true">
718
719
720
721 <!-- CONSOLES -->
722
723 <menu name="Consoles" drop_shadow="true" opaque="true" tear_off="true">
724 <menu_item_check name="Frame Console" label="Frame Console"
725 shortcut="control|shift|2">
726 <on_click function="Advanced.ToggleConsole" userdata="frame" />
727 <on_check function="Advanced.CheckConsole" userdata="frame" />
728 </menu_item_check>
729 <menu_item_check name="Texture Console" label="Texture Console"
730 shortcut="control|shift|3">
731 <on_click function="Advanced.ToggleConsole" userdata="texture" />
732 <on_check function="Advanced.CheckConsole" userdata="texture" />
733 </menu_item_check>
734 <menu_item_check name="Debug Console" label="Debug Console"
735 shortcut="control|shift|4">
736 <on_click function="Advanced.ToggleConsole" userdata="debug" />
737 <on_check function="Advanced.CheckConsole" userdata="debug" />
738 </menu_item_check>
739 <menu_item_check name="Fast Timers" label="Fast Timers"
740 shortcut="control|shift|9">
741 <on_click function="Advanced.ToggleConsole" userdata="fast timers" />
742 <on_check function="Advanced.CheckConsole" userdata="fast timers" />
743 </menu_item_check>
744 <!-- Requires compiled-in support, I think?
745 <menu_item_check name="Memory" label="Memory"
746 shortcut="control|shift|0">
747 <on_click function="Advanced.ToggleConsole" userdata="memory" />
748 <on_check function="Advanced.CheckConsole" userdata="memory" />
749 </menu_item_check>
750 -->
751 <menu_item_separator />
752 <menu_item_call name="Region Info to Debug Console"
753 label="Region Info to Debug Console">
754 <on_click function="Advanced.DumpInfoToConsole" userdata="region" />
755 </menu_item_call>
756 <menu_item_call name="Group Info to Debug Console"
757 label="Group Info to Debug Console">
758 <on_click function="Advanced.DumpInfoToConsole" userdata="group" />
759 </menu_item_call>
760 <menu_item_call name="Capabilities Info to Debug Console"
761 label="Capabilities Info to Debug Console">
762 <on_click function="Advanced.DumpInfoToConsole"
763 userdata="capabilities" />
764 </menu_item_call>
765 </menu>
766
767
768 <menu_item_call name="Reload personal setting overrides"
769 label="Reload personal settings overrides"
770 shortcut="control|shift|F2">
771 <on_click function="Advanced.ReloadSettingsOverrides" userdata="" />
772 </menu_item_call>
773
774
775
776 <!-- HUD INFO -->
777
778 <menu name="HUD Info" drop_shadow="true" opaque="true" tear_off="true">
779 <menu_item_check name="Velocity" label="Velocity">
780 <on_click function="Advanced.ToggleHUDInfo" userdata="velocity" />
781 <on_check function="Advanced.CheckHUDInfo" userdata="velocity" />
782 </menu_item_check>
783 <menu_item_check name="Camera" label="Camera">
784 <on_click function="Advanced.ToggleHUDInfo" userdata="camera" />
785 <on_check function="Advanced.CheckHUDInfo" userdata="camera" />
786 </menu_item_check>
787 <menu_item_check name="Wind" label="Wind">
788 <on_click function="Advanced.ToggleHUDInfo" userdata="wind" />
789 <on_check function="Advanced.CheckHUDInfo" userdata="wind" />
790 </menu_item_check>
791 <menu_item_check name="FOV" label="FOV">
792 <on_click function="Advanced.ToggleHUDInfo" userdata="fov" />
793 <on_check function="Advanced.CheckHUDInfo" userdata="fov" />
794 </menu_item_check>
795 </menu>
796
797
798 <menu_item_separator />
799
800 <menu_item_check name="High-res Snapshot" label="High-res Snapshot">
801 <on_click function="ToggleControl" userdata="HighResSnapshot" />
802 <on_check control="HighResSnapshot" />
803 </menu_item_check>
804 <menu_item_check name="Quiet Snapshots to Disk"
805 label="Quiet Snapshots to Disk">
806 <on_click function="ToggleControl" userdata="QuietSnapshotsToDisk" />
807 <on_check control="QuietSnapshotsToDisk" />
808 </menu_item_check>
809 <menu_item_check name="Compress Snapshots to Disk"
810 label="Compress Snapshots to Disk">
811 <on_click function="ToggleControl" userdata="CompressSnapshotsToDisk" />
812 <on_check control="CompressSnapshotsToDisk" />
813 </menu_item_check>
814 <menu_item_check name="Show Mouselook Crosshairs"
815 label="Show Mouselook Crosshairs">
816 <on_click function="ToggleControl" userdata="ShowCrosshairs" />
817 <on_check control="ShowCrosshairs" />
818 </menu_item_check>
819 <menu_item_check name="Debug Permissions" label="Debug Permissions">
820 <on_click function="ToggleControl" userdata="DebugPermissions" />
821 <on_check control="DebugPermissions" />
822 </menu_item_check>
823 <menu_item_call name="Clear Group Cache" label="Clear Group Cache">
824 <on_click function="Advanced.ClearGroupCache" userdata="" />
825 </menu_item_call>
826 <menu_item_separator />
827
828
829
830 <!-- RENDERING -->
831
832 <menu name="Rendering" drop_shadow="true" opaque="true" tear_off="true">
833
834 <!-- TYPES -->
835 <menu name="Types" drop_shadow="true" opaque="true" tear_off="true">
836 <menu_item_check name="Simple" label="Simple"
837 shortcut="control|alt|shift|1">
838 <on_click function="Advanced.ToggleRenderType" userdata="simple" />
839 <on_check function="Advanced.CheckRenderType" userdata="simple" />
840 </menu_item_check>
841 <menu_item_check name="Alpha" label="Alpha"
842 shortcut="control|alt|shift|2">
843 <on_click function="Advanced.ToggleRenderType" userdata="alpha" />
844 <on_check function="Advanced.CheckRenderType" userdata="alpha" />
845 </menu_item_check>
846 <menu_item_check name="Tree" label="Tree"
847 shortcut="control|alt|shift|3">
848 <on_click function="Advanced.ToggleRenderType" userdata="tree" />
849 <on_check function="Advanced.CheckRenderType" userdata="tree" />
850 </menu_item_check>
851 <menu_item_check name="Character" label="Character"
852 shortcut="control|alt|shift|4">
853 <on_click function="Advanced.ToggleRenderType" userdata="avatar" />
854 <on_check function="Advanced.CheckRenderType" userdata="avatar" />
855 </menu_item_check>
856 <menu_item_check name="SurfacePatch" label="SurfacePatch"
857 shortcut="control|alt|shift|5">
858 <on_click function="Advanced.ToggleRenderType" userdata="terrain" />
859 <on_check function="Advanced.CheckRenderType" userdata="terrain" />
860 </menu_item_check>
861 <menu_item_check name="Sky" label="Sky"
862 shortcut="control|alt|shift|6">
863 <on_click function="Advanced.ToggleRenderType" userdata="sky" />
864 <on_check function="Advanced.CheckRenderType" userdata="sky" />
865 </menu_item_check>
866 <menu_item_check name="Water" label="Water"
867 shortcut="control|alt|shift|7">
868 <on_click function="Advanced.ToggleRenderType" userdata="water" />
869 <on_check function="Advanced.CheckRenderType" userdata="water" />
870 </menu_item_check>
871 <menu_item_check name="Ground" label="Ground"
872 shortcut="control|alt|shift|8">
873 <on_click function="Advanced.ToggleRenderType" userdata="ground" />
874 <on_check function="Advanced.CheckRenderType" userdata="ground" />
875 </menu_item_check>
876 <menu_item_check name="Volume" label="Volume"
877 shortcut="control|alt|shift|9">
878 <on_click function="Advanced.ToggleRenderType" userdata="volume" />
879 <on_check function="Advanced.CheckRenderType" userdata="volume" />
880 </menu_item_check>
881 <menu_item_check name="Grass" label="Grass"
882 shortcut="control|alt|shift|0">
883 <on_click function="Advanced.ToggleRenderType" userdata="grass" />
884 <on_check function="Advanced.CheckRenderType" userdata="grass" />
885 </menu_item_check>
886 <menu_item_check name="Clouds" label="Clouds"
887 shortcut="control|alt|shift|-">
888 <on_click function="Advanced.ToggleRenderType" userdata="clouds" />
889 <on_check function="Advanced.CheckRenderType" userdata="clouds" />
890 </menu_item_check>
891 <menu_item_check name="Particles" label="Particles"
892 shortcut="control|alt|shift|=">
893 <on_click function="Advanced.ToggleRenderType"
894 userdata="particles" />
895 <on_check function="Advanced.CheckRenderType"
896 userdata="particles" />
897 </menu_item_check>
898 <menu_item_check name="Bump" label="Bump"
899 shortcut="control|alt|shift|\">
900 <on_click function="Advanced.ToggleRenderType" userdata="bump" />
901 <on_check function="Advanced.CheckRenderType" userdata="bump" />
902 </menu_item_check>
903 </menu>
904
905
906 <!-- FEATURES -->
907 <menu drop_shadow="true" name="Features" opaque="true" tear_off="true">
908 <menu_item_check name="UI" label="UI" shortcut="control|alt|F1">
909 <on_click function="Advanced.ToggleFeature" userdata="ui" />
910 <on_check function="Advanced.CheckFeature" userdata="ui" />
911 </menu_item_check>
912 <menu_item_check name="Selected" label="Selected"
913 shortcut="control|alt|F2">
914 <on_click function="Advanced.ToggleFeature" userdata="selected" />
915 <on_check function="Advanced.CheckFeature" userdata="selected" />
916 </menu_item_check>
917 <menu_item_check name="Highlighted" label="Highlighted"
918 shortcut="control|alt|F3">
919 <on_click function="Advanced.ToggleFeature" userdata="highlighted" />
920 <on_check function="Advanced.CheckFeature" userdata="highlighted" />
921 </menu_item_check>
922 <menu_item_check name="Dynamic Textures" label="Dynamic Textures"
923 shortcut="control|alt|F4">
924 <on_click function="Advanced.ToggleFeature"
925 userdata="dynamic textures" />
926 <on_check function="Advanced.CheckFeature"
927 userdata="dynamic textures" />
928 </menu_item_check>
929 <menu_item_check name="Foot Shadows" label="Foot Shadows"
930 shortcut="control|alt|F5">
931 <on_click function="Advanced.ToggleFeature"
932 userdata="foot shadows" />
933 <on_check function="Advanced.CheckFeature"
934 userdata="foot shadows" />
935 </menu_item_check>
936 <menu_item_check name="Fog" label="Fog" shortcut="control|alt|F6">
937 <on_click function="Advanced.ToggleFeature" userdata="fog" />
938 <on_check function="Advanced.CheckFeature" userdata="fog" />
939 </menu_item_check>
940 <menu_item_check name="Palletized Textures"
941 label="Palletized Textures"
942 shortcut="control|alt|F7">
943 <on_click function="Advanced.ToggleFeature" userdata="palette" />
944 <on_check function="Advanced.CheckFeature" userdata="palette" />
945 </menu_item_check>
946 <menu_item_check name="Test FRInfo" label="Test FRInfo"
947 shortcut="control|alt|F8">
948 <on_click function="Advanced.ToggleFeature" userdata="fr info" />
949 <on_check function="Advanced.CheckFeature" userdata="fr info" />
950 </menu_item_check>
951 <menu_item_check name="Flexible Objects" label="Flexible Objects"
952 shortcut="control|alt|F9">
953 <on_click function="Advanced.ToggleFeature" userdata="flexible" />
954 <on_check function="Advanced.CheckFeature" userdata="flexible" />
955 </menu_item_check>
956 </menu>
957
958
959 <!-- INFO DISPLAYS -->
960 <menu drop_shadow="true" name="Info Displays"
961 opaque="true" tear_off="true">
962 <menu_item_check name="Verify" label="Verify">
963 <on_click function="Advanced.ToggleInfoDisplay" userdata="verify" />
964 <on_check function="Advanced.CheckInfoDisplay" userdata="verify" />
965 </menu_item_check>
966 <menu_item_check name="BBoxes" label="BBoxes">
967 <on_click function="Advanced.ToggleInfoDisplay" userdata="bboxes" />
968 <on_check function="Advanced.CheckInfoDisplay" userdata="bboxes" />
969 </menu_item_check>
970 <menu_item_check name="Points" label="Points">
971 <on_click function="Advanced.ToggleInfoDisplay" userdata="points" />
972 <on_check function="Advanced.CheckInfoDisplay" userdata="points" />
973 </menu_item_check>
974 <menu_item_check name="Octree" label="Octree">
975 <on_click function="Advanced.ToggleInfoDisplay" userdata="octree" />
976 <on_check function="Advanced.CheckInfoDisplay" userdata="octree" />
977 </menu_item_check>
978 <menu_item_check name="Occlusion" label="Occlusion">
979 <on_click function="Advanced.ToggleInfoDisplay"
980 userdata="occlusion" />
981 <on_check function="Advanced.CheckInfoDisplay"
982 userdata="occlusion" />
983 </menu_item_check>
984 <menu_item_check name="Render Batches" label="Render Batches">
985 <on_click function="Advanced.ToggleInfoDisplay"
986 userdata="render batches" />
987 <on_check function="Advanced.CheckInfoDisplay"
988 userdata="render batches" />
989 </menu_item_check>
990 <menu_item_check name="Animated Textures" label="Animated Textures">
991 <on_click function="Advanced.ToggleInfoDisplay"
992 userdata="texture anim" />
993 <on_check function="Advanced.CheckInfoDisplay"
994 userdata="texture anim" />
995 </menu_item_check>
996 <menu_item_check name="Texture Priority" label="Texture Priority">
997 <on_click function="Advanced.ToggleInfoDisplay"
998 userdata="texture priority" />
999 <on_check function="Advanced.CheckInfoDisplay"
1000 userdata="texture priority" />
1001 </menu_item_check>
1002 <menu_item_check name="Avatar Rendering Cost"
1003 label="Avatar Rendering Cost">
1004 <on_click function="Advanced.ToggleInfoDisplay"
1005 userdata="shame" />
1006 <on_check function="Advanced.CheckInfoDisplay"
1007 userdata="shame" />
1008 </menu_item_check>
1009 <menu_item_check name="Texture Area (sqrt(A))"
1010 label="Texture Area (sqrt(A))">
1011 <on_click function="Advanced.ToggleInfoDisplay"
1012 userdata="texture area" />
1013 <on_check function="Advanced.CheckInfoDisplay"
1014 userdata="texture area" />
1015 </menu_item_check>
1016 <menu_item_check name="Face Area (sqrt(A))"
1017 label="Face Area (sqrt(A))">
1018 <on_click function="Advanced.ToggleInfoDisplay"
1019 userdata="face area" />
1020 <on_check function="Advanced.CheckInfoDisplay"
1021 userdata="face area" />
1022 </menu_item_check>
1023 <menu_item_check name="Pick Render" label="Pick Render">
1024 <on_click function="Advanced.ToggleInfoDisplay"
1025 userdata="picking" />
1026 <on_check function="Advanced.CheckInfoDisplay"
1027 userdata="picking" />
1028 </menu_item_check>
1029 <menu_item_check name="Lights" label="Lights">
1030 <on_click function="Advanced.ToggleInfoDisplay"
1031 userdata="lights" />
1032 <on_check function="Advanced.CheckInfoDisplay"
1033 userdata="lights" />
1034 </menu_item_check>
1035 <menu_item_check name="Particles" label="Particles">
1036 <on_click function="Advanced.ToggleInfoDisplay"
1037 userdata="particles" />
1038 <on_check function="Advanced.CheckInfoDisplay"
1039 userdata="particles" />
1040 </menu_item_check>
1041 <menu_item_check name="Composition" label="Composition">
1042 <on_click function="Advanced.ToggleInfoDisplay"
1043 userdata="composition" />
1044 <on_check function="Advanced.CheckInfoDisplay"
1045 userdata="composition" />
1046 </menu_item_check>
1047 <menu_item_check name="Glow" label="Glow">
1048 <on_click function="Advanced.ToggleInfoDisplay"
1049 userdata="glow" />
1050 <on_check function="Advanced.CheckInfoDisplay"
1051 userdata="glow" />
1052 </menu_item_check>
1053 <menu_item_check name="Show Depth Buffer" label="Show Depth Buffer">
1054 <on_click function="ToggleControl" userdata="ShowDepthBuffer" />
1055 <on_check control="ShowDepthBuffer" />
1056 </menu_item_check>
1057 <menu_item_check name="Show Select Buffer" label="Show Select Buffer">
1058 <on_click function="Advanced.ToggleSelectBuffer" userdata="" />
1059 <on_check function="Advanced.CheckSelectBuffer" userdata="" />
1060 </menu_item_check>
1061 <menu_item_check name="Vectorize Perf Test"
1062 label="Vectorize Perf Test">
1063 <on_click function="ToggleControl" userdata="VectorizePerfTest" />
1064 <on_check control="VectorizePerfTest" />
1065 </menu_item_check>
1066 </menu>
1067
1068
1069 <!-- RENDER TESTS -->
1070 <menu drop_shadow="true" name="Render Tests" opaque="true"
1071 tear_off="true">
1072 <menu_item_check name="Camera Offset" label="Camera Offset">
1073 <on_click function="ToggleControl" userdata="CameraOffset" />
1074 <on_check control="CameraOffset" />
1075 </menu_item_check>
1076 <menu_item_check name="Randomize Framerate"
1077 label="Randomize Framerate">
1078 <on_click function="Advanced.ToggleRandomizeFramerate"
1079 userdata="" />
1080 <on_check function="Advanced.CheckRandomizeFramerate"
1081 userdata="" />
1082 </menu_item_check>
1083 <menu_item_check name="Periodic Slow Frame"
1084 label="Periodic Slow Frame">
1085 <on_click function="Advanced.TogglePeriodicSlowFrame"
1086 userdata="" />
1087 <on_check function="Advanced.CheckPeriodicSlowFrame"
1088 userdata="" />
1089 </menu_item_check>
1090 <menu_item_check name="Frame Test" label="Frame Test">
1091 <on_click function="Advanced.ToggleFrameTest" userdata="" />
1092 <on_check function="Advanced.CheckFrameTest" userdata="" />
1093 </menu_item_check>
1094 </menu>
1095
1096
1097 <menu_item_separator />
1098
1099 <menu_item_check name="Axes" label="Axes">
1100 <on_click function="ToggleControl" userdata="ShowAxes" />
1101 <on_check control="ShowAxes" />
1102 </menu_item_check>
1103
1104 <menu_item_separator />
1105
1106 <menu_item_check name="Hide Selected" label="Hide Selected">
1107 <on_click function="Advanced.ToggleHideSelectedObjects"
1108 userdata="" />
1109 <on_check function="Advanced.CheckHideSelectedObjects"
1110 userdata="" />
1111 </menu_item_check>
1112
1113 <menu_item_separator />
1114
1115 <menu_item_check name="Tangent Basis" label="Tangent Basis">
1116 <on_click function="ToggleControl" userdata="ShowTangentBasis" />
1117 <on_check control="ShowTangentBasis" />
1118 </menu_item_check>
1119 <menu_item_call name="Selected Texture Info"
1120 label="Selected Texture Info"
1121 shortcut="control|alt|shift|T">
1122 <on_click function="Advanced.SelectedTextureInfo" userdata="" />
1123 </menu_item_call>
1124 <menu_item_check name="Wireframe" label="Wireframe"
1125 shortcut="control|shift|R">
1126 <on_click function="Advanced.ToggleWireframe" userdata="" />
1127 <on_check function="Advanced.CheckWireframe" userdata="" />
1128 </menu_item_check>
1129 <menu_item_check name="Object-Object Occlusion"
1130 label="Object-Object Occlusion"
1131 shortcut="control|shift|O">
1132 <on_click function="ToggleControl" userdata="UseOcclusion" />
1133 <on_check control="UseOcclusion" />
1134 </menu_item_check>
1135 <menu_item_check name="Debug GL" label="Debug GL">
1136 <on_click function="ToggleControl" userdata="RenderDebugGL" />
1137 <on_check control="RenderDebugGL" />
1138 </menu_item_check>
1139 <menu_item_check name="Debug Pipeline" label="Debug Pipeline">
1140 <on_click function="ToggleControl" userdata="RenderDebugPipeline" />
1141 <on_check control="RenderDebugPipeline" />
1142 </menu_item_check>
1143 <menu_item_check name="Fast Alpha" label="Fast Alpha">
1144 <on_click function="ToggleControl" userdata="RenderFastAlpha" />
1145 <on_check control="RenderFastAlpha" />
1146 </menu_item_check>
1147 <menu_item_check name="Animate Textures" label="Animate Textures">
1148 <on_click function="ToggleControl" userdata="AnimateTextures" />
1149 <on_check control="AnimateTextures" />
1150 </menu_item_check>
1151 <menu_item_check name="Disable Textures" label="Disable Textures">
1152 <on_click function="Advanced.ToggleDisableTextures" userdata="" />
1153 <on_check function="Advanced.CheckDisableTextures" userdata="" />
1154 </menu_item_check>
1155 <!-- Disabled because it doesn't seem to be used anymore.
1156 <menu_item_check name="HTTP Get Textures" label="HTTP Get Textures">
1157 <on_click function="ToggleControl"
1158 userdata="ImagePipelineUseHTTP" />
1159 <on_check control="ImagePipelineUseHTTP" />
1160 </menu_item_check>
1161 -->
1162 <menu_item_check name="Run Multiple Threads"
1163 label="Run Multiple Threads">
1164 <on_click function="ToggleControl"
1165 userdata="RunMultipleThreads" />
1166 <on_check control="RunMultipleThreads" />
1167 </menu_item_check>
1168 <!-- Disabled because it doesn't work very well?
1169 <menu_item_check name="Dynamic Reflections"
1170 label="Dynamic Reflections">
1171 <on_click function="ToggleControl"
1172 userdata="RenderDynamicReflections" />
1173 <on_check control="RenderDynamicReflections" />
1174 </menu_item_check>
1175 -->
1176 <menu_item_check name="Cheesy Beacon" label="Cheesy Beacon">
1177 <on_click function="ToggleControl"
1178 userdata="CheesyBeacon" />
1179 <on_check control="CheesyBeacon" />
1180 </menu_item_check>
1181 </menu>
1182
1183
1184
1185 <!-- WORLD -->
1186
1187 <menu drop_shadow="true" name="World" opaque="true" tear_off="true">
1188 <!-- Disabled because you can't do this in Windlight.
1189 <menu_item_check name="Mouse Moves Sun" label="Mouse Moves Sun"
1190 shortcut="control|alt|M">
1191 <on_click function="ToggleControl" userdata="MouseSun" />
1192 <on_check control="MouseSun" />
1193 </menu_item_check>
1194 -->
1195 <menu_item_check name="Sim Sun Override" label="Sim Sun Override">
1196 <on_click function="ToggleControl"
1197 userdata="SkyOverrideSimSunPosition" />
1198 <on_check control="SkyOverrideSimSunPosition" />
1199 </menu_item_check>
1200 <menu_item_call name="Dump Scripted Camera"
1201 label="Dump Scripted Camera">
1202 <on_click function="Advanced.DumpScriptedCamera" userdata="" />
1203 </menu_item_call>
1204 <menu_item_check name="Fixed Weather" label="Fixed Weather">
1205 <on_click function="ToggleControl" userdata="FixedWeather" />
1206 <on_check control="FixedWeather" />
1207 </menu_item_check>
1208 <menu_item_call name="Dump Region Object Cache"
1209 label="Dump Region Object Cache">
1210 <on_click function="Advanced.DumpRegionObjectCache" userdata="" />
1211 </menu_item_call>
1212 </menu>
1213
1214
1215
1216 <!-- UI -->
1217
1218 <menu drop_shadow="true" name="UI" opaque="true" tear_off="true">
1219 <menu_item_call name="SLURL Test" label="SLURL Test">
1220 <on_click function="Advanced.SLURLTest" userdata="" />
1221 </menu_item_call>
1222
1223 <!--
1224 *TODO: Make this a proper toggle item with the "X" indicator.
1225 1. Add a "Advanced.CheckEditableUI" function in llviewermenu.cpp.
1226 2. Change this surrounding menu_item_call to a menu_item_check.
1227 3. Uncomment the "on_check" line below.
1228 -->
1229 <menu_item_call name="Editable UI" label="Editable UI">
1230 <on_click function="Advanced.ToggleEditableUI" userdata="" />
1231 <!--
1232 <on_check function="Advanced.CheckEditableUI" userdata="" />
1233 -->
1234 </menu_item_call>
1235
1236 <menu_item_check name="Async Keystrokes" label="Async Keystrokes">
1237 <on_click function="Advanced.ToggleAsyncKeystrokes" userdata="" />
1238 <on_check function="Advanced.CheckAsyncKeystrokes" userdata="" />
1239 </menu_item_check>
1240 <menu_item_call name="Dump SelectMgr" label="Dump SelectMgr">
1241 <on_click function="Advanced.DumpSelectMgr" userdata="" />
1242 </menu_item_call>
1243 <menu_item_call name="Dump Inventory" label="Dump Inventory">
1244 <on_click function="Advanced.DumpInventory" userdata="" />
1245 </menu_item_call>
1246 <menu_item_call name="Dump Focus Holder"
1247 label="Dump Focus Holder" shortcut="control|alt|F">
1248 <on_click function="Advanced.DumpFocusHolder" userdata="" />
1249 </menu_item_call>
1250 <menu_item_call name="Print Selected Object Info"
1251 label="Print Selected Object Info"
1252 shortcut="control|shift|P">
1253 <on_click function="Advanced.PrintSelectedObjectInfo" userdata="" />
1254 </menu_item_call>
1255 <menu_item_call name="Print Agent Info" label="Print Agent Info"
1256 shortcut="shift|P">
1257 <on_click function="Advanced.PrintAgentInfo" userdata="" />
1258 </menu_item_call>
1259 <menu_item_call name="Memory Stats" label="Memory Stats"
1260 shortcut="control|alt|shift|M">
1261 <on_click function="Advanced.PrintTextureMemoryStats" userdata="" />
1262 </menu_item_call>
1263 <menu_item_check name="Double-Click Auto-Pilot"
1264 label="Double-Click Auto-Pilot">
1265 <on_click function="ToggleControl" userdata="DoubleClickAutoPilot" />
1266 <on_check control="DoubleClickAutoPilot" />
1267 </menu_item_check>
1268 <menu_item_separator />
1269 <menu_item_check name="Debug SelectMgr" label="Debug SelectMgr">
1270 <on_click function="Advanced.ToggleDebugSelectMgr" userdata="" />
1271 <on_check function="Advanced.CheckDebugSelectMgr" userdata="" />
1272 </menu_item_check>
1273 <menu_item_check label="Debug Click" name="Debug Clicks">
1274 <on_click function="Advanced.ToggleDebugClicks" userdata="" />
1275 <on_check function="Advanced.CheckDebugClicks" userdata="" />
1276 </menu_item_check>
1277 <menu_item_check name="Debug Views" label="Debug Views">
1278 <on_click function="Advanced.ToggleDebugViews" userdata="" />
1279 <on_check function="Advanced.CheckDebugViews" userdata="" />
1280 </menu_item_check>
1281 <menu_item_check name="Show Name Tooltips" label="Show Name Tooltips">
1282 <on_click function="Advanced.ToggleXUINameTooltips" userdata="" />
1283 <on_check function="Advanced.CheckXUINameTooltips" userdata="" />
1284 </menu_item_check>
1285 <menu_item_check name="Debug Mouse Events" label="Debug Mouse Events">
1286 <on_click function="Advanced.ToggleDebugMouseEvents" userdata="" />
1287 <on_check function="Advanced.CheckDebugMouseEvents" userdata="" />
1288 </menu_item_check>
1289 <menu_item_check name="Debug Keys" label="Debug Keys">
1290 <on_click function="Advanced.ToggleDebugKeys" userdata="" />
1291 <on_check function="Advanced.CheckDebugKeys" userdata="" />
1292 </menu_item_check>
1293 <menu_item_check name="Debug WindowProc" label="Debug WindowProc">
1294 <on_click function="Advanced.ToggleDebugWindowProc" userdata="" />
1295 <on_check function="Advanced.CheckDebugWindowProc" userdata="" />
1296 </menu_item_check>
1297 <menu_item_check name="Debug Text Editor Tips"
1298 label="Debug Text Editor Tips">
1299 <on_click function="Advanced.ToggleDebugTextEditorTips" userdata="" />
1300 <on_check function="Advanced.CheckDebugTextEditorTips" userdata="" />
1301 </menu_item_check>
1302 <menu_item_separator />
1303 <menu_item_check name="Show Time" label="Show Time">
1304 <on_click function="ToggleControl" userdata="DebugShowTime" />
1305 <on_check control="DebugShowTime" />
1306 </menu_item_check>
1307 <menu_item_check name="Show Render Info" label="Show Render Info">
1308 <on_click function="ToggleControl" userdata="DebugShowRenderInfo" />
1309 <on_check control="DebugShowRenderInfo" />
1310 </menu_item_check>
1311 <menu_item_check name="Show Color Under Cursor"
1312 label="Show Color Under Cursor">
1313 <on_click function="ToggleControl" userdata="DebugShowColor" />
1314 <on_check control="DebugShowColor" />
1315 </menu_item_check>
1316 </menu>
1317
1318
1319
1320 <!-- XUI -->
1321
1322 <menu drop_shadow="true" name="XUI" opaque="true" tear_off="true">
1323 <menu_item_call name="Floater Test..." label="Floater Test...">
1324 <on_click function="Advanced.ShowFloaterTest" userdata="" />
1325 </menu_item_call>
1326 <menu_item_call name="Export Menus to XML..."
1327 label="Export Menus to XML...">
1328 <on_click function="Advanced.ExportMenusToXML" userdata="" />
1329 </menu_item_call>
1330 <menu_item_call name="Edit UI..." label="Edit UI...">
1331 <on_click function="Advanced.EditUI" userdata="" />
1332 </menu_item_call>
1333 <menu_item_call name="Load from XML..." label="Load from XML...">
1334 <on_click function="Advanced.LoadUIFromXML" userdata="" />
1335 </menu_item_call>
1336 <menu_item_call name="Save to XML..." label="Save to XML...">
1337 <on_click function="Advanced.SaveUIToXML" userdata="" />
1338 </menu_item_call>
1339 <menu_item_check name="Show XUI Names" label="Show XUI Names">
1340 <on_click function="Advanced.ToggleXUINames" userdata="" />
1341 <on_check function="Advanced.CheckXUINames" userdata="" />
1342 </menu_item_check>
1343 </menu>
1344
1345
1346
1347 <!-- CHARACTER -->
1348
1349 <menu name="Character" drop_shadow="true" opaque="true" tear_off="true">
1350
1351 <menu name="Grab Baked Texture" drop_shadow="true"
1352 opaque="true" tear_off="true">
1353 <menu_item_call enabled="false" name="Iris" label="Iris">
1354 <on_click function="Advanced.GrabBakedTexture" userdata="eyes" />
1355 <on_enable function="Advanced.EnableGrabBakedTexture"
1356 userdata="eyes" />
1357 </menu_item_call>
1358 <menu_item_call enabled="false" name="Head" label="Head">
1359 <on_click function="Advanced.GrabBakedTexture" userdata="head" />
1360 <on_enable function="Advanced.EnableGrabBakedTexture"
1361 userdata="head" />
1362 </menu_item_call>
1363 <menu_item_call enabled="false" name="Upper Body" label="Upper Body">
1364 <on_click function="Advanced.GrabBakedTexture" userdata="upper" />
1365 <on_enable function="Advanced.EnableGrabBakedTexture"
1366 userdata="upper" />
1367 </menu_item_call>
1368 <menu_item_call enabled="false" name="Lower Body" label="Lower Body">
1369 <on_click function="Advanced.GrabBakedTexture" userdata="lower" />
1370 <on_enable function="Advanced.EnableGrabBakedTexture"
1371 userdata="lower" />
1372 </menu_item_call>
1373 <menu_item_call enabled="false" name="Skirt" label="Skirt">
1374 <on_click function="Advanced.GrabBakedTexture" userdata="skirt" />
1375 <on_enable function="Advanced.EnableGrabBakedTexture"
1376 userdata="skirt" />
1377 </menu_item_call>
1378 </menu>
1379
1380 <!-- CHARACTER TESTS -->
1381 <menu drop_shadow="true" name="Character Tests"
1382 opaque="true" tear_off="true">
1383 <menu_item_check name="Go Away/AFK When Idle"
1384 label="Go Away/AFK When Idle">
1385 <on_click function="Advanced.ToggleAllowIdleAFK" userdata="" />
1386 <on_check function="Advanced.CheckAllowIdleAFK" userdata="" />
1387 </menu_item_check>
1388 <menu_item_call name="Appearance To XML" label="Appearance To XML">
1389 <on_click function="Advanced.ToggleAppearanceToXML" userdata="" />
1390 </menu_item_call>
1391 <menu_item_call name="Toggle Character Geometry" enabled="false"
1392 label="Toggle Character Geometry">
1393 <on_click function="Advanced.ToggleCharacterGeometry" userdata="" />
1394 <on_enable function="EnableGodCustomerService" userdata="" />
1395 </menu_item_call>
1396 <menu_item_call name="Test Male" label="Test Male">
1397 <on_click function="Advanced.TestMale" userdata="" />
1398 </menu_item_call>
1399 <menu_item_call name="Test Female" label="Test Female">
1400 <on_click function="Advanced.TestFemale" userdata="" />
1401 </menu_item_call>
1402 <menu_item_call name="Toggle PG" label="Toggle PG">
1403 <on_click function="Advanced.TogglePG" userdata="" />
1404 </menu_item_call>
1405 <menu_item_check name="Allow Select Avatar"
1406 label="Allow Select Avatar">
1407 <on_click function="Advanced.ToggleAllowSelectAvatar" userdata="" />
1408 <on_check function="Advanced.CheckAllowSelectAvatar" userdata="" />
1409 </menu_item_check>
1410 </menu>
1411
1412 <menu_item_check name="Enable Lip Sync (Beta)"
1413 label="Enable Lip Sync (Beta)">
1414 <on_click function="ToggleControl" userdata="LipSyncEnabled" />
1415 <on_check control="LipSyncEnabled" />
1416 </menu_item_check>
1417 <menu_item_check name="Tap-Tap-Hold To Run"
1418 label="Tap-Tap-Hold To Run">
1419 <on_click function="Advanced.ToggleAllowTapTapHoldRun" userdata="" />
1420 <on_check function="Advanced.CheckAllowTapTapHoldRun" userdata="" />
1421 </menu_item_check>
1422 <menu_item_call name="Force Params to Default"
1423 label="Force Params to Default">
1424 <on_click function="Advanced.ForceParamsToDefault" userdata="" />
1425 </menu_item_call>
1426 <menu_item_call name="Reload Vertex Shader"
1427 label="Reload Vertex Shader">
1428 <on_click function="Advanced.ReloadVertexShader" userdata="" />
1429 </menu_item_call>
1430 <menu_item_check label="Animation Info"
1431 name="Animation Info">
1432 <on_click function="Advanced.ToggleAnimationInfo" userdata="" />
1433 <on_check function="Advanced.CheckAnimationInfo" userdata="" />
1434 </menu_item_check>
1435
1436 <!--
1437 *TODO: Make this a proper toggle item with the "X" indicator.
1438 1. Add a "Advanced.CheckSlowmotionAnimation" function in
1439 llviewermenu.cpp.
1440 2. Change this surrounding menu_item_call to a menu_item_check.
1441 3. Uncomment the "on_check" line below.
1442 -->
1443 <menu_item_call name="Slow Motion Animations"
1444 label="Slow Motion Animations">
1445 <on_click function="Advanced.ToggleSlowMotionAnimations" userdata="" />
1446 <!--
1447 <on_check function="Advanced.CheckSlowMotionAnimations"
1448 userdata="" />
1449 -->
1450 </menu_item_call>
1451
1452 <menu_item_check name="Show Look At" label="Show Look At">
1453 <on_click function="Advanced.ToggleShowLookAt" userdata="" />
1454 <on_check function="Advanced.CheckShowLookAt" userdata="" />
1455 </menu_item_check>
1456 <menu_item_check name="Show Point At" label="Show Point At">
1457 <on_click function="Advanced.ToggleShowPointAt" userdata="" />
1458 <on_check function="Advanced.CheckShowPointAt" userdata="" />
1459 </menu_item_check>
1460 <menu_item_check name="Debug Joint Updates" label="Debug Joint Updates">
1461 <on_click function="Advanced.ToggleDebugJointUpdates" userdata="" />
1462 <on_check function="Advanced.CheckDebugJointUpdates" userdata="" />
1463 </menu_item_check>
1464 <menu_item_check name="Disable LOD" label="Disable LOD">
1465 <on_click function="Advanced.ToggleDisableLOD" userdata="" />
1466 <on_check function="Advanced.CheckDisableLOD" userdata="" />
1467 </menu_item_check>
1468 <menu_item_check name="Debug Character Vis" label="Debug Character Vis">
1469 <on_click function="Advanced.ToggleDebugCharacterVis" userdata="" />
1470 <on_check function="Advanced.CheckDebugCharacterVis" userdata="" />
1471 </menu_item_check>
1472
1473 <!-- Disabled. See DEV-14477
1474 <menu_item_check name="Show Collision Plane"
1475 label="Show Collision Plane">
1476 <on_click function="Advanced.ToggleShowCollisionPlane"
1477 userdata="" />
1478 <on_check function="Advanced.CheckShowCollisionPlane"
1479 userdata="" />
1480 </menu_item_check>
1481 -->
1482
1483 <menu_item_check name="Show Collision Skeleton"
1484 label="Show Collision Skeleton">
1485 <on_click function="Advanced.ToggleShowCollisionSkeleton"
1486 userdata="" />
1487 <on_check function="Advanced.CheckShowCollisionSkeleton"
1488 userdata="" />
1489 </menu_item_check>
1490 <menu_item_check name="Display Agent Target"
1491 label="Display Agent Target">
1492 <on_click function="Advanced.ToggleDisplayAgentTarget" userdata="" />
1493 <on_check function="Advanced.CheckDisplayAgentTarget" userdata="" />
1494 </menu_item_check>
1495 <menu_item_check name="Debug Rotation" label="Debug Rotation">
1496 <on_click function="Advanced.ToggleDebugAvatarRotation" userdata="" />
1497 <on_check function="Advanced.CheckDebugAvatarRotation" userdata="" />
1498 </menu_item_check>
1499 <menu_item_call name="Dump Attachments" label="Dump Attachments">
1500 <on_click function="Advanced.DumpAttachments" userdata="" />
1501 </menu_item_call>
1502 <menu_item_call name="Rebake Textures" label="Rebake Textures"
1503 shortcut="control|alt|R">
1504 <on_click function="Advanced.RebakeTextures" userdata="" />
1505 </menu_item_call>
1506 </menu>
1507
1508
1509
1510 <!-- NETWORK -->
1511
1512 <menu drop_shadow="true" name="Network" opaque="true" tear_off="true">
1513 <menu_item_call name="Enable Message Log" label="Enable Message Log">
1514 <on_click function="Advanced.EnableMessageLog" userdata="" />
1515 </menu_item_call>
1516 <menu_item_call name="Disable Message Log" label="Disable Message Log">
1517 <on_click function="Advanced.DisableMessageLog" userdata="" />
1518 </menu_item_call>
1519 <menu_item_separator />
1520 <menu_item_check name="Velocity Interpolate Objects"
1521 label="Velocity Interpolate Objects">
1522 <on_click function="ToggleControl" userdata="VelocityInterpolate" />
1523 <on_check control="VelocityInterpolate" />
1524 </menu_item_check>
1525 <menu_item_check name="Ping Interpolate Object Positions"
1526 label="Ping Interpolate Object Positions">
1527 <on_click function="ToggleControl" userdata="PingInterpolate" />
1528 <on_check control="PingInterpolate" />
1529 </menu_item_check>
1530 <menu_item_separator />
1531 <menu_item_call name="Drop a Packet" label="Drop a Packet"
1532 shortcut="control|alt|L">
1533 <on_click function="Advanced.DropPacket" userdata="" />
1534 </menu_item_call>
1535 </menu>
1536
1537
1538
1539 <!-- RECORDER -->
1540
1541 <menu name="Recorder" drop_shadow="true" opaque="true" tear_off="true">
1542 <menu_item_check name="Full Session Logging"
1543 label="Full Session Logging">
1544 <on_click function="ToggleControl"
1545 userdata="StatsSessionTrackFrameStats" />
1546 <on_check control="StatsSessionTrackFrameStats" />
1547 </menu_item_check>
1548 <menu_item_call name="Start Logging" label="Start Logging">
1549 <on_click function="Advanced.FrameStatsLogging"
1550 userdata="start logging" />
1551 </menu_item_call>
1552 <menu_item_call name="Stop Logging" label="Stop Logging">
1553 <on_click function="Advanced.FrameStatsLogging"
1554 userdata="stop logging" />
1555 </menu_item_call>
1556 <menu_item_call name="Log 10 Seconds" label="Log 10 Seconds">
1557 <on_click function="Advanced.FrameStatsLogging"
1558 userdata="timed logging 10" />
1559 </menu_item_call>
1560 <menu_item_call name="Log 30 Seconds" label="Log 30 Seconds">
1561 <on_click function="Advanced.FrameStatsLogging"
1562 userdata="timed logging 30" />
1563 </menu_item_call>
1564 <menu_item_call name="Log 60 Seconds" label="Log 60 Seconds">
1565 <on_click function="Advanced.FrameStatsLogging"
1566 userdata="timed logging 60" />
1567 </menu_item_call>
1568
1569 <menu_item_separator />
1570
1571 <menu_item_call name="Start Playback" label="Start Playback">
1572 <on_click function="Advanced.AgentPilot" userdata="start playback" />
1573 </menu_item_call>
1574 <menu_item_call name="Stop Playback" label="Stop Playback">
1575 <on_click function="Advanced.AgentPilot" userdata="stop playback" />
1576 </menu_item_call>
1577 <menu_item_check name="Loop Playback" label="Loop Playback">
1578 <on_click function="Advanced.ToggleAgentPilotLoop" userdata="" />
1579 <on_check function="Advanced.CheckAgentPilotLoop" userdata="" />
1580 </menu_item_check>
1581 <menu_item_call name="Start Record" label="Start Record">
1582 <on_click function="Advanced.AgentPilot" userdata="start record" />
1583 </menu_item_call>
1584 <menu_item_call name="Stop Record" label="Stop Record">
1585 <on_click function="Advanced.AgentPilot" userdata="stop record" />
1586 </menu_item_call>
1587 </menu>
1588
1589
1590 <menu_item_separator />
1591
1592
1593 <menu_item_check name="Show Updates" label="Show Updates"
1594 shortcut="control|alt|shift|U">
1595 <on_click function="Advanced.ToggleShowObjectUpdates" userdata="" />
1596 <on_check function="Advanced.CheckShowObjectUpdates" userdata="" />
1597 </menu_item_check>
1598
1599 <menu_item_separator />
1600
1601 <menu_item_call name="Compress Image..."
1602 label="Compress Image...">
1603 <on_click function="Advanced.CompressImage" userdata="" />
1604 </menu_item_call>
1605 <menu_item_check name="Limit Select Distance"
1606 label="Limit Select Distance">
1607 <on_click function="ToggleControl"
1608 userdata="LimitSelectDistance" />
1609 <on_check control="LimitSelectDistance" />
1610 </menu_item_check>
1611 <menu_item_check name="Disable Camera Constraints"
1612 label="Disable Camera Constraints">
1613 <on_click function="ToggleControl"
1614 userdata="DisableCameraConstraints" />
1615 <on_check control="DisableCameraConstraints" />
1616 </menu_item_check>
1617 <menu_item_check name="Mouse Smoothing" label="Mouse Smoothing">
1618 <on_click function="ToggleControl"
1619 userdata="MouseSmooth" />
1620 <on_check control="MouseSmooth" />
1621 </menu_item_check>
1622
1623 <menu_item_separator />
1624
1625 <menu_item_check name="Console Window" label="Console Window">
1626 <on_click function="ToggleControl"
1627 userdata="ShowConsoleWindow" />
1628 <on_check control="ShowConsoleWindow" />
1629 </menu_item_check>
1630 <menu_item_check name="Output Debug Minidump"
1631 label="Output Debug Minidump">
1632 <on_click function="ToggleControl"
1633 userdata="SaveMiniDump" />
1634 <on_check control="SaveMiniDump" />
1635 </menu_item_check>
1636 <menu_item_check name="Clothing..." label="Clothing...">
1637 <on_click function="Advanced.ToggleClothingFloater" userdata="" />
1638 </menu_item_check>
1639 <menu_item_call name="Debug Settings" label="Debug Settings">
1640 <on_click function="Advanced.ShowDebugSettings" userdata="" />
1641 </menu_item_call>
1642 <menu_item_check name="View Admin Options" label="View Admin Options"
1643 shortcut="control|alt|V">
1644 <on_click function="Advanced.ToggleViewAdminOptions" userdata="" />
1645 <on_check function="Advanced.CheckViewAdminOptions" userdata="" />
1646 </menu_item_check>
1647 <menu_item_call name="Request Admin Status" label="Request Admin Status"
1648 shortcut="control|alt|G">
1649 <on_click function="Advanced.RequestAdminStatus" userdata="" />
1650 </menu_item_call>
1651 <menu_item_call name="Leave Admin Status" label="Leave Admin Status"
1652 shortcut="control|alt|shift|G">
1653 <on_click function="Advanced.LeaveAdminStatus" userdata="" />
1654 </menu_item_call>
1655
1656 </menu>
1657
862</menu_bar> 1658</menu_bar>