Skip to content
Snippets Groups Projects
Commit 34316644 authored by James Cook's avatar James Cook
Browse files

Moved internal LLSideTrayTab class to .cpp file, de-inline param block constructor, not reviewed

parent b8ce05ed
No related branches found
No related tags found
No related merge requests found
......@@ -111,6 +111,61 @@ bool LLSideTray::instanceCreated ()
return sInstance!=0;
}
//////////////////////////////////////////////////////////////////////////////
// LLSideTrayTab
// Represents a single tab in the side tray, only used by LLSideTray
//////////////////////////////////////////////////////////////////////////////
class LLSideTrayTab: public LLPanel
{
friend class LLUICtrlFactory;
friend class LLSideTray;
public:
struct Params
: public LLInitParam::Block<Params, LLPanel::Params>
{
// image name
Optional<std::string> image_path;
Optional<std::string> tab_title;
Optional<std::string> description;
Params()
: image_path("image"),
tab_title("tab_title","no title"),
description("description","no description")
{};
};
protected:
LLSideTrayTab(const Params& params);
public:
virtual ~LLSideTrayTab();
/*virtual*/ BOOL postBuild ();
/*virtual*/ bool addChild (LLView* view, S32 tab_group);
void arrange (S32 width, S32 height);
void reshape (S32 width, S32 height, BOOL called_from_parent = TRUE);
static LLSideTrayTab* createInstance ();
const std::string& getDescription () const { return mDescription;}
const std::string& getTabTitle() const { return mTabTitle;}
void draw();
void onOpen (const LLSD& key);
private:
std::string mTabTitle;
std::string mImagePath;
std::string mDescription;
LLView* mMainPanel;
};
LLSideTrayTab::LLSideTrayTab(const Params& params):mMainPanel(0)
{
mImagePath = params.image_path;
......@@ -221,6 +276,18 @@ LLSideTrayTab* LLSideTrayTab::createInstance ()
return tab;
}
//////////////////////////////////////////////////////////////////////////////
// LLSideTray
//////////////////////////////////////////////////////////////////////////////
LLSideTray::Params::Params()
: collapsed("collapsed",false),
tab_btn_image_normal("tab_btn_image","sidebar_tab_left.tga"),
tab_btn_image_selected("tab_btn_image_selected","button_enabled_selected_32x128.tga"),
default_button_width("tab_btn_width",32),
default_button_height("tab_btn_height",32),
default_button_margin("tab_btn_margin",0)
{}
//virtual
LLSideTray::LLSideTray(Params& params)
......
......@@ -36,59 +36,9 @@
#include "llpanel.h"
#include "string"
class LLSideTray;
class LLSideTrayTab;
class LLAccordionCtrl;
class LLSideTrayTab: public LLPanel
{
friend class LLUICtrlFactory;
friend class LLSideTray;
public:
struct Params
: public LLInitParam::Block<Params, LLPanel::Params>
{
// image name
Optional<std::string> image_path;
Optional<std::string> tab_title;
Optional<std::string> description;
Params()
: image_path("image"),
tab_title("tab_title","no title"),
description("description","no description")
{};
};
protected:
LLSideTrayTab(const Params& params);
public:
virtual ~LLSideTrayTab();
/*virtual*/ BOOL postBuild ();
/*virtual*/ bool addChild (LLView* view, S32 tab_group);
void arrange (S32 width, S32 height);
void reshape (S32 width, S32 height, BOOL called_from_parent = TRUE);
static LLSideTrayTab* createInstance ();
const std::string& getDescription () const { return mDescription;}
const std::string& getTabTitle() const { return mTabTitle;}
void draw();
void onOpen (const LLSD& key);
private:
std::string mTabTitle;
std::string mImagePath;
std::string mDescription;
LLView* mMainPanel;
};
// added inheritance from LLDestroyClass<LLSideTray> to enable Side Tray perform necessary actions
// while disconnecting viewer in LLAppViewer::disconnectViewer().
// LLDestroyClassList::instance().fireCallbacks() calls destroyClass method. See EXT-245.
......@@ -112,14 +62,7 @@ class LLSideTray : public LLPanel, private LLDestroyClass<LLSideTray>
Optional<S32> default_button_height;
Optional<S32> default_button_margin;
Params()
: collapsed("collapsed",false),
tab_btn_image_normal("tab_btn_image","sidebar_tab_left.tga"),
tab_btn_image_selected("tab_btn_image_selected","button_enabled_selected_32x128.tga"),
default_button_width("tab_btn_width",32),
default_button_height("tab_btn_height",32),
default_button_margin("tab_btn_margin",0)
{};
Params();
};
static LLSideTray* getInstance ();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment