Zi Ree's Debug Setting Floater awesomeness (Search!!)

Made to work with Singularity, and also be a bit better..
Alphabetizes includes.
Switches settings combobox to a scrolllist, and Boolean combobox to a radiogroup.
Makes floater resizable, aligns a lot of the UI, and prepares it all for proper resize behavior.
Adds Copy button for copying the name of the debug setting.
Yay, verbosity! Also adds FloaterDebugSettingsRect to keep track of the floater's size.

Also somehow the getInstance line snuck out of last commit... tossed it in here.
This commit is contained in:
Lirusaito
2013-01-05 01:43:17 -05:00
parent 9498375e75
commit a992333744
4 changed files with 236 additions and 118 deletions

View File

@@ -36,6 +36,9 @@
#include "llcontrol.h"
#include "llfloater.h"
class LLScrollListCtrl;
class LLTextEditor;
class LLFloaterSettingsDebug
: public LLFloater
, public LLSingleton<LLFloaterSettingsDebug>
@@ -47,15 +50,33 @@ public:
virtual BOOL postBuild();
virtual void draw();
void updateControl(LLControlVariable* control);
void updateControl();
void onSettingSelect(LLUICtrl* ctrl);
// updates control filter to display in the controls list on keystroke
static void onUpdateFilter(const std::string& searchTerm, void*);
void updateFilter(std::string searchTerm);
void onSettingSelect();
void onCommitSettings();
void onClickDefault();
void onCopyToClipboard();
private:
// returns a pointer to the currently selected control variable, or NULL
LLControlVariable* getControlVariable();
protected:
class LLTextEditor* mComment;
typedef std::map<std::string,LLControlVariable*> settings_map_t;
settings_map_t mSettingsMap;
std::string mOldSearchTerm;
LLControlVariable* mCurrentControlVariable;
LLControlVariable* mOldControlVariable;
bool mOldVisibility;
LLScrollListCtrl* mSettingsScrollList;
LLTextEditor* mComment;
};
#endif //LLFLOATERDEBUGSETTINGS_H