Add missing tooltip formatting

This commit is contained in:
GriffinR 2025-04-22 14:48:15 -04:00
parent c1acf7141d
commit c26c01aaff
15 changed files with 215 additions and 211 deletions

View File

@ -6,7 +6,7 @@
<rect>
<x>0</x>
<y>0</y>
<width>178</width>
<width>188</width>
<height>157</height>
</rect>
</property>
@ -20,7 +20,7 @@
<string notr="true">.ConnectionsListItem { border-width: 1px; }</string>
</property>
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
<enum>QFrame::Shape::StyledPanel</enum>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
@ -65,7 +65,7 @@
<item row="3" column="2">
<widget class="QToolButton" name="button_Delete">
<property name="toolTip">
<string>Remove this connection.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Remove this connection.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>...</string>
@ -79,28 +79,28 @@
<item row="1" column="1" colspan="2">
<widget class="NoScrollComboBox" name="comboBox_Direction">
<property name="toolTip">
<string>Where the connected map should be positioned relative to the current map.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Where the connected map should be positioned relative to the current map.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
<item row="0" column="1" colspan="2">
<widget class="NoScrollComboBox" name="comboBox_Map">
<property name="toolTip">
<string>The name of the map to connect to the current map.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The name of the map to connect to the current map.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
<item row="2" column="1" colspan="2">
<widget class="NoScrollSpinBox" name="spinBox_Offset">
<property name="toolTip">
<string>The number of spaces to move the connected map perpendicular to its connected direction.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The number of spaces to move the connected map perpendicular to its connected direction.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QToolButton" name="button_OpenMap">
<property name="toolTip">
<string>Open the connected map.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Open the connected map.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>...</string>

View File

@ -33,7 +33,7 @@
<item row="0" column="1">
<widget class="QLineEdit" name="lineEdit_Name">
<property name="toolTip">
<string>The key name for the new JSON field</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The key name for the new JSON field&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="clearButtonEnabled">
<bool>true</bool>
@ -50,7 +50,7 @@
<item row="2" column="1">
<widget class="NoScrollComboBox" name="comboBox_Type">
<property name="toolTip">
<string>The data type for the new JSON field</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The data type for the new JSON field&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
@ -70,7 +70,7 @@
</sizepolicy>
</property>
<property name="toolTip">
<string>The value for the new JSON field</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The value for the new JSON field&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<widget class="QWidget" name="page_String">
<layout class="QHBoxLayout" name="horizontalLayout">

View File

@ -60,7 +60,7 @@
<item>
<widget class="QPushButton" name="button_CreateNewScript">
<property name="toolTip">
<string>Create a new Porymap script file with a default template</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Create a new Porymap script file with a default template&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Create New Script...</string>
@ -74,7 +74,7 @@
<item>
<widget class="QPushButton" name="button_LoadScript">
<property name="toolTip">
<string>Add an existing script file to the list below</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Add an existing script file to the list below&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Load Script...</string>
@ -88,7 +88,7 @@
<item>
<widget class="QPushButton" name="button_RefreshScripts">
<property name="toolTip">
<string>Refresh all loaded scripts to account for any recent edits</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Refresh all loaded scripts to account for any recent edits&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Refresh Scripts</string>

View File

@ -260,9 +260,6 @@
<bool>false</bool>
</property>
<widget class="QWidget" name="tab_Map">
<property name="toolTip">
<string/>
</property>
<layout class="QGridLayout" name="gridLayout_9">
<property name="leftMargin">
<number>0</number>
@ -2380,7 +2377,7 @@
<item row="0" column="7">
<widget class="QCheckBox" name="checkBox_MirrorConnections">
<property name="toolTip">
<string>If enabled, connections will automatically be updated on the connected map.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;If enabled, the connected Emerge and/or Dive maps will be displayed with an opacity set using the slider.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Mirror to Connecting Maps</string>
@ -2433,7 +2430,7 @@
<bool>false</bool>
</property>
<property name="toolTip">
<string>Open the selected Dive Map</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Open the selected Dive Map&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>...</string>
@ -2447,7 +2444,7 @@
<item row="0" column="4" rowspan="2">
<widget class="QGroupBox" name="groupBox_DiveMapOpacity">
<property name="toolTip">
<string>If enabled, the connected Emerge and/or Dive maps will be displayed with an opacity set using the slider.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;If enabled, the connected Emerge and/or Dive maps will be displayed with an opacity set using the slider.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="title">
<string>Show Emerge/Dive Maps</string>
@ -2570,7 +2567,7 @@
<bool>false</bool>
</property>
<property name="toolTip">
<string>Open the selected Emerge Map</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Open the selected Emerge Map&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>...</string>
@ -3079,45 +3076,6 @@
<string>Ctrl+T</string>
</property>
</action>
<action name="actionSort_by_Location">
<property name="checkable">
<bool>true</bool>
</property>
<property name="icon">
<iconset resource="../resources/images.qrc">
<normaloff>:/icons/sort_alphabet.ico</normaloff>:/icons/sort_alphabet.ico</iconset>
</property>
<property name="text">
<string>Sort by &amp;Location</string>
</property>
</action>
<action name="actionSort_by_Group">
<property name="checkable">
<bool>true</bool>
</property>
<property name="icon">
<iconset resource="../resources/images.qrc">
<normaloff>:/icons/sort_number.ico</normaloff>:/icons/sort_number.ico</iconset>
</property>
<property name="text">
<string>Sort by &amp;Group</string>
</property>
<property name="toolTip">
<string>Sort by Group</string>
</property>
</action>
<action name="actionSort_by_Layout">
<property name="checkable">
<bool>true</bool>
</property>
<property name="icon">
<iconset resource="../resources/images.qrc">
<normaloff>:/icons/sort_map.ico</normaloff>:/icons/sort_map.ico</iconset>
</property>
<property name="text">
<string>Sort by &amp;Layout</string>
</property>
</action>
<action name="actionAbout_Porymap">
<property name="text">
<string>About Porymap...</string>

View File

@ -32,7 +32,7 @@
<item>
<widget class="QToolButton" name="button_AddFolder">
<property name="toolTip">
<string>Add a new folder to the list.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Add a new folder to the list.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string/>
@ -73,7 +73,7 @@
<item>
<widget class="QToolButton" name="button_ExpandAll">
<property name="toolTip">
<string>Expand all folders in the list.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Expand all folders in the list.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string/>
@ -93,7 +93,7 @@
<item>
<widget class="QToolButton" name="button_CollapseAll">
<property name="toolTip">
<string>Collapse all folders in the list.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Collapse all folders in the list.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string/>
@ -113,7 +113,7 @@
<item>
<widget class="QToolButton" name="button_ToggleEdit">
<property name="toolTip">
<string>If enabled, folders may be renamed and items in the list may be rearranged.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;If enabled, folders may be renamed and items in the list may be rearranged.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string/>

