summaryrefslogtreecommitdiff
path: root/indra/newview
diff options
context:
space:
mode:
authorMerov Linden <merov@lindenlab.com>2011-09-23 15:20:25 -0700
committerMerov Linden <merov@lindenlab.com>2011-09-23 15:20:25 -0700
commite42a9ec70c0e5fc98282c98358039445d0d68b84 (patch)
tree555cc9b4023e5eef6e2e019eb392a1267b378de3 /indra/newview
parent1bcf6882c5faa94385f045e1c591da96408bb032 (diff)
parent53a8e1299305a4acad83f52401679c86485fcf51 (diff)
EXP-1207 : pull from viewer-experience-fui
Diffstat (limited to 'indra/newview')
-rw-r--r--indra/newview/app_settings/commands.xml126
-rw-r--r--indra/newview/lldndbutton.cpp9
-rw-r--r--indra/newview/lldndbutton.h5
-rw-r--r--indra/newview/llfloatertoybox.cpp18
-rw-r--r--indra/newview/llfloatertoybox.h5
-rw-r--r--indra/newview/lltoolbar.cpp365
-rw-r--r--indra/newview/lltoolbar.h82
-rw-r--r--indra/newview/skins/default/textures/textures.xml22
-rw-r--r--indra/newview/skins/default/xui/en/floater_test_toolbar.xml47
-rw-r--r--indra/newview/skins/default/xui/en/floater_toybox.xml5
-rw-r--r--indra/newview/skins/default/xui/en/strings.xml38
11 files changed, 241 insertions, 481 deletions
diff --git a/indra/newview/app_settings/commands.xml b/indra/newview/app_settings/commands.xml
index 8e45e866ca..5cb8ddffcd 100644
--- a/indra/newview/app_settings/commands.xml
+++ b/indra/newview/app_settings/commands.xml
@@ -7,6 +7,83 @@
function="Floater.ToolbarToggle"
param="avatar"
/>
+ <command name="build"
+ icon="Command_Build_Icon"
+ label_ref="Command_Build_Label"
+ tooltip_ref="Command_Build_Tooltip"
+ function="Floater.ToolbarToggle"
+ param="build"
+ />
+ <command name="chat"
+ icon="Command_Chat_Icon"
+ label_ref="Command_Chat_Label"
+ tooltip_ref="Command_Chat_Tooltip"
+ function="Floater.ToolbarToggle"
+ param="chat"
+ />
+ <command name="compass"
+ icon="Command_Compass_Icon"
+ label_ref="Command_Compass_Label"
+ tooltip_ref="Command_Compass_Tooltip"
+ function="Floater.ToolbarToggle"
+ param="compass"
+ />
+ <command name="gestures"
+ icon="Command_Gestures_Icon"
+ label_ref="Command_Gestures_Label"
+ tooltip_ref="Command_Gestures_Tooltip"
+ function="Floater.ToolbarToggle"
+ param="gestures"
+ />
+ <command name="howto"
+ icon="Command_HowTo_Icon"
+ label_ref="Command_HowTo_Label"
+ tooltip_ref="Command_HowTo_Tooltip"
+ function="Floater.ToolbarToggle"
+ param="howto"
+ />
+ <command name="landmarks"
+ icon="Command_Landmarks_Icon"
+ label_ref="Command_Landmarks_Label"
+ tooltip_ref="Command_Landmarks_Tooltip"
+ function="Floater.ToolbarToggle"
+ param="landmarks"
+ />
+ <command name="map"
+ icon="Command_Map_Icon"
+ label_ref="Command_Map_Label"
+ tooltip_ref="Command_Map_Tooltip"
+ function="Floater.ToolbarToggle"
+ param="map"
+ />
+ <command name="move"
+ icon="Command_Move_Icon"
+ label_ref="Command_Move_Label"
+ tooltip_ref="Command_Move_Tooltip"
+ function="Floater.ToolbarToggle"
+ param="move"
+ />
+ <command name="myland"
+ icon="Command_MyLand_Icon"
+ label_ref="Command_MyLand_Label"
+ tooltip_ref="Command_MyLand_Tooltip"
+ function="Floater.ToolbarToggle"
+ param="myland"
+ />
+ <command name="mystuff"
+ icon="Command_MyStuff_Icon"
+ label_ref="Command_MyStuff_Label"
+ tooltip_ref="Command_MyStuff_Tooltip"
+ function="Floater.ToolbarToggle"
+ param="mystuff"
+ />
+ <command name="people"
+ icon="Command_People_Icon"
+ label_ref="Command_People_Label"
+ tooltip_ref="Command_People_Tooltip"
+ function="Floater.ToolbarToggle"
+ param="people"
+ />
<command name="places"
icon="Command_Places_Icon"
label_ref="Command_Places_Label"
@@ -14,4 +91,53 @@
function="Floater.ToolbarToggle"
param="places"
/>
+ <command name="search"
+ icon="Command_Search_Icon"
+ label_ref="Command_Search_Label"
+ tooltip_ref="Command_Search_Tooltip"
+ function="Floater.ToolbarToggle"
+ param="search"
+ />
+ <command name="settings"
+ icon="Command_Settings_Icon"
+ label_ref="Command_Settings_Label"
+ tooltip_ref="Command_Settings_Tooltip"
+ function="Floater.ToolbarToggle"
+ param="settings"
+ />
+ <command name="shop"
+ icon="Command_Shop_Icon"
+ label_ref="Command_Shop_Label"
+ tooltip_ref="Command_Shop_Tooltip"
+ function="Floater.ToolbarToggle"
+ param="shop"
+ />
+ <command name="snapshot"
+ icon="Command_Snapshot_Icon"
+ label_ref="Command_Snapshot_Label"
+ tooltip_ref="Command_Snapshot_Tooltip"
+ function="Floater.ToolbarToggle"
+ param="snapshot"
+ />
+ <command name="speak"
+ icon="Command_Speak_Icon"
+ label_ref="Command_Speak_Label"
+ tooltip_ref="Command_Speak_Tooltip"
+ function="Floater.ToolbarToggle"
+ param="speak"
+ />
+ <command name="upload"
+ icon="Command_Upload_Icon"
+ label_ref="Command_Upload_Label"
+ tooltip_ref="Command_Upload_Tooltip"
+ function="Floater.ToolbarToggle"
+ param="upload"
+ />
+ <command name="view"
+ icon="Command_View_Icon"
+ label_ref="Command_View_Label"
+ tooltip_ref="Command_View_Tooltip"
+ function="Floater.ToolbarToggle"
+ param="view"
+ />
</commands>
diff --git a/indra/newview/lldndbutton.cpp b/indra/newview/lldndbutton.cpp
index 8a38c8a643..7c9dda6b1d 100644
--- a/indra/newview/lldndbutton.cpp
+++ b/indra/newview/lldndbutton.cpp
@@ -31,16 +31,9 @@
static LLDefaultChildRegistry::Register<LLDragAndDropButton> r("dnd_button");
-LLDragAndDropButton::Params::Params()
-{
-
-}
-
LLDragAndDropButton::LLDragAndDropButton(const Params& params)
: LLButton(params)
-{
-
-}
+{}
BOOL LLDragAndDropButton::handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, EDragAndDropType cargo_type, void* cargo_data, EAcceptance* accept, std::string& tooltip_msg)
{
diff --git a/indra/newview/lldndbutton.h b/indra/newview/lldndbutton.h
index 0642cbb7b9..53ea2f5ea7 100644
--- a/indra/newview/lldndbutton.h
+++ b/indra/newview/lldndbutton.h
@@ -43,10 +43,7 @@
class LLDragAndDropButton : public LLButton
{
public:
- struct Params : public LLInitParam::Block<Params, LLButton::Params>
- {
- Params();
- };
+ struct Params : public LLInitParam::Block<Params, LLButton::Params> {};
LLDragAndDropButton(const Params& params);
diff --git a/indra/newview/llfloatertoybox.cpp b/indra/newview/llfloatertoybox.cpp
index b4fb2e45ab..eaaaeb3357 100644
--- a/indra/newview/llfloatertoybox.cpp
+++ b/indra/newview/llfloatertoybox.cpp
@@ -29,12 +29,15 @@
#include "llfloatertoybox.h"
#include "llbutton.h"
+#include "llcommandmanager.h"
#include "llpanel.h"
+#include "lltoolbar.h"
LLFloaterToybox::LLFloaterToybox(const LLSD& key)
: LLFloater(key)
, mBtnRestoreDefaults(NULL)
+ , mToolBar(NULL)
{
mCommitCallbackRegistrar.add("Toybox.RestoreDefaults", boost::bind(&LLFloaterToybox::onBtnRestoreDefaults, this));
}
@@ -48,23 +51,20 @@ BOOL LLFloaterToybox::postBuild()
center();
mBtnRestoreDefaults = getChild<LLButton>("btn_restore_defaults");
+ mToolBar = getChild<LLToolBar>("toybox_toolbar");
//
// Create Buttons
//
-/*
- LLToyboxButtons::load();
- for (size_t i = 0; i < LLToyboxButtons::buttonCount(); i++)
- {
- LLToyboxButton * button = LLToyboxButtons::get(i);
+ LLCommandManager& cmdMgr = LLCommandManager::instance();
- // Panel opacity depends on whether or not button position is established
- LLPanel * buttonPanel = createPanelForButton(button);
+ for (U32 i = 0; i < cmdMgr.commandCount(); i++)
+ {
+ LLCommand * command = cmdMgr.getCommand(i);
- mToolBar->add(buttonPanel);
+ mToolBar->addCommand(command);
}
-*/
return TRUE;
}
diff --git a/indra/newview/llfloatertoybox.h b/indra/newview/llfloatertoybox.h
index bb9392a0e3..3574e060bf 100644
--- a/indra/newview/llfloatertoybox.h
+++ b/indra/newview/llfloatertoybox.h
@@ -31,10 +31,10 @@
class LLButton;
+class LLToolBar;
-class LLFloaterToybox
-: public LLFloater
+class LLFloaterToybox : public LLFloater
{
public:
LLFloaterToybox(const LLSD& key);
@@ -53,6 +53,7 @@ protected:
public:
LLButton * mBtnRestoreDefaults;
+ LLToolBar * mToolBar;
};
#endif // LL_LLFLOATERTOYBOX_H
diff --git a/indra/newview/lltoolbar.cpp b/indra/newview/lltoolbar.cpp
deleted file mode 100644
index c4f599561d..0000000000
--- a/indra/newview/lltoolbar.cpp
+++ /dev/null
@@ -1,365 +0,0 @@
-/**
- * @file lltoolbar.cpp
- * @author James Cook, Richard Nelson
- * @brief Large friendly buttons at bottom of screen.
- *
- * $LicenseInfo:firstyear=2002&license=viewerlgpl$
- * Second Life Viewer Source Code
- * Copyright (C) 2010, Linden Research, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation;
- * version 2.1 of the License only.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA
- * $/LicenseInfo$
- */
-
-#include "llviewerprecompiledheaders.h"
-
-#include "lltoolbar.h"
-
-#include "imageids.h"
-#include "llfloaterreg.h"
-#include "llfontgl.h"
-#include "llflyoutbutton.h"
-#include "llrect.h"
-#include "llparcel.h"
-
-#include "llagent.h"
-#include "llagentwearables.h"
-#include "llbutton.h"
-#include "llfocusmgr.h"
-#include "llviewercontrol.h"
-#include "llmenucommands.h"
-#include "llimview.h"
-#include "lluiconstants.h"
-#include "llvoavatarself.h"
-#include "lltooldraganddrop.h"
-#include "llfloaterinventory.h"
-#include "llfloaterchatterbox.h"
-#include "llfloatersnapshot.h"
-#include "llinventorypanel.h"
-#include "lltoolmgr.h"
-#include "llui.h"
-#include "llviewermenu.h"
-//#include "llfirstuse.h"
-#include "llpanelblockedlist.h"
-#include "llscrolllistctrl.h"
-#include "llscrolllistitem.h"
-#include "llscrolllistcell.h"
-#include "llviewerparcelmgr.h"
-#include "lluictrlfactory.h"
-#include "llviewerwindow.h"
-#include "lltoolgrab.h"
-#include "llcombobox.h"
-#include "lllayoutstack.h"
-
-#if LL_DARWIN
-
- #include "llresizehandle.h"
-
-#endif // LL_DARWIN
-
-//
-// Globals
-//
-
-LLToolBar *gToolBar = NULL;
-
-//
-// Statics
-//
-F32 LLToolBar::sInventoryAutoOpenTime = 1.f;
-
-//
-// Functions
-//
-
-LLToolBar::LLToolBar()
- : LLPanel(),
-
- mInventoryAutoOpen(FALSE),
- mNumUnreadIMs(0)
-#if LL_DARWIN
- , mResizeHandle(NULL)
-#endif // LL_DARWIN
-{
- setIsChrome(TRUE);
- setFocusRoot(TRUE);
-
- mCommitCallbackRegistrar.add("HandleCommunicate", &LLToolBar::onClickCommunicate);
-}
-
-
-BOOL LLToolBar::postBuild()
-{
- for (child_list_const_iter_t child_iter = getChildList()->begin();
- child_iter != getChildList()->end(); ++child_iter)
- {
- LLView *view = *child_iter;
- LLButton* buttonp = dynamic_cast<LLButton*>(view);
- if(buttonp)
- {
- buttonp->setSoundFlags(LLView::SILENT);
- }
- }
-
-#if LL_DARWIN
- if(mResizeHandle == NULL)
- {
- LLRect rect(0, 0, RESIZE_HANDLE_WIDTH, RESIZE_HANDLE_HEIGHT);
- LLResizeHandle::Params p;
- p.name("");
- p.rect(rect);
- p.min_width(RESIZE_HANDLE_WIDTH);
- p.min_height(RESIZE_HANDLE_HEIGHT);
- p.enabled(false);
- mResizeHandle = LLUICtrlFactory::create<LLResizeHandle>(p);
- addChildInBack(mResizeHandle);
- LLLayoutStack* toolbar_stack = getChild<LLLayoutStack>("toolbar_stack");
- toolbar_stack->reshape(toolbar_stack->getRect().getWidth() - RESIZE_HANDLE_WIDTH, toolbar_stack->getRect().getHeight());
- }
-#endif // LL_DARWIN
-
- layoutButtons();
-
- return TRUE;
-}
-
-LLToolBar::~LLToolBar()
-{
- // LLView destructor cleans up children
-}
-
-
-BOOL LLToolBar::handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop,
- EDragAndDropType cargo_type,
- void* cargo_data,
- EAcceptance* accept,
- std::string& tooltip_msg)
-{
- LLButton* inventory_btn = getChild<LLButton>("inventory_btn");
- if (!inventory_btn) return FALSE;
-
- LLRect button_screen_rect;
- inventory_btn->localRectToScreen(inventory_btn->getRect(),&button_screen_rect);
-
- const LLInventoryPanel *active_panel = LLInventoryPanel::getActiveInventoryPanel();
- if(active_panel)
- {
- mInventoryAutoOpen = FALSE;
- }
- else if (button_screen_rect.pointInRect(x, y))
- {
- if (mInventoryAutoOpen)
- {
- if (!active_panel &&
- mInventoryAutoOpenTimer.getElapsedTimeF32() > sInventoryAutoOpenTime)
- {
- LLFloaterInventory::showAgentInventory();
- }
- }
- else
- {
- mInventoryAutoOpen = TRUE;
- mInventoryAutoOpenTimer.reset();
- }
- }
-
- return LLPanel::handleDragAndDrop(x, y, mask, drop, cargo_type, cargo_data, accept, tooltip_msg);
-}
-
-// static
-void LLToolBar::toggle(void*)
-{
- BOOL show = gSavedSettings.getBOOL("ShowToolBar");
- gSavedSettings.setBOOL("ShowToolBar", !show);
- gToolBar->setVisible(!show);
-}
-
-
-// static
-BOOL LLToolBar::visible(void*)
-{
- return gToolBar->getVisible();
-}
-
-
-void LLToolBar::layoutButtons()
-{
-#if LL_DARWIN
- const S32 FUDGE_WIDTH_OF_SCREEN = 4;
- S32 width = gViewerWindow->getWindowWidthScaled() + FUDGE_WIDTH_OF_SCREEN;
- S32 pad = 2;
-
- // this function may be called before postBuild(), in which case mResizeHandle won't have been set up yet.
- if(mResizeHandle != NULL)
- {
- // Only when running in windowed mode on the Mac, leave room for a resize widget on the right edge of the bar.
- width -= RESIZE_HANDLE_WIDTH;
-
- LLRect r;
- r.mLeft = width - pad;
- r.mBottom = 0;
- r.mRight = r.mLeft + RESIZE_HANDLE_WIDTH;
- r.mTop = r.mBottom + RESIZE_HANDLE_HEIGHT;
- mResizeHandle->setRect(r);
- mResizeHandle->setVisible(TRUE);
- }
-#endif // LL_DARWIN
-}
-
-
-// virtual
-void LLToolBar::reshape(S32 width, S32 height, BOOL called_from_parent)
-{
- LLPanel::reshape(width, height, called_from_parent);
-
- layoutButtons();
-}
-
-
-// Per-frame updates of visibility
-void LLToolBar::refresh()
-{
- BOOL show = gSavedSettings.getBOOL("ShowToolBar");
- BOOL mouselook = gAgent.cameraMouselook();
- setVisible(show && !mouselook);
-
- if (isInVisibleChain())
- {
- updateCommunicateList();
- }
-}
-
-void LLToolBar::updateCommunicateList()
-{
- LLFlyoutButton* communicate_button = getChild<LLFlyoutButton>("communicate_btn");
- LLSD selected = communicate_button->getValue();
-
- communicate_button->removeall();
-
- //LLFloater* frontmost_floater = LLFloaterChatterBox::getInstance()->getActiveFloater();
- LLScrollListItem* itemp = NULL;
-
- LLSD contact_sd;
- contact_sd["value"] = "contacts";
- /*contact_sd["columns"][0]["value"] = LLFloaterMyFriends::getInstance()->getShortTitle();
- if (LLFloaterMyFriends::getInstance() == frontmost_floater)
- {
- contact_sd["columns"][0]["font"]["name"] = "SANSSERIF_SMALL";
- contact_sd["columns"][0]["font"]["style"] = "BOLD";
- // make sure current tab is selected in list
- if (selected.isUndefined())
- {
- selected = "contacts";
- }
- }*/
- itemp = communicate_button->addElement(contact_sd, ADD_TOP);
-
- communicate_button->addSeparator(ADD_TOP);
- communicate_button->add(getString("Redock Windows"), LLSD("redock"), ADD_TOP);
- communicate_button->addSeparator(ADD_TOP);
- communicate_button->add(getString("Blocked List"), LLSD("mute list"), ADD_TOP);
-
- std::set<LLHandle<LLFloater> >::const_iterator floater_handle_it;
-
- /*if (gIMMgr->getIMFloaterHandles().size() > 0)
- {
- communicate_button->addSeparator(ADD_TOP);
- }
-
- for(floater_handle_it = gIMMgr->getIMFloaterHandles().begin(); floater_handle_it != gIMMgr->getIMFloaterHandles().end(); ++floater_handle_it)
- {
- LLFloaterIMPanel* im_floaterp = (LLFloaterIMPanel*)floater_handle_it->get();
- if (im_floaterp)
- {
- std::string floater_title = im_floaterp->getNumUnreadMessages() > 0 ? "*" : "";
- floater_title.append(im_floaterp->getShortTitle());
- LLSD im_sd;
- im_sd["value"] = im_floaterp->getSessionID();
- im_sd["columns"][0]["value"] = floater_title;
- if (im_floaterp == frontmost_floater)
- {
- im_sd["columns"][0]["font"]["name"] = "SANSSERIF_SMALL";
- im_sd["columns"][0]["font"]["style"] = "BOLD";
- if (selected.isUndefined())
- {
- selected = im_floaterp->getSessionID();
- }
- }
- itemp = communicate_button->addElement(im_sd, ADD_TOP);
- }
- }*/
-
- communicate_button->setValue(selected);
-}
-
-
-// static
-void LLToolBar::onClickCommunicate(LLUICtrl* ctrl, const LLSD& user_data)
-{
- LLFlyoutButton* communicate_button = dynamic_cast<LLFlyoutButton*>(ctrl);
- llassert_always(communicate_button);
-
- LLSD selected_option = communicate_button->getValue();
-
- if (selected_option.asString() == "contacts")
- {
- LLFloaterReg::showInstance("contacts", "friends");
- }
- else if (selected_option.asString() == "local chat")
- {
- LLFloaterReg::showInstance("communicate", "local");
- }
- else if (selected_option.asString() == "redock")
- {
- /*LLFloaterChatterBox* chatterbox_instance = LLFloaterChatterBox::getInstance();
- if(chatterbox_instance)
- {
- chatterbox_instance->addFloater(LLFloaterMyFriends::getInstance(), FALSE);
-
- LLUUID session_to_show;
-
- std::set<LLHandle<LLFloater> >::const_iterator floater_handle_it;
- for(floater_handle_it = gIMMgr->getIMFloaterHandles().begin(); floater_handle_it != gIMMgr->getIMFloaterHandles().end(); ++floater_handle_it)
- {
- LLFloater* im_floaterp = floater_handle_it->get();
- if (im_floaterp)
- {
- if (im_floaterp->isFrontmost())
- {
- session_to_show = ((LLFloaterIMPanel*)im_floaterp)->getSessionID();
- }
- chatterbox_instance->addFloater(im_floaterp, FALSE);
- }
- }
- LLFloaterReg::showInstance("communicate", session_to_show);
- }*/
- }
- else if (selected_option.asString() == "mute list")
- {
- LLPanelBlockedList::showPanelAndSelect(LLUUID::null);
- }
- else if (selected_option.isUndefined()) // user just clicked the communicate button, treat as toggle
- {
- /*LLFloaterReg::toggleInstance("communicate");*/
- }
- else // otherwise selection_option is undifined or a specific IM session id
- {
- /*LLFloaterReg::showInstance("communicate", selected_option);*/
- }
-}
-
-
diff --git a/indra/newview/lltoolbar.h b/indra/newview/lltoolbar.h
deleted file mode 100644
index 217b3c0ac8..0000000000
--- a/indra/newview/lltoolbar.h
+++ /dev/null
@@ -1,82 +0,0 @@
-/**
- * @file lltoolbar.h
- * @brief Large friendly buttons at bottom of screen.
- *
- * $LicenseInfo:firstyear=2002&license=viewerlgpl$
- * Second Life Viewer Source Code
- * Copyright (C) 2010, Linden Research, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation;
- * version 2.1 of the License only.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA
- * $/LicenseInfo$
- */
-
-#ifndef LL_LLTOOLBAR_H
-#define LL_LLTOOLBAR_H
-
-#include "llpanel.h"
-
-#include "llframetimer.h"
-
-class LLResizeHandle;
-
-class LLToolBar
-: public LLPanel
-{
-public:
- LLToolBar();
- ~LLToolBar();
-
- /*virtual*/ BOOL postBuild();
-
- /*virtual*/ BOOL handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop,
- EDragAndDropType cargo_type,
- void* cargo_data,
- EAcceptance* accept,
- std::string& tooltip_msg);
-
- /*virtual*/ void reshape(S32 width, S32 height, BOOL called_from_parent = TRUE);
-
- static void toggle(void*);
- static BOOL visible(void*);
-
- // Move buttons to appropriate locations based on rect.
- void layoutButtons();
-
- // Per-frame refresh call
- void refresh();
-
- // callbacks
- static void onClickCommunicate(LLUICtrl*, const LLSD&);
-
- static F32 sInventoryAutoOpenTime;
-
-private:
- void updateCommunicateList();
-
-
-private:
- BOOL mInventoryAutoOpen;
- LLFrameTimer mInventoryAutoOpenTimer;
- S32 mNumUnreadIMs;
-#if LL_DARWIN
- LLResizeHandle *mResizeHandle;
-#endif // LL_DARWIN
-};
-
-extern LLToolBar *gToolBar;
-
-#endif
diff --git a/indra/newview/skins/default/textures/textures.xml b/indra/newview/skins/default/textures/textures.xml
index 598e39730c..d68594097c 100644
--- a/indra/newview/skins/default/textures/textures.xml
+++ b/indra/newview/skins/default/textures/textures.xml
@@ -125,8 +125,26 @@ with the same filename but different name
<texture name="Checkbox_Press" file_name="widgets/Checkbox_Press.png" preload="true" />
<texture name="Check_Mark" file_name="icons/check_mark" preload="true" />
- <texture name="Command_Avatar_Icon" file_name="icons/SL_Logo.png" preload="true" />
- <texture name="Command_Places_Icon" file_name="icons/SL_Logo.png" preload="true" />
+ <texture name="Command_Avatar_Icon" file_name="icons/SL_Logo.png" preload="true" />
+ <texture name="Command_Build_Icon" file_name="icons/SL_Logo.png" preload="true" />
+ <texture name="Command_Chat_Icon" file_name="icons/SL_Logo.png" preload="true" />
+ <texture name="Command_Compass_Icon" file_name="icons/SL_Logo.png" preload="true" />
+ <texture name="Command_Gestures_Icon" file_name="icons/SL_Logo.png" preload="true" />
+ <texture name="Command_HowTo_Icon" file_name="icons/SL_Logo.png" preload="true" />
+ <texture name="Command_Landmarks_Icon" file_name="icons/SL_Logo.png" preload="true" />
+ <texture name="Command_Map_Icon" file_name="icons/SL_Logo.png" preload="true" />
+ <texture name="Command_Move_Icon" file_name="icons/SL_Logo.png" preload="true" />
+ <texture name="Command_MyLand_Icon" file_name="icons/SL_Logo.png" preload="true" />
+ <texture name="Command_MyStuff_Icon" file_name="icons/SL_Logo.png" preload="true" />
+ <texture name="Command_People_Icon" file_name="icons/SL_Logo.png" preload="true" />
+ <texture name="Command_Places_Icon" file_name="icons/SL_Logo.png" preload="true" />
+ <texture name="Command_Search_Icon" file_name="icons/SL_Logo.png" preload="true" />
+ <texture name="Command_Settings_Icon" file_name="icons/SL_Logo.png" preload="true" />
+ <texture name="Command_Shop_Icon" file_name="icons/SL_Logo.png" preload="true" />
+ <texture name="Command_Snapshot_Icon" file_name="icons/SL_Logo.png" preload="true" />
+ <texture name="Command_Speak_Icon" file_name="icons/SL_Logo.png" preload="true" />
+ <texture name="Command_Upload_Icon" file_name="icons/SL_Logo.png" preload="true" />
+ <texture name="Command_View_Icon" file_name="icons/SL_Logo.png" preload="true" />
<texture name="ComboButton_Disabled" file_name="widgets/ComboButton_Disabled.png" preload="true" scale.left="2" scale.top="19" scale.right="18" scale.bottom="2" />
<texture name="ComboButton_Selected" file_name="widgets/ComboButton_Selected.png" preload="true" scale.left="2" scale.top="19" scale.right="18" scale.bottom="2" />
diff --git a/indra/newview/skins/default/xui/en/floater_test_toolbar.xml b/indra/newview/skins/default/xui/en/floater_test_toolbar.xml
index 138322eca7..85f0f104fc 100644
--- a/indra/newview/skins/default/xui/en/floater_test_toolbar.xml
+++ b/indra/newview/skins/default/xui/en/floater_test_toolbar.xml
@@ -7,33 +7,64 @@
name="floater_test_toolbar"
translate="false"
width="500">
- <toolbar name="test_toolbar_horizontal"
+ <toolbar name="test_toolbar_top"
follows="left|right|top"
height="50"
width="500"
left="0"
top="20"
+ min_width="100"
side="top">
<button auto_resize="true"
- label="Button 1"/>
+ label="Button"/>
<button auto_resize="true"
label="Button with long label"/>
<button auto_resize="true"
label="Button with longest label of all"/>
</toolbar>
- <toolbar name="test_toolbar_vertical"
+ <toolbar name="test_toolbar_left"
follows="left|bottom|top"
- height="430"
+ height="380"
width="100"
left="0"
top="70"
+ min_width="100"
side="left">
<button height="30"
- label="Button 1"/>
+ label="Button"/>
<button height="50"
- label="Button 2"/>
+ label="Button with long label"/>
<button height="60"
- label="Button 3"/>
+ label="Button with longest label of all"/>
+ </toolbar>
+ <toolbar name="test_toolbar_right"
+ follows="right|bottom|top"
+ height="380"
+ width="100"
+ right="500"
+ top="70"
+ min_width="100"
+ side="right">
+ <button auto_resize="true"
+ label="Button 1"/>
+ <button auto_resize="true"
+ label="Button with long label"/>
+ <button auto_resize="true"
+ label="Button with longest label of all"/>
+ </toolbar>
+ <toolbar name="test_toolbar_bottom"
+ follows="left|right|bottom"
+ height="50"
+ width="500"
+ left="0"
+ bottom="500"
+ min_width="100"
+ side="bottom">
+ <button auto_resize="true"
+ label="Button"/>
+ <button auto_resize="true"
+ label="Button with long label"/>
+ <button auto_resize="true"
+ label="Button with longest label of all"/>
</toolbar>
-
</floater>
diff --git a/indra/newview/skins/default/xui/en/floater_toybox.xml b/indra/newview/skins/default/xui/en/floater_toybox.xml
index 1951497309..5f3a59d964 100644
--- a/indra/newview/skins/default/xui/en/floater_toybox.xml
+++ b/indra/newview/skins/default/xui/en/floater_toybox.xml
@@ -11,6 +11,7 @@
legacy_header_height="18"
name="Toybox"
open_centered="true"
+ save_rect="true"
single_instance="true"
title="Customize toolbars"
width="658">
@@ -45,7 +46,11 @@
<toolbar
bottom="395"
left="40"
+ max_button_width="140"
+ min_button_width="140"
+ name="toybox_toolbar"
right="-40"
+ side="top"
top="85">
</toolbar>
<button
diff --git a/indra/newview/skins/default/xui/en/strings.xml b/indra/newview/skins/default/xui/en/strings.xml
index 3b986664db..d4c2bc50ca 100644
--- a/indra/newview/skins/default/xui/en/strings.xml
+++ b/indra/newview/skins/default/xui/en/strings.xml
@@ -3653,8 +3653,44 @@ Try enclosing path to the editor with double quotes.
<!-- commands -->
<string name="Command_Avatar_Label">Avatar</string>
- <string name="Command_Avatar_Tooltip">Customize your avatar</string>
+ <string name="Command_Avatar_Tooltip">Change the appearance of your avatar</string>
+ <string name="Command_Build_Label">Build</string>
+ <string name="Command_Build_Tooltip">Building, reshaping terrain</string>
+ <string name="Command_Chat_Label">Chat</string>
+ <string name="Command_Chat_Tooltip">Chat with people nearby</string>
+ <string name="Command_Compass_Label">Compass</string>
+ <string name="Command_Compass_Tooltip"></string>
+ <string name="Command_Gestures_Label">Gestures</string>
+ <string name="Command_Gestures_Tooltip"></string>
+ <string name="Command_HowTo_Label">How To</string>
+ <string name="Command_HowTo_Tooltip"></string>
+ <string name="Command_Landmarks_Label">Landmarks</string>
+ <string name="Command_Landmarks_Tooltip"></string>
+ <string name="Command_Map_Label">Map</string>
+ <string name="Command_Map_Tooltip"></string>
+ <string name="Command_Move_Label">Move</string>
+ <string name="Command_Move_Tooltip"></string>
+ <string name="Command_MyLand_Label">My Land</string>
+ <string name="Command_MyLand_Tooltip">Information about the land you're visiting</string>
+ <string name="Command_MyStuff_Label">My Stuff</string>
+ <string name="Command_MyStuff_Tooltip">View and use your belongings</string>
+ <string name="Command_People_Label">People</string>
+ <string name="Command_People_Tooltip"></string>
<string name="Command_Places_Label">Places</string>
<string name="Command_Places_Tooltip">Destination guide</string>
+ <string name="Command_Search_Label">Search</string>
+ <string name="Command_Search_Tooltip">Find...</string>
+ <string name="Command_Settings_Label">Settings</string>
+ <string name="Command_Settings_Tooltip">Preferences</string>
+ <string name="Command_Shop_Label">Shop</string>
+ <string name="Command_Shop_Tooltip"></string>
+ <string name="Command_Snapshot_Label">Snapshot</string>
+ <string name="Command_Snapshot_Tooltip">Take a picture</string>
+ <string name="Command_Speak_Label">Speak</string>
+ <string name="Command_Speak_Tooltip">Speak with people nearby using your microphone</string>
+ <string name="Command_Upload_Label">Upload</string>
+ <string name="Command_Upload_Tooltip"></string>
+ <string name="Command_View_Label">View</string>
+ <string name="Command_View_Tooltip">Changing your view of the world</string>
</strings>