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:
@@ -62,6 +62,10 @@ BOOL LLFloaterMediaFilter::postBuild()
|
|||||||
mBlacklist = getChild<LLScrollListCtrl>("blacklist");
|
mBlacklist = getChild<LLScrollListCtrl>("blacklist");
|
||||||
updateLists(LLMediaFilter::WHITELIST);
|
updateLists(LLMediaFilter::WHITELIST);
|
||||||
updateLists(LLMediaFilter::BLACKLIST);
|
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;
|
return TRUE;
|
||||||
}
|
}
|
||||||
@@ -80,6 +84,12 @@ void LLFloaterMediaFilter::updateLists(LLMediaFilter::EMediaList list_type)
|
|||||||
element["columns"][0]["value"] = (*itr);
|
element["columns"][0]["value"] = (*itr);
|
||||||
scroll->addElement(element);
|
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)
|
void on_add_to_list(bool white)
|
||||||
|
|||||||
@@ -44,6 +44,7 @@ public:
|
|||||||
private:
|
private:
|
||||||
~LLFloaterMediaFilter();
|
~LLFloaterMediaFilter();
|
||||||
void updateLists(LLMediaFilter::EMediaList list);
|
void updateLists(LLMediaFilter::EMediaList list);
|
||||||
|
void enableButton(LLView* btn, const LLScrollListCtrl* scroll);
|
||||||
void onRemoveFromList(bool white);
|
void onRemoveFromList(bool white);
|
||||||
|
|
||||||
LLScrollListCtrl* mWhitelist;
|
LLScrollListCtrl* mWhitelist;
|
||||||
|
|||||||
@@ -85,8 +85,8 @@
|
|||||||
mouse_opaque="false"
|
mouse_opaque="false"
|
||||||
name="add_whitelist">
|
name="add_whitelist">
|
||||||
<button.commit_callback
|
<button.commit_callback
|
||||||
function="MediaFilter.CommitAction"
|
function="MediaFilter.OnAdd"
|
||||||
parameter="AddToWhitelist"/>
|
parameter="1"/>
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
</layout_panel>
|
</layout_panel>
|
||||||
@@ -112,8 +112,8 @@
|
|||||||
mouse_opaque="false"
|
mouse_opaque="false"
|
||||||
name="remove_whitelist">
|
name="remove_whitelist">
|
||||||
<button.commit_callback
|
<button.commit_callback
|
||||||
function="MediaFilter.CommitAction"
|
function="MediaFilter.OnRemove"
|
||||||
parameter="RemoveFromWhitelist"/>
|
parameter="1"/>
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
</layout_panel>
|
</layout_panel>
|
||||||
@@ -176,8 +176,7 @@
|
|||||||
mouse_opaque="false"
|
mouse_opaque="false"
|
||||||
name="add_blacklist">
|
name="add_blacklist">
|
||||||
<button.commit_callback
|
<button.commit_callback
|
||||||
function="MediaFilter.CommitAction"
|
function="MediaFilter.OnAdd"/>
|
||||||
parameter="AddToBlacklist"/>
|
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
</layout_panel>
|
</layout_panel>
|
||||||
@@ -203,8 +202,7 @@
|
|||||||
mouse_opaque="false"
|
mouse_opaque="false"
|
||||||
name="remove_blacklist">
|
name="remove_blacklist">
|
||||||
<button.commit_callback
|
<button.commit_callback
|
||||||
function="MediaFilter.CommitAction"
|
function="MediaFilter.OnRemove"/>
|
||||||
parameter="RemoveFromBlacklist"/>
|
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
</layout_panel>
|
</layout_panel>
|
||||||
|
|||||||
Reference in New Issue
Block a user