View File

@ -17,10 +17,10 @@
<item>
<widget class="QFrame" name="frame">
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
<enum>QFrame::Shape::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
<enum>QFrame::Shadow::Plain</enum>
</property>
<layout class="QFormLayout" name="formLayout_2">
<property name="leftMargin">
@ -45,7 +45,7 @@
<item row="0" column="1">
<widget class="NoScrollComboBox" name="comboBox_Map">
<property name="toolTip">
<string>The name of the map to connect to the current map.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The name of the map to connect to the current map.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
@ -59,7 +59,7 @@
<item row="1" column="1">
<widget class="NoScrollComboBox" name="comboBox_Direction">
<property name="toolTip">
<string>Where the connected map should be positioned relative to the current map.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Where the connected map should be positioned relative to the current map.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
@ -82,10 +82,10 @@
<item>
<widget class="QDialogButtonBox" name="buttonBox">
<property name="orientation">
<enum>Qt::Horizontal</enum>
<enum>Qt::Orientation::Horizontal</enum>
</property>
<property name="standardButtons">
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
<set>QDialogButtonBox::StandardButton::Cancel|QDialogButtonBox::StandardButton::Ok</set>
</property>
</widget>
</item>

View File

@ -40,7 +40,7 @@
<item>
<widget class="QCheckBox" name="checkBox_MonitorProjectFiles">
<property name="toolTip">
<string>If checked, a prompt to reload your project will appear if relevant project files are edited</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;If checked, a prompt to reload your project will appear if relevant project files are edited&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Monitor project files</string>
@ -50,7 +50,7 @@
<item>
<widget class="QCheckBox" name="checkBox_OpenRecentProject">
<property name="toolTip">
<string>If checked, Porymap will automatically open your most recently opened project on startup</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;If checked, Porymap will automatically open your most recently opened project on startup&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Open recent project on launch</string>
@ -60,7 +60,7 @@
<item>
<widget class="QCheckBox" name="checkBox_CheckForUpdates">
<property name="toolTip">
<string>If checked, Porymap will automatically alert you on startup if a new release is available</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;If checked, Porymap will automatically alert you on startup if a new release is available&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Automatically check for updates</string>
@ -112,7 +112,7 @@
<item>
<widget class="QCheckBox" name="checkBox_DisableEventWarning">
<property name="toolTip">
<string>If checked, no warning will be shown when deleting an event that has an associated #define that may also be deleted.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;If checked, no warning will be shown when deleting an event that has an associated #define that may also be deleted.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Disable warning when deleting events with IDs</string>
@ -138,7 +138,7 @@
<item>
<widget class="QRadioButton" name="radioButton_OnSprite">
<property name="toolTip">
<string>If enabled, an event can be selected by clicking directly on the opaque pixels of its sprite. This may be preferable when events are overlapping.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;If enabled, an event can be selected by clicking directly on the opaque pixels of its sprite. This may be preferable when events are overlapping.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Select by clicking on sprite</string>
@ -148,7 +148,7 @@
<item>
<widget class="QRadioButton" name="radioButton_WithinRect">
<property name="toolTip">
<string>If enabled, an event can be selected by clicking anywhere within its sprite dimensions. This may be preferable for events with small or mostly transparent sprites.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;If enabled, an event can be selected by clicking anywhere within its sprite dimensions. This may be preferable for events with small or mostly transparent sprites.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Select by clicking within bounding rectangle</string>
@ -231,7 +231,7 @@
<item row="0" column="1">
<widget class="QLineEdit" name="lineEdit_TextEditorOpenFolder">
<property name="toolTip">
<string>The shell command for your preferred text editor (possibly an absolute path if the program doesn't exist in your PATH).</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The shell command for your preferred text editor (possibly an absolute path if the program doesn't exist in your PATH).&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="placeholderText">
<string>e.g. code %D</string>
@ -264,7 +264,7 @@
<item row="5" column="1">
<widget class="QLineEdit" name="lineEdit_TextEditorGotoLine">
<property name="toolTip">
<string>The shell command for your preferred text editor to open a file to a specific line number (possibly an absolute path if the program doesn't exist in your PATH).</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The shell command for your preferred text editor to open a file to a specific line number (possibly an absolute path if the program doesn't exist in your PATH).&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="placeholderText">
<string>e.g. code --goto %F:%L</string>

View File

