Add a new contact set from the Add to set floater

Cinders 2013-11-21 08:13:32 -07:00
parent 12b8969abc
commit e8f6c4dfc7
3 changed files with 19 additions and 3 deletions

View File

@ -53,6 +53,7 @@ BOOL FSFloaterAddToContactSet::postBuild()
childSetAction("add_btn", boost::bind(&FSFloaterAddToContactSet::onClickAdd, this));
childSetAction("cancel_btn", boost::bind(&FSFloaterAddToContactSet::onClickCancel, this));
childSetAction("add_set_btn", boost::bind(&FSFloaterAddToContactSet::onClickAddSet, this));
return TRUE;
}
@ -75,6 +76,11 @@ void FSFloaterAddToContactSet::onClickCancel()
closeFloater();
}
void FSFloaterAddToContactSet::onClickAddSet()
{
LLNotificationsUtil::add("AddNewContactSet", LLSD(), LLSD(), &LGGContactSets::handleAddContactSetCallback);
}
void FSFloaterAddToContactSet::updateSets(LGGContactSets::EContactSetUpdate type)
{
if (type)
@ -85,12 +91,11 @@ void FSFloaterAddToContactSet::populateContactSets()
{
if (!mContactSetsCombo) return;
mContactSetsCombo->clear();
mContactSetsCombo->clearRows();
std::vector<std::string> contact_sets = LGGContactSets::getInstance()->getAllGroups();
if (contact_sets.empty())
{
mContactSetsCombo->add(getString("no_sets"), LLSD("No Set"));
getChild<LLButton>("add_btn")->setEnabled(FALSE);
}
else
{
@ -99,4 +104,5 @@ void FSFloaterAddToContactSet::populateContactSets()
mContactSetsCombo->add(set_name);
}
}
getChild<LLButton>("add_btn")->setEnabled(!contact_sets.empty());
}

View File

@ -46,6 +46,7 @@ private:
~FSFloaterAddToContactSet(){};
void onClickAdd();
void onClickCancel();
void onClickAddSet();
void populateContactSets();
void updateSets(LGGContactSets::EContactSetUpdate type);

View File

@ -32,7 +32,16 @@ No contact sets available.
top_pad="4"
left="8"
name="contact_sets"
width="265"/>
width="239"/>
<button
left_pad="2"
top_delta="0"
follows="top|right"
layout="topleft"
height="24"
image_overlay="AddItem_Off"
name="add_set_btn"
width="24" />
<button
left="8"
top_pad="3"