1
0
mirror of https://github.com/libretro/RetroArch synced 2025-02-24 18:39:59 +00:00

(UI/QT) Prevent unnecessary costly functions

This commit is contained in:
twinaphex 2019-04-15 05:13:40 +02:00
parent b38a4dcb08
commit 29ca98c10c
2 changed files with 80 additions and 104 deletions

@ -71,58 +71,44 @@ void FormLayout::addCheckBox(rarch_setting_t *setting)
addRow(new CheckBox(setting));
}
void FormLayout::addUIntRadioButtons(msg_hash_enums enum_idx)
void FormLayout::addUIntRadioButtons(rarch_setting_t *setting)
{
rarch_setting_t *setting = menu_setting_find_enum(enum_idx);
if (setting && setting->short_description)
addRow(new UIntRadioButtons(setting));
}
void FormLayout::addUIntComboBox(msg_hash_enums enum_idx)
void FormLayout::addUIntComboBox(rarch_setting_t *setting)
{
rarch_setting_t *setting = menu_setting_find_enum(enum_idx);
if (setting && setting->short_description)
addRow(formLabel(setting), new UIntComboBox(setting));
}
void FormLayout::addStringComboBox(msg_hash_enums enum_idx)
void FormLayout::addStringComboBox(rarch_setting_t *setting)
{
rarch_setting_t *setting = menu_setting_find_enum(enum_idx);
if (setting && setting->short_description)
addRow(formLabel(setting), new StringComboBox(setting));
}
void FormLayout::addStringLineEdit(msg_hash_enums enum_idx)
void FormLayout::addStringLineEdit(rarch_setting_t *setting)
{
rarch_setting_t *setting = menu_setting_find_enum(enum_idx);
if (setting && setting->short_description)
addRow(formLabel(setting), new StringLineEdit(setting));
}
void FormLayout::addPasswordLineEdit(msg_hash_enums enum_idx)
void FormLayout::addPasswordLineEdit(rarch_setting_t *setting)
{
rarch_setting_t *setting = menu_setting_find_enum(enum_idx);
if (setting && setting->short_description)
addRow(formLabel(setting), new PasswordLineEdit(setting));
}
void FormLayout::addUIntSpinBox(msg_hash_enums enum_idx)
void FormLayout::addUIntSpinBox(rarch_setting_t *setting)
{
rarch_setting_t *setting = menu_setting_find_enum(enum_idx);
if (setting && setting->short_description)
addRow(formLabel(setting), new UIntSpinBox(setting));
}
void FormLayout::addSizeSpinBox(msg_hash_enums enum_idx, unsigned scale)
void FormLayout::addSizeSpinBox(rarch_setting_t *setting, unsigned scale)
{
rarch_setting_t *setting = menu_setting_find_enum(enum_idx);
if (setting && setting->short_description)
addRow(formLabel(setting), new SizeSpinBox(setting, scale));
}
@ -133,34 +119,26 @@ void FormLayout::addFloatSpinBox(rarch_setting_t *setting)
addRow(formLabel(setting), new FloatSpinBox(setting));
}
void FormLayout::addDirectorySelector(msg_hash_enums enum_idx)
void FormLayout::addDirectorySelector(rarch_setting_t *setting)
{
rarch_setting_t *setting = menu_setting_find_enum(enum_idx);
if (setting && setting->short_description)
addRow(formLabel(setting), new DirectorySelector(setting));
}
void FormLayout::addFileSelector(msg_hash_enums enum_idx)
void FormLayout::addFileSelector(rarch_setting_t *setting)
{
rarch_setting_t *setting = menu_setting_find_enum(enum_idx);
if (setting && setting->short_description)
addRow(formLabel(setting), new FileSelector(setting));
}
void FormLayout::addFontSelector(msg_hash_enums enum_idx)
void FormLayout::addFontSelector(rarch_setting_t *setting)
{
rarch_setting_t *setting = menu_setting_find_enum(enum_idx);
if (setting && setting->short_description)
addRow(formLabel(setting), new FontSelector(setting));
}
void FormLayout::addFloatSliderAndSpinBox(msg_hash_enums enum_idx)
void FormLayout::addFloatSliderAndSpinBox(rarch_setting_t *setting)
{
rarch_setting_t *setting = menu_setting_find_enum(enum_idx);
if (setting && setting->short_description)
addRow(formLabel(setting), new FloatSliderAndSpinBox(setting));
}
@ -175,10 +153,8 @@ void FormLayout::addUIntColorButton(const QString &title, msg_hash_enums r, msg_
addRow(title, new UIntColorButton(red, green, blue));
}
bool FormLayout::addBindButton(msg_hash_enums enum_idx)
bool FormLayout::addBindButton(rarch_setting_t *setting)
{
rarch_setting_t *setting = menu_setting_find_enum(enum_idx);
if (!setting || !setting->short_description)
return false;
@ -229,49 +205,49 @@ void SettingsGroup::addCheckBox(rarch_setting_t *setting)
m_layout->addCheckBox(setting);
}
void SettingsGroup::addDirectorySelector(msg_hash_enums enum_idx)
void SettingsGroup::addDirectorySelector(rarch_setting_t *setting)
{
m_layout->addDirectorySelector(enum_idx);
m_layout->addDirectorySelector(setting);
}
void SettingsGroup::addFileSelector(msg_hash_enums enum_idx)
void SettingsGroup::addFileSelector(rarch_setting_t *setting)
{
m_layout->addFileSelector(enum_idx);
m_layout->addFileSelector(setting);
}
void SettingsGroup::addFontSelector(msg_hash_enums enum_idx)
void SettingsGroup::addFontSelector(rarch_setting_t *setting)
{
m_layout->addFontSelector(enum_idx);
m_layout->addFontSelector(setting);
}
void SettingsGroup::addStringLineEdit(msg_hash_enums enum_idx)
void SettingsGroup::addStringLineEdit(rarch_setting_t *setting)
{
m_layout->addStringLineEdit(enum_idx);
m_layout->addStringLineEdit(setting);
}
void SettingsGroup::addPasswordLineEdit(msg_hash_enums enum_idx)
void SettingsGroup::addPasswordLineEdit(rarch_setting_t *setting)
{
m_layout->addPasswordLineEdit(enum_idx);
m_layout->addPasswordLineEdit(setting);
}
void SettingsGroup::addStringComboBox(msg_hash_enums enum_idx)
void SettingsGroup::addStringComboBox(rarch_setting_t *setting)
{
m_layout->addStringComboBox(enum_idx);
m_layout->addStringComboBox(setting);
}
void SettingsGroup::addUIntComboBox(msg_hash_enums enum_idx)
void SettingsGroup::addUIntComboBox(rarch_setting_t *setting)
{
m_layout->addUIntComboBox(enum_idx);
m_layout->addUIntComboBox(setting);
}
void SettingsGroup::addUIntRadioButtons(msg_hash_enums enum_idx)
void SettingsGroup::addUIntRadioButtons(rarch_setting_t *setting)
{
m_layout->addUIntRadioButtons(enum_idx);
m_layout->addUIntRadioButtons(setting);
}
void SettingsGroup::addUIntSpinBox(msg_hash_enums enum_idx)
void SettingsGroup::addUIntSpinBox(rarch_setting_t *setting)
{
m_layout->addUIntSpinBox(enum_idx);
m_layout->addUIntSpinBox(setting);
}
void SettingsGroup::addFloatSpinBox(rarch_setting_t *setting)
@ -279,9 +255,9 @@ void SettingsGroup::addFloatSpinBox(rarch_setting_t *setting)
m_layout->addFloatSpinBox(setting);
}
void SettingsGroup::addFloatSliderAndSpinBox(msg_hash_enums enum_idx)
void SettingsGroup::addFloatSliderAndSpinBox(rarch_setting_t *setting)
{
m_layout->addFloatSliderAndSpinBox(enum_idx);
m_layout->addFloatSliderAndSpinBox(setting);
}
void SettingsGroup::addUIntColorButton(const QString &title, msg_hash_enums r, msg_hash_enums g, msg_hash_enums b)
@ -289,9 +265,9 @@ void SettingsGroup::addUIntColorButton(const QString &title, msg_hash_enums r, m
m_layout->addUIntColorButton(title, r, g, b);
}
void SettingsGroup::addBindButton(msg_hash_enums enum_idx)
void SettingsGroup::addBindButton(rarch_setting_t *setting)
{
m_layout->addBindButton(enum_idx);
m_layout->addBindButton(setting);
}
CheckBox::CheckBox(rarch_setting_t *setting, QWidget *parent) :

