mirror of
https://github.com/TES3MP/openmw-tes3mp.git
synced 2025-03-03 19:19:40 +00:00
split off settings label from internal settings name
This commit is contained in:
parent
daf7cab416
commit
720ba2c0d8
6 changed files with 48 additions and 28 deletions
|
@ -2,8 +2,8 @@
|
||||||
#include "support.hpp"
|
#include "support.hpp"
|
||||||
|
|
||||||
CSMSettings::Setting::Setting(SettingType typ, const QString &settingName,
|
CSMSettings::Setting::Setting(SettingType typ, const QString &settingName,
|
||||||
const QString &pageName)
|
const QString &pageName, const QString& label)
|
||||||
: mIsEditorSetting (true)
|
: mIsEditorSetting (true)
|
||||||
{
|
{
|
||||||
buildDefaultSetting();
|
buildDefaultSetting();
|
||||||
|
|
||||||
|
@ -17,6 +17,7 @@ CSMSettings::Setting::Setting(SettingType typ, const QString &settingName,
|
||||||
setProperty (Property_SettingType, QVariant (settingType).toString());
|
setProperty (Property_SettingType, QVariant (settingType).toString());
|
||||||
setProperty (Property_Page, pageName);
|
setProperty (Property_Page, pageName);
|
||||||
setProperty (Property_Name, settingName);
|
setProperty (Property_Name, settingName);
|
||||||
|
setProperty (Property_Label, label.isEmpty() ? settingName : label);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CSMSettings::Setting::buildDefaultSetting()
|
void CSMSettings::Setting::buildDefaultSetting()
|
||||||
|
@ -364,6 +365,16 @@ bool CSMSettings::Setting::wrapping() const
|
||||||
return (property (Property_Wrapping).at(0) == "true");
|
return (property (Property_Wrapping).at(0) == "true");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CSMSettings::Setting::setLabel (const QString& label)
|
||||||
|
{
|
||||||
|
setProperty (Property_Label, label);
|
||||||
|
}
|
||||||
|
|
||||||
|
QString CSMSettings::Setting::getLabel() const
|
||||||
|
{
|
||||||
|
return property (Property_Label).at (0);
|
||||||
|
}
|
||||||
|
|
||||||
void CSMSettings::Setting::setProperty (SettingProperty prop, bool value)
|
void CSMSettings::Setting::setProperty (SettingProperty prop, bool value)
|
||||||
{
|
{
|
||||||
setProperty (prop, QStringList() << QVariant (value).toString());
|
setProperty (prop, QStringList() << QVariant (value).toString());
|
||||||
|
|
|
@ -29,8 +29,8 @@ namespace CSMSettings
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
explicit Setting(SettingType typ, const QString &settingName,
|
Setting(SettingType typ, const QString &settingName,
|
||||||
const QString &pageName);
|
const QString &pageName, const QString& label = "");
|
||||||
|
|
||||||
void addProxy (const Setting *setting, const QStringList &vals);
|
void addProxy (const Setting *setting, const QStringList &vals);
|
||||||
void addProxy (const Setting *setting, const QList <QStringList> &list);
|
void addProxy (const Setting *setting, const QList <QStringList> &list);
|
||||||
|
@ -131,6 +131,10 @@ namespace CSMSettings
|
||||||
void setWidgetWidth (int value);
|
void setWidgetWidth (int value);
|
||||||
int widgetWidth() const;
|
int widgetWidth() const;
|
||||||
|
|
||||||
|
/// This is the text the user gets to see.
|
||||||
|
void setLabel (const QString& label);
|
||||||
|
QString getLabel() const;
|
||||||
|
|
||||||
///returns the specified property value
|
///returns the specified property value
|
||||||
QStringList property (SettingProperty prop) const;
|
QStringList property (SettingProperty prop) const;
|
||||||
|
|
||||||
|
|
|
@ -36,12 +36,13 @@ namespace CSMSettings
|
||||||
Property_TicksAbove = 20,
|
Property_TicksAbove = 20,
|
||||||
Property_TicksBelow = 21,
|
Property_TicksBelow = 21,
|
||||||
Property_StyleSheet = 22,
|
Property_StyleSheet = 22,
|
||||||
|
Property_Label = 23,
|
||||||
|
|
||||||
//Stringlists should always be the last items
|
//Stringlists should always be the last items
|
||||||
Property_DefaultValues = 23,
|
Property_DefaultValues = 24,
|
||||||
Property_DeclaredValues = 24,
|
Property_DeclaredValues = 25,
|
||||||
Property_DefinedValues = 25,
|
Property_DefinedValues = 26,
|
||||||
Property_Proxies = 26
|
Property_Proxies = 27
|
||||||
};
|
};
|
||||||
|
|
||||||
///Basic setting widget types.
|
///Basic setting widget types.
|
||||||
|
|
|
@ -52,49 +52,49 @@ void CSMSettings::UserSettings::buildSettingModelDefaults()
|
||||||
|
|
||||||
declareSection ("Objects");
|
declareSection ("Objects");
|
||||||
{
|
{
|
||||||
Setting *numLights = createSetting (Type_SpinBox, "num_lights");
|
Setting *numLights = createSetting (Type_SpinBox, "num_lights", "num_lights");
|
||||||
numLights->setDefaultValue(8);
|
numLights->setDefaultValue(8);
|
||||||
numLights->setRange (0, 100);
|
numLights->setRange (0, 100);
|
||||||
|
|
||||||
Setting *shaders = createSetting (Type_CheckBox, "shaders");
|
Setting *shaders = createSetting (Type_CheckBox, "shaders", "Enable Shaders");
|
||||||
shaders->setDefaultValue("true");
|
shaders->setDefaultValue("true");
|
||||||
shaders->setSpecialValueText("Enable Shaders");
|
// shaders->setSpecialValueText("Enable Shaders");
|
||||||
}
|
}
|
||||||
|
|
||||||
declareSection ("Scene");
|
declareSection ("Scene");
|
||||||
{
|
{
|
||||||
Setting *fastFactor = createSetting (Type_SpinBox, "fast factor");
|
Setting *fastFactor = createSetting (Type_SpinBox, "fast factor", "fast factor");
|
||||||
fastFactor->setDefaultValue(4);
|
fastFactor->setDefaultValue(4);
|
||||||
fastFactor->setRange (1, 100);
|
fastFactor->setRange (1, 100);
|
||||||
|
|
||||||
Setting *farClipDist = createSetting (Type_DoubleSpinBox, "far clip distance");
|
Setting *farClipDist = createSetting (Type_DoubleSpinBox, "far clip distance", "far clip distance");
|
||||||
farClipDist->setDefaultValue(300000);
|
farClipDist->setDefaultValue(300000);
|
||||||
farClipDist->setRange (0, 1000000);
|
farClipDist->setRange (0, 1000000);
|
||||||
|
|
||||||
Setting *timerStart = createSetting (Type_SpinBox, "timer start");
|
Setting *timerStart = createSetting (Type_SpinBox, "timer start", "timer start");
|
||||||
timerStart->setDefaultValue(20);
|
timerStart->setDefaultValue(20);
|
||||||
timerStart->setRange (1, 100);
|
timerStart->setRange (1, 100);
|
||||||
}
|
}
|
||||||
|
|
||||||
declareSection ("SubView");
|
declareSection ("SubView");
|
||||||
{
|
{
|
||||||
Setting *maxSubView = createSetting (Type_SpinBox, "max subviews");
|
Setting *maxSubView = createSetting (Type_SpinBox, "max subviews", "max subviews");
|
||||||
maxSubView->setDefaultValue(256);
|
maxSubView->setDefaultValue(256);
|
||||||
maxSubView->setRange (1, 256);
|
maxSubView->setRange (1, 256);
|
||||||
|
|
||||||
Setting *minWidth = createSetting (Type_SpinBox, "minimum width");
|
Setting *minWidth = createSetting (Type_SpinBox, "minimum width", "minimum width");
|
||||||
minWidth->setDefaultValue(325);
|
minWidth->setDefaultValue(325);
|
||||||
minWidth->setRange (50, 10000);
|
minWidth->setRange (50, 10000);
|
||||||
|
|
||||||
Setting *reuse = createSetting (Type_CheckBox, "reuse");
|
Setting *reuse = createSetting (Type_CheckBox, "reuse", "Reuse SubView");
|
||||||
reuse->setDefaultValue("true");
|
reuse->setDefaultValue("true");
|
||||||
reuse->setSpecialValueText("Reuse SubView");
|
// reuse->setSpecialValueText("Reuse SubView");
|
||||||
}
|
}
|
||||||
|
|
||||||
declareSection ("Window Size");
|
declareSection ("Window Size");
|
||||||
{
|
{
|
||||||
Setting *width = createSetting (Type_LineEdit, "Width");
|
Setting *width = createSetting (Type_LineEdit, "Width", "Width");
|
||||||
Setting *height = createSetting (Type_LineEdit, "Height");
|
Setting *height = createSetting (Type_LineEdit, "Height", "Height");
|
||||||
|
|
||||||
width->setDefaultValues (QStringList() << "1024");
|
width->setDefaultValues (QStringList() << "1024");
|
||||||
height->setDefaultValues (QStringList() << "768");
|
height->setDefaultValues (QStringList() << "768");
|
||||||
|
@ -105,7 +105,7 @@ void CSMSettings::UserSettings::buildSettingModelDefaults()
|
||||||
/*
|
/*
|
||||||
*Create the proxy setting for predefined values
|
*Create the proxy setting for predefined values
|
||||||
*/
|
*/
|
||||||
Setting *preDefined = createSetting (Type_ComboBox, "Pre-Defined");
|
Setting *preDefined = createSetting (Type_ComboBox, "Pre-Defined", "Pre-Defined");
|
||||||
|
|
||||||
preDefined->setEditorSetting (false);
|
preDefined->setEditorSetting (false);
|
||||||
|
|
||||||
|
@ -131,9 +131,9 @@ void CSMSettings::UserSettings::buildSettingModelDefaults()
|
||||||
QStringList values = QStringList()
|
QStringList values = QStringList()
|
||||||
<< defaultValue << "Icon Only" << "Text Only";
|
<< defaultValue << "Icon Only" << "Text Only";
|
||||||
|
|
||||||
Setting *rsd = createSetting (Type_RadioButton, "Record Status Display");
|
Setting *rsd = createSetting (Type_RadioButton, "Record Status Display", "Record Status Display");
|
||||||
|
|
||||||
Setting *ritd = createSetting (Type_RadioButton, "Referenceable ID Type Display");
|
Setting *ritd = createSetting (Type_RadioButton, "Referenceable ID Type Display", "Referenceable ID Type Display");
|
||||||
|
|
||||||
rsd->setDeclaredValues (values);
|
rsd->setDeclaredValues (values);
|
||||||
ritd->setDeclaredValues (values);
|
ritd->setDeclaredValues (values);
|
||||||
|
@ -144,7 +144,7 @@ void CSMSettings::UserSettings::buildSettingModelDefaults()
|
||||||
QString defaultValue = "None";
|
QString defaultValue = "None";
|
||||||
QStringList values = QStringList()
|
QStringList values = QStringList()
|
||||||
<< defaultValue << "MSAA 2" << "MSAA 4" << "MSAA 8" << "MSAA 16";
|
<< defaultValue << "MSAA 2" << "MSAA 4" << "MSAA 8" << "MSAA 16";
|
||||||
Setting *antialiasing = createSetting (Type_SpinBox, "antialiasing");
|
Setting *antialiasing = createSetting (Type_SpinBox, "antialiasing", "antialiasing");
|
||||||
antialiasing->setDeclaredValues (values);
|
antialiasing->setDeclaredValues (values);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -486,9 +486,9 @@ CSMSettings::SettingPageMap CSMSettings::UserSettings::settingPageMap() const
|
||||||
}
|
}
|
||||||
|
|
||||||
CSMSettings::Setting *CSMSettings::UserSettings::createSetting
|
CSMSettings::Setting *CSMSettings::UserSettings::createSetting
|
||||||
(CSMSettings::SettingType type, const QString &name)
|
(CSMSettings::SettingType type, const QString &name, const QString& label)
|
||||||
{
|
{
|
||||||
Setting *setting = new Setting (type, name, mSection);
|
Setting *setting = new Setting (type, name, mSection, label);
|
||||||
|
|
||||||
// set useful defaults
|
// set useful defaults
|
||||||
int row = 1;
|
int row = 1;
|
||||||
|
@ -523,6 +523,9 @@ CSMSettings::Setting *CSMSettings::UserSettings::createSetting
|
||||||
if (type==Type_CheckBox)
|
if (type==Type_CheckBox)
|
||||||
setting->setDeclaredValues(QStringList() << "true" << "false");
|
setting->setDeclaredValues(QStringList() << "true" << "false");
|
||||||
|
|
||||||
|
if (type==Type_CheckBox)
|
||||||
|
setting->setSpecialValueText (setting->getLabel());
|
||||||
|
|
||||||
//add declaration to the model
|
//add declaration to the model
|
||||||
mSettings.append (setting);
|
mSettings.append (setting);
|
||||||
|
|
||||||
|
|
|
@ -85,7 +85,8 @@ namespace CSMSettings {
|
||||||
void buildSettingModelDefaults();
|
void buildSettingModelDefaults();
|
||||||
|
|
||||||
///add a new setting to the model and return it
|
///add a new setting to the model and return it
|
||||||
Setting *createSetting (CSMSettings::SettingType type, const QString &name);
|
Setting *createSetting (CSMSettings::SettingType type, const QString &name,
|
||||||
|
const QString& label);
|
||||||
|
|
||||||
/// Set the section for createSetting calls.
|
/// Set the section for createSetting calls.
|
||||||
///
|
///
|
||||||
|
|
|
@ -17,7 +17,7 @@ CSVSettings::View::View(CSMSettings::Setting *setting,
|
||||||
mIsMultiValue (setting->isMultiValue()),
|
mIsMultiValue (setting->isMultiValue()),
|
||||||
mViewKey (setting->page() + '/' + setting->name()),
|
mViewKey (setting->page() + '/' + setting->name()),
|
||||||
mSerializable (setting->serializable()),
|
mSerializable (setting->serializable()),
|
||||||
Frame(true, setting->name(), parent)
|
Frame(true, setting->getLabel(), parent)
|
||||||
{
|
{
|
||||||
setObjectName (setting->name());
|
setObjectName (setting->name());
|
||||||
buildView();
|
buildView();
|
||||||
|
|
Loading…
Reference in a new issue