mirror of
https://github.com/RetroDECK/Duckstation.git
synced 2024-12-03 19:15:40 +00:00
f835db6b4f
Work done : ** Made the columns sortable (someone asked for this GH I think) ** Moved the Add to Watch button to under the search parameters, and renamed it. ** Made the selection work on a block level so we can block "add results" and block "Remove Watch" on multiple entries ** Made the description show the raw code - so either 3xxxxxxx, 8xxxxxxx, 9xxxxxxx depending on the Data Size and the memory being under 0x200000. This can be edited still. ** Changed the Watch value field to take a hex number in the form 0xX as well as a decimal number. ** Moved the freeze box to the right column, I originally did this prior to finding out about ContiguousSelection and I think it makes more sense next to the value you want to freeze ** Removed the message about 5000 results limitation (it made searching painful) and added a text box showing it permanently along with the number of results (which you can observe going down as you continue the search) ** Hidden the "Save Watch" & "Load Watch" buttons, they have no functionality (yet) and making them invisible in the mean time makes it less confusing.
686 lines
23 KiB
XML
686 lines
23 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<ui version="4.0">
|
|
<class>CheatManagerDialog</class>
|
|
<widget class="QDialog" name="CheatManagerDialog">
|
|
<property name="geometry">
|
|
<rect>
|
|
<x>0</x>
|
|
<y>0</y>
|
|
<width>1046</width>
|
|
<height>778</height>
|
|
</rect>
|
|
</property>
|
|
<property name="windowTitle">
|
|
<string>Cheat Manager</string>
|
|
</property>
|
|
<layout class="QGridLayout" name="gridLayout">
|
|
<item row="0" column="0">
|
|
<widget class="QTabWidget" name="tabWidget">
|
|
<property name="currentIndex">
|
|
<number>0</number>
|
|
</property>
|
|
<widget class="QWidget" name="tab">
|
|
<attribute name="title">
|
|
<string>Cheat List</string>
|
|
</attribute>
|
|
<layout class="QGridLayout" name="gridLayout_2">
|
|
<item row="1" column="0">
|
|
<layout class="QHBoxLayout" name="horizontalLayout">
|
|
<item>
|
|
<widget class="QPushButton" name="cheatListNewCategory">
|
|
<property name="text">
|
|
<string>&Add Group...</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QPushButton" name="cheatListAdd">
|
|
<property name="text">
|
|
<string>&Add Code...</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QPushButton" name="cheatListEdit">
|
|
<property name="text">
|
|
<string>&Edit Code...</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QPushButton" name="cheatListRemove">
|
|
<property name="enabled">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="text">
|
|
<string>&Delete Code</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QPushButton" name="cheatListActivate">
|
|
<property name="enabled">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="text">
|
|
<string>Activate</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QPushButton" name="cheatListImport">
|
|
<property name="text">
|
|
<string>Import...</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QPushButton" name="cheatListExport">
|
|
<property name="enabled">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="text">
|
|
<string>Export...</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QPushButton" name="cheatListClear">
|
|
<property name="text">
|
|
<string>Clear</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QPushButton" name="cheatListReset">
|
|
<property name="text">
|
|
<string>Reset</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<spacer name="horizontalSpacer">
|
|
<property name="orientation">
|
|
<enum>Qt::Horizontal</enum>
|
|
</property>
|
|
<property name="sizeHint" stdset="0">
|
|
<size>
|
|
<width>40</width>
|
|
<height>20</height>
|
|
</size>
|
|
</property>
|
|
</spacer>
|
|
</item>
|
|
</layout>
|
|
</item>
|
|
<item row="0" column="0">
|
|
<widget class="QTreeWidget" name="cheatList">
|
|
<property name="selectionMode">
|
|
<enum>QAbstractItemView::SingleSelection</enum>
|
|
</property>
|
|
<property name="selectionBehavior">
|
|
<enum>QAbstractItemView::SelectRows</enum>
|
|
</property>
|
|
<column>
|
|
<property name="text">
|
|
<string>Name</string>
|
|
</property>
|
|
</column>
|
|
<column>
|
|
<property name="text">
|
|
<string>Type</string>
|
|
</property>
|
|
</column>
|
|
<column>
|
|
<property name="text">
|
|
<string>Activation</string>
|
|
</property>
|
|
</column>
|
|
<column>
|
|
<property name="text">
|
|
<string>Instructions</string>
|
|
</property>
|
|
</column>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
<widget class="QWidget" name="tab_2">
|
|
<attribute name="title">
|
|
<string>Memory Scanner</string>
|
|
</attribute>
|
|
<layout class="QGridLayout" name="gridLayout_3">
|
|
<item row="0" column="0">
|
|
<widget class="QSplitter" name="splitter">
|
|
<property name="orientation">
|
|
<enum>Qt::Vertical</enum>
|
|
</property>
|
|
<widget class="QWidget" name="layoutWidget2">
|
|
<layout class="QHBoxLayout" name="horizontalLayout_5">
|
|
<item>
|
|
<widget class="QTableWidget" name="scanTable">
|
|
<property name="alternatingRowColors">
|
|
<bool>true</bool>
|
|
</property>
|
|
<property name="selectionMode">
|
|
<enum>QAbstractItemView::ContiguousSelection</enum>
|
|
</property>
|
|
<property name="selectionBehavior">
|
|
<enum>QAbstractItemView::SelectRows</enum>
|
|
</property>
|
|
<property name="showGrid">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="sortingEnabled">
|
|
<bool>true</bool>
|
|
</property>
|
|
<attribute name="horizontalHeaderHighlightSections">
|
|
<bool>false</bool>
|
|
</attribute>
|
|
<attribute name="verticalHeaderVisible">
|
|
<bool>false</bool>
|
|
</attribute>
|
|
<column>
|
|
<property name="text">
|
|
<string>Address</string>
|
|
</property>
|
|
</column>
|
|
<column>
|
|
<property name="text">
|
|
<string>Value</string>
|
|
</property>
|
|
</column>
|
|
<column>
|
|
<property name="text">
|
|
<string>Previous Value</string>
|
|
</property>
|
|
</column>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<layout class="QVBoxLayout" name="verticalLayout">
|
|
<item>
|
|
<widget class="QGroupBox" name="groupBox_2">
|
|
<property name="title">
|
|
<string>Search Parameters</string>
|
|
</property>
|
|
<layout class="QFormLayout" name="formLayout">
|
|
<item row="0" column="0">
|
|
<widget class="QLabel" name="label">
|
|
<property name="text">
|
|
<string>Value:</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="0" column="1">
|
|
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
|
<item>
|
|
<widget class="QLineEdit" name="scanValue"/>
|
|
</item>
|
|
<item>
|
|
<widget class="QComboBox" name="scanValueSigned">
|
|
<property name="currentIndex">
|
|
<number>1</number>
|
|
</property>
|
|
<item>
|
|
<property name="text">
|
|
<string>Signed</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Unsigned</string>
|
|
</property>
|
|
</item>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QComboBox" name="scanValueBase">
|
|
<property name="currentIndex">
|
|
<number>1</number>
|
|
</property>
|
|
<item>
|
|
<property name="text">
|
|
<string>Decimal</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Hex</string>
|
|
</property>
|
|
</item>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</item>
|
|
<item row="2" column="0">
|
|
<widget class="QLabel" name="label_3">
|
|
<property name="text">
|
|
<string>Data Size:</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="1">
|
|
<widget class="QComboBox" name="scanSize">
|
|
<property name="currentIndex">
|
|
<number>1</number>
|
|
</property>
|
|
<item>
|
|
<property name="text">
|
|
<string>Byte (1 byte)</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Halfword (2 bytes)</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Word (4 bytes)</string>
|
|
</property>
|
|
</item>
|
|
</widget>
|
|
</item>
|
|
<item row="4" column="0">
|
|
<widget class="QLabel" name="label_2">
|
|
<property name="text">
|
|
<string>Operator:</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="4" column="1">
|
|
<widget class="QComboBox" name="scanOperator">
|
|
<item>
|
|
<property name="text">
|
|
<string>Equal to...</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Not Equal to...</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Greater Than...</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Greater or Equal...</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Less Than...</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Less or Equal...</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Increased By...</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Decreased By...</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Changed By...</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Equal to Previous (Unchanged Value)</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Not Equal to Previous (Changed Value)</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Greater Than Previous</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Greater or Equal to Previous</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Less Than Previous</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Less or Equal to Previous</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Any Value</string>
|
|
</property>
|
|
</item>
|
|
</widget>
|
|
</item>
|
|
<item row="5" column="0">
|
|
<widget class="QLabel" name="label_4">
|
|
<property name="text">
|
|
<string>Start Address:</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="5" column="1">
|
|
<widget class="QLineEdit" name="scanStartAddress"/>
|
|
</item>
|
|
<item row="6" column="0">
|
|
<widget class="QLabel" name="label_5">
|
|
<property name="text">
|
|
<string>End Address:</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="6" column="1">
|
|
<widget class="QLineEdit" name="scanEndAddress"/>
|
|
</item>
|
|
<item row="7" column="0">
|
|
<widget class="QLabel" name="label_6">
|
|
<property name="text">
|
|
<string>Preset Range:</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="7" column="1">
|
|
<widget class="QComboBox" name="scanPresetRange">
|
|
<item>
|
|
<property name="text">
|
|
<string>RAM</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Scratchpad</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>BIOS</string>
|
|
</property>
|
|
</item>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<layout class="QHBoxLayout" name="horizontalLayout_3">
|
|
<item>
|
|
<widget class="QPushButton" name="scanNewSearch">
|
|
<property name="text">
|
|
<string>New Search</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QPushButton" name="scanSearchAgain">
|
|
<property name="enabled">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="text">
|
|
<string>Search Again</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QPushButton" name="scanResetSearch">
|
|
<property name="enabled">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="text">
|
|
<string>Clear Results</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</item>
|
|
<item>
|
|
<widget class="QPushButton" name="scanAddWatch">
|
|
<property name="enabled">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="text">
|
|
<string>Add Selected Results To Watch List</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<layout class="QHBoxLayout" name="horizontalLayout_6">
|
|
<item>
|
|
<widget class="QTextEdit" name="scanResults">
|
|
<property name="enabled">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="maximumSize">
|
|
<size>
|
|
<width>300</width>
|
|
<height>30</height>
|
|
</size>
|
|
</property>
|
|
<property name="inputMethodHints">
|
|
<set>Qt::ImhNone</set>
|
|
</property>
|
|
<property name="frameShape">
|
|
<enum>QFrame::NoFrame</enum>
|
|
</property>
|
|
<property name="verticalScrollBarPolicy">
|
|
<enum>Qt::ScrollBarAlwaysOff</enum>
|
|
</property>
|
|
<property name="horizontalScrollBarPolicy">
|
|
<enum>Qt::ScrollBarAlwaysOff</enum>
|
|
</property>
|
|
<property name="readOnly">
|
|
<bool>true</bool>
|
|
</property>
|
|
<property name="textInteractionFlags">
|
|
<set>Qt::NoTextInteraction</set>
|
|
</property>
|
|
<property name="text">
|
|
<string>Number of Results (Display limited to first 5000) : </string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QTextEdit" name="scanResultsCount">
|
|
<property name="enabled">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="maximumSize">
|
|
<size>
|
|
<width>60</width>
|
|
<height>30</height>
|
|
</size>
|
|
</property>
|
|
<property name="inputMethodHints">
|
|
<set>Qt::ImhNone</set>
|
|
</property>
|
|
<property name="frameShape">
|
|
<enum>QFrame::NoFrame</enum>
|
|
</property>
|
|
<property name="verticalScrollBarPolicy">
|
|
<enum>Qt::ScrollBarAlwaysOff</enum>
|
|
</property>
|
|
<property name="horizontalScrollBarPolicy">
|
|
<enum>Qt::ScrollBarAlwaysOff</enum>
|
|
</property>
|
|
<property name="readOnly">
|
|
<bool>true</bool>
|
|
</property>
|
|
<property name="acceptRichText">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="textInteractionFlags">
|
|
<set>Qt::NoTextInteraction</set>
|
|
</property>
|
|
<property name="placeholderText">
|
|
<string notr="true"/>
|
|
</property>
|
|
<property name="text">
|
|
<string>0</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</item>
|
|
<item>
|
|
<spacer name="verticalSpacer">
|
|
<property name="orientation">
|
|
<enum>Qt::Vertical</enum>
|
|
</property>
|
|
<property name="sizeHint" stdset="0">
|
|
<size>
|
|
<width>20</width>
|
|
<height>40</height>
|
|
</size>
|
|
</property>
|
|
</spacer>
|
|
</item>
|
|
</layout>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
<widget class="QWidget" name="layoutWidget">
|
|
<layout class="QVBoxLayout" name="verticalLayout_2">
|
|
<item>
|
|
<widget class="QTableWidget" name="watchTable">
|
|
<property name="alternatingRowColors">
|
|
<bool>true</bool>
|
|
</property>
|
|
<property name="selectionMode">
|
|
<enum>QAbstractItemView::ContiguousSelection</enum>
|
|
</property>
|
|
<property name="selectionBehavior">
|
|
<enum>QAbstractItemView::SelectRows</enum>
|
|
</property>
|
|
<property name="showGrid">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="sortingEnabled">
|
|
<bool>true</bool>
|
|
</property>
|
|
<attribute name="horizontalHeaderHighlightSections">
|
|
<bool>false</bool>
|
|
</attribute>
|
|
<attribute name="verticalHeaderVisible">
|
|
<bool>false</bool>
|
|
</attribute>
|
|
<column>
|
|
<property name="text">
|
|
<string>Simple Cheat Code or Description</string>
|
|
</property>
|
|
</column>
|
|
<column>
|
|
<property name="text">
|
|
<string>Address</string>
|
|
</property>
|
|
</column>
|
|
<column>
|
|
<property name="text">
|
|
<string>Type</string>
|
|
</property>
|
|
</column>
|
|
<column>
|
|
<property name="text">
|
|
<string>Value</string>
|
|
</property>
|
|
</column>
|
|
<column>
|
|
<property name="text">
|
|
<string>Freeze</string>
|
|
</property>
|
|
</column>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<layout class="QHBoxLayout" name="horizontalLayout_4">
|
|
<item>
|
|
<widget class="QPushButton" name="scanAddManualAddress">
|
|
<property name="text">
|
|
<string>Add Manual Address</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QPushButton" name="scanRemoveWatch">
|
|
<property name="enabled">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="text">
|
|
<string>Remove Selected Entries from Watch List</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QPushButton" name="scanLoadWatch">
|
|
<property name="enabled">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="visible">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="text">
|
|
<string>Load Watch</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QPushButton" name="scanSaveWatch">
|
|
<property name="enabled">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="visible">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="text">
|
|
<string>Save Watch</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<spacer name="horizontalSpacer_2">
|
|
<property name="orientation">
|
|
<enum>Qt::Horizontal</enum>
|
|
</property>
|
|
<property name="sizeHint" stdset="0">
|
|
<size>
|
|
<width>40</width>
|
|
<height>20</height>
|
|
</size>
|
|
</property>
|
|
</spacer>
|
|
</item>
|
|
</layout>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
<resources/>
|
|
<connections/>
|
|
</ui>
|