Aditional changes for normal task EXT-3081 (Separate Message Well on Notifications Well and IM Well)
-- set different titles for IM & Notification Well windows -- set different anchors for IM & Notification Well windows --HG-- branch : product-enginemaster
parent
4880959567
commit
fdb25e5add
|
|
@ -47,6 +47,7 @@
|
|||
|
||||
|
||||
static std::string NOTIFICATION_WELL_ANCHOR_NAME = "notification_well_panel";
|
||||
static std::string IM_WELL_ANCHOR_NAME = "im_well_panel";
|
||||
|
||||
//---------------------------------------------------------------------------------
|
||||
LLSysWellWindow::LLSysWellWindow(const LLSD& key) : LLDockableFloater(NULL, key),
|
||||
|
|
@ -156,7 +157,7 @@ void LLSysWellWindow::setVisible(BOOL visible)
|
|||
if (NULL == getDockControl() && getDockTongue().notNull())
|
||||
{
|
||||
setDockControl(new LLDockControl(
|
||||
LLBottomTray::getInstance()->getChild<LLView>(NOTIFICATION_WELL_ANCHOR_NAME), this,
|
||||
LLBottomTray::getInstance()->getChild<LLView>(getAnchorViewName()), this,
|
||||
getDockTongue(), LLDockControl::TOP, boost::bind(&LLSysWellWindow::getAllowedRect, this, _1)));
|
||||
}
|
||||
}
|
||||
|
|
@ -373,6 +374,15 @@ LLNotificationWellWindow* LLNotificationWellWindow::getInstance(const LLSD& key
|
|||
return LLFloaterReg::getTypedInstance<LLNotificationWellWindow>("notification_well_window", key);
|
||||
}
|
||||
|
||||
// virtual
|
||||
BOOL LLNotificationWellWindow::postBuild()
|
||||
{
|
||||
BOOL rv = LLSysWellWindow::postBuild();
|
||||
setTitle(getString("title_notification_well_window"));
|
||||
return rv;
|
||||
}
|
||||
|
||||
// virtual
|
||||
void LLNotificationWellWindow::setVisible(BOOL visible)
|
||||
{
|
||||
if (visible)
|
||||
|
|
@ -501,6 +511,13 @@ LLIMWellWindow* LLIMWellWindow::getInstance(const LLSD& key /*= LLSD()*/)
|
|||
return LLFloaterReg::getTypedInstance<LLIMWellWindow>("im_well_window", key);
|
||||
}
|
||||
|
||||
BOOL LLIMWellWindow::postBuild()
|
||||
{
|
||||
BOOL rv = LLSysWellWindow::postBuild();
|
||||
setTitle(getString("title_im_well_window"));
|
||||
return rv;
|
||||
}
|
||||
|
||||
//virtual
|
||||
void LLIMWellWindow::sessionAdded(const LLUUID& session_id,
|
||||
const std::string& name, const LLUUID& other_participant_id)
|
||||
|
|
|
|||
|
|
@ -47,6 +47,10 @@ class LLFlatListView;
|
|||
class LLChiclet;
|
||||
class LLIMChiclet;
|
||||
|
||||
extern std::string NOTIFICATION_WELL_ANCHOR_NAME;
|
||||
extern std::string IM_WELL_ANCHOR_NAME;
|
||||
|
||||
|
||||
class LLSysWellWindow : public LLDockableFloater
|
||||
{
|
||||
public:
|
||||
|
|
@ -92,7 +96,7 @@ protected:
|
|||
void handleItemRemoved(EItemType removed_item_type);
|
||||
bool anotherTypeExists(EItemType item_type) ;
|
||||
|
||||
|
||||
virtual const std::string& getAnchorViewName() = 0;
|
||||
|
||||
void reshapeWindow();
|
||||
|
||||
|
|
@ -125,16 +129,21 @@ public:
|
|||
|
||||
static void initClass() { getInstance(); }
|
||||
|
||||
/*virtual*/ BOOL postBuild();
|
||||
/*virtual*/ void setVisible(BOOL visible);
|
||||
|
||||
// Operating with items
|
||||
void addItem(LLSysWellItem::Params p);
|
||||
|
||||
protected:
|
||||
/*virtual*/ const std::string& getAnchorViewName() { return NOTIFICATION_WELL_ANCHOR_NAME; }
|
||||
|
||||
private:
|
||||
// init Window's channel
|
||||
void initChannel();
|
||||
void clearScreenChannels();
|
||||
|
||||
|
||||
void onStoreToast(LLPanel* info_panel, LLUUID id);
|
||||
|
||||
// connect counter and list updaters to the corresponding signals
|
||||
|
|
@ -160,11 +169,16 @@ public:
|
|||
static LLIMWellWindow* getInstance(const LLSD& key = LLSD());
|
||||
static void initClass() { getInstance(); }
|
||||
|
||||
/*virtual*/ BOOL postBuild();
|
||||
|
||||
// LLIMSessionObserver observe triggers
|
||||
/*virtual*/ void sessionAdded(const LLUUID& session_id, const std::string& name, const LLUUID& other_participant_id);
|
||||
/*virtual*/ void sessionRemoved(const LLUUID& session_id);
|
||||
/*virtual*/ void sessionIDUpdated(const LLUUID& old_session_id, const LLUUID& new_session_id);
|
||||
|
||||
protected:
|
||||
/*virtual*/ const std::string& getAnchorViewName() { return IM_WELL_ANCHOR_NAME; }
|
||||
|
||||
private:
|
||||
LLChiclet * findIMChiclet(const LLUUID& sessionId);
|
||||
void addIMRow(const LLUUID& sessionId, S32 chicletCounter, const std::string& name, const LLUUID& otherParticipantId);
|
||||
|
|
|
|||
|
|
@ -21,6 +21,15 @@
|
|||
save_visibility="true"
|
||||
single_instance="true"
|
||||
>
|
||||
<string
|
||||
name="title_im_well_window">
|
||||
IM SESSIONS
|
||||
</string>
|
||||
<string
|
||||
name="title_notification_well_window">
|
||||
NOTIFICATIONS
|
||||
</string>
|
||||
|
||||
<flat_list_view
|
||||
color="FloaterDefaultBackgroundColor"
|
||||
follows="all"
|
||||
|
|
|
|||
Loading…
Reference in New Issue