@ -34,21 +34,21 @@ class FormLayout : public QFormLayout
{
public:
FormLayout(QWidget *parent = 0);
void addSizeSpinBox(msg_hash_enums enum_idx, unsigned scale = 1024 * 1024);
void addSizeSpinBox(rarch_setting_t *setting, unsigned scale = 1024 * 1024);
void addUIntColorButton(const QString &title, msg_hash_enums r, msg_hash_enums g, msg_hash_enums b);
void addUIntSpinBox(msg_hash_enums enum_idx);
void addUIntSpinBox(rarch_setting_t *setting);
void addFloatSpinBox(rarch_setting_t *setting);
void addDirectorySelector(msg_hash_enums enum_idx);
void addFileSelector(msg_hash_enums enum_idx);
void addFontSelector(msg_hash_enums enum_idx);
void addCheckBox(rarch_setting_t *setting);
void addUIntComboBox(msg_hash_enums enum_idx);
void addUIntRadioButtons(msg_hash_enums enum_idx);
void addStringComboBox(msg_hash_enums enum_idx);
void addStringLineEdit(msg_hash_enums enum_idx);
void addPasswordLineEdit(msg_hash_enums enum_idx);
void addFloatSliderAndSpinBox(msg_hash_enums enum_idx);
bool addBindButton(msg_hash_enums enum_idx);
void addUIntComboBox(rarch_setting_t *setting);
bool addBindButton(rarch_setting_t *setting);
void addFileSelector(rarch_setting_t *setting);
void addDirectorySelector(rarch_setting_t *setting);
void addFloatSliderAndSpinBox(rarch_setting_t *setting);
void addFontSelector(rarch_setting_t *setting);
void addUIntRadioButtons(rarch_setting_t *setting);
void addStringComboBox(rarch_setting_t *setting);
void addStringLineEdit(rarch_setting_t *setting);
void addPasswordLineEdit(rarch_setting_t *setting);
bool add(msg_hash_enums enum_idx)
{
@ -69,13 +69,13 @@ public:
/* TODO/FIXME */
break;
case ST_UI_TYPE_UINT_SPINBOX:
this->addUIntSpinBox(enum_idx);
this->addUIntSpinBox(setting);
break;
case ST_UI_TYPE_UINT_COMBOBOX:
this->addUIntComboBox(enum_idx);
this->addUIntComboBox(setting);
break;
case ST_UI_TYPE_UINT_RADIO_BUTTONS:
this->addUIntRadioButtons(enum_idx);
this->addUIntRadioButtons(setting);
break;
case ST_UI_TYPE_FLOAT_COLOR_BUTTON:
/* TODO/FIXME */
@ -84,30 +84,30 @@ public:
this->addFloatSpinBox(setting);
break;
case ST_UI_TYPE_FLOAT_SLIDER_AND_SPINBOX:
this->addFloatSliderAndSpinBox(enum_idx);
this->addFloatSliderAndSpinBox(setting);
break;
case ST_UI_TYPE_SIZE_SPINBOX:
this->addSizeSpinBox(enum_idx);
this->addSizeSpinBox(setting);
break;
case ST_UI_TYPE_BIND_BUTTON:
return this->addBindButton(enum_idx);
return this->addBindButton(setting);
case ST_UI_TYPE_DIRECTORY_SELECTOR:
this->addDirectorySelector(enum_idx);
this->addDirectorySelector(setting);
break;
case ST_UI_TYPE_FILE_SELECTOR:
this->addFileSelector(enum_idx);
this->addFileSelector(setting);
break;
case ST_UI_TYPE_FONT_SELECTOR:
this->addFontSelector(enum_idx);
this->addFontSelector(setting);
break;
case ST_UI_TYPE_STRING_COMBOBOX:
this->addStringComboBox(enum_idx);
this->addStringComboBox(setting);
break;
case ST_UI_TYPE_STRING_LINE_EDIT:
this->addStringLineEdit(enum_idx);
this->addStringLineEdit(setting);
break;
case ST_UI_TYPE_PASSWORD_LINE_EDIT:
this->addPasswordLineEdit(enum_idx);
this->addPasswordLineEdit(setting);
break;
case ST_UI_TYPE_NONE:
default:
@ -130,7 +130,6 @@ public:
void addRow(QLayout *layout);
void addRow(QString label, QLayout *layout);
void addUIntColorButton(const QString &title, msg_hash_enums r, msg_hash_enums g, msg_hash_enums b);
void addBindButton(msg_hash_enums enum_idx);
bool add(msg_hash_enums enum_idx)
{
@ -151,13 +150,13 @@ public:
/* TODO/FIXME */
break;
case ST_UI_TYPE_UINT_SPINBOX:
this->addUIntSpinBox(enum_idx);
this->addUIntSpinBox(setting);
break;
case ST_UI_TYPE_UINT_COMBOBOX:
this->addUIntComboBox(enum_idx);
this->addUIntComboBox(setting);
break;
case ST_UI_TYPE_UINT_RADIO_BUTTONS:
this->addUIntRadioButtons(enum_idx);
this->addUIntRadioButtons(setting);
break;
case ST_UI_TYPE_FLOAT_COLOR_BUTTON:
/* TODO/FIXME */
@ -166,7 +165,7 @@ public:
this->addFloatSpinBox(setting);
break;
case ST_UI_TYPE_FLOAT_SLIDER_AND_SPINBOX:
this->addFloatSliderAndSpinBox(enum_idx);
this->addFloatSliderAndSpinBox(setting);
break;
case ST_UI_TYPE_SIZE_SPINBOX:
/* TODO/FIXME */
@ -174,25 +173,25 @@ public:
case ST_UI_TYPE_BIND_BUTTON:
/* TODO/FIXME - Why is the returntype void here and bool
* for Layout? */
this->addBindButton(enum_idx);
this->addBindButton(setting);
break;
case ST_UI_TYPE_DIRECTORY_SELECTOR:
this->addDirectorySelector(enum_idx);
this->addDirectorySelector(setting);
break;
case ST_UI_TYPE_FILE_SELECTOR:
this->addFileSelector(enum_idx);
this->addFileSelector(setting);
break;
case ST_UI_TYPE_FONT_SELECTOR:
this->addFontSelector(enum_idx);
this->addFontSelector(setting);
break;
case ST_UI_TYPE_STRING_COMBOBOX:
this->addStringComboBox(enum_idx);
this->addStringComboBox(setting);
break;
case ST_UI_TYPE_STRING_LINE_EDIT:
this->addStringLineEdit(enum_idx);
this->addStringLineEdit(setting);
break;
case ST_UI_TYPE_PASSWORD_LINE_EDIT:
this->addPasswordLineEdit(enum_idx);
this->addPasswordLineEdit(setting);
break;
case ST_UI_TYPE_NONE:
default:
@ -202,18 +201,19 @@ public:
return true;
}
private:
void addBindButton(rarch_setting_t *setting);
void addCheckBox(rarch_setting_t *setting);
void addFileSelector(msg_hash_enums enum_idx);
void addDirectorySelector(msg_hash_enums enum_idx);
void addFontSelector(msg_hash_enums enum_idx);
void addStringLineEdit(msg_hash_enums enum_idx);
void addPasswordLineEdit(msg_hash_enums enum_idx);
void addStringComboBox(msg_hash_enums enum_idx);
void addUIntSpinBox(msg_hash_enums enum_idx);
void addUIntComboBox(msg_hash_enums enum_idx);
void addUIntRadioButtons(msg_hash_enums enum_idx);
void addUIntSpinBox(rarch_setting_t *setting);
void addUIntComboBox(rarch_setting_t *setting);
void addFloatSpinBox(rarch_setting_t *setting);
void addFloatSliderAndSpinBox(msg_hash_enums enum_idx);
void addFileSelector(rarch_setting_t *setting);
void addDirectorySelector(rarch_setting_t *setting);
void addFloatSliderAndSpinBox(rarch_setting_t *setting);
void addFontSelector(rarch_setting_t *setting);
void addUIntRadioButtons(rarch_setting_t *setting);
void addStringComboBox(rarch_setting_t *setting);
void addStringLineEdit(rarch_setting_t *setting);
void addPasswordLineEdit(rarch_setting_t *setting);
FormLayout *m_layout;
};