@ -52,7 +52,7 @@
<item>
<widget class="QCheckBox" name="checkBox_UsePoryscript">
<property name="toolTip">
<string>Whether map script files should prefer using .pory</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Whether map script files should prefer using .pory&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Use Poryscript</string>
@ -61,6 +61,9 @@
</item>
<item>
<widget class="QCheckBox" name="checkBox_ShowWildEncounterTables">
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;If enabled, Porymap will display wild encounter data on the Wild Pokémon tab.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Show Wild Encounter Tables</string>
</property>
@ -99,7 +102,7 @@
<item row="1" column="0">
<widget class="QPushButton" name="button_ImportDefaultPrefabs">
<property name="toolTip">
<string>Restore the data in the prefabs file to the version defaults. Will create a new file if one doesn't exist.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Restore the data in the prefabs file to the version defaults. Will create a new file if one doesn't exist.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Import Defaults</string>
@ -109,7 +112,7 @@
<item row="0" column="1">
<widget class="QLineEdit" name="lineEdit_PrefabsPath">
<property name="toolTip">
<string>The file that will be used to populate the Prefabs tab</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The file that will be used to populate the Prefabs tab&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="placeholderText">
<string>prefabs.json</string>
@ -148,7 +151,7 @@
<item row="0" column="1" colspan="6">
<widget class="QLineEdit" name="lineEdit_CollisionGraphics">
<property name="toolTip">
<string>The image sheet that will be used to represent elevation and collision on the Collision tab</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The image sheet that will be used to represent elevation and collision on the Collision tab&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="clearButtonEnabled">
<bool>true</bool>
@ -176,7 +179,7 @@
<item row="1" column="5">
<widget class="NoScrollSpinBox" name="spinBox_MaxCollision">
<property name="toolTip">
<string>The maximum collision value represented with an icon on the image sheet</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The maximum collision value represented with an icon on the image sheet&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
@ -197,7 +200,7 @@
<item row="1" column="2">
<widget class="NoScrollSpinBox" name="spinBox_MaxElevation">
<property name="toolTip">
<string>The maximum elevation value represented with an icon on the image sheet</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The maximum elevation value represented with an icon on the image sheet&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
@ -270,7 +273,7 @@
<item row="1" column="2" colspan="3">
<widget class="QLineEdit" name="lineEdit_PokemonIcon">
<property name="toolTip">
<string>The icon that will be displayed on the Wild Pokémon tab for the above species</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The icon that will be displayed on the Wild Pokémon tab for the above species&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="clearButtonEnabled">
<bool>true</bool>
@ -304,22 +307,22 @@
</item>
<item row="0" column="1">
<widget class="NoScrollSpinBox" name="spinBox_PlayerViewDistance_North">
<property name="minimum">
<number>0</number>
</property>
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The distance (in pixels) that a player is able to see North of their character's position in-game. By default this is the distance from the center 16x16 to the edge of the 160 pixel tall GBA screen.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="minimum">
<number>0</number>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="NoScrollSpinBox" name="spinBox_PlayerViewDistance_South">
<property name="minimum">
<number>0</number>
</property>
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The distance (in pixels) that a player is able to see South of their character's position in-game. By default this is the distance from the center 16x16 to the edge of the 160 pixel tall GBA screen.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="minimum">
<number>0</number>
</property>
</widget>
</item>
</layout>
@ -342,22 +345,22 @@
</item>
<item row="0" column="1">
<widget class="NoScrollSpinBox" name="spinBox_PlayerViewDistance_West">
<property name="minimum">
<number>0</number>
</property>
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The distance (in pixels) that a player is able to see West of their character's position in-game. By default this is the distance from the center 16x16 to the edge of the 240 pixel wide GBA screen.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="minimum">
<number>0</number>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="NoScrollSpinBox" name="spinBox_PlayerViewDistance_East">
<property name="minimum">
<number>0</number>
</property>
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The distance (in pixels) that a player is able to see East of their character's position in-game. By default this is the distance from the center 16x16 to the edge of the 240 pixel wide GBA screen.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="minimum">
<number>0</number>
</property>
</widget>
</item>
</layout>
@ -463,7 +466,7 @@
<rect>
<x>0</x>
<y>0</y>
<width>561</width>
<width>570</width>
<height>622</height>
</rect>
</property>
@ -491,14 +494,14 @@
<item row="5" column="1">
<widget class="NoScrollSpinBox" name="spinBox_Elevation">
<property name="toolTip">
<string>The default elevation that will be used to fill new maps</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The default elevation that will be used to fill new maps&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
<item row="8" column="0" colspan="2">
<widget class="QCheckBox" name="checkBox_CreateTextFile">
<property name="toolTip">
<string>Whether a separate text.inc or text.pory file will be created for new maps, alongside the scripts file</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Whether a separate text.inc or text.pory file will be created for new maps, alongside the scripts file&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Create separate text file</string>
@ -507,6 +510,9 @@
</item>
<item row="6" column="1">
<widget class="NoScrollSpinBox" name="spinBox_MapWidth">
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The default layout width for new maps&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="minimum">
<number>1</number>
</property>
@ -514,6 +520,9 @@
</item>
<item row="7" column="1">
<widget class="NoScrollSpinBox" name="spinBox_MapHeight">
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The default layout height for new maps&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="minimum">
<number>1</number>
</property>
@ -543,14 +552,14 @@
<item row="3" column="1">
<widget class="UIntHexSpinBox" name="spinBox_FillMetatile">
<property name="toolTip">
<string>The default metatile value that will be used to fill new maps</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The default metatile value that will be used to fill new maps&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
<item row="4" column="1">
<widget class="NoScrollSpinBox" name="spinBox_Collision">
<property name="toolTip">
<string>The default collision that will be used to fill new maps</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The default collision that will be used to fill new maps&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
@ -573,7 +582,7 @@
<item>
<widget class="QLineEdit" name="lineEdit_BorderMetatiles">
<property name="toolTip">
<string>A comma-separated list of metatile values that will be used to fill new map borders</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;A comma-separated list of metatile values that will be used to fill new map borders&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
@ -596,28 +605,28 @@
<item>
<widget class="UIntHexSpinBox" name="spinBox_BorderMetatile1">
<property name="toolTip">
<string>The default metatile value that will be used for the top-left border metatile on new maps.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The default metatile value that will be used for the top-left border metatile on new maps.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
<item>
<widget class="UIntHexSpinBox" name="spinBox_BorderMetatile2">
<property name="toolTip">
<string>The default metatile value that will be used for the top-right border metatile on new maps.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The default metatile value that will be used for the top-right border metatile on new maps.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
<item>
<widget class="UIntHexSpinBox" name="spinBox_BorderMetatile3">
<property name="toolTip">
<string>The default metatile value that will be used for the bottom-left border metatile on new maps.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The default metatile value that will be used for the bottom-left border metatile on new maps.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
<item>
<widget class="UIntHexSpinBox" name="spinBox_BorderMetatile4">
<property name="toolTip">
<string>The default metatile value that will be used for the bottom-right border metatile on new maps.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The default metatile value that will be used for the bottom-right border metatile on new maps.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
@ -697,7 +706,7 @@
<item row="0" column="1">
<widget class="UIntHexSpinBox" name="spinBox_MetatileIdMask">
<property name="toolTip">
<string>The mask used to read/write metatile IDs in map data.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The mask used to read/write metatile IDs in map data.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
@ -711,7 +720,7 @@
<item row="1" column="1">
<widget class="UIntHexSpinBox" name="spinBox_CollisionMask">
<property name="toolTip">
<string>The mask used to read/write collision values in map data.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The mask used to read/write collision values in map data.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
@ -725,7 +734,7 @@
<item row="2" column="1">
<widget class="UIntHexSpinBox" name="spinBox_ElevationMask">
<property name="toolTip">
<string>The mask used to read/write elevation values in map data.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The mask used to read/write elevation values in map data.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
@ -754,7 +763,7 @@
<item row="0" column="1">
<widget class="QCheckBox" name="checkBox_EnableAllowFlags">
<property name="toolTip">
<string>Whether &quot;Allow Running&quot;, &quot;Allow Biking&quot; and &quot;Allow Dig &amp; Escape Rope&quot; are default options for Map Headers</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Whether &amp;quot;Allow Running&amp;quot;, &amp;quot;Allow Biking&amp;quot; and &amp;quot;Allow Dig &amp;amp; Escape Rope&amp;quot; are default options for Map Headers&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Enable 'Allow Running/Biking/Escaping'</string>
@ -764,7 +773,7 @@
<item row="0" column="0">
<widget class="QCheckBox" name="checkBox_EnableFloorNumber">
<property name="toolTip">
<string>Whether &quot;Floor Number&quot; is a default option for Map Headers</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Whether &amp;quot;Floor Number&amp;quot; is a default option for Map Headers&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Enable 'Floor Number'</string>
@ -774,7 +783,7 @@
<item row="1" column="0">
<widget class="QCheckBox" name="checkBox_EnableCustomBorderSize">
<property name="toolTip">
<string>Whether the dimensions of the border can be changed. If not set, all borders are 2x2</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Whether the dimensions of the border can be changed. If not set, all borders are 2x2&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Enable Custom Border Size</string>
@ -834,7 +843,7 @@
<rect>
<x>0</x>
<y>0</y>
<width>561</width>
<width>570</width>
<height>798</height>
</rect>
</property>
@ -853,7 +862,11 @@
</widget>
</item>
<item row="0" column="1">
<widget class="NoScrollComboBox" name="comboBox_DefaultPrimaryTileset"/>
<widget class="NoScrollComboBox" name="comboBox_DefaultPrimaryTileset">
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The default primary tileset to use for new maps/layouts.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_SecondaryTileset">
@ -863,7 +876,11 @@
</widget>
</item>
<item row="1" column="1">
<widget class="NoScrollComboBox" name="comboBox_DefaultSecondaryTileset"/>
<widget class="NoScrollComboBox" name="comboBox_DefaultSecondaryTileset">
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The default secondary tileset to use for new maps/layouts.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
</layout>
</widget>
@ -877,7 +894,7 @@
<item>
<widget class="QRadioButton" name="radioButton_RenderBlack">
<property name="toolTip">
<string>Fully transparent pixels will be rendered as black pixels (the Pokémon games do this by default)</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Fully transparent pixels will be rendered as black pixels (the Pokémon games do this by default)&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Render as black</string>
@ -887,7 +904,7 @@
<item>
<widget class="QRadioButton" name="radioButton_RenderFirstPalColor">
<property name="toolTip">
<string>Fully transparent pixels will be rendered using the first palette color (this the default behavior for the GBA)</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Fully transparent pixels will be rendered using the first palette color (this the default behavior for the GBA)&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Render using first palette color</string>
@ -913,7 +930,7 @@
<item row="0" column="1">
<widget class="UIntHexSpinBox" name="spinBox_UnusedTileNormal">
<property name="toolTip">
<string>This raw tile value will be used to fill the unused bottom layer of Normal metatiles</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;This raw tile value will be used to fill the unused bottom layer of Normal metatiles&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
@ -927,7 +944,7 @@
<item row="1" column="1">
<widget class="UIntHexSpinBox" name="spinBox_UnusedTileCovered">
<property name="toolTip">
<string>This raw tile value will be used to fill the unused top layer of Covered metatiles</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;This raw tile value will be used to fill the unused top layer of Covered metatiles&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
@ -941,7 +958,7 @@
<item row="2" column="1">
<widget class="UIntHexSpinBox" name="spinBox_UnusedTileSplit">
<property name="toolTip">
<string>This raw tile value will be used to fill the unused middle layer of Split metatiles</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;This raw tile value will be used to fill the unused middle layer of Split metatiles&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
@ -985,22 +1002,19 @@
<item row="4" column="1">
<widget class="UIntHexSpinBox" name="spinBox_LayerTypeMask">
<property name="toolTip">
<string>The mask used to read/write Layer Type from the metatile's attributes data. If 0, this attribute is disabled.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The mask used to read/write Layer Type from the metatile's attributes data. If 0, this attribute is disabled.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="UIntHexSpinBox" name="spinBox_BehaviorMask">
<property name="toolTip">
<string>The mask used to read/write Metatile Behavior from the metatile's attributes data. If 0, this attribute is disabled.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The mask used to read/write Metatile Behavior from the metatile's attributes data. If 0, this attribute is disabled.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="label_AttributesSize">
<property name="toolTip">
<string>The number of bytes used per metatile for metatile attributes</string>
</property>
<property name="text">
<string>Attributes size (in bytes)</string>
</property>
@ -1031,6 +1045,9 @@
</item>
<item row="0" column="0">
<widget class="QCheckBox" name="checkBox_EnableTripleLayerMetatiles">
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;If checked, metatiles will be interpreted as having 3 layers of 4 tiles each (12 tiles total) as opposed to the default 2 layers of 4 tiles each (8 total).&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Enable Triple Layer Metatiles</string>
</property>
@ -1039,7 +1056,7 @@
<item row="7" column="1">
<widget class="UIntHexSpinBox" name="spinBox_TerrainTypeMask">
<property name="toolTip">
<string>The mask used to read/write Terrain Type from the metatile's attributes data. If 0, this attribute is disabled.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The mask used to read/write Terrain Type from the metatile's attributes data. If 0, this attribute is disabled.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
@ -1066,7 +1083,7 @@
<item row="5" column="1">
<widget class="UIntHexSpinBox" name="spinBox_EncounterTypeMask">
<property name="toolTip">
<string>The mask used to read/write Encounter Type from the metatile's attributes data. If 0, this attribute is disabled.</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The mask used to read/write Encounter Type from the metatile's attributes data. If 0, this attribute is disabled.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
@ -1079,6 +1096,9 @@
</item>
<item row="2" column="1">
<widget class="NoScrollComboBox" name="comboBox_AttributesSize">
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The number of bytes each metatile has for metatile attributes. This is the metadata about each metatile like behvior, layer type, etc.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="editable">
<bool>false</bool>
</property>
@ -1119,7 +1139,7 @@
<item>
<widget class="QCheckBox" name="checkBox_OutputCallback">
<property name="toolTip">
<string>Whether the C data outputted for new tilesets will include the &quot;callback&quot; field</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Whether the C data outputted for new tilesets will include the &amp;quot;callback&amp;quot; field&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Output 'callback' field</string>
@ -1129,7 +1149,7 @@
<item>
<widget class="QCheckBox" name="checkBox_OutputIsCompressed">
<property name="toolTip">
<string>Whether the C data outputted for new tilesets will include the &quot;isCompressed&quot; field</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Whether the C data outputted for new tilesets will include the &amp;quot;isCompressed&amp;quot; field&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Output 'isCompressed' field</string>
@ -1176,7 +1196,7 @@
<rect>
<x>0</x>
<y>0</y>
<width>561</width>
<width>570</width>
<height>840</height>
</rect>
</property>
@ -1204,7 +1224,7 @@
<item row="1" column="1">
<widget class="QLineEdit" name="lineEdit_WarpsIcon">
<property name="toolTip">
<string>The icon that will be used to represent Warp events</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The icon that will be used to represent Warp events&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="clearButtonEnabled">
<bool>true</bool>
@ -1214,7 +1234,7 @@
<item row="4" column="1">
<widget class="QLineEdit" name="lineEdit_HealLocationsIcon">
<property name="toolTip">
<string>The icon that will be used to represent Heal Location events</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The icon that will be used to represent Heal Location events&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="clearButtonEnabled">
<bool>true</bool>
@ -1238,7 +1258,7 @@
<item row="0" column="1">
<widget class="QLineEdit" name="lineEdit_ObjectsIcon">
<property name="toolTip">
<string>The icon that will be used to represent Object events that don't have their own sprite</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The icon that will be used to represent Object events that don't have their own sprite&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="clearButtonEnabled">
<bool>true</bool>
@ -1255,7 +1275,7 @@
<item row="2" column="1">
<widget class="QLineEdit" name="lineEdit_TriggersIcon">
<property name="toolTip">
<string>The icon that will be used to represent Trigger events</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The icon that will be used to represent Trigger events&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="clearButtonEnabled">
<bool>true</bool>
@ -1265,7 +1285,7 @@
<item row="3" column="1">
<widget class="QLineEdit" name="lineEdit_BGsIcon">
<property name="toolTip">
<string>The icon that will be used to represent BG events</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The icon that will be used to represent BG events&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="clearButtonEnabled">
<bool>true</bool>
@ -1339,7 +1359,7 @@
<item row="1" column="2">
<widget class="QToolButton" name="button_RemoveWarpBehavior">
<property name="toolTip">
<string>Remove the current text from the list</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Remove the current text from the list&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>...</string>
@ -1363,7 +1383,7 @@
<item row="0" column="0" colspan="3">
<widget class="QCheckBox" name="checkBox_DisableWarning">
<property name="toolTip">
<string>If checked, Warp Events will not display a warning about incompatible metatile behaviors</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;If checked, Warp Events will not display a warning about incompatible metatile behaviors&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>Disable Warning</string>
@ -1376,7 +1396,7 @@
<item row="4" column="0" colspan="3">
<widget class="NoScrollTextEdit" name="textEdit_WarpBehaviors">
<property name="toolTip">
<string>Metatile Behaviors on this list won't trigger warnings for Warp Events</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Metatile Behaviors on this list won't trigger warnings for Warp Events&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="readOnly">
<bool>true</bool>
@ -1392,7 +1412,7 @@
<item row="1" column="1">
<widget class="QToolButton" name="button_AddWarpBehavior">
<property name="toolTip">
<string>Add the current text to the list</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Add the current text to the list&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string>...</string>
@ -1558,8 +1578,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>561</width>
<height>593</height>
<width>570</width>
<height>499</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout_10">
@ -1605,8 +1625,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>535</width>
<height>531</height>
<width>544</width>
<height>437</height>
</rect>
</property>
<layout class="QFormLayout" name="layout_ProjectPaths">
@ -1647,8 +1667,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>561</width>
<height>593</height>
<width>570</width>
<height>499</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout_19">
@ -1694,8 +1714,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>535</width>
<height>531</height>
<width>544</width>
<height>437</height>
</rect>
</property>
<layout class="QFormLayout" name="layout_Identifiers">

