mirror of
https://github.com/283375/arcaea-offline-pyside-ui.git
synced 2025-07-01 12:26:26 +00:00
wip: ScoreEditor
This commit is contained in:
@ -6,42 +6,32 @@
|
|||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>365</width>
|
<width>450</width>
|
||||||
<height>253</height>
|
<height>350</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="windowTitle">
|
<property name="windowTitle">
|
||||||
<string notr="true">ScoreEditor</string>
|
<string notr="true">ScoreEditor</string>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QFormLayout" name="formLayout">
|
<layout class="QGridLayout" name="gridLayout">
|
||||||
<property name="fieldGrowthPolicy">
|
<item row="2" column="2">
|
||||||
<enum>QFormLayout::ExpandingFieldsGrow</enum>
|
<widget class="QCheckBox" name="pureNoneCheckBox">
|
||||||
</property>
|
|
||||||
<property name="labelAlignment">
|
|
||||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
|
||||||
</property>
|
|
||||||
<item row="0" column="0">
|
|
||||||
<widget class="QLabel" name="label">
|
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>formLabel.score</string>
|
<string>setNone</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="0" column="1">
|
<item row="9" column="0">
|
||||||
<widget class="FocusSelectAllLineEdit" name="scoreLineEdit">
|
<widget class="QLabel" name="label_7">
|
||||||
<property name="inputMask">
|
|
||||||
<string notr="true">B9'999'999;_</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="1" column="0">
|
|
||||||
<widget class="QLabel" name="label_2">
|
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string notr="true">PURE</string>
|
<string notr="true">Modifier</string>
|
||||||
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="1">
|
<item row="2" column="1">
|
||||||
<widget class="QSpinBox" name="pureSpinBox">
|
<widget class="QSpinBox" name="pureSpinBox">
|
||||||
<property name="minimumSize">
|
<property name="minimumSize">
|
||||||
<size>
|
<size>
|
||||||
@ -54,81 +44,44 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="10" column="2">
|
||||||
|
<widget class="QCheckBox" name="clearTypeNoneCheckBox">
|
||||||
|
<property name="text">
|
||||||
|
<string>setNone</string>
|
||||||
|
</property>
|
||||||
|
<property name="checked">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item row="2" column="0">
|
<item row="2" column="0">
|
||||||
<widget class="QLabel" name="label_3">
|
<widget class="QLabel" name="label_2">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string notr="true">FAR</string>
|
<string notr="true">PURE</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
<property name="alignment">
|
||||||
</item>
|
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||||
<item row="2" column="1">
|
|
||||||
<widget class="QSpinBox" name="farSpinBox">
|
|
||||||
<property name="minimumSize">
|
|
||||||
<size>
|
|
||||||
<width>100</width>
|
|
||||||
<height>0</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
<property name="maximum">
|
|
||||||
<number>0</number>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="3" column="0">
|
|
||||||
<widget class="QLabel" name="label_4">
|
|
||||||
<property name="text">
|
|
||||||
<string notr="true">LOST</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="3" column="1">
|
|
||||||
<widget class="QSpinBox" name="lostSpinBox">
|
|
||||||
<property name="minimumSize">
|
|
||||||
<size>
|
|
||||||
<width>100</width>
|
|
||||||
<height>0</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
<property name="maximum">
|
|
||||||
<number>0</number>
|
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="4" column="0">
|
<item row="4" column="0">
|
||||||
<widget class="QLabel" name="label_5">
|
<widget class="QLabel" name="label_4">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>formLabel.time</string>
|
<string notr="true">LOST</string>
|
||||||
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="4" column="1">
|
<item row="5" column="2">
|
||||||
<widget class="QDateTimeEdit" name="dateTimeEdit">
|
<widget class="QCheckBox" name="dateNoneCheckBox">
|
||||||
<property name="sizePolicy">
|
<property name="text">
|
||||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
<string>setNone</string>
|
||||||
<horstretch>0</horstretch>
|
|
||||||
<verstretch>0</verstretch>
|
|
||||||
</sizepolicy>
|
|
||||||
</property>
|
|
||||||
<property name="dateTime">
|
|
||||||
<datetime>
|
|
||||||
<hour>0</hour>
|
|
||||||
<minute>0</minute>
|
|
||||||
<second>0</second>
|
|
||||||
<year>2017</year>
|
|
||||||
<month>1</month>
|
|
||||||
<day>22</day>
|
|
||||||
</datetime>
|
|
||||||
</property>
|
|
||||||
<property name="minimumDate">
|
|
||||||
<date>
|
|
||||||
<year>2017</year>
|
|
||||||
<month>1</month>
|
|
||||||
<day>22</day>
|
|
||||||
</date>
|
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="5" column="0">
|
<item row="6" column="1">
|
||||||
<spacer name="verticalSpacer">
|
<spacer name="verticalSpacer">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
<enum>Qt::Vertical</enum>
|
<enum>Qt::Vertical</enum>
|
||||||
@ -141,67 +94,23 @@
|
|||||||
</property>
|
</property>
|
||||||
</spacer>
|
</spacer>
|
||||||
</item>
|
</item>
|
||||||
<item row="6" column="0">
|
<item row="12" column="1">
|
||||||
<widget class="QLabel" name="label_6">
|
<widget class="QLabel" name="validateLabel">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string notr="true">MAX RECALL</string>
|
<string notr="true">...</string>
|
||||||
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="6" column="1">
|
<item row="10" column="1">
|
||||||
<widget class="QSpinBox" name="maxRecallSpinBox">
|
|
||||||
<property name="minimumSize">
|
|
||||||
<size>
|
|
||||||
<width>100</width>
|
|
||||||
<height>0</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
<property name="minimum">
|
|
||||||
<number>-1</number>
|
|
||||||
</property>
|
|
||||||
<property name="maximum">
|
|
||||||
<number>0</number>
|
|
||||||
</property>
|
|
||||||
<property name="value">
|
|
||||||
<number>-1</number>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="8" column="0" colspan="2">
|
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
|
||||||
<item>
|
|
||||||
<widget class="QLabel" name="validateLabel">
|
|
||||||
<property name="sizePolicy">
|
|
||||||
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
|
|
||||||
<horstretch>0</horstretch>
|
|
||||||
<verstretch>0</verstretch>
|
|
||||||
</sizepolicy>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string notr="true">...</string>
|
|
||||||
</property>
|
|
||||||
<property name="alignment">
|
|
||||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QPushButton" name="commitButton">
|
|
||||||
<property name="text">
|
|
||||||
<string>commitButton</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</item>
|
|
||||||
<item row="7" column="0">
|
|
||||||
<widget class="QLabel" name="label_8">
|
|
||||||
<property name="text">
|
|
||||||
<string>formLabel.clearType</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="7" column="1">
|
|
||||||
<widget class="QComboBox" name="clearTypeComboBox">
|
<widget class="QComboBox" name="clearTypeComboBox">
|
||||||
<property name="enabled">
|
<property name="enabled">
|
||||||
<bool>false</bool>
|
<bool>false</bool>
|
||||||
@ -214,6 +123,219 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="10" column="0">
|
||||||
|
<widget class="QLabel" name="label_8">
|
||||||
|
<property name="text">
|
||||||
|
<string notr="true">Clear Type</string>
|
||||||
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="3" column="0">
|
||||||
|
<widget class="QLabel" name="label_3">
|
||||||
|
<property name="text">
|
||||||
|
<string notr="true">FAR</string>
|
||||||
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="8" column="0">
|
||||||
|
<widget class="QLabel" name="label_6">
|
||||||
|
<property name="text">
|
||||||
|
<string notr="true">MAX RECALL</string>
|
||||||
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="8" column="1">
|
||||||
|
<widget class="QSpinBox" name="maxRecallSpinBox">
|
||||||
|
<property name="enabled">
|
||||||
|
<bool>false</bool>
|
||||||
|
</property>
|
||||||
|
<property name="minimumSize">
|
||||||
|
<size>
|
||||||
|
<width>100</width>
|
||||||
|
<height>0</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="minimum">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<property name="maximum">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<property name="value">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="9" column="1">
|
||||||
|
<widget class="QComboBox" name="modifierComboBox">
|
||||||
|
<property name="enabled">
|
||||||
|
<bool>false</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="5" column="1">
|
||||||
|
<widget class="QDateTimeEdit" name="dateTimeEdit">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="displayFormat">
|
||||||
|
<string>yyyy/M/d HH:mm:ss</string>
|
||||||
|
</property>
|
||||||
|
<property name="calendarPopup">
|
||||||
|
<bool>false</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="4" column="1">
|
||||||
|
<widget class="QSpinBox" name="lostSpinBox">
|
||||||
|
<property name="minimumSize">
|
||||||
|
<size>
|
||||||
|
<width>100</width>
|
||||||
|
<height>0</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="maximum">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="4" column="2">
|
||||||
|
<widget class="QCheckBox" name="lostNoneCheckBox">
|
||||||
|
<property name="text">
|
||||||
|
<string>setNone</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="11" column="1">
|
||||||
|
<widget class="QLineEdit" name="commentLineEdit">
|
||||||
|
<property name="enabled">
|
||||||
|
<bool>false</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="9" column="2">
|
||||||
|
<widget class="QCheckBox" name="modifierNoneCheckBox">
|
||||||
|
<property name="text">
|
||||||
|
<string>setNone</string>
|
||||||
|
</property>
|
||||||
|
<property name="checked">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="11" column="2">
|
||||||
|
<widget class="QCheckBox" name="commentNoneCheckBox">
|
||||||
|
<property name="text">
|
||||||
|
<string>setNone</string>
|
||||||
|
</property>
|
||||||
|
<property name="checked">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="5" column="0">
|
||||||
|
<widget class="QLabel" name="label_5">
|
||||||
|
<property name="text">
|
||||||
|
<string>formLabel.date</string>
|
||||||
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="12" column="2">
|
||||||
|
<widget class="QPushButton" name="commitButton">
|
||||||
|
<property name="text">
|
||||||
|
<string>commitButton</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="1" column="1">
|
||||||
|
<widget class="FocusSelectAllLineEdit" name="scoreLineEdit">
|
||||||
|
<property name="inputMask">
|
||||||
|
<string notr="true">B9'999'999;_</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="8" column="2">
|
||||||
|
<widget class="QCheckBox" name="maxRecallNoneCheckBox">
|
||||||
|
<property name="text">
|
||||||
|
<string>setNone</string>
|
||||||
|
</property>
|
||||||
|
<property name="checked">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="3" column="1">
|
||||||
|
<widget class="QSpinBox" name="farSpinBox">
|
||||||
|
<property name="minimumSize">
|
||||||
|
<size>
|
||||||
|
<width>100</width>
|
||||||
|
<height>0</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="maximum">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="11" column="0">
|
||||||
|
<widget class="QLabel" name="label_9">
|
||||||
|
<property name="text">
|
||||||
|
<string>formLabel.comment</string>
|
||||||
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="1" column="0">
|
||||||
|
<widget class="QLabel" name="label">
|
||||||
|
<property name="text">
|
||||||
|
<string>formLabel.score</string>
|
||||||
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="3" column="2">
|
||||||
|
<widget class="QCheckBox" name="farNoneCheckBox">
|
||||||
|
<property name="text">
|
||||||
|
<string>setNone</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="0">
|
||||||
|
<widget class="QLabel" name="label_10">
|
||||||
|
<property name="text">
|
||||||
|
<string>ID</string>
|
||||||
|
</property>
|
||||||
|
<property name="alignment">
|
||||||
|
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="1">
|
||||||
|
<widget class="QLabel" name="idLabel">
|
||||||
|
<property name="text">
|
||||||
|
<string>idAutoInsert</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
<customwidgets>
|
<customwidgets>
|
||||||
@ -224,5 +346,134 @@
|
|||||||
</customwidget>
|
</customwidget>
|
||||||
</customwidgets>
|
</customwidgets>
|
||||||
<resources/>
|
<resources/>
|
||||||
<connections/>
|
<connections>
|
||||||
|
<connection>
|
||||||
|
<sender>pureNoneCheckBox</sender>
|
||||||
|
<signal>toggled(bool)</signal>
|
||||||
|
<receiver>pureSpinBox</receiver>
|
||||||
|
<slot>setDisabled(bool)</slot>
|
||||||
|
<hints>
|
||||||
|
<hint type="sourcelabel">
|
||||||
|
<x>521</x>
|
||||||
|
<y>44</y>
|
||||||
|
</hint>
|
||||||
|
<hint type="destinationlabel">
|
||||||
|
<x>288</x>
|
||||||
|
<y>44</y>
|
||||||
|
</hint>
|
||||||
|
</hints>
|
||||||
|
</connection>
|
||||||
|
<connection>
|
||||||
|
<sender>clearTypeNoneCheckBox</sender>
|
||||||
|
<signal>toggled(bool)</signal>
|
||||||
|
<receiver>clearTypeComboBox</receiver>
|
||||||
|
<slot>setDisabled(bool)</slot>
|
||||||
|
<hints>
|
||||||
|
<hint type="sourcelabel">
|
||||||
|
<x>521</x>
|
||||||
|
<y>263</y>
|
||||||
|
</hint>
|
||||||
|
<hint type="destinationlabel">
|
||||||
|
<x>288</x>
|
||||||
|
<y>264</y>
|
||||||
|
</hint>
|
||||||
|
</hints>
|
||||||
|
</connection>
|
||||||
|
<connection>
|
||||||
|
<sender>modifierNoneCheckBox</sender>
|
||||||
|
<signal>toggled(bool)</signal>
|
||||||
|
<receiver>modifierComboBox</receiver>
|
||||||
|
<slot>setDisabled(bool)</slot>
|
||||||
|
<hints>
|
||||||
|
<hint type="sourcelabel">
|
||||||
|
<x>521</x>
|
||||||
|
<y>236</y>
|
||||||
|
</hint>
|
||||||
|
<hint type="destinationlabel">
|
||||||
|
<x>288</x>
|
||||||
|
<y>237</y>
|
||||||
|
</hint>
|
||||||
|
</hints>
|
||||||
|
</connection>
|
||||||
|
<connection>
|
||||||
|
<sender>maxRecallNoneCheckBox</sender>
|
||||||
|
<signal>toggled(bool)</signal>
|
||||||
|
<receiver>maxRecallSpinBox</receiver>
|
||||||
|
<slot>setDisabled(bool)</slot>
|
||||||
|
<hints>
|
||||||
|
<hint type="sourcelabel">
|
||||||
|
<x>521</x>
|
||||||
|
<y>210</y>
|
||||||
|
</hint>
|
||||||
|
<hint type="destinationlabel">
|
||||||
|
<x>288</x>
|
||||||
|
<y>210</y>
|
||||||
|
</hint>
|
||||||
|
</hints>
|
||||||
|
</connection>
|
||||||
|
<connection>
|
||||||
|
<sender>dateNoneCheckBox</sender>
|
||||||
|
<signal>toggled(bool)</signal>
|
||||||
|
<receiver>dateTimeEdit</receiver>
|
||||||
|
<slot>setDisabled(bool)</slot>
|
||||||
|
<hints>
|
||||||
|
<hint type="sourcelabel">
|
||||||
|
<x>521</x>
|
||||||
|
<y>122</y>
|
||||||
|
</hint>
|
||||||
|
<hint type="destinationlabel">
|
||||||
|
<x>288</x>
|
||||||
|
<y>122</y>
|
||||||
|
</hint>
|
||||||
|
</hints>
|
||||||
|
</connection>
|
||||||
|
<connection>
|
||||||
|
<sender>lostNoneCheckBox</sender>
|
||||||
|
<signal>toggled(bool)</signal>
|
||||||
|
<receiver>lostSpinBox</receiver>
|
||||||
|
<slot>setDisabled(bool)</slot>
|
||||||
|
<hints>
|
||||||
|
<hint type="sourcelabel">
|
||||||
|
<x>521</x>
|
||||||
|
<y>96</y>
|
||||||
|
</hint>
|
||||||
|
<hint type="destinationlabel">
|
||||||
|
<x>288</x>
|
||||||
|
<y>96</y>
|
||||||
|
</hint>
|
||||||
|
</hints>
|
||||||
|
</connection>
|
||||||
|
<connection>
|
||||||
|
<sender>farNoneCheckBox</sender>
|
||||||
|
<signal>toggled(bool)</signal>
|
||||||
|
<receiver>farSpinBox</receiver>
|
||||||
|
<slot>setDisabled(bool)</slot>
|
||||||
|
<hints>
|
||||||
|
<hint type="sourcelabel">
|
||||||
|
<x>521</x>
|
||||||
|
<y>70</y>
|
||||||
|
</hint>
|
||||||
|
<hint type="destinationlabel">
|
||||||
|
<x>288</x>
|
||||||
|
<y>70</y>
|
||||||
|
</hint>
|
||||||
|
</hints>
|
||||||
|
</connection>
|
||||||
|
<connection>
|
||||||
|
<sender>commentNoneCheckBox</sender>
|
||||||
|
<signal>toggled(bool)</signal>
|
||||||
|
<receiver>commentLineEdit</receiver>
|
||||||
|
<slot>setDisabled(bool)</slot>
|
||||||
|
<hints>
|
||||||
|
<hint type="sourcelabel">
|
||||||
|
<x>395</x>
|
||||||
|
<y>270</y>
|
||||||
|
</hint>
|
||||||
|
<hint type="destinationlabel">
|
||||||
|
<x>237</x>
|
||||||
|
<y>270</y>
|
||||||
|
</hint>
|
||||||
|
</hints>
|
||||||
|
</connection>
|
||||||
|
</connections>
|
||||||
</ui>
|
</ui>
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
################################################################################
|
################################################################################
|
||||||
## Form generated from reading UI file 'scoreEditor.ui'
|
## Form generated from reading UI file 'scoreEditor.ui'
|
||||||
##
|
##
|
||||||
## Created by: Qt User Interface Compiler version 6.5.0
|
## Created by: Qt User Interface Compiler version 6.5.2
|
||||||
##
|
##
|
||||||
## WARNING! All changes made in this file will be lost when recompiling UI file!
|
## WARNING! All changes made in this file will be lost when recompiling UI file!
|
||||||
################################################################################
|
################################################################################
|
||||||
@ -15,9 +15,9 @@ from PySide6.QtGui import (QBrush, QColor, QConicalGradient, QCursor,
|
|||||||
QFont, QFontDatabase, QGradient, QIcon,
|
QFont, QFontDatabase, QGradient, QIcon,
|
||||||
QImage, QKeySequence, QLinearGradient, QPainter,
|
QImage, QKeySequence, QLinearGradient, QPainter,
|
||||||
QPalette, QPixmap, QRadialGradient, QTransform)
|
QPalette, QPixmap, QRadialGradient, QTransform)
|
||||||
from PySide6.QtWidgets import (QApplication, QComboBox, QDateTimeEdit, QFormLayout,
|
from PySide6.QtWidgets import (QApplication, QCheckBox, QComboBox, QDateTimeEdit,
|
||||||
QHBoxLayout, QLabel, QPushButton, QSizePolicy,
|
QGridLayout, QLabel, QLineEdit, QPushButton,
|
||||||
QSpacerItem, QSpinBox, QWidget)
|
QSizePolicy, QSpacerItem, QSpinBox, QWidget)
|
||||||
|
|
||||||
from ui.implements.components.focusSelectAllLineEdit import FocusSelectAllLineEdit
|
from ui.implements.components.focusSelectAllLineEdit import FocusSelectAllLineEdit
|
||||||
|
|
||||||
@ -25,143 +25,243 @@ class Ui_ScoreEditor(object):
|
|||||||
def setupUi(self, ScoreEditor):
|
def setupUi(self, ScoreEditor):
|
||||||
if not ScoreEditor.objectName():
|
if not ScoreEditor.objectName():
|
||||||
ScoreEditor.setObjectName(u"ScoreEditor")
|
ScoreEditor.setObjectName(u"ScoreEditor")
|
||||||
ScoreEditor.resize(365, 253)
|
ScoreEditor.resize(450, 350)
|
||||||
ScoreEditor.setWindowTitle(u"ScoreEditor")
|
ScoreEditor.setWindowTitle(u"ScoreEditor")
|
||||||
self.formLayout = QFormLayout(ScoreEditor)
|
self.gridLayout = QGridLayout(ScoreEditor)
|
||||||
self.formLayout.setObjectName(u"formLayout")
|
self.gridLayout.setObjectName(u"gridLayout")
|
||||||
self.formLayout.setFieldGrowthPolicy(QFormLayout.ExpandingFieldsGrow)
|
self.pureNoneCheckBox = QCheckBox(ScoreEditor)
|
||||||
self.formLayout.setLabelAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
|
self.pureNoneCheckBox.setObjectName(u"pureNoneCheckBox")
|
||||||
self.label = QLabel(ScoreEditor)
|
|
||||||
self.label.setObjectName(u"label")
|
|
||||||
|
|
||||||
self.formLayout.setWidget(0, QFormLayout.LabelRole, self.label)
|
self.gridLayout.addWidget(self.pureNoneCheckBox, 2, 2, 1, 1)
|
||||||
|
|
||||||
self.scoreLineEdit = FocusSelectAllLineEdit(ScoreEditor)
|
self.label_7 = QLabel(ScoreEditor)
|
||||||
self.scoreLineEdit.setObjectName(u"scoreLineEdit")
|
self.label_7.setObjectName(u"label_7")
|
||||||
self.scoreLineEdit.setInputMask(u"B9'999'999;_")
|
self.label_7.setText(u"Modifier")
|
||||||
|
self.label_7.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
|
||||||
|
|
||||||
self.formLayout.setWidget(0, QFormLayout.FieldRole, self.scoreLineEdit)
|
self.gridLayout.addWidget(self.label_7, 9, 0, 1, 1)
|
||||||
|
|
||||||
self.label_2 = QLabel(ScoreEditor)
|
|
||||||
self.label_2.setObjectName(u"label_2")
|
|
||||||
self.label_2.setText(u"PURE")
|
|
||||||
|
|
||||||
self.formLayout.setWidget(1, QFormLayout.LabelRole, self.label_2)
|
|
||||||
|
|
||||||
self.pureSpinBox = QSpinBox(ScoreEditor)
|
self.pureSpinBox = QSpinBox(ScoreEditor)
|
||||||
self.pureSpinBox.setObjectName(u"pureSpinBox")
|
self.pureSpinBox.setObjectName(u"pureSpinBox")
|
||||||
self.pureSpinBox.setMinimumSize(QSize(100, 0))
|
self.pureSpinBox.setMinimumSize(QSize(100, 0))
|
||||||
self.pureSpinBox.setMaximum(0)
|
self.pureSpinBox.setMaximum(0)
|
||||||
|
|
||||||
self.formLayout.setWidget(1, QFormLayout.FieldRole, self.pureSpinBox)
|
self.gridLayout.addWidget(self.pureSpinBox, 2, 1, 1, 1)
|
||||||
|
|
||||||
self.label_3 = QLabel(ScoreEditor)
|
self.clearTypeNoneCheckBox = QCheckBox(ScoreEditor)
|
||||||
self.label_3.setObjectName(u"label_3")
|
self.clearTypeNoneCheckBox.setObjectName(u"clearTypeNoneCheckBox")
|
||||||
self.label_3.setText(u"FAR")
|
self.clearTypeNoneCheckBox.setChecked(True)
|
||||||
|
|
||||||
self.formLayout.setWidget(2, QFormLayout.LabelRole, self.label_3)
|
self.gridLayout.addWidget(self.clearTypeNoneCheckBox, 10, 2, 1, 1)
|
||||||
|
|
||||||
self.farSpinBox = QSpinBox(ScoreEditor)
|
self.label_2 = QLabel(ScoreEditor)
|
||||||
self.farSpinBox.setObjectName(u"farSpinBox")
|
self.label_2.setObjectName(u"label_2")
|
||||||
self.farSpinBox.setMinimumSize(QSize(100, 0))
|
self.label_2.setText(u"PURE")
|
||||||
self.farSpinBox.setMaximum(0)
|
self.label_2.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
|
||||||
|
|
||||||
self.formLayout.setWidget(2, QFormLayout.FieldRole, self.farSpinBox)
|
self.gridLayout.addWidget(self.label_2, 2, 0, 1, 1)
|
||||||
|
|
||||||
self.label_4 = QLabel(ScoreEditor)
|
self.label_4 = QLabel(ScoreEditor)
|
||||||
self.label_4.setObjectName(u"label_4")
|
self.label_4.setObjectName(u"label_4")
|
||||||
self.label_4.setText(u"LOST")
|
self.label_4.setText(u"LOST")
|
||||||
|
self.label_4.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
|
||||||
|
|
||||||
self.formLayout.setWidget(3, QFormLayout.LabelRole, self.label_4)
|
self.gridLayout.addWidget(self.label_4, 4, 0, 1, 1)
|
||||||
|
|
||||||
self.lostSpinBox = QSpinBox(ScoreEditor)
|
self.dateNoneCheckBox = QCheckBox(ScoreEditor)
|
||||||
self.lostSpinBox.setObjectName(u"lostSpinBox")
|
self.dateNoneCheckBox.setObjectName(u"dateNoneCheckBox")
|
||||||
self.lostSpinBox.setMinimumSize(QSize(100, 0))
|
|
||||||
self.lostSpinBox.setMaximum(0)
|
|
||||||
|
|
||||||
self.formLayout.setWidget(3, QFormLayout.FieldRole, self.lostSpinBox)
|
self.gridLayout.addWidget(self.dateNoneCheckBox, 5, 2, 1, 1)
|
||||||
|
|
||||||
self.label_5 = QLabel(ScoreEditor)
|
|
||||||
self.label_5.setObjectName(u"label_5")
|
|
||||||
|
|
||||||
self.formLayout.setWidget(4, QFormLayout.LabelRole, self.label_5)
|
|
||||||
|
|
||||||
self.dateTimeEdit = QDateTimeEdit(ScoreEditor)
|
|
||||||
self.dateTimeEdit.setObjectName(u"dateTimeEdit")
|
|
||||||
sizePolicy = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed)
|
|
||||||
sizePolicy.setHorizontalStretch(0)
|
|
||||||
sizePolicy.setVerticalStretch(0)
|
|
||||||
sizePolicy.setHeightForWidth(self.dateTimeEdit.sizePolicy().hasHeightForWidth())
|
|
||||||
self.dateTimeEdit.setSizePolicy(sizePolicy)
|
|
||||||
self.dateTimeEdit.setDateTime(QDateTime(QDate(2017, 1, 22), QTime(0, 0, 0)))
|
|
||||||
self.dateTimeEdit.setMinimumDate(QDate(2017, 1, 22))
|
|
||||||
|
|
||||||
self.formLayout.setWidget(4, QFormLayout.FieldRole, self.dateTimeEdit)
|
|
||||||
|
|
||||||
self.verticalSpacer = QSpacerItem(20, 40, QSizePolicy.Minimum, QSizePolicy.Expanding)
|
self.verticalSpacer = QSpacerItem(20, 40, QSizePolicy.Minimum, QSizePolicy.Expanding)
|
||||||
|
|
||||||
self.formLayout.setItem(5, QFormLayout.LabelRole, self.verticalSpacer)
|
self.gridLayout.addItem(self.verticalSpacer, 6, 1, 1, 1)
|
||||||
|
|
||||||
self.label_6 = QLabel(ScoreEditor)
|
|
||||||
self.label_6.setObjectName(u"label_6")
|
|
||||||
self.label_6.setText(u"MAX RECALL")
|
|
||||||
|
|
||||||
self.formLayout.setWidget(6, QFormLayout.LabelRole, self.label_6)
|
|
||||||
|
|
||||||
self.maxRecallSpinBox = QSpinBox(ScoreEditor)
|
|
||||||
self.maxRecallSpinBox.setObjectName(u"maxRecallSpinBox")
|
|
||||||
self.maxRecallSpinBox.setMinimumSize(QSize(100, 0))
|
|
||||||
self.maxRecallSpinBox.setMinimum(-1)
|
|
||||||
self.maxRecallSpinBox.setMaximum(0)
|
|
||||||
self.maxRecallSpinBox.setValue(-1)
|
|
||||||
|
|
||||||
self.formLayout.setWidget(6, QFormLayout.FieldRole, self.maxRecallSpinBox)
|
|
||||||
|
|
||||||
self.horizontalLayout = QHBoxLayout()
|
|
||||||
self.horizontalLayout.setObjectName(u"horizontalLayout")
|
|
||||||
self.validateLabel = QLabel(ScoreEditor)
|
self.validateLabel = QLabel(ScoreEditor)
|
||||||
self.validateLabel.setObjectName(u"validateLabel")
|
self.validateLabel.setObjectName(u"validateLabel")
|
||||||
sizePolicy1 = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Preferred)
|
sizePolicy = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Preferred)
|
||||||
sizePolicy1.setHorizontalStretch(0)
|
sizePolicy.setHorizontalStretch(0)
|
||||||
sizePolicy1.setVerticalStretch(0)
|
sizePolicy.setVerticalStretch(0)
|
||||||
sizePolicy1.setHeightForWidth(self.validateLabel.sizePolicy().hasHeightForWidth())
|
sizePolicy.setHeightForWidth(self.validateLabel.sizePolicy().hasHeightForWidth())
|
||||||
self.validateLabel.setSizePolicy(sizePolicy1)
|
self.validateLabel.setSizePolicy(sizePolicy)
|
||||||
self.validateLabel.setText(u"...")
|
self.validateLabel.setText(u"...")
|
||||||
self.validateLabel.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
|
self.validateLabel.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
|
||||||
|
|
||||||
self.horizontalLayout.addWidget(self.validateLabel)
|
self.gridLayout.addWidget(self.validateLabel, 12, 1, 1, 1)
|
||||||
|
|
||||||
self.commitButton = QPushButton(ScoreEditor)
|
|
||||||
self.commitButton.setObjectName(u"commitButton")
|
|
||||||
|
|
||||||
self.horizontalLayout.addWidget(self.commitButton)
|
|
||||||
|
|
||||||
|
|
||||||
self.formLayout.setLayout(8, QFormLayout.SpanningRole, self.horizontalLayout)
|
|
||||||
|
|
||||||
self.label_8 = QLabel(ScoreEditor)
|
|
||||||
self.label_8.setObjectName(u"label_8")
|
|
||||||
|
|
||||||
self.formLayout.setWidget(7, QFormLayout.LabelRole, self.label_8)
|
|
||||||
|
|
||||||
self.clearTypeComboBox = QComboBox(ScoreEditor)
|
self.clearTypeComboBox = QComboBox(ScoreEditor)
|
||||||
self.clearTypeComboBox.setObjectName(u"clearTypeComboBox")
|
self.clearTypeComboBox.setObjectName(u"clearTypeComboBox")
|
||||||
self.clearTypeComboBox.setEnabled(False)
|
self.clearTypeComboBox.setEnabled(False)
|
||||||
self.clearTypeComboBox.setMinimumSize(QSize(100, 0))
|
self.clearTypeComboBox.setMinimumSize(QSize(100, 0))
|
||||||
|
|
||||||
self.formLayout.setWidget(7, QFormLayout.FieldRole, self.clearTypeComboBox)
|
self.gridLayout.addWidget(self.clearTypeComboBox, 10, 1, 1, 1)
|
||||||
|
|
||||||
|
self.label_8 = QLabel(ScoreEditor)
|
||||||
|
self.label_8.setObjectName(u"label_8")
|
||||||
|
self.label_8.setText(u"Clear Type")
|
||||||
|
self.label_8.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
|
||||||
|
|
||||||
|
self.gridLayout.addWidget(self.label_8, 10, 0, 1, 1)
|
||||||
|
|
||||||
|
self.label_3 = QLabel(ScoreEditor)
|
||||||
|
self.label_3.setObjectName(u"label_3")
|
||||||
|
self.label_3.setText(u"FAR")
|
||||||
|
self.label_3.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
|
||||||
|
|
||||||
|
self.gridLayout.addWidget(self.label_3, 3, 0, 1, 1)
|
||||||
|
|
||||||
|
self.label_6 = QLabel(ScoreEditor)
|
||||||
|
self.label_6.setObjectName(u"label_6")
|
||||||
|
self.label_6.setText(u"MAX RECALL")
|
||||||
|
self.label_6.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
|
||||||
|
|
||||||
|
self.gridLayout.addWidget(self.label_6, 8, 0, 1, 1)
|
||||||
|
|
||||||
|
self.maxRecallSpinBox = QSpinBox(ScoreEditor)
|
||||||
|
self.maxRecallSpinBox.setObjectName(u"maxRecallSpinBox")
|
||||||
|
self.maxRecallSpinBox.setEnabled(False)
|
||||||
|
self.maxRecallSpinBox.setMinimumSize(QSize(100, 0))
|
||||||
|
self.maxRecallSpinBox.setMinimum(0)
|
||||||
|
self.maxRecallSpinBox.setMaximum(0)
|
||||||
|
self.maxRecallSpinBox.setValue(0)
|
||||||
|
|
||||||
|
self.gridLayout.addWidget(self.maxRecallSpinBox, 8, 1, 1, 1)
|
||||||
|
|
||||||
|
self.modifierComboBox = QComboBox(ScoreEditor)
|
||||||
|
self.modifierComboBox.setObjectName(u"modifierComboBox")
|
||||||
|
self.modifierComboBox.setEnabled(False)
|
||||||
|
|
||||||
|
self.gridLayout.addWidget(self.modifierComboBox, 9, 1, 1, 1)
|
||||||
|
|
||||||
|
self.dateTimeEdit = QDateTimeEdit(ScoreEditor)
|
||||||
|
self.dateTimeEdit.setObjectName(u"dateTimeEdit")
|
||||||
|
sizePolicy1 = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed)
|
||||||
|
sizePolicy1.setHorizontalStretch(0)
|
||||||
|
sizePolicy1.setVerticalStretch(0)
|
||||||
|
sizePolicy1.setHeightForWidth(self.dateTimeEdit.sizePolicy().hasHeightForWidth())
|
||||||
|
self.dateTimeEdit.setSizePolicy(sizePolicy1)
|
||||||
|
self.dateTimeEdit.setCalendarPopup(False)
|
||||||
|
|
||||||
|
self.gridLayout.addWidget(self.dateTimeEdit, 5, 1, 1, 1)
|
||||||
|
|
||||||
|
self.lostSpinBox = QSpinBox(ScoreEditor)
|
||||||
|
self.lostSpinBox.setObjectName(u"lostSpinBox")
|
||||||
|
self.lostSpinBox.setMinimumSize(QSize(100, 0))
|
||||||
|
self.lostSpinBox.setMaximum(0)
|
||||||
|
|
||||||
|
self.gridLayout.addWidget(self.lostSpinBox, 4, 1, 1, 1)
|
||||||
|
|
||||||
|
self.lostNoneCheckBox = QCheckBox(ScoreEditor)
|
||||||
|
self.lostNoneCheckBox.setObjectName(u"lostNoneCheckBox")
|
||||||
|
|
||||||
|
self.gridLayout.addWidget(self.lostNoneCheckBox, 4, 2, 1, 1)
|
||||||
|
|
||||||
|
self.commentLineEdit = QLineEdit(ScoreEditor)
|
||||||
|
self.commentLineEdit.setObjectName(u"commentLineEdit")
|
||||||
|
self.commentLineEdit.setEnabled(False)
|
||||||
|
|
||||||
|
self.gridLayout.addWidget(self.commentLineEdit, 11, 1, 1, 1)
|
||||||
|
|
||||||
|
self.modifierNoneCheckBox = QCheckBox(ScoreEditor)
|
||||||
|
self.modifierNoneCheckBox.setObjectName(u"modifierNoneCheckBox")
|
||||||
|
self.modifierNoneCheckBox.setChecked(True)
|
||||||
|
|
||||||
|
self.gridLayout.addWidget(self.modifierNoneCheckBox, 9, 2, 1, 1)
|
||||||
|
|
||||||
|
self.commentNoneCheckBox = QCheckBox(ScoreEditor)
|
||||||
|
self.commentNoneCheckBox.setObjectName(u"commentNoneCheckBox")
|
||||||
|
self.commentNoneCheckBox.setChecked(True)
|
||||||
|
|
||||||
|
self.gridLayout.addWidget(self.commentNoneCheckBox, 11, 2, 1, 1)
|
||||||
|
|
||||||
|
self.label_5 = QLabel(ScoreEditor)
|
||||||
|
self.label_5.setObjectName(u"label_5")
|
||||||
|
self.label_5.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
|
||||||
|
|
||||||
|
self.gridLayout.addWidget(self.label_5, 5, 0, 1, 1)
|
||||||
|
|
||||||
|
self.commitButton = QPushButton(ScoreEditor)
|
||||||
|
self.commitButton.setObjectName(u"commitButton")
|
||||||
|
|
||||||
|
self.gridLayout.addWidget(self.commitButton, 12, 2, 1, 1)
|
||||||
|
|
||||||
|
self.scoreLineEdit = FocusSelectAllLineEdit(ScoreEditor)
|
||||||
|
self.scoreLineEdit.setObjectName(u"scoreLineEdit")
|
||||||
|
self.scoreLineEdit.setInputMask(u"B9'999'999;_")
|
||||||
|
|
||||||
|
self.gridLayout.addWidget(self.scoreLineEdit, 1, 1, 1, 1)
|
||||||
|
|
||||||
|
self.maxRecallNoneCheckBox = QCheckBox(ScoreEditor)
|
||||||
|
self.maxRecallNoneCheckBox.setObjectName(u"maxRecallNoneCheckBox")
|
||||||
|
self.maxRecallNoneCheckBox.setChecked(True)
|
||||||
|
|
||||||
|
self.gridLayout.addWidget(self.maxRecallNoneCheckBox, 8, 2, 1, 1)
|
||||||
|
|
||||||
|
self.farSpinBox = QSpinBox(ScoreEditor)
|
||||||
|
self.farSpinBox.setObjectName(u"farSpinBox")
|
||||||
|
self.farSpinBox.setMinimumSize(QSize(100, 0))
|
||||||
|
self.farSpinBox.setMaximum(0)
|
||||||
|
|
||||||
|
self.gridLayout.addWidget(self.farSpinBox, 3, 1, 1, 1)
|
||||||
|
|
||||||
|
self.label_9 = QLabel(ScoreEditor)
|
||||||
|
self.label_9.setObjectName(u"label_9")
|
||||||
|
self.label_9.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
|
||||||
|
|
||||||
|
self.gridLayout.addWidget(self.label_9, 11, 0, 1, 1)
|
||||||
|
|
||||||
|
self.label = QLabel(ScoreEditor)
|
||||||
|
self.label.setObjectName(u"label")
|
||||||
|
self.label.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
|
||||||
|
|
||||||
|
self.gridLayout.addWidget(self.label, 1, 0, 1, 1)
|
||||||
|
|
||||||
|
self.farNoneCheckBox = QCheckBox(ScoreEditor)
|
||||||
|
self.farNoneCheckBox.setObjectName(u"farNoneCheckBox")
|
||||||
|
|
||||||
|
self.gridLayout.addWidget(self.farNoneCheckBox, 3, 2, 1, 1)
|
||||||
|
|
||||||
|
self.label_10 = QLabel(ScoreEditor)
|
||||||
|
self.label_10.setObjectName(u"label_10")
|
||||||
|
self.label_10.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
|
||||||
|
|
||||||
|
self.gridLayout.addWidget(self.label_10, 0, 0, 1, 1)
|
||||||
|
|
||||||
|
self.idLabel = QLabel(ScoreEditor)
|
||||||
|
self.idLabel.setObjectName(u"idLabel")
|
||||||
|
|
||||||
|
self.gridLayout.addWidget(self.idLabel, 0, 1, 1, 1)
|
||||||
|
|
||||||
|
|
||||||
self.retranslateUi(ScoreEditor)
|
self.retranslateUi(ScoreEditor)
|
||||||
|
self.pureNoneCheckBox.toggled.connect(self.pureSpinBox.setDisabled)
|
||||||
|
self.clearTypeNoneCheckBox.toggled.connect(self.clearTypeComboBox.setDisabled)
|
||||||
|
self.modifierNoneCheckBox.toggled.connect(self.modifierComboBox.setDisabled)
|
||||||
|
self.maxRecallNoneCheckBox.toggled.connect(self.maxRecallSpinBox.setDisabled)
|
||||||
|
self.dateNoneCheckBox.toggled.connect(self.dateTimeEdit.setDisabled)
|
||||||
|
self.lostNoneCheckBox.toggled.connect(self.lostSpinBox.setDisabled)
|
||||||
|
self.farNoneCheckBox.toggled.connect(self.farSpinBox.setDisabled)
|
||||||
|
self.commentNoneCheckBox.toggled.connect(self.commentLineEdit.setDisabled)
|
||||||
|
|
||||||
QMetaObject.connectSlotsByName(ScoreEditor)
|
QMetaObject.connectSlotsByName(ScoreEditor)
|
||||||
# setupUi
|
# setupUi
|
||||||
|
|
||||||
def retranslateUi(self, ScoreEditor):
|
def retranslateUi(self, ScoreEditor):
|
||||||
self.label.setText(QCoreApplication.translate("ScoreEditor", u"formLabel.score", None))
|
self.pureNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None))
|
||||||
self.label_5.setText(QCoreApplication.translate("ScoreEditor", u"formLabel.time", None))
|
self.clearTypeNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None))
|
||||||
|
self.dateNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None))
|
||||||
|
self.dateTimeEdit.setDisplayFormat(QCoreApplication.translate("ScoreEditor", u"yyyy/M/d HH:mm:ss", None))
|
||||||
|
self.lostNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None))
|
||||||
|
self.modifierNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None))
|
||||||
|
self.commentNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None))
|
||||||
|
self.label_5.setText(QCoreApplication.translate("ScoreEditor", u"formLabel.date", None))
|
||||||
self.commitButton.setText(QCoreApplication.translate("ScoreEditor", u"commitButton", None))
|
self.commitButton.setText(QCoreApplication.translate("ScoreEditor", u"commitButton", None))
|
||||||
self.label_8.setText(QCoreApplication.translate("ScoreEditor", u"formLabel.clearType", None))
|
self.maxRecallNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None))
|
||||||
|
self.label_9.setText(QCoreApplication.translate("ScoreEditor", u"formLabel.comment", None))
|
||||||
|
self.label.setText(QCoreApplication.translate("ScoreEditor", u"formLabel.score", None))
|
||||||
|
self.farNoneCheckBox.setText(QCoreApplication.translate("ScoreEditor", u"setNone", None))
|
||||||
|
self.label_10.setText(QCoreApplication.translate("ScoreEditor", u"ID", None))
|
||||||
|
self.idLabel.setText(QCoreApplication.translate("ScoreEditor", u"idAutoInsert", None))
|
||||||
pass
|
pass
|
||||||
# retranslateUi
|
# retranslateUi
|
||||||
|
|
||||||
|
@ -15,6 +15,7 @@ from PySide6.QtWidgets import (
|
|||||||
|
|
||||||
from ui.implements.components.chartSelector import ChartSelector
|
from ui.implements.components.chartSelector import ChartSelector
|
||||||
|
|
||||||
|
from ..utils import keepWidgetInScreen
|
||||||
from .base import TextSegmentDelegate
|
from .base import TextSegmentDelegate
|
||||||
|
|
||||||
|
|
||||||
@ -165,6 +166,8 @@ class ChartDelegate(TextSegmentDelegate):
|
|||||||
editor.move(editor.pos() + option.rect.topLeft())
|
editor.move(editor.pos() + option.rect.topLeft())
|
||||||
editor.setMaximumWidth(option.rect.width())
|
editor.setMaximumWidth(option.rect.width())
|
||||||
|
|
||||||
|
keepWidgetInScreen(editor)
|
||||||
|
|
||||||
def setEditorData(self, editor: ChartSelectorDelegateWrapper, index: QModelIndex):
|
def setEditorData(self, editor: ChartSelectorDelegateWrapper, index: QModelIndex):
|
||||||
if self.checkIsEditor(editor) and isinstance(self.getChart(index), Chart):
|
if self.checkIsEditor(editor) and isinstance(self.getChart(index), Chart):
|
||||||
editor.selectChart(self.getChart(index))
|
editor.selectChart(self.getChart(index))
|
||||||
|
@ -27,11 +27,11 @@ class ScoreEditorDelegateWrapper(ScoreEditor):
|
|||||||
def __init__(self, parent=None):
|
def __init__(self, parent=None):
|
||||||
super().__init__(parent)
|
super().__init__(parent)
|
||||||
|
|
||||||
self.hLine = QFrame(self)
|
# self.hLine = QFrame(self)
|
||||||
self.hLine.setFrameShape(QFrame.Shape.HLine)
|
# self.hLine.setFrameShape(QFrame.Shape.HLine)
|
||||||
self.hLine.setFrameShadow(QFrame.Shadow.Plain)
|
# self.hLine.setFrameShadow(QFrame.Shadow.Plain)
|
||||||
self.hLine.setFixedHeight(5)
|
# self.hLine.setFixedHeight(5)
|
||||||
self.formLayout.insertRow(0, self.hLine)
|
# self.gridLayout.addWidget(self.hLine, self.gridLayout.rowCount(), 0, -1, -1)
|
||||||
|
|
||||||
self.delegateHeader = QWidget(self)
|
self.delegateHeader = QWidget(self)
|
||||||
self.delegateHeaderHBoxLayout = QHBoxLayout(self.delegateHeader)
|
self.delegateHeaderHBoxLayout = QHBoxLayout(self.delegateHeader)
|
||||||
@ -47,7 +47,9 @@ class ScoreEditorDelegateWrapper(ScoreEditor):
|
|||||||
self.editorDiscardButton.clicked.connect(self.rejected)
|
self.editorDiscardButton.clicked.connect(self.rejected)
|
||||||
self.delegateHeaderHBoxLayout.addWidget(self.editorDiscardButton)
|
self.delegateHeaderHBoxLayout.addWidget(self.editorDiscardButton)
|
||||||
|
|
||||||
self.formLayout.insertRow(0, self.delegateHeader)
|
self.gridLayout.addWidget(
|
||||||
|
self.delegateHeader, self.gridLayout.rowCount(), 0, -1, -1
|
||||||
|
)
|
||||||
|
|
||||||
def setText(self, score: Score, _extra: str = None):
|
def setText(self, score: Score, _extra: str = None):
|
||||||
text = "Editing "
|
text = "Editing "
|
||||||
|
@ -1,10 +1,18 @@
|
|||||||
from enum import IntEnum
|
from enum import IntEnum
|
||||||
from typing import Optional
|
from typing import Any, Optional
|
||||||
|
|
||||||
from arcaea_offline.calculate import calculate_score_range
|
from arcaea_offline.calculate import calculate_score_range
|
||||||
from arcaea_offline.models import Chart, Score
|
from arcaea_offline.models import Chart, Score
|
||||||
from PySide6.QtCore import QCoreApplication, QDateTime, Signal, Slot
|
from PySide6.QtCore import QCoreApplication, QDateTime, Signal, Slot
|
||||||
from PySide6.QtWidgets import QMessageBox, QWidget
|
from PySide6.QtWidgets import (
|
||||||
|
QCheckBox,
|
||||||
|
QComboBox,
|
||||||
|
QDateTimeEdit,
|
||||||
|
QLineEdit,
|
||||||
|
QMessageBox,
|
||||||
|
QSpinBox,
|
||||||
|
QWidget,
|
||||||
|
)
|
||||||
|
|
||||||
from ui.designer.components.scoreEditor_ui import Ui_ScoreEditor
|
from ui.designer.components.scoreEditor_ui import Ui_ScoreEditor
|
||||||
|
|
||||||
@ -14,6 +22,7 @@ class ScoreValidateResult(IntEnum):
|
|||||||
ScoreMismatch = 1
|
ScoreMismatch = 1
|
||||||
ScoreEmpty = 2
|
ScoreEmpty = 2
|
||||||
ChartInvalid = 50
|
ChartInvalid = 50
|
||||||
|
ScoreIncomplete = 100
|
||||||
|
|
||||||
|
|
||||||
class ScoreEditor(Ui_ScoreEditor, QWidget):
|
class ScoreEditor(Ui_ScoreEditor, QWidget):
|
||||||
@ -26,6 +35,7 @@ class ScoreEditor(Ui_ScoreEditor, QWidget):
|
|||||||
|
|
||||||
self.__validateBeforeAccept = True
|
self.__validateBeforeAccept = True
|
||||||
self.__chart = None
|
self.__chart = None
|
||||||
|
self.__score_id = None
|
||||||
|
|
||||||
self.scoreLineEdit.textChanged.connect(self.valueChanged)
|
self.scoreLineEdit.textChanged.connect(self.valueChanged)
|
||||||
self.pureSpinBox.valueChanged.connect(self.valueChanged)
|
self.pureSpinBox.valueChanged.connect(self.valueChanged)
|
||||||
@ -33,22 +43,41 @@ class ScoreEditor(Ui_ScoreEditor, QWidget):
|
|||||||
self.lostSpinBox.valueChanged.connect(self.valueChanged)
|
self.lostSpinBox.valueChanged.connect(self.valueChanged)
|
||||||
self.dateTimeEdit.dateTimeChanged.connect(self.valueChanged)
|
self.dateTimeEdit.dateTimeChanged.connect(self.valueChanged)
|
||||||
self.maxRecallSpinBox.valueChanged.connect(self.valueChanged)
|
self.maxRecallSpinBox.valueChanged.connect(self.valueChanged)
|
||||||
|
self.modifierComboBox.currentIndexChanged.connect(self.valueChanged)
|
||||||
self.clearTypeComboBox.currentIndexChanged.connect(self.valueChanged)
|
self.clearTypeComboBox.currentIndexChanged.connect(self.valueChanged)
|
||||||
|
self.commentLineEdit.textChanged.connect(self.valueChanged)
|
||||||
|
self.pureNoneCheckBox.toggled.connect(self.valueChanged)
|
||||||
|
self.farNoneCheckBox.toggled.connect(self.valueChanged)
|
||||||
|
self.lostNoneCheckBox.toggled.connect(self.valueChanged)
|
||||||
|
self.dateNoneCheckBox.toggled.connect(self.valueChanged)
|
||||||
|
self.maxRecallNoneCheckBox.toggled.connect(self.valueChanged)
|
||||||
|
self.modifierNoneCheckBox.toggled.connect(self.valueChanged)
|
||||||
|
self.clearTypeNoneCheckBox.toggled.connect(self.valueChanged)
|
||||||
|
self.commentNoneCheckBox.toggled.connect(self.valueChanged)
|
||||||
self.valueChanged.connect(self.validateScore)
|
self.valueChanged.connect(self.validateScore)
|
||||||
self.valueChanged.connect(self.updateValidateLabel)
|
self.valueChanged.connect(self.updateValidateLabel)
|
||||||
|
|
||||||
|
self.modifierComboBox.addItem("NORMAL", 0)
|
||||||
|
self.modifierComboBox.addItem("EASY", 1)
|
||||||
|
self.modifierComboBox.addItem("HARD", 2)
|
||||||
|
self.modifierComboBox.setCurrentIndex(-1)
|
||||||
self.clearTypeComboBox.addItem("TRACK LOST", 0)
|
self.clearTypeComboBox.addItem("TRACK LOST", 0)
|
||||||
self.clearTypeComboBox.addItem("TRACK COMPLETE", 1)
|
self.clearTypeComboBox.addItem("NORMAL CLEAR", 1)
|
||||||
self.clearTypeComboBox.addItem("HARD LOST", 2)
|
self.clearTypeComboBox.addItem("FULL RECALL", 2)
|
||||||
|
self.clearTypeComboBox.addItem("PURE MEMORY", 3)
|
||||||
|
self.clearTypeComboBox.addItem("EASY CLEAR", 4)
|
||||||
|
self.clearTypeComboBox.addItem("HARD CLEAR", 5)
|
||||||
self.clearTypeComboBox.setCurrentIndex(-1)
|
self.clearTypeComboBox.setCurrentIndex(-1)
|
||||||
|
|
||||||
|
self.dateTimeEdit.setDateTime(QDateTime.currentDateTime())
|
||||||
|
|
||||||
def setValidateBeforeAccept(self, __bool: bool):
|
def setValidateBeforeAccept(self, __bool: bool):
|
||||||
self.__validateBeforeAccept = __bool
|
self.__validateBeforeAccept = __bool
|
||||||
|
|
||||||
def triggerValidateMessageBox(self):
|
def triggerValidateMessageBox(self):
|
||||||
validate = self.validateScore()
|
validate = self.validateScore()
|
||||||
|
|
||||||
if validate == ScoreValidateResult.Ok:
|
if validate in [ScoreValidateResult.Ok, ScoreValidateResult.ScoreIncomplete]:
|
||||||
return True
|
return True
|
||||||
if validate == ScoreValidateResult.ChartInvalid:
|
if validate == ScoreValidateResult.ChartInvalid:
|
||||||
QMessageBox.critical(
|
QMessageBox.critical(
|
||||||
@ -132,9 +161,12 @@ class ScoreEditor(Ui_ScoreEditor, QWidget):
|
|||||||
|
|
||||||
score = self.value()
|
score = self.value()
|
||||||
|
|
||||||
|
if score.pure is None or score.far is None:
|
||||||
|
return ScoreValidateResult.ScoreIncomplete
|
||||||
|
|
||||||
score_range = calculate_score_range(self.__chart.notes, score.pure, score.far)
|
score_range = calculate_score_range(self.__chart.notes, score.pure, score.far)
|
||||||
score_in_range = score_range[0] <= score.score <= score_range[1]
|
|
||||||
note_in_range = score.pure + score.far + score.lost <= self.__chart.notes
|
note_in_range = score.pure + score.far + score.lost <= self.__chart.notes
|
||||||
|
score_in_range = score_range[0] <= score.score <= score_range[1]
|
||||||
if not score_in_range or not note_in_range:
|
if not score_in_range or not note_in_range:
|
||||||
return ScoreValidateResult.ScoreMismatch
|
return ScoreValidateResult.ScoreMismatch
|
||||||
if score.score == 0:
|
if score.score == 0:
|
||||||
@ -152,37 +184,114 @@ class ScoreEditor(Ui_ScoreEditor, QWidget):
|
|||||||
text = QCoreApplication.translate("ScoreEditor", "validate.scoreMismatch")
|
text = QCoreApplication.translate("ScoreEditor", "validate.scoreMismatch")
|
||||||
elif validate == ScoreValidateResult.ScoreEmpty:
|
elif validate == ScoreValidateResult.ScoreEmpty:
|
||||||
text = QCoreApplication.translate("ScoreEditor", "validate.scoreEmpty")
|
text = QCoreApplication.translate("ScoreEditor", "validate.scoreEmpty")
|
||||||
|
elif validate == ScoreValidateResult.ScoreIncomplete:
|
||||||
|
text = QCoreApplication.translate("ScoreEditor", "validate.scoreIncomplete")
|
||||||
else:
|
else:
|
||||||
text = QCoreApplication.translate("ScoreEditor", "validate.unknownState")
|
text = QCoreApplication.translate("ScoreEditor", "validate.unknownState")
|
||||||
|
|
||||||
self.validateLabel.setText(text)
|
self.validateLabel.setText(text)
|
||||||
|
|
||||||
def value(self):
|
def __getItemBaseName(self, item: QLineEdit | QSpinBox | QDateTimeEdit | QComboBox):
|
||||||
if isinstance(self.__chart, Chart):
|
if isinstance(item, QSpinBox):
|
||||||
return Score(
|
return item.objectName().replace("SpinBox", "")
|
||||||
song_id=self.__chart.song_id,
|
elif isinstance(item, QLineEdit):
|
||||||
rating_class=self.__chart.rating_class,
|
if item.objectName() == "scoreLineEdit":
|
||||||
score=self.score(),
|
return "score"
|
||||||
pure=self.pureSpinBox.value(),
|
return item.objectName().replace("LineEdit", "")
|
||||||
far=self.farSpinBox.value(),
|
elif isinstance(item, QComboBox):
|
||||||
lost=self.lostSpinBox.value(),
|
return item.objectName().replace("ComboBox", "")
|
||||||
date=self.dateTimeEdit.dateTime().toSecsSinceEpoch(),
|
elif isinstance(item, QDateTimeEdit):
|
||||||
max_recall=self.maxRecallSpinBox.value()
|
return "date"
|
||||||
if self.maxRecallSpinBox.value() > -1
|
|
||||||
else None,
|
def __getItemNoneCheckBox(self, itemBaseName: str) -> QCheckBox | None:
|
||||||
|
return self.findChild(QCheckBox, f"{itemBaseName}NoneCheckBox")
|
||||||
|
|
||||||
|
def __getItemEnabled(self, itemBaseName: str):
|
||||||
|
return not self.__getItemNoneCheckBox(itemBaseName).isChecked()
|
||||||
|
|
||||||
|
def getItemValue(self, item: QLineEdit | QSpinBox | QDateTimeEdit | QComboBox):
|
||||||
|
if isinstance(item, QDateTimeEdit) and item.objectName() == "dateTimeEdit":
|
||||||
|
return (
|
||||||
|
None
|
||||||
|
if self.dateNoneCheckBox.isChecked()
|
||||||
|
else self.dateTimeEdit.dateTime().toSecsSinceEpoch()
|
||||||
)
|
)
|
||||||
|
|
||||||
|
itemBaseName = self.__getItemBaseName(item)
|
||||||
|
itemEnabled = self.__getItemEnabled(itemBaseName)
|
||||||
|
|
||||||
|
if isinstance(item, QSpinBox):
|
||||||
|
return item.value() if itemEnabled else None
|
||||||
|
elif isinstance(item, QLineEdit):
|
||||||
|
return item.text() if itemEnabled else None
|
||||||
|
elif isinstance(item, QComboBox):
|
||||||
|
return item.currentData() if itemEnabled else None
|
||||||
|
|
||||||
|
def value(self):
|
||||||
|
if not isinstance(self.__chart, Chart):
|
||||||
|
return
|
||||||
|
|
||||||
|
score = Score(
|
||||||
|
song_id=self.__chart.song_id, rating_class=self.__chart.rating_class
|
||||||
|
)
|
||||||
|
if self.__score_id is not None:
|
||||||
|
score.id = self.__score_id
|
||||||
|
score.score = self.score()
|
||||||
|
score.pure = self.getItemValue(self.pureSpinBox)
|
||||||
|
score.far = self.getItemValue(self.farSpinBox)
|
||||||
|
score.lost = self.getItemValue(self.lostSpinBox)
|
||||||
|
score.date = self.getItemValue(self.dateTimeEdit)
|
||||||
|
score.max_recall = self.getItemValue(self.maxRecallSpinBox)
|
||||||
|
score.modifier = self.getItemValue(self.modifierComboBox)
|
||||||
|
score.clear_type = self.getItemValue(self.clearTypeComboBox)
|
||||||
|
score.comment = self.getItemValue(self.commentLineEdit)
|
||||||
|
return score
|
||||||
|
|
||||||
|
def setItemValue(
|
||||||
|
self, item: QLineEdit | QSpinBox | QDateTimeEdit | QComboBox, value: Any
|
||||||
|
):
|
||||||
|
if isinstance(item, QDateTimeEdit) and item.objectName() == "dateTimeEdit":
|
||||||
|
if value is None:
|
||||||
|
self.dateNoneCheckBox.setChecked(True)
|
||||||
|
else:
|
||||||
|
self.dateNoneCheckBox.setChecked(False)
|
||||||
|
self.dateTimeEdit.setDateTime(QDateTime.fromSecsSinceEpoch(value))
|
||||||
|
|
||||||
|
itemBaseName = self.__getItemBaseName(item)
|
||||||
|
itemNoneCheckBox = self.__getItemNoneCheckBox(itemBaseName)
|
||||||
|
|
||||||
|
if value is None:
|
||||||
|
itemNoneCheckBox.setChecked(True)
|
||||||
|
return
|
||||||
|
else:
|
||||||
|
itemNoneCheckBox.setChecked(False)
|
||||||
|
|
||||||
|
if isinstance(item, QSpinBox):
|
||||||
|
item.setValue(value)
|
||||||
|
elif isinstance(item, QLineEdit):
|
||||||
|
item.setText(value)
|
||||||
|
elif isinstance(item, QComboBox):
|
||||||
|
item.setCurrentIndex(value)
|
||||||
|
|
||||||
def setValue(self, score: Score):
|
def setValue(self, score: Score):
|
||||||
if isinstance(score, Score):
|
if not isinstance(score, Score):
|
||||||
scoreText = str(score.score)
|
return
|
||||||
scoreText = scoreText.rjust(8, "0")
|
|
||||||
self.scoreLineEdit.setText(scoreText)
|
if score.id is not None:
|
||||||
self.pureSpinBox.setValue(score.pure)
|
self.__score_id = score.id
|
||||||
self.farSpinBox.setValue(score.far)
|
self.idLabel.setText(str(self.__score_id))
|
||||||
self.lostSpinBox.setValue(score.lost)
|
scoreText = str(score.score)
|
||||||
self.dateTimeEdit.setDateTime(QDateTime.fromSecsSinceEpoch(score.date))
|
scoreText = scoreText.rjust(8, "0")
|
||||||
if score.max_recall is not None:
|
self.scoreLineEdit.setText(scoreText)
|
||||||
self.maxRecallSpinBox.setValue(score.max_recall)
|
|
||||||
|
self.setItemValue(self.pureSpinBox, score.pure)
|
||||||
|
self.setItemValue(self.farSpinBox, score.far)
|
||||||
|
self.setItemValue(self.lostSpinBox, score.lost)
|
||||||
|
self.setItemValue(self.dateTimeEdit, score.date)
|
||||||
|
self.setItemValue(self.maxRecallSpinBox, score.max_recall)
|
||||||
|
self.setItemValue(self.modifierComboBox, score.modifier)
|
||||||
|
self.setItemValue(self.clearTypeComboBox, score.clear_type)
|
||||||
|
self.setItemValue(self.commentLineEdit, score.comment)
|
||||||
|
|
||||||
def reset(self):
|
def reset(self):
|
||||||
self.setChart(None)
|
self.setChart(None)
|
||||||
@ -190,5 +299,7 @@ class ScoreEditor(Ui_ScoreEditor, QWidget):
|
|||||||
self.pureSpinBox.setValue(0)
|
self.pureSpinBox.setValue(0)
|
||||||
self.farSpinBox.setValue(0)
|
self.farSpinBox.setValue(0)
|
||||||
self.lostSpinBox.setValue(0)
|
self.lostSpinBox.setValue(0)
|
||||||
self.maxRecallSpinBox.setValue(-1)
|
self.maxRecallSpinBox.setValue(0)
|
||||||
|
self.modifierComboBox.setCurrentIndex(-1)
|
||||||
self.clearTypeComboBox.setCurrentIndex(-1)
|
self.clearTypeComboBox.setCurrentIndex(-1)
|
||||||
|
self.commentLineEdit.setText("")
|
||||||
|
Reference in New Issue
Block a user