Add integer-based theme scaling (#935)
Configurable over the options menu,
This commit is contained in:
parent
ff577255d3
commit
27726c9ce1
@ -66,6 +66,8 @@ public:
|
|||||||
Courtroom *w_courtroom;
|
Courtroom *w_courtroom;
|
||||||
AttorneyOnline::Discord *discord;
|
AttorneyOnline::Discord *discord;
|
||||||
|
|
||||||
|
QFont default_font;
|
||||||
|
|
||||||
bool lobby_constructed = false;
|
bool lobby_constructed = false;
|
||||||
bool courtroom_constructed = false;
|
bool courtroom_constructed = false;
|
||||||
|
|
||||||
|
@ -48,6 +48,9 @@ public:
|
|||||||
QString theme() const;
|
QString theme() const;
|
||||||
void setTheme(QString value);
|
void setTheme(QString value);
|
||||||
|
|
||||||
|
int themeScalingFactor() const;
|
||||||
|
void setThemeScalingFactor(int value);
|
||||||
|
|
||||||
// Returns the value of oocname in config.ini
|
// Returns the value of oocname in config.ini
|
||||||
QString oocName() const;
|
QString oocName() const;
|
||||||
void setOocName(QString value);
|
void setOocName(QString value);
|
||||||
|
@ -47,6 +47,7 @@ private:
|
|||||||
QWidget *ui_settings_widget;
|
QWidget *ui_settings_widget;
|
||||||
QComboBox *ui_theme_combobox;
|
QComboBox *ui_theme_combobox;
|
||||||
QComboBox *ui_subtheme_combobox;
|
QComboBox *ui_subtheme_combobox;
|
||||||
|
QSpinBox *ui_theme_scaling_factor_sb;
|
||||||
QPushButton *ui_theme_reload_button;
|
QPushButton *ui_theme_reload_button;
|
||||||
QPushButton *ui_theme_folder_button;
|
QPushButton *ui_theme_folder_button;
|
||||||
QCheckBox *ui_evidence_double_click_cb;
|
QCheckBox *ui_evidence_double_click_cb;
|
||||||
|
@ -41,18 +41,18 @@
|
|||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>394</width>
|
<width>394</width>
|
||||||
<height>826</height>
|
<height>828</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QFormLayout" name="formLayout">
|
<layout class="QFormLayout" name="formLayout">
|
||||||
<item row="23" column="1">
|
<item row="24" column="1">
|
||||||
<widget class="QCheckBox" name="stickysounds_cb">
|
<widget class="QCheckBox" name="stickysounds_cb">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="29" column="0">
|
<item row="30" column="0">
|
||||||
<widget class="QLabel" name="category_stop_lbl">
|
<widget class="QLabel" name="category_stop_lbl">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Stop music when double-clicking a category. If this is disabled, use the right-click context menu to stop music.</string>
|
<string>Stop music when double-clicking a category. If this is disabled, use the right-click context menu to stop music.</string>
|
||||||
@ -62,7 +62,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="30" column="1">
|
<item row="31" column="1">
|
||||||
<widget class="QCheckBox" name="sfx_on_idle_cb">
|
<widget class="QCheckBox" name="sfx_on_idle_cb">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string/>
|
<string/>
|
||||||
@ -72,7 +72,7 @@
|
|||||||
<item row="0" column="1">
|
<item row="0" column="1">
|
||||||
<widget class="QComboBox" name="theme_combobox"/>
|
<widget class="QComboBox" name="theme_combobox"/>
|
||||||
</item>
|
</item>
|
||||||
<item row="18" column="0">
|
<item row="19" column="0">
|
||||||
<widget class="QLabel" name="scaling_label">
|
<widget class="QLabel" name="scaling_label">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Sets the default scaling method, if there is not one already defined specifically for the character.</string>
|
<string>Sets the default scaling method, if there is not one already defined specifically for the character.</string>
|
||||||
@ -82,7 +82,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="26" column="0">
|
<item row="27" column="0">
|
||||||
<widget class="QLabel" name="customchat_lbl">
|
<widget class="QLabel" name="customchat_lbl">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Turn this on to allow characters to define their own custom chat box designs.</string>
|
<string>Turn this on to allow characters to define their own custom chat box designs.</string>
|
||||||
@ -92,7 +92,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="20" column="0">
|
<item row="21" column="0">
|
||||||
<widget class="QLabel" name="effects_lbl">
|
<widget class="QLabel" name="effects_lbl">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Allows screen effects. Disable this if you have concerns or issues with photosensitivity and/or seizures.</string>
|
<string>Allows screen effects. Disable this if you have concerns or issues with photosensitivity and/or seizures.</string>
|
||||||
@ -102,7 +102,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="16" column="1">
|
<item row="17" column="1">
|
||||||
<widget class="QCheckBox" name="discord_cb">
|
<widget class="QCheckBox" name="discord_cb">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string/>
|
<string/>
|
||||||
@ -119,7 +119,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="15" column="0">
|
<item row="16" column="0">
|
||||||
<widget class="QLabel" name="ms_lbl">
|
<widget class="QLabel" name="ms_lbl">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Overrides the base URL to retrieve server information from.</string>
|
<string>Overrides the base URL to retrieve server information from.</string>
|
||||||
@ -129,14 +129,14 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="7" column="0">
|
<item row="8" column="0">
|
||||||
<widget class="QLabel" name="instant_objection_lbl">
|
<widget class="QLabel" name="instant_objection_lbl">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Instant Objection:</string>
|
<string>Instant Objection:</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="8" column="1">
|
<item row="9" column="1">
|
||||||
<widget class="QSpinBox" name="text_crawl_spinbox">
|
<widget class="QSpinBox" name="text_crawl_spinbox">
|
||||||
<property name="suffix">
|
<property name="suffix">
|
||||||
<string> ms</string>
|
<string> ms</string>
|
||||||
@ -156,7 +156,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="17" column="1">
|
<item row="18" column="1">
|
||||||
<widget class="QComboBox" name="language_combobox">
|
<widget class="QComboBox" name="language_combobox">
|
||||||
<item>
|
<item>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
@ -195,10 +195,10 @@
|
|||||||
</item>
|
</item>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="15" column="1">
|
<item row="16" column="1">
|
||||||
<widget class="QLineEdit" name="ms_textbox"/>
|
<widget class="QLineEdit" name="ms_textbox"/>
|
||||||
</item>
|
</item>
|
||||||
<item row="21" column="0">
|
<item row="22" column="0">
|
||||||
<widget class="QLabel" name="framenetwork_lbl">
|
<widget class="QLabel" name="framenetwork_lbl">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Send screen-shaking, flashes and sounds as defined in the char.ini over the network. Only works for servers that support this functionality.</string>
|
<string>Send screen-shaking, flashes and sounds as defined in the char.ini over the network. Only works for servers that support this functionality.</string>
|
||||||
@ -208,7 +208,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="9" column="0">
|
<item row="10" column="0">
|
||||||
<widget class="QLabel" name="chat_ratelimit_lbl">
|
<widget class="QLabel" name="chat_ratelimit_lbl">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Chat Rate Limit:</string>
|
<string>Chat Rate Limit:</string>
|
||||||
@ -218,7 +218,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="9" column="1">
|
<item row="10" column="1">
|
||||||
<widget class="QSpinBox" name="chat_ratelimit_spinbox">
|
<widget class="QSpinBox" name="chat_ratelimit_spinbox">
|
||||||
<property name="suffix">
|
<property name="suffix">
|
||||||
<string> ms</string>
|
<string> ms</string>
|
||||||
@ -228,7 +228,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="4" column="0">
|
<item row="5" column="0">
|
||||||
<widget class="QLabel" name="animated_theme_lbl">
|
<widget class="QLabel" name="animated_theme_lbl">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>If ticked, themes will be allowed to have animated elements.</string>
|
<string>If ticked, themes will be allowed to have animated elements.</string>
|
||||||
@ -238,7 +238,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="8" column="0">
|
<item row="9" column="0">
|
||||||
<widget class="QLabel" name="text_crawl_lbl">
|
<widget class="QLabel" name="text_crawl_lbl">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Amount of time (in miliseconds) spent on each letter when the in-character text is being displayed.</string>
|
<string>Amount of time (in miliseconds) spent on each letter when the in-character text is being displayed.</string>
|
||||||
@ -258,17 +258,17 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="18" column="1">
|
<item row="19" column="1">
|
||||||
<widget class="QComboBox" name="scaling_combobox"/>
|
<widget class="QComboBox" name="scaling_combobox"/>
|
||||||
</item>
|
</item>
|
||||||
<item row="22" column="1">
|
<item row="23" column="1">
|
||||||
<widget class="QCheckBox" name="colorlog_cb">
|
<widget class="QCheckBox" name="colorlog_cb">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="13" column="0">
|
<item row="14" column="0">
|
||||||
<widget class="QLabel" name="default_showname_lbl">
|
<widget class="QLabel" name="default_showname_lbl">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Your showname will be automatically set to this value when you join a server.</string>
|
<string>Your showname will be automatically set to this value when you join a server.</string>
|
||||||
@ -278,7 +278,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="28" column="1">
|
<item row="29" column="1">
|
||||||
<widget class="QCheckBox" name="continuous_cb">
|
<widget class="QCheckBox" name="continuous_cb">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string/>
|
<string/>
|
||||||
@ -288,7 +288,7 @@
|
|||||||
<item row="1" column="1">
|
<item row="1" column="1">
|
||||||
<widget class="QComboBox" name="subtheme_combobox"/>
|
<widget class="QComboBox" name="subtheme_combobox"/>
|
||||||
</item>
|
</item>
|
||||||
<item row="27" column="0">
|
<item row="28" column="0">
|
||||||
<widget class="QLabel" name="sticker_lbl">
|
<widget class="QLabel" name="sticker_lbl">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Turn this on to allow characters to define their own stickers (unique images that show up over the chatbox - like avatars or shownames).</string>
|
<string>Turn this on to allow characters to define their own stickers (unique images that show up over the chatbox - like avatars or shownames).</string>
|
||||||
@ -298,7 +298,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="25" column="0">
|
<item row="26" column="0">
|
||||||
<widget class="QLabel" name="stickypres_lbl">
|
<widget class="QLabel" name="stickypres_lbl">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Turn this on to prevent preanimation checkbox from clearing after playing the emote.</string>
|
<string>Turn this on to prevent preanimation checkbox from clearing after playing the emote.</string>
|
||||||
@ -308,7 +308,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="6" column="1">
|
<item row="7" column="1">
|
||||||
<widget class="QSpinBox" name="stay_time_spinbox">
|
<widget class="QSpinBox" name="stay_time_spinbox">
|
||||||
<property name="suffix">
|
<property name="suffix">
|
||||||
<string> ms</string>
|
<string> ms</string>
|
||||||
@ -318,7 +318,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="12" column="0">
|
<item row="13" column="0">
|
||||||
<widget class="QLabel" name="showname_lbl">
|
<widget class="QLabel" name="showname_lbl">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Gives the default value for the in-game 'Custom shownames' tickbox, which in turn determines whether the client should display custom in-character names.</string>
|
<string>Gives the default value for the in-game 'Custom shownames' tickbox, which in turn determines whether the client should display custom in-character names.</string>
|
||||||
@ -328,7 +328,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="24" column="0">
|
<item row="25" column="0">
|
||||||
<widget class="QLabel" name="stickyeffects_lbl">
|
<widget class="QLabel" name="stickyeffects_lbl">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Turn this on to prevent the effects dropdown from clearing the effect after playing it.</string>
|
<string>Turn this on to prevent the effects dropdown from clearing the effect after playing it.</string>
|
||||||
@ -338,14 +338,14 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="27" column="1">
|
<item row="28" column="1">
|
||||||
<widget class="QCheckBox" name="sticker_cb">
|
<widget class="QCheckBox" name="sticker_cb">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="6" column="0">
|
<item row="7" column="0">
|
||||||
<widget class="QLabel" name="stay_time_lbl">
|
<widget class="QLabel" name="stay_time_lbl">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Minimum amount of time (in miliseconds) an IC message must stay on screen before the next IC message is shown, acting as a 'queue'. Set to 0 to disable this behavior.</string>
|
<string>Minimum amount of time (in miliseconds) an IC message must stay on screen before the next IC message is shown, acting as a 'queue'. Set to 0 to disable this behavior.</string>
|
||||||
@ -355,7 +355,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="17" column="0">
|
<item row="18" column="0">
|
||||||
<widget class="QLabel" name="language_label">
|
<widget class="QLabel" name="language_label">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Sets the language if you don't want to use your system language.</string>
|
<string>Sets the language if you don't want to use your system language.</string>
|
||||||
@ -365,35 +365,35 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="7" column="1">
|
<item row="8" column="1">
|
||||||
<widget class="QCheckBox" name="instant_objection_cb">
|
<widget class="QCheckBox" name="instant_objection_cb">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="25" column="1">
|
<item row="26" column="1">
|
||||||
<widget class="QCheckBox" name="stickypres_cb">
|
<widget class="QCheckBox" name="stickypres_cb">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="12" column="1">
|
<item row="13" column="1">
|
||||||
<widget class="QCheckBox" name="showname_cb">
|
<widget class="QCheckBox" name="showname_cb">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="21" column="1">
|
<item row="22" column="1">
|
||||||
<widget class="QCheckBox" name="framenetwork_cb">
|
<widget class="QCheckBox" name="framenetwork_cb">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="30" column="0">
|
<item row="31" column="0">
|
||||||
<widget class="QLabel" name="sfx_on_idle_lbl">
|
<widget class="QLabel" name="sfx_on_idle_lbl">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>If the SFX dropdown has an SFX selected, send the custom SFX alongside the message even if Preanim is OFF.</string>
|
<string>If the SFX dropdown has an SFX selected, send the custom SFX alongside the message even if Preanim is OFF.</string>
|
||||||
@ -403,7 +403,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="23" column="0">
|
<item row="24" column="0">
|
||||||
<widget class="QLabel" name="stickysounds_lbl">
|
<widget class="QLabel" name="stickysounds_lbl">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Turn this on to prevent the sound dropdown from clearing the sound after playing it.</string>
|
<string>Turn this on to prevent the sound dropdown from clearing the sound after playing it.</string>
|
||||||
@ -413,14 +413,14 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="19" column="1">
|
<item row="20" column="1">
|
||||||
<widget class="QCheckBox" name="shake_cb">
|
<widget class="QCheckBox" name="shake_cb">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="11" column="0">
|
<item row="12" column="0">
|
||||||
<widget class="QLabel" name="username_lbl">
|
<widget class="QLabel" name="username_lbl">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Your OOC name will be automatically set to this value when you join a server.</string>
|
<string>Your OOC name will be automatically set to this value when you join a server.</string>
|
||||||
@ -430,7 +430,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="19" column="0">
|
<item row="20" column="0">
|
||||||
<widget class="QLabel" name="shake_lbl">
|
<widget class="QLabel" name="shake_lbl">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Allows screenshaking. Disable this if you have concerns or issues with photosensitivity and/or seizures.</string>
|
<string>Allows screenshaking. Disable this if you have concerns or issues with photosensitivity and/or seizures.</string>
|
||||||
@ -440,14 +440,14 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="4" column="1">
|
<item row="5" column="1">
|
||||||
<widget class="QCheckBox" name="animated_theme_cb">
|
<widget class="QCheckBox" name="animated_theme_cb">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="16" column="0">
|
<item row="17" column="0">
|
||||||
<widget class="QLabel" name="discord_lbl">
|
<widget class="QLabel" name="discord_lbl">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Allows others on Discord to see what server you are in, what character are you playing, and how long you have been playing for.</string>
|
<string>Allows others on Discord to see what server you are in, what character are you playing, and how long you have been playing for.</string>
|
||||||
@ -457,7 +457,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="22" column="0">
|
<item row="23" column="0">
|
||||||
<widget class="QLabel" name="colorlog_lbl">
|
<widget class="QLabel" name="colorlog_lbl">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Use the markup colors in the server IC chatlog.</string>
|
<string>Use the markup colors in the server IC chatlog.</string>
|
||||||
@ -477,31 +477,31 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="20" column="1">
|
<item row="21" column="1">
|
||||||
<widget class="QCheckBox" name="effects_cb">
|
<widget class="QCheckBox" name="effects_cb">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="29" column="1">
|
<item row="30" column="1">
|
||||||
<widget class="QCheckBox" name="category_stop_cb">
|
<widget class="QCheckBox" name="category_stop_cb">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="26" column="1">
|
<item row="27" column="1">
|
||||||
<widget class="QCheckBox" name="customchat_cb">
|
<widget class="QCheckBox" name="customchat_cb">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="13" column="1">
|
<item row="14" column="1">
|
||||||
<widget class="QLineEdit" name="default_showname_textbox"/>
|
<widget class="QLineEdit" name="default_showname_textbox"/>
|
||||||
</item>
|
</item>
|
||||||
<item row="14" column="1">
|
<item row="15" column="1">
|
||||||
<widget class="QFrame" name="net_divider">
|
<widget class="QFrame" name="net_divider">
|
||||||
<property name="frameShape">
|
<property name="frameShape">
|
||||||
<enum>QFrame::HLine</enum>
|
<enum>QFrame::HLine</enum>
|
||||||
@ -511,7 +511,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="5" column="1">
|
<item row="6" column="1">
|
||||||
<widget class="QFrame" name="theme_log_divider">
|
<widget class="QFrame" name="theme_log_divider">
|
||||||
<property name="frameShape">
|
<property name="frameShape">
|
||||||
<enum>QFrame::HLine</enum>
|
<enum>QFrame::HLine</enum>
|
||||||
@ -521,14 +521,14 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="24" column="1">
|
<item row="25" column="1">
|
||||||
<widget class="QCheckBox" name="stickyeffects_cb">
|
<widget class="QCheckBox" name="stickyeffects_cb">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="31" column="0">
|
<item row="32" column="0">
|
||||||
<widget class="QLabel" name="evidence_double_click_lbl">
|
<widget class="QLabel" name="evidence_double_click_lbl">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>If ticked, Evidence needs a double-click to view rather than a single click.</string>
|
<string>If ticked, Evidence needs a double-click to view rather than a single click.</string>
|
||||||
@ -538,7 +538,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="10" column="1">
|
<item row="11" column="1">
|
||||||
<widget class="QFrame" name="log_names_divider">
|
<widget class="QFrame" name="log_names_divider">
|
||||||
<property name="frameShape">
|
<property name="frameShape">
|
||||||
<enum>QFrame::HLine</enum>
|
<enum>QFrame::HLine</enum>
|
||||||
@ -548,14 +548,14 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="31" column="1">
|
<item row="32" column="1">
|
||||||
<widget class="QCheckBox" name="evidence_double_click_cb">
|
<widget class="QCheckBox" name="evidence_double_click_cb">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="28" column="0">
|
<item row="29" column="0">
|
||||||
<widget class="QLabel" name="continuous_lbl">
|
<widget class="QLabel" name="continuous_lbl">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Whether or not to resume playing animations from where they left off. Turning off might reduce lag.</string>
|
<string>Whether or not to resume playing animations from where they left off. Turning off might reduce lag.</string>
|
||||||
@ -565,13 +565,33 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="11" column="1">
|
<item row="12" column="1">
|
||||||
<widget class="QLineEdit" name="username_textbox">
|
<widget class="QLineEdit" name="username_textbox">
|
||||||
<property name="maxLength">
|
<property name="maxLength">
|
||||||
<number>30</number>
|
<number>30</number>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="4" column="1">
|
||||||
|
<widget class="QSpinBox" name="theme_scaling_factor_sb">
|
||||||
|
<property name="minimum">
|
||||||
|
<number>1</number>
|
||||||
|
</property>
|
||||||
|
<property name="maximum">
|
||||||
|
<number>8</number>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="4" column="0">
|
||||||
|
<widget class="QLabel" name="theme_scaling_factor_lbl">
|
||||||
|
<property name="toolTip">
|
||||||
|
<string><html><head/><body><p>The factor by which to scale the size of the UI</p></body></html></string>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>UI Scaling Factor</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</widget>
|
</widget>
|
||||||
|
@ -12,24 +12,28 @@ AOCharButton::AOCharButton(QWidget *parent, AOApplication *p_ao_app, int x_pos,
|
|||||||
|
|
||||||
taken = is_taken;
|
taken = is_taken;
|
||||||
|
|
||||||
this->resize(60, 60);
|
int size = 60 * Options::getInstance().themeScalingFactor();
|
||||||
|
int selector_size = 62 * Options::getInstance().themeScalingFactor();
|
||||||
|
|
||||||
|
this->resize(size, size);
|
||||||
this->move(x_pos, y_pos);
|
this->move(x_pos, y_pos);
|
||||||
|
|
||||||
ui_taken = new AOImage(this, ao_app, true);
|
ui_taken = new AOImage(this, ao_app, true);
|
||||||
ui_taken->resize(60, 60);
|
ui_taken->resize(size, size);
|
||||||
ui_taken->set_image("char_taken");
|
ui_taken->set_image("char_taken");
|
||||||
ui_taken->setAttribute(Qt::WA_TransparentForMouseEvents);
|
ui_taken->setAttribute(Qt::WA_TransparentForMouseEvents);
|
||||||
ui_taken->hide();
|
ui_taken->hide();
|
||||||
|
|
||||||
ui_passworded = new AOImage(this, ao_app, true);
|
ui_passworded = new AOImage(this, ao_app, true);
|
||||||
ui_passworded->resize(60, 60);
|
ui_passworded->resize(size, size);
|
||||||
ui_passworded->set_image("char_passworded");
|
ui_passworded->set_image("char_passworded");
|
||||||
ui_passworded->setAttribute(Qt::WA_TransparentForMouseEvents);
|
ui_passworded->setAttribute(Qt::WA_TransparentForMouseEvents);
|
||||||
ui_passworded->hide();
|
ui_passworded->hide();
|
||||||
|
|
||||||
ui_selector = new AOImage(parent, ao_app, true);
|
ui_selector = new AOImage(parent, ao_app, true);
|
||||||
ui_selector->resize(62, 62);
|
ui_selector->resize(selector_size, selector_size);
|
||||||
ui_selector->move(x_pos - 1, y_pos - 1);
|
int offset = Options::getInstance().themeScalingFactor();
|
||||||
|
ui_selector->move(x_pos - offset, y_pos - offset);
|
||||||
ui_selector->set_image("char_selector");
|
ui_selector->set_image("char_selector");
|
||||||
ui_selector->setAttribute(Qt::WA_TransparentForMouseEvents);
|
ui_selector->setAttribute(Qt::WA_TransparentForMouseEvents);
|
||||||
ui_selector->hide();
|
ui_selector->hide();
|
||||||
@ -84,7 +88,8 @@ void AOCharButton::enterEvent(QEvent *e)
|
|||||||
void AOCharButton::enterEvent(QEnterEvent *e)
|
void AOCharButton::enterEvent(QEnterEvent *e)
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
ui_selector->move(this->x() - 1, this->y() - 1);
|
int offset = Options::getInstance().themeScalingFactor();
|
||||||
|
ui_selector->move(this->x() - offset, this->y() - offset);
|
||||||
ui_selector->raise();
|
ui_selector->raise();
|
||||||
ui_selector->show();
|
ui_selector->show();
|
||||||
|
|
||||||
|
@ -151,11 +151,13 @@ void Courtroom::set_char_select_page()
|
|||||||
QPoint f_spacing =
|
QPoint f_spacing =
|
||||||
ao_app->get_button_spacing("char_button_spacing", "courtroom_design.ini");
|
ao_app->get_button_spacing("char_button_spacing", "courtroom_design.ini");
|
||||||
|
|
||||||
|
int s_button_size = button_width * Options::getInstance().themeScalingFactor();
|
||||||
|
|
||||||
char_columns =
|
char_columns =
|
||||||
((ui_char_buttons->width() - button_width) / (f_spacing.x() + button_width)) +
|
((ui_char_buttons->width() - s_button_size) / (f_spacing.x() + s_button_size)) +
|
||||||
1;
|
1;
|
||||||
char_rows = ((ui_char_buttons->height() - button_height) /
|
char_rows = ((ui_char_buttons->height() - s_button_size) /
|
||||||
(f_spacing.y() + button_height)) +
|
(f_spacing.y() + s_button_size)) +
|
||||||
1;
|
1;
|
||||||
|
|
||||||
max_chars_on_page = char_columns * char_rows;
|
max_chars_on_page = char_columns * char_rows;
|
||||||
@ -255,9 +257,10 @@ void Courtroom::put_button_in_place(int starting, int chars_on_this_page)
|
|||||||
int y_mod_count = 0;
|
int y_mod_count = 0;
|
||||||
|
|
||||||
int startout = starting;
|
int startout = starting;
|
||||||
|
int size = button_width * Options::getInstance().themeScalingFactor();
|
||||||
for (int n = starting; n < startout + chars_on_this_page; ++n) {
|
for (int n = starting; n < startout + chars_on_this_page; ++n) {
|
||||||
int x_pos = (button_width + f_spacing.x()) * x_mod_count;
|
int x_pos = (size + f_spacing.x()) * x_mod_count;
|
||||||
int y_pos = (button_height + f_spacing.y()) * y_mod_count;
|
int y_pos = (size + f_spacing.y()) * y_mod_count;
|
||||||
|
|
||||||
ui_char_button_list_filtered.at(n)->move(x_pos, y_pos);
|
ui_char_button_list_filtered.at(n)->move(x_pos, y_pos);
|
||||||
ui_char_button_list_filtered.at(n)->show();
|
ui_char_button_list_filtered.at(n)->show();
|
||||||
|
@ -612,7 +612,7 @@ void Courtroom::set_courtroom_size()
|
|||||||
m_courtroom_width = f_courtroom.width;
|
m_courtroom_width = f_courtroom.width;
|
||||||
m_courtroom_height = f_courtroom.height;
|
m_courtroom_height = f_courtroom.height;
|
||||||
|
|
||||||
this->setFixedSize(f_courtroom.width, f_courtroom.height);
|
this->setFixedSize(m_courtroom_width, m_courtroom_height);
|
||||||
}
|
}
|
||||||
ui_background->move(0, 0);
|
ui_background->move(0, 0);
|
||||||
ui_background->resize(m_courtroom_width, m_courtroom_height);
|
ui_background->resize(m_courtroom_width, m_courtroom_height);
|
||||||
@ -1137,6 +1137,11 @@ void Courtroom::set_widgets()
|
|||||||
|
|
||||||
void Courtroom::set_fonts(QString p_char)
|
void Courtroom::set_fonts(QString p_char)
|
||||||
{
|
{
|
||||||
|
QFont new_font = ao_app->default_font;
|
||||||
|
int new_font_size = new_font.pointSize() * Options::getInstance().themeScalingFactor();
|
||||||
|
new_font.setPointSize(new_font_size);
|
||||||
|
ao_app->setFont(new_font);
|
||||||
|
|
||||||
set_font(ui_vp_showname, "", "showname", p_char);
|
set_font(ui_vp_showname, "", "showname", p_char);
|
||||||
set_font(ui_vp_message, "", "message", p_char);
|
set_font(ui_vp_message, "", "message", p_char);
|
||||||
set_font(ui_ic_chatlog, "", "ic_chatlog", p_char);
|
set_font(ui_ic_chatlog, "", "ic_chatlog", p_char);
|
||||||
@ -1159,7 +1164,7 @@ void Courtroom::set_font(QWidget *widget, QString class_name,
|
|||||||
QString design_file = "courtroom_fonts.ini";
|
QString design_file = "courtroom_fonts.ini";
|
||||||
if (f_pointsize <= 0)
|
if (f_pointsize <= 0)
|
||||||
f_pointsize =
|
f_pointsize =
|
||||||
ao_app->get_design_element(p_identifier, design_file, ao_app->get_chat(p_char)).toInt();
|
ao_app->get_design_element(p_identifier, design_file, ao_app->get_chat(p_char)).toInt() * Options::getInstance().themeScalingFactor();
|
||||||
if (font_name == "")
|
if (font_name == "")
|
||||||
font_name =
|
font_name =
|
||||||
ao_app->get_design_element(p_identifier + "_font", design_file, ao_app->get_chat(p_char));
|
ao_app->get_design_element(p_identifier + "_font", design_file, ao_app->get_chat(p_char));
|
||||||
|
@ -26,6 +26,14 @@ int main(int argc, char *argv[])
|
|||||||
AOApplication::addLibraryPath(AOApplication::applicationDirPath() + "/lib");
|
AOApplication::addLibraryPath(AOApplication::applicationDirPath() + "/lib");
|
||||||
QResource::registerResource(main_app.get_asset("themes/" + Options::getInstance().theme() + ".rcc"));
|
QResource::registerResource(main_app.get_asset("themes/" + Options::getInstance().theme() + ".rcc"));
|
||||||
|
|
||||||
|
QFont main_font = main_app.font();
|
||||||
|
main_app.default_font = main_font;
|
||||||
|
|
||||||
|
QFont new_font = main_font;
|
||||||
|
int new_font_size = main_app.default_font.pointSize() * Options::getInstance().themeScalingFactor();
|
||||||
|
new_font.setPointSize(new_font_size);
|
||||||
|
main_app.setFont(new_font);
|
||||||
|
|
||||||
QFontDatabase fontDatabase;
|
QFontDatabase fontDatabase;
|
||||||
QDirIterator it(get_base_path() + "fonts",
|
QDirIterator it(get_base_path() + "fonts",
|
||||||
QDirIterator::Subdirectories);
|
QDirIterator::Subdirectories);
|
||||||
|
@ -87,6 +87,17 @@ QString Options::theme() const
|
|||||||
|
|
||||||
void Options::setTheme(QString value) { config.setValue("theme", value); }
|
void Options::setTheme(QString value) { config.setValue("theme", value); }
|
||||||
|
|
||||||
|
int Options::themeScalingFactor() const
|
||||||
|
{
|
||||||
|
int value = config.value("theme_scaling_factor", "1").toInt();
|
||||||
|
if (value <= 0) {
|
||||||
|
value = 1;
|
||||||
|
}
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
void Options::setThemeScalingFactor(int value) { config.setValue("theme_scaling_factor", value); }
|
||||||
|
|
||||||
int Options::blipRate() const { return config.value("blip_rate", 2).toInt(); }
|
int Options::blipRate() const { return config.value("blip_rate", 2).toInt(); }
|
||||||
|
|
||||||
void Options::setBlipRate(int value) { config.setValue("blip_rate", value); }
|
void Options::setBlipRate(int value) { config.setValue("blip_rate", value); }
|
||||||
@ -480,7 +491,7 @@ void Options::setServerSubTheme(QString value) { m_server_subtheme = value; }
|
|||||||
|
|
||||||
bool Options::animatedThemeEnabled() const
|
bool Options::animatedThemeEnabled() const
|
||||||
{
|
{
|
||||||
return config.value("animated_theme", true).toBool();
|
return config.value("animated_theme", false).toBool();
|
||||||
}
|
}
|
||||||
|
|
||||||
void Options::setAnimatedThemeEnabled(bool value)
|
void Options::setAnimatedThemeEnabled(bool value)
|
||||||
|
@ -173,9 +173,8 @@ QPoint AOApplication::get_button_spacing(QString p_identifier, QString p_file)
|
|||||||
|
|
||||||
if (sub_line_elements.size() < 2)
|
if (sub_line_elements.size() < 2)
|
||||||
return return_value;
|
return return_value;
|
||||||
|
return_value.setX(sub_line_elements.at(0).toInt() * Options::getInstance().themeScalingFactor());
|
||||||
return_value.setX(sub_line_elements.at(0).toInt());
|
return_value.setY(sub_line_elements.at(1).toInt() * Options::getInstance().themeScalingFactor());
|
||||||
return_value.setY(sub_line_elements.at(1).toInt());
|
|
||||||
|
|
||||||
return return_value;
|
return return_value;
|
||||||
}
|
}
|
||||||
@ -196,10 +195,12 @@ pos_size_type AOApplication::get_element_dimensions(QString p_identifier,
|
|||||||
if (sub_line_elements.size() < 4)
|
if (sub_line_elements.size() < 4)
|
||||||
return return_value;
|
return return_value;
|
||||||
|
|
||||||
return_value.x = sub_line_elements.at(0).toInt();
|
int scale = Options::getInstance().themeScalingFactor();
|
||||||
return_value.y = sub_line_elements.at(1).toInt();
|
|
||||||
return_value.width = sub_line_elements.at(2).toInt();
|
return_value.x = sub_line_elements.at(0).toInt() * scale;
|
||||||
return_value.height = sub_line_elements.at(3).toInt();
|
return_value.y = sub_line_elements.at(1).toInt() * scale;
|
||||||
|
return_value.width = sub_line_elements.at(2).toInt() * scale;
|
||||||
|
return_value.height = sub_line_elements.at(3).toInt() * scale;
|
||||||
|
|
||||||
return return_value;
|
return return_value;
|
||||||
}
|
}
|
||||||
|
@ -216,7 +216,10 @@ void AOOptionsDialog::updateValues()
|
|||||||
|
|
||||||
void AOOptionsDialog::savePressed()
|
void AOOptionsDialog::savePressed()
|
||||||
{
|
{
|
||||||
bool l_reload_theme_required = (ui_theme_combobox->currentText() != Options::getInstance().theme());
|
bool l_reload_theme_required =
|
||||||
|
(ui_theme_combobox->currentText() != Options::getInstance().theme()) ||
|
||||||
|
(ui_theme_scaling_factor_sb->value() !=
|
||||||
|
Options::getInstance().themeScalingFactor());
|
||||||
for (const OptionEntry &entry : qAsConst(optionEntries)) {
|
for (const OptionEntry &entry : qAsConst(optionEntries)) {
|
||||||
entry.save();
|
entry.save();
|
||||||
}
|
}
|
||||||
@ -337,6 +340,7 @@ void AOOptionsDialog::setupUI()
|
|||||||
QDesktopServices::openUrl(QUrl::fromLocalFile(p_path));
|
QDesktopServices::openUrl(QUrl::fromLocalFile(p_path));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
FROM_UI(QSpinBox, theme_scaling_factor_sb)
|
||||||
FROM_UI(QCheckBox, animated_theme_cb)
|
FROM_UI(QCheckBox, animated_theme_cb)
|
||||||
FROM_UI(QSpinBox, stay_time_spinbox)
|
FROM_UI(QSpinBox, stay_time_spinbox)
|
||||||
FROM_UI(QCheckBox, instant_objection_cb)
|
FROM_UI(QCheckBox, instant_objection_cb)
|
||||||
@ -363,6 +367,9 @@ void AOOptionsDialog::setupUI()
|
|||||||
FROM_UI(QCheckBox, sfx_on_idle_cb)
|
FROM_UI(QCheckBox, sfx_on_idle_cb)
|
||||||
FROM_UI(QCheckBox, evidence_double_click_cb)
|
FROM_UI(QCheckBox, evidence_double_click_cb)
|
||||||
|
|
||||||
|
registerOption<QSpinBox, int>("theme_scaling_factor_sb",
|
||||||
|
&Options::themeScalingFactor,
|
||||||
|
&Options::setThemeScalingFactor);
|
||||||
registerOption<QCheckBox, bool>("animated_theme_cb",
|
registerOption<QCheckBox, bool>("animated_theme_cb",
|
||||||
&Options::animatedThemeEnabled,
|
&Options::animatedThemeEnabled,
|
||||||
&Options::setAnimatedThemeEnabled);
|
&Options::setAnimatedThemeEnabled);
|
||||||
|
Loading…
Reference in New Issue
Block a user