diff options
Diffstat (limited to 'indra')
-rw-r--r-- | indra/llui/llbutton.cpp | 24 | ||||
-rw-r--r-- | indra/llui/llbutton.h | 13 | ||||
-rw-r--r-- | indra/llui/llfloater.cpp | 9 | ||||
-rw-r--r-- | indra/llui/llfloater.h | 1 | ||||
-rw-r--r-- | indra/llui/llfloaterreg.cpp | 23 | ||||
-rw-r--r-- | indra/llui/llfloaterreg.h | 1 | ||||
-rw-r--r-- | indra/llui/lltoolbar.cpp | 86 | ||||
-rw-r--r-- | indra/llui/lltoolbar.h | 18 | ||||
-rw-r--r-- | indra/llui/lltooltip.cpp | 2 | ||||
-rw-r--r-- | indra/llui/llui.cpp | 1 | ||||
-rw-r--r-- | indra/newview/app_settings/commands.xml | 46 | ||||
-rw-r--r-- | indra/newview/app_settings/settings.xml | 22 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/en/floater_test_button.xml | 1 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/en/floater_toybox.xml | 13 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/en/widgets/button.xml | 7 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/en/widgets/toolbar.xml | 6 |
16 files changed, 220 insertions, 53 deletions
diff --git a/indra/llui/llbutton.cpp b/indra/llui/llbutton.cpp index f259e8027e..c9ee62296f 100644 --- a/indra/llui/llbutton.cpp +++ b/indra/llui/llbutton.cpp @@ -83,7 +83,6 @@ LLButton::Params::Params() label_color_selected("label_color_selected"), // requires is_toggle true label_color_disabled("label_color_disabled"), label_color_disabled_selected("label_color_disabled_selected"), - highlight_color("highlight_color"), image_color("image_color"), image_color_disabled("image_color_disabled"), image_overlay_color("image_overlay_color", LLColor4::white), @@ -99,10 +98,13 @@ LLButton::Params::Params() scale_image("scale_image", true), hover_glow_amount("hover_glow_amount"), commit_on_return("commit_on_return", true), + display_pressed_state("display_pressed_state", true), use_draw_context_alpha("use_draw_context_alpha", true), badge("badge"), handle_right_mouse("handle_right_mouse"), - held_down_delay("held_down_delay") + held_down_delay("held_down_delay"), + button_flash_count("button_flash_count"), + button_flash_rate("button_flash_rate") { addSynonym(is_toggle, "toggle"); changeDefault(initial_value, LLSD(false)); @@ -136,7 +138,6 @@ LLButton::LLButton(const LLButton::Params& p) mSelectedLabelColor(p.label_color_selected()), mDisabledLabelColor(p.label_color_disabled()), mDisabledSelectedLabelColor(p.label_color_disabled_selected()), - mHighlightColor(p.highlight_color()), mImageColor(p.image_color()), mFlashBgColor(p.flash_color()), mDisabledImageColor(p.image_color_disabled()), @@ -159,12 +160,15 @@ LLButton::LLButton(const LLButton::Params& p) mCommitOnReturn(p.commit_on_return), mFadeWhenDisabled(FALSE), mForcePressedState(false), + mDisplayPressedState(p.display_pressed_state), mLastDrawCharsCount(0), mMouseDownSignal(NULL), mMouseUpSignal(NULL), mHeldDownSignal(NULL), mUseDrawContextAlpha(p.use_draw_context_alpha), - mHandleRightMouse(p.handle_right_mouse) + mHandleRightMouse(p.handle_right_mouse), + mButtonFlashCount(p.button_flash_count), + mButtonFlashRate(p.button_flash_rate) { static LLUICachedControl<S32> llbutton_orig_h_pad ("UIButtonOrigHPad", 0); static Params default_params(LLUICtrlFactory::getDefaultParams<LLButton>()); @@ -570,15 +574,13 @@ void LLButton::draw() { F32 alpha = mUseDrawContextAlpha ? getDrawContext().mAlpha : getCurrentTransparency(); bool flash = FALSE; - static LLUICachedControl<F32> button_flash_rate("ButtonFlashRate", 0); - static LLUICachedControl<S32> button_flash_count("ButtonFlashCount", 0); if( mFlashing ) { F32 elapsed = mFlashingTimer.getElapsedTimeF32(); - S32 flash_count = S32(elapsed * button_flash_rate * 2.f); + S32 flash_count = S32(elapsed * mButtonFlashRate * 2.f); // flash on or off? - flash = (flash_count % 2 == 0) || flash_count > S32((F32)button_flash_count * 2.f); + flash = (flash_count % 2 == 0) || flash_count > S32((F32)mButtonFlashCount * 2.f); } bool pressed_by_keyboard = FALSE; @@ -607,7 +609,7 @@ void LLButton::draw() LLColor4 glow_color = LLColor4::white; LLRender::eBlendType glow_type = LLRender::BT_ADD_WITH_ALPHA; LLUIImage* imagep = NULL; - if (pressed) + if (pressed && mDisplayPressedState) { imagep = selected ? mImagePressedSelected : mImagePressed; } @@ -800,7 +802,7 @@ void LLButton::draw() S32 center_y = getLocalRect().getCenterY(); //FUGLY HACK FOR "DEPRESSED" BUTTONS - if (pressed) + if (pressed && mDisplayPressedState) { center_y--; center_x++; @@ -873,7 +875,7 @@ void LLButton::draw() S32 y_offset = 2 + (getRect().getHeight() - 20)/2; - if (pressed) + if (pressed && mDisplayPressedState) { y_offset--; x++; diff --git a/indra/llui/llbutton.h b/indra/llui/llbutton.h index 08b45e01b3..14c1d01c7e 100644 --- a/indra/llui/llbutton.h +++ b/indra/llui/llbutton.h @@ -91,7 +91,6 @@ public: label_color_selected, label_color_disabled, label_color_disabled_selected, - highlight_color, image_color, image_color_disabled, image_overlay_color, @@ -120,7 +119,8 @@ public: // misc Optional<bool> is_toggle, scale_image, - commit_on_return; + commit_on_return, + display_pressed_state; Optional<F32> hover_glow_amount; Optional<TimeIntervalParam> held_down_delay; @@ -131,6 +131,9 @@ public: Optional<bool> handle_right_mouse; + Optional<S32> button_flash_count; + Optional<F32> button_flash_rate; + Params(); }; @@ -273,6 +276,9 @@ protected: void getOverlayImageSize(S32& overlay_width, S32& overlay_height); LLFrameTimer mMouseDownTimer; + bool mNeedsHighlight; + S32 mButtonFlashCount; + F32 mButtonFlashRate; private: void drawBorder(LLUIImage* imagep, const LLColor4& color, S32 size); @@ -322,7 +328,6 @@ private: flash icon name is set in attributes(by default it isn't). First way is used otherwise. */ LLPointer<LLUIImage> mImageFlash; - LLUIColor mHighlightColor; LLUIColor mFlashBgColor; LLUIColor mImageColor; @@ -355,10 +360,10 @@ private: F32 mHoverGlowStrength; F32 mCurGlowStrength; - bool mNeedsHighlight; bool mCommitOnReturn; bool mFadeWhenDisabled; bool mForcePressedState; + bool mDisplayPressedState; LLFrameTimer mFlashingTimer; diff --git a/indra/llui/llfloater.cpp b/indra/llui/llfloater.cpp index bc494e97f5..c28bcc2ec9 100644 --- a/indra/llui/llfloater.cpp +++ b/indra/llui/llfloater.cpp @@ -1029,7 +1029,7 @@ void LLFloater::setMinimized(BOOL minimize) if (minimize == mMinimized) return; - if(mMinimizeSignal) + if (mMinimizeSignal) { (*mMinimizeSignal)(this, LLSD(minimize)); } @@ -2857,7 +2857,7 @@ void LLFloater::initFromParams(const LLFloater::Params& p) // open callback if (p.open_callback.isProvided()) { - mOpenSignal.connect(initCommitCallback(p.open_callback)); + setOpenCallback(initCommitCallback(p.open_callback)); } // close callback if (p.close_callback.isProvided()) @@ -2872,6 +2872,11 @@ boost::signals2::connection LLFloater::setMinimizeCallback( const commit_signal_ return mMinimizeSignal->connect(cb); } +boost::signals2::connection LLFloater::setOpenCallback( const commit_signal_t::slot_type& cb ) +{ + return mOpenSignal.connect(cb); +} + boost::signals2::connection LLFloater::setCloseCallback( const commit_signal_t::slot_type& cb ) { return mCloseSignal.connect(cb); diff --git a/indra/llui/llfloater.h b/indra/llui/llfloater.h index fba59e82e1..5aff542049 100644 --- a/indra/llui/llfloater.h +++ b/indra/llui/llfloater.h @@ -144,6 +144,7 @@ public: bool buildFromFile(const std::string &filename, LLXMLNodePtr output_node = NULL); boost::signals2::connection setMinimizeCallback( const commit_signal_t::slot_type& cb ); + boost::signals2::connection setOpenCallback( const commit_signal_t::slot_type& cb ); boost::signals2::connection setCloseCallback( const commit_signal_t::slot_type& cb ); void initFromParams(const LLFloater::Params& p); diff --git a/indra/llui/llfloaterreg.cpp b/indra/llui/llfloaterreg.cpp index 27e96856b3..d0ae9413a3 100644 --- a/indra/llui/llfloaterreg.cpp +++ b/indra/llui/llfloaterreg.cpp @@ -478,6 +478,7 @@ void LLFloaterReg::toggleToolbarFloaterInstance(const LLSD& sdname) if (LLFloater::isMinimized(instance)) { instance->setMinimized(FALSE); + instance->setFocus(TRUE); } else if (!LLFloater::isShown(instance)) { @@ -494,6 +495,28 @@ void LLFloaterReg::toggleToolbarFloaterInstance(const LLSD& sdname) } //static +bool LLFloaterReg::floaterInstanceOpen(const LLSD& sdname) +{ + LLSD key; + std::string name = sdname.asString(); + parse_name_key(name, key); + + bool visible_or_minimized = instanceVisible(name, key); + + if (!visible_or_minimized) + { + LLFloater* instance = findInstance(name, key); + + if (instance != NULL) + { + visible_or_minimized = LLFloater::isMinimized(instance); + } + } + + return visible_or_minimized; +} + +//static bool LLFloaterReg::floaterInstanceVisible(const LLSD& sdname) { LLSD key; diff --git a/indra/llui/llfloaterreg.h b/indra/llui/llfloaterreg.h index 6239d98a7d..07ae45cc4c 100644 --- a/indra/llui/llfloaterreg.h +++ b/indra/llui/llfloaterreg.h @@ -128,6 +128,7 @@ public: static void hideFloaterInstance(const LLSD& sdname); static void toggleFloaterInstance(const LLSD& sdname); static void toggleToolbarFloaterInstance(const LLSD& sdname); + static bool floaterInstanceOpen(const LLSD& sdname); static bool floaterInstanceVisible(const LLSD& sdname); static bool floaterInstanceMinimized(const LLSD& sdname); diff --git a/indra/llui/lltoolbar.cpp b/indra/llui/lltoolbar.cpp index 9ffb859053..392e26f496 100644 --- a/indra/llui/lltoolbar.cpp +++ b/indra/llui/lltoolbar.cpp @@ -253,7 +253,7 @@ bool LLToolBar::removeCommand(const LLCommandId& commandId) mButtons.erase(it_button); mNeedsLayout = true; - + return true; } @@ -551,7 +551,33 @@ void LLToolBar::updateLayoutAsNeeded() void LLToolBar::draw() { - if (mButtons.empty()) return; + if (mButtons.empty()) + { + return; + } + + // Update enable/disable state and highlight state for editable toolbars + if (!mReadOnly) + { + for (toolbar_button_list::iterator btn_it = mButtons.begin(); btn_it != mButtons.end(); ++btn_it) + { + LLToolBarButton* btn = *btn_it; + LLCommand* command = LLCommandManager::instance().getCommand(btn->mId); + + if (command && btn->mIsEnabledSignal) + { + const bool button_command_enabled = (*btn->mIsEnabledSignal)(btn, command->isEnabledParameters()); + btn->setEnabled(button_command_enabled); + } + + if (command && btn->mIsRunningSignal) + { + const bool button_command_running = (*btn->mIsRunningSignal)(btn, command->isRunningParameters()); + btn->setFlashing(button_command_running); + } + } + } + updateLayoutAsNeeded(); // rect may have shifted during layout LLUI::popMatrix(); @@ -607,14 +633,47 @@ LLToolBarButton* LLToolBar::createButton(const LLCommandId& id) LLUICtrl::CommitCallbackParam cbParam; cbParam.function_name = commandp->executeFunctionName(); cbParam.parameter = commandp->executeParameters(); + button->setCommitCallback(cbParam); button->setStartDragCallback(mStartDragItemCallback); button->setHandleDragCallback(mHandleDragItemCallback); + + const std::string& isEnabledFunction = commandp->isEnabledFunctionName(); + if (isEnabledFunction.length() > 0) + { + LLUICtrl::EnableCallbackParam isEnabledParam; + isEnabledParam.function_name = isEnabledFunction; + isEnabledParam.parameter = commandp->isEnabledParameters(); + enable_signal_t::slot_type isEnabledCB = initEnableCallback(isEnabledParam); + + if (NULL == button->mIsEnabledSignal) + { + button->mIsEnabledSignal = new enable_signal_t(); + } + + button->mIsEnabledSignal->connect(isEnabledCB); + } + + const std::string& isRunningFunction = commandp->isRunningFunctionName(); + if (isRunningFunction.length() > 0) + { + LLUICtrl::EnableCallbackParam isRunningParam; + isRunningParam.function_name = isRunningFunction; + isRunningParam.parameter = commandp->isRunningParameters(); + enable_signal_t::slot_type isRunningCB = initEnableCallback(isRunningParam); + + if (NULL == button->mIsRunningSignal) + { + button->mIsRunningSignal = new enable_signal_t(); + } + + button->mIsRunningSignal->connect(isRunningCB); + } } button->setCommandId(id); - return button; + return button; } BOOL LLToolBar::handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, @@ -648,8 +707,20 @@ LLToolBarButton::LLToolBarButton(const Params& p) mMouseDownY(0), mWidthRange(p.button_width), mDesiredHeight(p.desired_height), - mId("") + mId(""), + mIsEnabledSignal(NULL), + mIsRunningSignal(NULL), + mIsStartingSignal(NULL) +{ + mButtonFlashRate = 0.0; + mButtonFlashCount = 0; +} + +LLToolBarButton::~LLToolBarButton() { + delete mIsEnabledSignal; + delete mIsRunningSignal; + delete mIsStartingSignal; } BOOL LLToolBarButton::handleMouseDown(S32 x, S32 y, MASK mask) @@ -684,3 +755,10 @@ BOOL LLToolBarButton::handleHover(S32 x, S32 y, MASK mask) return handled; } +void LLToolBarButton::onMouseEnter(S32 x, S32 y, MASK mask) +{ + LLUICtrl::onMouseEnter(x, y, mask); + + // Always highlight toolbar buttons, even if they are disabled + mNeedsHighlight = TRUE; +} diff --git a/indra/llui/lltoolbar.h b/indra/llui/lltoolbar.h index a35f6d9db1..ac99e23aae 100644 --- a/indra/llui/lltoolbar.h +++ b/indra/llui/lltoolbar.h @@ -58,6 +58,7 @@ public: }; LLToolBarButton(const Params& p); + ~LLToolBarButton(); BOOL handleMouseDown(S32 x, S32 y, MASK mask); BOOL handleHover(S32 x, S32 y, MASK mask); @@ -65,15 +66,22 @@ public: void setStartDragCallback(tool_startdrag_callback_t cb) { mStartDragItemCallback = cb; } void setHandleDragCallback(tool_handledrag_callback_t cb) { mHandleDragItemCallback = cb; } + + void onMouseEnter(S32 x, S32 y, MASK mask); + private: LLCommandId mId; S32 mMouseDownX; S32 mMouseDownY; LLUI::RangeS32 mWidthRange; S32 mDesiredHeight; - bool mIsDragged; + bool mIsDragged; tool_startdrag_callback_t mStartDragItemCallback; tool_handledrag_callback_t mHandleDragItemCallback; + + enable_signal_t* mIsEnabledSignal; + enable_signal_t* mIsRunningSignal; + enable_signal_t* mIsStartingSignal; }; @@ -151,11 +159,12 @@ public: void* cargo_data, EAcceptance* accept, std::string& tooltip_msg); - + bool addCommand(const LLCommandId& commandId, int rank = -1); bool removeCommand(const LLCommandId& commandId); bool hasCommand(const LLCommandId& commandId) const; bool enableCommand(const LLCommandId& commandId, bool enabled); + void setStartDragCallback(tool_startdrag_callback_t cb) { mStartDragItemCallback = cb; } void setHandleDragCallback(tool_handledrag_callback_t cb) { mHandleDragItemCallback = cb; } void setHandleDropCallback(tool_handledrop_callback_t cb) { mHandleDropCallback = cb; } @@ -171,7 +180,7 @@ protected: tool_startdrag_callback_t mStartDragItemCallback; tool_handledrag_callback_t mHandleDragItemCallback; tool_handledrop_callback_t mHandleDropCallback; - bool mDragAndDropTarget; + bool mDragAndDropTarget; public: // Methods used in loading and saving toolbar settings @@ -190,7 +199,8 @@ private: const bool mReadOnly; - std::list<LLToolBarButton*> mButtons; + typedef std::list<LLToolBarButton*> toolbar_button_list; + toolbar_button_list mButtons; command_id_list_t mButtonCommands; typedef std::map<LLCommandId, LLToolBarButton*> command_id_map; command_id_map mButtonMap; diff --git a/indra/llui/lltooltip.cpp b/indra/llui/lltooltip.cpp index bc6461a0c2..23cdd9ad9a 100644 --- a/indra/llui/lltooltip.cpp +++ b/indra/llui/lltooltip.cpp @@ -200,7 +200,7 @@ LLToolTip::LLToolTip(const LLToolTip::Params& p) icon_params.image_selected(imagep); icon_params.scale_image(true); - icon_params.flash_color(icon_params.highlight_color()); + icon_params.flash_color.control = "ButtonUnselectedFgColor"; mInfoButton = LLUICtrlFactory::create<LLButton>(icon_params); if (p.click_callback.isProvided()) { diff --git a/indra/llui/llui.cpp b/indra/llui/llui.cpp index 76a12e649b..9c0253f074 100644 --- a/indra/llui/llui.cpp +++ b/indra/llui/llui.cpp @@ -1637,6 +1637,7 @@ void LLUI::initClass(const settings_map_t& settings, // Used by menus along with Floater.Toggle to display visibility as a checkmark LLUICtrl::EnableCallbackRegistry::defaultRegistrar().add("Floater.Visible", boost::bind(&LLFloaterReg::floaterInstanceVisible, _2)); + LLUICtrl::EnableCallbackRegistry::defaultRegistrar().add("Floater.IsOpen", boost::bind(&LLFloaterReg::floaterInstanceOpen, _2)); // Parse the master list of commands LLCommandManager::load(); diff --git a/indra/newview/app_settings/commands.xml b/indra/newview/app_settings/commands.xml index 3a91ef490d..1fff95417b 100644 --- a/indra/newview/app_settings/commands.xml +++ b/indra/newview/app_settings/commands.xml @@ -7,6 +7,8 @@ tooltip_ref="Command_AboutLand_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="about_land" + is_running_function="Floater.IsOpen" + is_running_parameters="about_land" /> <command name="appearance" available_in_toybox="true" @@ -15,6 +17,8 @@ tooltip_ref="Command_Appearance_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="appearance" + is_running_function="Floater.IsOpen" + is_running_parameters="appearance" /> <command name="avatar" available_in_toybox="true" @@ -23,6 +27,8 @@ tooltip_ref="Command_Avatar_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="avatar_picker" + is_running_function="Floater.IsOpen" + is_running_parameters="avatar_picker" /> <command name="build" available_in_toybox="true" @@ -31,6 +37,8 @@ tooltip_ref="Command_Build_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="build" + is_running_function="Floater.IsOpen" + is_running_parameters="build" /> <command name="chat" available_in_toybox="true" @@ -39,6 +47,8 @@ tooltip_ref="Command_Chat_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="chat_bar" + is_running_function="Floater.IsOpen" + is_running_parameters="chat_bar" /> <command name="compass" available_in_toybox="false" @@ -47,6 +57,8 @@ tooltip_ref="Command_Compass_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="compass" + is_running_function="Floater.IsOpen" + is_running_parameters="compass" /> <command name="destinations" available_in_toybox="true" @@ -55,6 +67,8 @@ tooltip_ref="Command_Destinations_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="destinations" + is_running_function="Floater.IsOpen" + is_running_parameters="destinations" /> <command name="gestures" available_in_toybox="true" @@ -63,6 +77,8 @@ tooltip_ref="Command_Gestures_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="gestures" + is_running_function="Floater.IsOpen" + is_running_parameters="gestures" /> <command name="howto" available_in_toybox="true" @@ -71,6 +87,8 @@ tooltip_ref="Command_HowTo_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="help_browser" + is_running_function="Floater.IsOpen" + is_running_parameters="help_browser" /> <command name="inventory" available_in_toybox="true" @@ -79,6 +97,8 @@ tooltip_ref="Command_Inventory_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="inventory" + is_running_function="Floater.IsOpen" + is_running_parameters="inventory" /> <command name="map" available_in_toybox="true" @@ -87,6 +107,8 @@ tooltip_ref="Command_Map_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="world_map" + is_running_function="Floater.IsOpen" + is_running_parameters="world_map" /> <command name="marketplace" available_in_toybox="true" @@ -95,6 +117,8 @@ tooltip_ref="Command_Marketplace_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="marketplace" + is_running_function="Floater.IsOpen" + is_running_parameters="marketplace" /> <command name="minimap" available_in_toybox="true" @@ -103,6 +127,8 @@ tooltip_ref="Command_MiniMap_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="mini_map" + is_running_function="Floater.IsOpen" + is_running_parameters="mini_map" /> <command name="move" available_in_toybox="true" @@ -111,6 +137,8 @@ tooltip_ref="Command_Move_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="moveview" + is_running_function="Floater.IsOpen" + is_running_parameters="moveview" /> <command name="people" available_in_toybox="true" @@ -119,6 +147,8 @@ tooltip_ref="Command_People_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="people" + is_running_function="Floater.IsOpen" + is_running_parameters="people" /> <command name="places" available_in_toybox="true" @@ -127,6 +157,8 @@ tooltip_ref="Command_Places_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="places" + is_running_function="Floater.IsOpen" + is_running_parameters="places" /> <command name="preferences" available_in_toybox="true" @@ -135,6 +167,8 @@ tooltip_ref="Command_Preferences_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="preferences" + is_running_function="Floater.IsOpen" + is_running_parameters="preferences" /> <command name="profile" available_in_toybox="true" @@ -143,6 +177,8 @@ tooltip_ref="Command_Profile_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="my_profile" + is_running_function="Floater.IsOpen" + is_running_parameters="my_profile" /> <command name="search" available_in_toybox="true" @@ -151,6 +187,8 @@ tooltip_ref="Command_Search_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="search" + is_running_function="Floater.IsOpen" + is_running_parameters="search" /> <command name="snapshot" available_in_toybox="true" @@ -159,6 +197,8 @@ tooltip_ref="Command_Snapshot_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="snapshot" + is_running_function="Floater.IsOpen" + is_running_parameters="snapshot" /> <command name="speak" available_in_toybox="true" @@ -167,6 +207,8 @@ tooltip_ref="Command_Speak_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="speak" + is_running_function="Floater.IsOpen" + is_running_parameters="speak" /> <command name="view" available_in_toybox="true" @@ -175,6 +217,8 @@ tooltip_ref="Command_View_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="camera" + is_running_function="Floater.IsOpen" + is_running_parameters="camera" /> <command name="voice" available_in_toybox="true" @@ -183,5 +227,7 @@ tooltip_ref="Command_Voice_Tooltip" execute_function="Floater.ToolbarToggle" execute_parameters="voice_controls" + is_running_function="Floater.IsOpen" + is_running_parameters="voice_controls" /> </commands> diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 7a641ea630..203bcab03a 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -1150,28 +1150,6 @@ <key>Value</key> <integer>0</integer> </map> - <key>ButtonFlashCount</key> - <map> - <key>Comment</key> - <string>Number of flashes after which flashing buttons stay lit up</string> - <key>Persist</key> - <integer>1</integer> - <key>Type</key> - <string>S32</string> - <key>Value</key> - <integer>8</integer> - </map> - <key>ButtonFlashRate</key> - <map> - <key>Comment</key> - <string>Frequency at which buttons flash (hz)</string> - <key>Persist</key> - <integer>1</integer> - <key>Type</key> - <string>F32</string> - <key>Value</key> - <real>1.25</real> - </map> <key>ButtonHPad</key> <map> <key>Comment</key> diff --git a/indra/newview/skins/default/xui/en/floater_test_button.xml b/indra/newview/skins/default/xui/en/floater_test_button.xml index bf0a774e76..9bc05107a2 100644 --- a/indra/newview/skins/default/xui/en/floater_test_button.xml +++ b/indra/newview/skins/default/xui/en/floater_test_button.xml @@ -78,7 +78,6 @@ <button bottom_delta="30" height="23" - highlight_color="EmphasisColor" label="Highlight" layout="topleft" name="highlight_color_button" /> diff --git a/indra/newview/skins/default/xui/en/floater_toybox.xml b/indra/newview/skins/default/xui/en/floater_toybox.xml index 972ae1487a..5c6fa5bc86 100644 --- a/indra/newview/skins/default/xui/en/floater_toybox.xml +++ b/indra/newview/skins/default/xui/en/floater_toybox.xml @@ -61,6 +61,19 @@ side="top" top="85"> <button_panel background_visible="false" /> + <button_icon_and_text image_unselected="PushButton_Off" + image_selected="PushButton_Off" + image_disabled_selected="PushButton_Disabled" + image_disabled="PushButton_Disabled" + label_color="ButtonLabelColor" + label_color_selected="ButtonLabelColor" + label_color_disabled="ButtonLabelDisabledColor" + label_color_disabled_selected="ButtonLabelDisabledColor" + image_color="ButtonImageColor" + image_color_disabled="ButtonImageColor" + flash_color="ButtonUnselectedFgColor" + hover_glow_amount="0.15" + display_pressed_state="false" /> </toolbar> <panel bevel_style="none" diff --git a/indra/newview/skins/default/xui/en/widgets/button.xml b/indra/newview/skins/default/xui/en/widgets/button.xml index 61d36468d7..e2baba92a3 100644 --- a/indra/newview/skins/default/xui/en/widgets/button.xml +++ b/indra/newview/skins/default/xui/en/widgets/button.xml @@ -15,7 +15,6 @@ label_color_selected="ButtonLabelSelectedColor" label_color_disabled="ButtonLabelDisabledColor" label_color_disabled_selected="ButtonLabelSelectedDisabledColor" - highlight_color="ButtonUnselectedFgColor" image_color="ButtonImageColor" image_color_disabled="ButtonImageColor" flash_color="ButtonFlashBgColor" @@ -27,5 +26,9 @@ scale_image="true" handle_right_mouse="true" use_draw_context_alpha="true" - held_down_delay.seconds="0.5"> + held_down_delay.seconds="0.5" + button_flash_count="8" + button_flash_rate="1.25" + display_pressed_state="true" + > </button> diff --git a/indra/newview/skins/default/xui/en/widgets/toolbar.xml b/indra/newview/skins/default/xui/en/widgets/toolbar.xml index 0c7e7cff56..1585166114 100644 --- a/indra/newview/skins/default/xui/en/widgets/toolbar.xml +++ b/indra/newview/skins/default/xui/en/widgets/toolbar.xml @@ -21,7 +21,8 @@ chrome="true" image_overlay_alignment="left" use_ellipses="true" - auto_resize="true"/> + auto_resize="true" + flash_color="EmphasisColor"/> <button_icon pad_left="10" pad_right="10" desired_height="35" @@ -31,5 +32,6 @@ label="" chrome="true" use_ellipses="true" - auto_resize="true"/> + auto_resize="true" + flash_color="EmphasisColor"/> </toolbar> |