When there is nothing selected in a media filter list, don't enable its remove button

Also missed xml parts from last commit.
This commit is contained in:
Inusaito Sayori
2014-07-21 18:51:20 -04:00
parent f2c7290ee8
commit 73b34b6d89
3 changed files with 17 additions and 8 deletions

View File

@@ -62,6 +62,10 @@ BOOL LLFloaterMediaFilter::postBuild()
mBlacklist = getChild<LLScrollListCtrl>("blacklist");
updateLists(LLMediaFilter::WHITELIST);
updateLists(LLMediaFilter::BLACKLIST);
mWhitelist->setCommitOnSelectionChange(true);
mBlacklist->setCommitOnSelectionChange(true);
mWhitelist->setCommitCallback(boost::bind(&LLFloaterMediaFilter::enableButton, this, getChildView("remove_whitelist"), mWhitelist));
mBlacklist->setCommitCallback(boost::bind(&LLFloaterMediaFilter::enableButton, this, getChildView("remove_blacklist"), mBlacklist));
return TRUE;
}
@@ -80,6 +84,12 @@ void LLFloaterMediaFilter::updateLists(LLMediaFilter::EMediaList list_type)
element["columns"][0]["value"] = (*itr);
scroll->addElement(element);
}
enableButton(getChildView(white ? "remove_whitelist" : "remove_blacklist"), scroll);
}
void LLFloaterMediaFilter::enableButton(LLView* btn, const LLScrollListCtrl* scroll)
{
btn->setEnabled(!scroll->isEmpty() && scroll->getFirstSelected());
}
void on_add_to_list(bool white)

View File

@@ -44,6 +44,7 @@ public:
private:
~LLFloaterMediaFilter();
void updateLists(LLMediaFilter::EMediaList list);
void enableButton(LLView* btn, const LLScrollListCtrl* scroll);
void onRemoveFromList(bool white);
LLScrollListCtrl* mWhitelist;

View File

@@ -85,8 +85,8 @@
mouse_opaque="false"
name="add_whitelist">
<button.commit_callback
function="MediaFilter.CommitAction"
parameter="AddToWhitelist"/>
function="MediaFilter.OnAdd"
parameter="1"/>
</button>
</layout_panel>
@@ -112,8 +112,8 @@
mouse_opaque="false"
name="remove_whitelist">
<button.commit_callback
function="MediaFilter.CommitAction"
parameter="RemoveFromWhitelist"/>
function="MediaFilter.OnRemove"
parameter="1"/>
</button>
</layout_panel>
@@ -176,8 +176,7 @@
mouse_opaque="false"
name="add_blacklist">
<button.commit_callback
function="MediaFilter.CommitAction"
parameter="AddToBlacklist"/>
function="MediaFilter.OnAdd"/>
</button>
</layout_panel>
@@ -203,8 +202,7 @@
mouse_opaque="false"
name="remove_blacklist">
<button.commit_callback
function="MediaFilter.CommitAction"
parameter="RemoveFromBlacklist"/>
function="MediaFilter.OnRemove"/>
</button>
</layout_panel>