View File

@ -21,7 +21,7 @@
</property>
<layout class="QFormLayout" name="formLayout_4">
<property name="fieldGrowthPolicy">
<enum>QFormLayout::AllNonFixedFieldsGrow</enum>
<enum>QFormLayout::FieldGrowthPolicy::AllNonFixedFieldsGrow</enum>
</property>
<item row="0" column="0">
<widget class="QLabel" name="label">
@ -33,7 +33,7 @@
<item row="0" column="1">
<widget class="QLineEdit" name="config_alias">
<property name="toolTip">
<string>A nickname for this region map that will differentiate it from others (should be unique).</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;A nickname for this region map that will differentiate it from others (should be unique).&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
@ -131,7 +131,7 @@
</size>
</property>
<property name="toolTip">
<string>The height of the tilemap</string>
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The height of the tilemap&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="maximum">
<number>255</number>
@ -148,10 +148,10 @@
<item row="6" column="1">
<widget class="QFrame" name="frame">
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
<enum>QFrame::Shape::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Raised</enum>
<enum>QFrame::Shadow::Raised</enum>
</property>
<layout class="QHBoxLayout" name="horizontalLayout">
<property name="leftMargin">
@ -218,10 +218,10 @@
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Path to the tilemap binary relative to the project root.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
<enum>QFrame::Shape::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Raised</enum>
<enum>QFrame::Shadow::Raised</enum>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_2">
<property name="leftMargin">
@ -269,10 +269,10 @@
<item row="10" column="1">
<widget class="QFrame" name="frame_3">
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
<enum>QFrame::Shape::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
<enum>QFrame::Shadow::Plain</enum>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_3">
<property name="leftMargin">
@ -392,10 +392,10 @@
<item row="2" column="1">
<widget class="QFrame" name="frame_5">
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
<enum>QFrame::Shape::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Raised</enum>
<enum>QFrame::Shadow::Raised</enum>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_5">
<property name="leftMargin">
@ -487,7 +487,7 @@
<item>
<spacer name="horizontalSpacer_6">
<property name="orientation">
<enum>Qt::Horizontal</enum>
<enum>Qt::Orientation::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
@ -517,7 +517,7 @@
<item>
<spacer name="horizontalSpacer_3">
<property name="orientation">
<enum>Qt::Horizontal</enum>
<enum>Qt::Orientation::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
@ -590,7 +590,7 @@
<item>
<spacer name="horizontalSpacer_7">
<property name="orientation">
<enum>Qt::Horizontal</enum>
<enum>Qt::Orientation::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
@ -617,7 +617,7 @@
<item>
<spacer name="horizontalSpacer_5">
<property name="orientation">
<enum>Qt::Horizontal</enum>
<enum>Qt::Orientation::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
@ -646,7 +646,7 @@
<item row="9" column="0">
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
<enum>Qt::Orientation::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
@ -659,10 +659,10 @@
<item row="9" column="1">
<widget class="QDialogButtonBox" name="buttonBox">
<property name="orientation">
<enum>Qt::Horizontal</enum>
<enum>Qt::Orientation::Horizontal</enum>
</property>
<property name="standardButtons">
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
<set>QDialogButtonBox::StandardButton::Cancel|QDialogButtonBox::StandardButton::Ok</set>
</property>
</widget>
</item>

