EXP-1207 : LLToolbarView skeleton, nothing operational yet...
parent
3df9545017
commit
7bc6e626f4
|
|
@ -100,6 +100,7 @@ set(llui_SOURCE_FILES
|
|||
lltransutil.cpp
|
||||
lltoggleablemenu.cpp
|
||||
lltoolbar.cpp
|
||||
lltoolbarview.cpp
|
||||
lltooltip.cpp
|
||||
llui.cpp
|
||||
lluicolortable.cpp
|
||||
|
|
@ -202,6 +203,7 @@ set(llui_HEADER_FILES
|
|||
lltimectrl.h
|
||||
lltoggleablemenu.h
|
||||
lltoolbar.h
|
||||
lltoolbarview.h
|
||||
lltooltip.h
|
||||
lltransutil.h
|
||||
lluicolortable.h
|
||||
|
|
|
|||
|
|
@ -0,0 +1,74 @@
|
|||
/**
|
||||
* @file lltoolbarview.cpp
|
||||
* @author Merov Linden
|
||||
* @brief User customizable toolbar class
|
||||
*
|
||||
* $LicenseInfo:firstyear=2011&license=viewerlgpl$
|
||||
* Second Life Viewer Source Code
|
||||
* Copyright (C) 2011, 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 "linden_common.h"
|
||||
|
||||
#include "lltoolbarview.h"
|
||||
#include "llbutton.h"
|
||||
|
||||
LLToolBarView* gToolBarView = NULL;
|
||||
|
||||
static LLDefaultChildRegistry::Register<LLToolBarView> r("toolbar_view");
|
||||
|
||||
LLToolBarView::LLToolBarView(const Params& p)
|
||||
: LLUICtrl(p)
|
||||
{
|
||||
}
|
||||
|
||||
BOOL LLToolBarView::postBuild()
|
||||
{
|
||||
LLButton* btn = getChild<LLButton>("color_pipette");
|
||||
btn->setVisible(TRUE);
|
||||
LLRect ctrl_rect = getRect();
|
||||
LLRect btn_rect = btn->getRect();
|
||||
llinfos << "Merov debug : control rect = " << ctrl_rect.mLeft << ", " << ctrl_rect.mTop << ", " << ctrl_rect.mRight << ", " << ctrl_rect.mBottom << llendl;
|
||||
llinfos << "Merov debug : button rect = " << btn_rect.mLeft << ", " << btn_rect.mTop << ", " << btn_rect.mRight << ", " << btn_rect.mBottom << llendl;
|
||||
btn_rect.mLeft = 0;
|
||||
btn_rect.mTop = ctrl_rect.getHeight();
|
||||
btn_rect.mRight = 28;
|
||||
btn_rect.mBottom = btn_rect.mTop - 28;
|
||||
btn->setRect(btn_rect);
|
||||
btn_rect = btn->getRect();
|
||||
llinfos << "Merov debug : button rect = " << btn_rect.mLeft << ", " << btn_rect.mTop << ", " << btn_rect.mRight << ", " << btn_rect.mBottom << llendl;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void LLToolBarView::draw()
|
||||
{
|
||||
LLButton* btn = getChild<LLButton>("color_pipette");
|
||||
btn->setVisible(TRUE);
|
||||
static bool debug_print = true;
|
||||
if (debug_print)
|
||||
{
|
||||
LLRect ctrl_rect = getRect();
|
||||
LLRect btn_rect = btn->getRect();
|
||||
llinfos << "Merov debug : draw control rect = " << ctrl_rect.mLeft << ", " << ctrl_rect.mTop << ", " << ctrl_rect.mRight << ", " << ctrl_rect.mBottom << llendl;
|
||||
llinfos << "Merov debug : draw button rect = " << btn_rect.mLeft << ", " << btn_rect.mTop << ", " << btn_rect.mRight << ", " << btn_rect.mBottom << llendl;
|
||||
debug_print = false;
|
||||
}
|
||||
LLUICtrl::draw();
|
||||
}
|
||||
|
|
@ -0,0 +1,52 @@
|
|||
/**
|
||||
* @file lltoolbarview.h
|
||||
* @author Merov Linden
|
||||
* @brief User customizable toolbar class
|
||||
*
|
||||
* $LicenseInfo:firstyear=2011&license=viewerlgpl$
|
||||
* Second Life Viewer Source Code
|
||||
* Copyright (C) 2011, 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_LLTOOLBARVIEW_H
|
||||
#define LL_LLTOOLBARVIEW_H
|
||||
|
||||
#include "lluictrl.h"
|
||||
|
||||
// Parent of all LLToolBar
|
||||
|
||||
class LLToolBarView : public LLUICtrl
|
||||
{
|
||||
public:
|
||||
struct Params : public LLInitParam::Block<Params, LLUICtrl::Params> {};
|
||||
void draw();
|
||||
/*virtual*/ BOOL postBuild();
|
||||
|
||||
protected:
|
||||
friend class LLUICtrlFactory;
|
||||
LLToolBarView(const Params&);
|
||||
|
||||
private:
|
||||
LLHandle<LLView> mSnapView;
|
||||
};
|
||||
|
||||
extern LLToolBarView* gToolBarView;
|
||||
|
||||
#endif // LL_LLTOOLBARVIEW_H
|
||||
|
|
@ -2652,6 +2652,17 @@
|
|||
<key>Value</key>
|
||||
<integer>-1</integer>
|
||||
</map>
|
||||
<key>DebugToolbarFUI</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Turn on the FUI Toolbars</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<key>Value</key>
|
||||
<integer>1</integer>
|
||||
</map>
|
||||
<key>DebugViews</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
|
|
|
|||
|
|
@ -76,6 +76,7 @@
|
|||
#include "lltimer.h"
|
||||
#include "timing.h"
|
||||
#include "llviewermenu.h"
|
||||
#include "lltoolbarview.h"
|
||||
#include "lltooltip.h"
|
||||
#include "llmediaentry.h"
|
||||
#include "llurldispatcher.h"
|
||||
|
|
@ -1778,6 +1779,14 @@ void LLViewerWindow::initBase()
|
|||
mHintHolder = main_view->getChild<LLView>("hint_holder")->getHandle();
|
||||
mLoginPanelHolder = main_view->getChild<LLView>("login_panel_holder")->getHandle();
|
||||
|
||||
// Update the toolbar global holder
|
||||
// *TODO: Eventually, suppress the existence of this debug setting and turn toolbar FUI on permanently
|
||||
if (gSavedSettings.getBOOL("DebugToolbarFUI"))
|
||||
{
|
||||
gToolBarView = main_view->getChild<LLToolBarView>("Toolbar View");
|
||||
}
|
||||
|
||||
|
||||
// Constrain floaters to inside the menu and status bar regions.
|
||||
gFloaterView = main_view->getChild<LLFloaterView>("Floater View");
|
||||
gFloaterView->setFloaterSnapView(main_view->getChild<LLView>("floater_snap_region")->getHandle());
|
||||
|
|
@ -2000,6 +2009,7 @@ void LLViewerWindow::shutdownViews()
|
|||
gIMMgr = NULL;
|
||||
gToolTipView = NULL;
|
||||
|
||||
gToolBarView = NULL;
|
||||
gFloaterView = NULL;
|
||||
gMorphView = NULL;
|
||||
|
||||
|
|
|
|||
|
|
@ -162,6 +162,41 @@
|
|||
top="0"
|
||||
width="1024"/>
|
||||
</panel>
|
||||
|
||||
<panel follows="left|top"
|
||||
layout="topleft"
|
||||
height="500"
|
||||
left="0"
|
||||
mouse_opaque="false"
|
||||
name="toolbar_view_holder"
|
||||
tab_stop="false"
|
||||
top="0"
|
||||
visible="true"
|
||||
width="1024">
|
||||
<toolbar_view follows="left|top"
|
||||
layout="topleft"
|
||||
height="100"
|
||||
left="100"
|
||||
mouse_opaque="false"
|
||||
name="Toolbar View"
|
||||
tab_stop="false"
|
||||
top="100"
|
||||
visible="true"
|
||||
width="512">
|
||||
<button
|
||||
follows="left|top"
|
||||
height="28"
|
||||
image_selected="eye_button_active.tga"
|
||||
image_unselected="eye_button_inactive.tga"
|
||||
layout="topleft"
|
||||
top="0"
|
||||
left="0"
|
||||
name="color_pipette"
|
||||
width="28"
|
||||
visible="true" />
|
||||
</toolbar_view>
|
||||
</panel>
|
||||
|
||||
</layout_panel>
|
||||
</layout_stack>
|
||||
<panel mouse_opaque="false"
|
||||
|
|
|
|||
Loading…
Reference in New Issue