View File

@ -9,6 +9,7 @@ namespace Util {
int roundUp(int numToRound, int multiple);
QString toDefineCase(QString input);
QString toHexString(uint32_t value, int minLength = 0);
QString toHtmlParagraph(const QString &text);
Qt::Orientations getOrientation(bool xflip, bool yflip);
}

View File

@ -43,6 +43,10 @@ QString Util::toHexString(uint32_t value, int minLength) {
return "0x" + QString("%1").arg(value, minLength, 16, QChar('0')).toUpper();
}
QString Util::toHtmlParagraph(const QString &text) {
return QString("<html><head/><body><p>%1</p></body></html>").arg(text);
}
Qt::Orientations Util::getOrientation(bool xflip, bool yflip) {
Qt::Orientations flags;
if (xflip) flags |= Qt::Orientation::Horizontal;

View File

@ -1,6 +1,7 @@
#include "customattributestable.h"
#include "parseutil.h"
#include "noscrollspinbox.h"
#include "utility.h"
#include <QHeaderView>
#include <QScrollBar>
@ -96,7 +97,7 @@ int CustomAttributesTable::addAttribute(const QString &key, const QJsonValue &va
keyItem->setFlags(Qt::ItemIsEnabled);
keyItem->setData(DataRole::JsonType, type); // Record the type for writing to the file
keyItem->setTextAlignment(Qt::AlignCenter);
keyItem->setToolTip(key); // Display name as tool tip in case it's too long to see in the cell
keyItem->setToolTip(Util::toHtmlParagraph(key)); // Display name as tool tip in case it's too long to see in the cell
this->setItem(rowIndex, Column::Key, keyItem);
// Add value to table

View File

@ -209,15 +209,16 @@ void ObjectFrame::setup() {
// sprite combo
QFormLayout *l_form_sprite = new QFormLayout();
this->combo_sprite = new NoScrollComboBox(this);
this->combo_sprite->setToolTip("The sprite graphics to use for this object.");
static const QString combo_sprite_toolTip = Util::toHtmlParagraph("The sprite graphics to use for this object.");
this->combo_sprite->setToolTip(combo_sprite_toolTip);
l_form_sprite->addRow("Sprite", this->combo_sprite);
this->layout_contents->addLayout(l_form_sprite);
// movement
QFormLayout *l_form_movement = new QFormLayout();
this->combo_movement = new NoScrollComboBox(this);
this->combo_movement->setToolTip("The object's natural movement behavior when\n"
"the player is not interacting with it.");
static const QString combo_movement_toolTip = Util::toHtmlParagraph("The object's natural movement behavior when the player is not interacting with it.");
this->combo_movement->setToolTip(combo_movement_toolTip);
l_form_movement->addRow("Movement", this->combo_movement);
this->layout_contents->addLayout(l_form_movement);
@ -226,15 +227,15 @@ void ObjectFrame::setup() {
this->spinner_radius_x = new NoScrollSpinBox(this);
this->spinner_radius_x->setMinimum(0);
this->spinner_radius_x->setMaximum(255);
this->spinner_radius_x->setToolTip("The maximum number of metatiles this object\n"
"is allowed to move left or right during its\n"
"normal movement behavior actions.");
static const QString spinner_radius_x_toolTip = Util::toHtmlParagraph("The maximum number of metatiles this object is allowed to move left "
"or right during its normal movement behavior actions.");
this->spinner_radius_x->setToolTip(spinner_radius_x_toolTip);
this->spinner_radius_y = new NoScrollSpinBox(this);
this->spinner_radius_y->setMinimum(0);
this->spinner_radius_y->setMaximum(255);
this->spinner_radius_y->setToolTip("The maximum number of metatiles this object\n"
"is allowed to move up or down during its\n"
"normal movement behavior actions.");
static const QString spinner_radius_y_toolTip = Util::toHtmlParagraph("The maximum number of metatiles this object is allowed to move up "
"or down during its normal movement behavior actions.");
this->spinner_radius_y->setToolTip(spinner_radius_y_toolTip);
l_form_radii_xy->addRow("Movement Radius X", this->spinner_radius_x);
l_form_radii_xy->addRow("Movement Radius Y", this->spinner_radius_y);
this->layout_contents->addLayout(l_form_radii_xy);
@ -242,11 +243,13 @@ void ObjectFrame::setup() {
// script
QFormLayout *l_form_script = new QFormLayout();
this->combo_script = new NoScrollComboBox(this);
this->combo_script->setToolTip("The script which is executed with this event.");
static const QString combo_script_toolTip = Util::toHtmlParagraph("The script that is executed with this event.");
this->combo_script->setToolTip(combo_script_toolTip);
// Add button next to combo which opens combo's current script.
this->button_script = new QToolButton(this);
this->button_script->setToolTip("Go to this script definition in text editor.");
static const QString button_script_toolTip = Util::toHtmlParagraph("Go to this script definition in text editor.");
this->button_script->setToolTip(button_script_toolTip);
this->button_script->setFixedSize(this->combo_script->height(), this->combo_script->height());
this->button_script->setIcon(QFileIconProvider().icon(QFileIconProvider::File));
@ -261,24 +264,25 @@ void ObjectFrame::setup() {
// event flag
QFormLayout *l_form_flag = new QFormLayout();
this->combo_flag = new NoScrollComboBox(this);
this->combo_flag->setToolTip("The flag which hides the object when set.");
static const QString combo_flag_toolTip = Util::toHtmlParagraph("The flag that hides the object when set.");
this->combo_flag->setToolTip(combo_flag_toolTip);
l_form_flag->addRow("Event Flag", this->combo_flag);
this->layout_contents->addLayout(l_form_flag);
// trainer type
QFormLayout *l_form_trainer = new QFormLayout();
this->combo_trainer_type = new NoScrollComboBox(this);
this->combo_trainer_type->setToolTip("The trainer type of this object event.\n"
"If it is not a trainer, use NONE. SEE ALL DIRECTIONS\n"
"should only be used with a sight radius of 1.");
static const QString combo_trainer_type_toolTip = Util::toHtmlParagraph("The trainer type of this object event. If it is not a trainer, use NONE. "
"SEE ALL DIRECTIONS should only be used with a sight radius of 1.");
this->combo_trainer_type->setToolTip(combo_trainer_type_toolTip);
l_form_trainer->addRow("Trainer Type", this->combo_trainer_type);
this->layout_contents->addLayout(l_form_trainer);
// sight radius / berry tree id
QFormLayout *l_form_radius_treeid = new QFormLayout();
this->combo_radius_treeid = new NoScrollComboBox(this);
this->combo_radius_treeid->setToolTip("The maximum sight range of a trainer,\n"
"OR the unique id of the berry tree.");
static const QString combo_radius_treeid_toolTip = Util::toHtmlParagraph("The maximum sight range of a trainer, OR the unique id of the berry tree.");
this->combo_radius_treeid->setToolTip(combo_radius_treeid_toolTip);
l_form_radius_treeid->addRow("Sight Radius / Berry Tree ID", this->combo_radius_treeid);
this->layout_contents->addLayout(l_form_radius_treeid);
@ -420,14 +424,16 @@ void CloneObjectFrame::setup() {
// clone map id combo
QFormLayout *l_form_dest_map = new QFormLayout();
this->combo_target_map = new NoScrollComboBox(this);
this->combo_target_map->setToolTip("The name of the map that the object being cloned is on.");
static const QString combo_target_map_toolTip = Util::toHtmlParagraph("The name of the map that the object being cloned is on.");
this->combo_target_map->setToolTip(combo_target_map_toolTip);
l_form_dest_map->addRow("Target Map", this->combo_target_map);
this->layout_contents->addLayout(l_form_dest_map);
// clone local id spinbox
QFormLayout *l_form_dest_id = new QFormLayout();
this->spinner_target_id = new NoScrollSpinBox(this);
this->spinner_target_id->setToolTip("event_object ID of the object being cloned.");
static const QString spinner_target_id_toolTip = Util::toHtmlParagraph("event_object ID of the object being cloned.");
this->spinner_target_id->setToolTip(spinner_target_id_toolTip);
l_form_dest_id->addRow("Target Local ID", this->spinner_target_id);
this->layout_contents->addLayout(l_form_dest_id);
@ -497,21 +503,21 @@ void WarpFrame::setup() {
// desination map combo
QFormLayout *l_form_dest_map = new QFormLayout();
this->combo_dest_map = new NoScrollComboBox(this);
this->combo_dest_map->setToolTip("The destination map name of the warp.");
static const QString combo_dest_map_toolTip = Util::toHtmlParagraph("The destination map name of the warp.");
this->combo_dest_map->setToolTip(combo_dest_map_toolTip);
l_form_dest_map->addRow("Destination Map", this->combo_dest_map);
this->layout_contents->addLayout(l_form_dest_map);
// desination warp id
QFormLayout *l_form_dest_warp = new QFormLayout();
this->combo_dest_warp = new NoScrollComboBox(this);
this->combo_dest_warp->setToolTip("The warp id on the destination map.");
static const QString combo_dest_warp_toolTip = Util::toHtmlParagraph("The warp id on the destination map.");
this->combo_dest_warp->setToolTip(combo_dest_warp_toolTip);
l_form_dest_warp->addRow("Destination Warp", this->combo_dest_warp);
this->layout_contents->addLayout(l_form_dest_warp);
// warning
static const QString warningText = "Warning:\n"
"This warp event is not positioned on a metatile with a warp behavior.\n"
"Click this warning for more details.";
auto warningText = QStringLiteral("Warning:\nThis warp event is not positioned on a metatile with a warp behavior.\nClick this warning for more details.");
QVBoxLayout *l_vbox_warning = new QVBoxLayout();
this->warning = new QPushButton(warningText, this);
this->warning->setFlat(true);
@ -580,22 +586,25 @@ void TriggerFrame::setup() {
// script combo
QFormLayout *l_form_script = new QFormLayout();
this->combo_script = new NoScrollComboBox(this);
this->combo_script->setToolTip("The script which is executed with this event.");
static const QString combo_script_toolTip = Util::toHtmlParagraph("The script that is executed with this event.");
this->combo_script->setToolTip(combo_script_toolTip);
l_form_script->addRow("Script", this->combo_script);
this->layout_contents->addLayout(l_form_script);
// var combo
QFormLayout *l_form_var = new QFormLayout();
this->combo_var = new NoScrollComboBox(this);
this->combo_var->setToolTip("The variable by which the script is triggered.\n"
"The script is triggered when this variable's value matches 'Var Value'.");
static const QString combo_var_toolTip = Util::toHtmlParagraph("The variable by which the script is triggered. "
"The script is triggered when this variable's value matches 'Var Value'.");
this->combo_var->setToolTip(combo_var_toolTip);
l_form_var->addRow("Var", this->combo_var);
this->layout_contents->addLayout(l_form_var);
// var value combo
QFormLayout *l_form_var_val = new QFormLayout();
this->combo_var_value = new NoScrollComboBox(this);
this->combo_var_value->setToolTip("The variable's value which triggers the script.");
static const QString combo_var_value_toolTip = Util::toHtmlParagraph("The variable's value that triggers the script.");
this->combo_var_value->setToolTip(combo_var_value_toolTip);
l_form_var_val->addRow("Var Value", this->combo_var_value);
this->layout_contents->addLayout(l_form_var_val);
@ -668,7 +677,8 @@ void WeatherTriggerFrame::setup() {
// weather combo
QFormLayout *l_form_weather = new QFormLayout();
this->combo_weather = new NoScrollComboBox(this);
this->combo_weather->setToolTip("The weather that starts when the player steps on this spot.");
static const QString combo_weather_toolTip = Util::toHtmlParagraph("The weather that starts when the player steps on this spot.");
this->combo_weather->setToolTip(combo_weather_toolTip);
l_form_weather->addRow("Weather", this->combo_weather);
this->layout_contents->addLayout(l_form_weather);
@ -719,15 +729,16 @@ void SignFrame::setup() {
// facing dir combo
QFormLayout *l_form_facing_dir = new QFormLayout();
this->combo_facing_dir = new NoScrollComboBox(this);
this->combo_facing_dir->setToolTip("The direction which the player must be facing\n"
"to be able to interact with this event.");
static const QString combo_facing_dir_toolTip = Util::toHtmlParagraph("The direction that the player must be facing to be able to interact with this event.");
this->combo_facing_dir->setToolTip(combo_facing_dir_toolTip);
l_form_facing_dir->addRow("Player Facing Direction", this->combo_facing_dir);
this->layout_contents->addLayout(l_form_facing_dir);
// script combo
QFormLayout *l_form_script = new QFormLayout();
this->combo_script = new NoScrollComboBox(this);
this->combo_script->setToolTip("The script which is executed with this event.");
static const QString combo_script_toolTip = Util::toHtmlParagraph("The script that is executed with this event.");
this->combo_script->setToolTip(combo_script_toolTip);
l_form_script->addRow("Script", this->combo_script);
this->layout_contents->addLayout(l_form_script);
@ -790,14 +801,16 @@ void HiddenItemFrame::setup() {
// item combo
QFormLayout *l_form_item = new QFormLayout();
this->combo_item = new NoScrollComboBox(this);
this->combo_item->setToolTip("The item to be given.");
static const QString combo_item_toolTip = Util::toHtmlParagraph("The item to be given.");
this->combo_item->setToolTip(combo_item_toolTip);
l_form_item->addRow("Item", this->combo_item);
this->layout_contents->addLayout(l_form_item);
// flag combo
QFormLayout *l_form_flag = new QFormLayout();
this->combo_flag = new NoScrollComboBox(this);
this->combo_flag->setToolTip("The flag which is set when the hidden item is picked up.");
static const QString combo_flag_toolTip = Util::toHtmlParagraph("The flag that is set when the hidden item is picked up.");
this->combo_flag->setToolTip(combo_flag_toolTip);
l_form_flag->addRow("Flag", this->combo_flag);
this->layout_contents->addLayout(l_form_flag);
@ -806,7 +819,8 @@ void HiddenItemFrame::setup() {
QFormLayout *l_form_quantity = new QFormLayout(hideable_quantity);
l_form_quantity->setContentsMargins(0, 0, 0, 0);
this->spinner_quantity = new NoScrollSpinBox(hideable_quantity);
this->spinner_quantity->setToolTip("The number of items received when the hidden item is picked up.");
static const QString spinner_quantity_toolTip = Util::toHtmlParagraph("The number of items received when the hidden item is picked up.");
this->spinner_quantity->setToolTip(spinner_quantity_toolTip);
this->spinner_quantity->setMinimum(0x01);
this->spinner_quantity->setMaximum(0xFF);
l_form_quantity->addRow("Quantity", this->spinner_quantity);
@ -817,7 +831,8 @@ void HiddenItemFrame::setup() {
QFormLayout *l_form_itemfinder = new QFormLayout(hideable_itemfinder);
l_form_itemfinder->setContentsMargins(0, 0, 0, 0);
this->check_itemfinder = new QCheckBox(hideable_itemfinder);
this->check_itemfinder->setToolTip("If checked, hidden item can only be picked up using the Itemfinder");
static const QString check_itemfinder_toolTip = Util::toHtmlParagraph("If checked, hidden item can only be picked up using the Itemfinder");
this->check_itemfinder->setToolTip(check_itemfinder_toolTip);
l_form_itemfinder->addRow("Requires Itemfinder", this->check_itemfinder);
this->layout_contents->addWidget(hideable_itemfinder);
@ -906,9 +921,9 @@ void SecretBaseFrame::setup() {
// item combo
QFormLayout *l_form_base_id = new QFormLayout();
this->combo_base_id = new NoScrollComboBox(this);
this->combo_base_id->setToolTip("The secret base id which is inside this secret\n"
"base entrance. Secret base ids are meant to be\n"
"unique to each and every secret base entrance.");
static const QString combo_base_id_toolTip = Util::toHtmlParagraph("The secret base id that is inside this secret base entrance. "
"Secret base ids are meant to be unique to each and every secret base entrance.");
this->combo_base_id->setToolTip(combo_base_id_toolTip);
l_form_base_id->addRow("Secret Base", this->combo_base_id);
this->layout_contents->addLayout(l_form_base_id);
@ -960,7 +975,8 @@ void HealLocationFrame::setup() {
// ID
QFormLayout *l_form_id = new QFormLayout();
this->line_edit_id = new QLineEdit(this);
this->line_edit_id->setToolTip("The unique identifier for this heal location.");
static const QString line_edit_id_toolTip = Util::toHtmlParagraph("The unique identifier for this heal location.");
this->line_edit_id->setToolTip(line_edit_id_toolTip);
this->line_edit_id->setPlaceholderText(projectConfig.getIdentifier(ProjectIdentifier::define_heal_locations_prefix) + "MY_MAP");
l_form_id->addRow("ID", this->line_edit_id);
this->layout_contents->addLayout(l_form_id);
@ -970,7 +986,8 @@ void HealLocationFrame::setup() {
QFormLayout *l_form_respawn_map = new QFormLayout(hideable_respawn_map);
l_form_respawn_map->setContentsMargins(0, 0, 0, 0);
this->combo_respawn_map = new NoScrollComboBox(hideable_respawn_map);
this->combo_respawn_map->setToolTip("The map where the player will respawn after whiteout.");
static const QString combo_respawn_map_toolTip = Util::toHtmlParagraph("The map where the player will respawn after whiteout.");
this->combo_respawn_map->setToolTip(combo_respawn_map_toolTip);
l_form_respawn_map->addRow("Respawn Map", this->combo_respawn_map);
this->layout_contents->addWidget(hideable_respawn_map);
@ -979,8 +996,8 @@ void HealLocationFrame::setup() {
QFormLayout *l_form_respawn_npc = new QFormLayout(hideable_respawn_npc);
l_form_respawn_npc->setContentsMargins(0, 0, 0, 0);
this->combo_respawn_npc = new NoScrollComboBox(hideable_respawn_npc);
this->combo_respawn_npc->setToolTip("event_object ID of the NPC the player interacts with\n"
"upon respawning after whiteout.");
static const QString combo_respawn_npc_toolTip = Util::toHtmlParagraph("event_object ID of the NPC the player interacts with upon respawning after whiteout.");
this->combo_respawn_npc->setToolTip(combo_respawn_npc_toolTip);
l_form_respawn_npc->addRow("Respawn NPC", this->combo_respawn_npc);
this->layout_contents->addWidget(hideable_respawn_npc);

View File

@ -93,7 +93,7 @@ void MapListToolBar::setEmptyFoldersVisible(bool visible) {
}
// Update tool tip to reflect what will happen if the button is pressed.
const QString toolTip = QString("%1 empty folders in the list.").arg(visible ? "Hide" : "Show");
const QString toolTip = Util::toHtmlParagraph(QString("%1 empty folders in the list.").arg(visible ? "Hide" : "Show"));
ui->button_ToggleEmptyFolders->setToolTip(toolTip);
const QSignalBlocker b(ui->button_ToggleEmptyFolders);

View File

@ -173,7 +173,10 @@ void ProjectSettingsEditor::initUi() {
bool ProjectSettingsEditor::disableParsedSetting(QWidget * widget, const QString &identifier, const QString &filepath) {
if (project && project->disabledSettingsNames.contains(identifier)) {
widget->setEnabled(false);
widget->setToolTip(QString("This value has been set using '%1' in %2").arg(identifier).arg(filepath));
QString toolTip = QString("This value has been set using '%1' in %2").arg(identifier).arg(filepath);
if (!widget->toolTip().isEmpty())
toolTip.prepend(QString("%1\n\n").arg(widget->toolTip()));
widget->setToolTip(Util::toHtmlParagraph(toolTip));
return true;
}
return false;