浏览代码

dlg edit playlist ok

olinox 4 年之前
父节点
当前提交
066e3936b5
共有 6 个文件被更改,包括 1128 次插入1523 次删除
  1. 18 3
      ui/qt/dlg_playlist.py
  2. 121 19
      ui/qt/dlg_playlist.ui
  3. 55 17
      ui/qt/dlg_playlist_ui.py
  4. 1 1
      ui/qt/main_ui.py
  5. 932 1482
      ui/qt/rsc_rc.py
  6. 1 1
      ui/qt/widgets/vlcframe_ui.py

+ 18 - 3
ui/qt/dlg_playlist.py

@@ -12,20 +12,35 @@ class DlgPlaylist(QtWidgets.QDialog):
         super().__init__(parent)
 
         self.playlist = playlist if playlist is not None else Session()
+        self.date_enabled = False
         self.createWidgets()
 
     def createWidgets(self):
         self.ui = Ui_dlgPlaylist()
         self.ui.setupUi(self)
 
-        self.ui.lineName.setText(self.playlist.name)
+        if self.playlist.name:
+            self.ui.lineName.setText(self.playlist.name)
+
         if self.playlist.date:
             self.ui.lineDate.setDateTime(self.playlist.date)
+            self.toggleDateActivation()
+        else:
+            self.ui.lineDate.setDateTime(datetime.now())
+
         self.ui.textNotes.setText(self.playlist.notes or "")
 
+        self.ui.chkDateEnabled.stateChanged.connect(self.toggleDateActivation)
+
         self.ui.btnSave.clicked.connect(self.save)
         self.ui.btnCancel.clicked.connect(self.cancel)
 
+    def toggleDateActivation(self):
+        new_state = not self.date_enabled
+        self.ui.lineDate.setEnabled(new_state)
+        self.ui.chkDateEnabled.setChecked(new_state)
+        self.date_enabled = new_state
+
     @classmethod
     def edit(cls, parent, playlist=None):
         dlg = cls(playlist, parent)
@@ -37,14 +52,14 @@ class DlgPlaylist(QtWidgets.QDialog):
 
     def save(self):
         self.playlist.name = self.ui.lineName.text()
-        if self.ui.lineDate.dateTime():
-            self.playlist.date = self.ui.lineDate.dateTime().toPyDateTime()
+        self.playlist.date = self.ui.lineDate.dateTime().toPyDateTime() if self.date_enabled else None
         self.playlist.notes = self.ui.textNotes.toPlainText()
 
         repo = SessionRepository()
         if not self.playlist.id:
             repo.create(self.playlist)
         repo.commit()
+        self.done(1)
 
 
 

+ 121 - 19
ui/qt/dlg_playlist.ui

@@ -16,6 +16,11 @@
     <height>810</height>
    </size>
   </property>
+  <property name="font">
+   <font>
+    <family>Verdana</family>
+   </font>
+  </property>
   <property name="windowTitle">
    <string>Ma Session</string>
   </property>
@@ -29,30 +34,108 @@
   <layout class="QHBoxLayout" name="horizontalLayout">
    <item>
     <layout class="QVBoxLayout" name="verticalLayout">
+     <property name="leftMargin">
+      <number>18</number>
+     </property>
+     <property name="rightMargin">
+      <number>18</number>
+     </property>
      <item>
-      <layout class="QHBoxLayout" name="horizontalLayout_2">
+      <layout class="QHBoxLayout" name="horizontalLayout_5">
+       <property name="spacing">
+        <number>15</number>
+       </property>
        <property name="leftMargin">
-        <number>24</number>
+        <number>5</number>
+       </property>
+       <property name="topMargin">
+        <number>5</number>
        </property>
        <property name="rightMargin">
-        <number>24</number>
+        <number>5</number>
+       </property>
+       <property name="bottomMargin">
+        <number>5</number>
        </property>
+       <item>
+        <widget class="QLabel" name="label_5">
+         <property name="minimumSize">
+          <size>
+           <width>32</width>
+           <height>32</height>
+          </size>
+         </property>
+         <property name="maximumSize">
+          <size>
+           <width>32</width>
+           <height>32</height>
+          </size>
+         </property>
+         <property name="text">
+          <string/>
+         </property>
+         <property name="pixmap">
+          <pixmap resource="rsc.qrc">:/img/rsc/playlist.png</pixmap>
+         </property>
+         <property name="scaledContents">
+          <bool>true</bool>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QLabel" name="label_4">
+         <property name="font">
+          <font>
+           <family>Verdana</family>
+           <pointsize>11</pointsize>
+           <weight>75</weight>
+           <bold>true</bold>
+          </font>
+         </property>
+         <property name="text">
+          <string>Créer / Modifier ma séance</string>
+         </property>
+         <property name="alignment">
+          <set>Qt::AlignCenter</set>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <spacer name="horizontalSpacer_4">
+         <property name="orientation">
+          <enum>Qt::Horizontal</enum>
+         </property>
+         <property name="sizeType">
+          <enum>QSizePolicy::Fixed</enum>
+         </property>
+         <property name="sizeHint" stdset="0">
+          <size>
+           <width>32</width>
+           <height>20</height>
+          </size>
+         </property>
+        </spacer>
+       </item>
+      </layout>
+     </item>
+     <item>
+      <layout class="QHBoxLayout" name="horizontalLayout_2">
        <item>
         <widget class="QLabel" name="label">
          <property name="minimumSize">
           <size>
-           <width>140</width>
+           <width>120</width>
            <height>0</height>
           </size>
          </property>
          <property name="maximumSize">
           <size>
-           <width>140</width>
+           <width>120</width>
            <height>16777215</height>
           </size>
          </property>
          <property name="text">
-          <string>Nom de la session: </string>
+          <string>Nom de la séance: </string>
          </property>
         </widget>
        </item>
@@ -66,7 +149,7 @@
          </property>
          <property name="maximumSize">
           <size>
-           <width>320</width>
+           <width>100000</width>
            <height>28</height>
           </size>
          </property>
@@ -80,9 +163,12 @@
          <property name="orientation">
           <enum>Qt::Horizontal</enum>
          </property>
+         <property name="sizeType">
+          <enum>QSizePolicy::Fixed</enum>
+         </property>
          <property name="sizeHint" stdset="0">
           <size>
-           <width>40</width>
+           <width>120</width>
            <height>20</height>
           </size>
          </property>
@@ -92,28 +178,23 @@
      </item>
      <item>
       <layout class="QHBoxLayout" name="horizontalLayout_3">
-       <property name="leftMargin">
-        <number>24</number>
-       </property>
-       <property name="rightMargin">
-        <number>24</number>
-       </property>
        <item>
         <widget class="QLabel" name="label_2">
          <property name="minimumSize">
           <size>
-           <width>140</width>
+           <width>120</width>
            <height>0</height>
           </size>
          </property>
          <property name="maximumSize">
           <size>
-           <width>140</width>
+           <width>120</width>
            <height>16777215</height>
           </size>
          </property>
          <property name="font">
           <font>
+           <family>Verdana</family>
            <italic>true</italic>
           </font>
          </property>
@@ -124,31 +205,52 @@
        </item>
        <item>
         <widget class="QDateTimeEdit" name="lineDate">
+         <property name="enabled">
+          <bool>false</bool>
+         </property>
          <property name="minimumSize">
           <size>
-           <width>320</width>
+           <width>160</width>
            <height>28</height>
           </size>
          </property>
          <property name="maximumSize">
           <size>
-           <width>320</width>
+           <width>100000</width>
            <height>28</height>
           </size>
          </property>
+         <property name="font">
+          <font>
+           <family>Verdana</family>
+          </font>
+         </property>
+         <property name="buttonSymbols">
+          <enum>QAbstractSpinBox::NoButtons</enum>
+         </property>
          <property name="calendarPopup">
           <bool>true</bool>
          </property>
         </widget>
        </item>
+       <item>
+        <widget class="QCheckBox" name="chkDateEnabled">
+         <property name="text">
+          <string/>
+         </property>
+        </widget>
+       </item>
        <item>
         <spacer name="horizontalSpacer_2">
          <property name="orientation">
           <enum>Qt::Horizontal</enum>
          </property>
+         <property name="sizeType">
+          <enum>QSizePolicy::Expanding</enum>
+         </property>
          <property name="sizeHint" stdset="0">
           <size>
-           <width>40</width>
+           <width>120</width>
            <height>20</height>
           </size>
          </property>

+ 55 - 17
ui/qt/dlg_playlist_ui.py

@@ -2,7 +2,7 @@
 
 # Form implementation generated from reading ui file 'dlg_playlist.ui'
 #
-# Created by: PyQt5 UI code generator 5.15.2
+# Created by: PyQt5 UI code generator 5.15.4
 #
 # WARNING: Any manual changes made to this file will be lost when pyuic5 is
 # run again.  Do not edit this file unless you know what you are doing.
@@ -16,6 +16,9 @@ class Ui_dlgPlaylist(object):
         dlgPlaylist.setObjectName("dlgPlaylist")
         dlgPlaylist.resize(682, 436)
         dlgPlaylist.setMaximumSize(QtCore.QSize(902, 810))
+        font = QtGui.QFont()
+        font.setFamily("Verdana")
+        dlgPlaylist.setFont(font)
         icon = QtGui.QIcon()
         icon.addPixmap(QtGui.QPixmap(":/img/rsc/constellations.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
         dlgPlaylist.setWindowIcon(icon)
@@ -23,42 +26,76 @@ class Ui_dlgPlaylist(object):
         self.horizontalLayout = QtWidgets.QHBoxLayout(dlgPlaylist)
         self.horizontalLayout.setObjectName("horizontalLayout")
         self.verticalLayout = QtWidgets.QVBoxLayout()
+        self.verticalLayout.setContentsMargins(18, -1, 18, -1)
         self.verticalLayout.setObjectName("verticalLayout")
+        self.horizontalLayout_5 = QtWidgets.QHBoxLayout()
+        self.horizontalLayout_5.setContentsMargins(5, 5, 5, 5)
+        self.horizontalLayout_5.setSpacing(15)
+        self.horizontalLayout_5.setObjectName("horizontalLayout_5")
+        self.label_5 = QtWidgets.QLabel(dlgPlaylist)
+        self.label_5.setMinimumSize(QtCore.QSize(32, 32))
+        self.label_5.setMaximumSize(QtCore.QSize(32, 32))
+        self.label_5.setText("")
+        self.label_5.setPixmap(QtGui.QPixmap(":/img/rsc/playlist.png"))
+        self.label_5.setScaledContents(True)
+        self.label_5.setObjectName("label_5")
+        self.horizontalLayout_5.addWidget(self.label_5)
+        self.label_4 = QtWidgets.QLabel(dlgPlaylist)
+        font = QtGui.QFont()
+        font.setFamily("Verdana")
+        font.setPointSize(11)
+        font.setBold(True)
+        font.setWeight(75)
+        self.label_4.setFont(font)
+        self.label_4.setAlignment(QtCore.Qt.AlignCenter)
+        self.label_4.setObjectName("label_4")
+        self.horizontalLayout_5.addWidget(self.label_4)
+        spacerItem = QtWidgets.QSpacerItem(32, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum)
+        self.horizontalLayout_5.addItem(spacerItem)
+        self.verticalLayout.addLayout(self.horizontalLayout_5)
         self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
-        self.horizontalLayout_2.setContentsMargins(24, -1, 24, -1)
         self.horizontalLayout_2.setObjectName("horizontalLayout_2")
         self.label = QtWidgets.QLabel(dlgPlaylist)
-        self.label.setMinimumSize(QtCore.QSize(140, 0))
-        self.label.setMaximumSize(QtCore.QSize(140, 16777215))
+        self.label.setMinimumSize(QtCore.QSize(120, 0))
+        self.label.setMaximumSize(QtCore.QSize(120, 16777215))
         self.label.setObjectName("label")
         self.horizontalLayout_2.addWidget(self.label)
         self.lineName = QtWidgets.QLineEdit(dlgPlaylist)
         self.lineName.setMinimumSize(QtCore.QSize(320, 28))
-        self.lineName.setMaximumSize(QtCore.QSize(320, 28))
+        self.lineName.setMaximumSize(QtCore.QSize(100000, 28))
         self.lineName.setObjectName("lineName")
         self.horizontalLayout_2.addWidget(self.lineName)
-        spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
-        self.horizontalLayout_2.addItem(spacerItem)
+        spacerItem1 = QtWidgets.QSpacerItem(120, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum)
+        self.horizontalLayout_2.addItem(spacerItem1)
         self.verticalLayout.addLayout(self.horizontalLayout_2)
         self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
-        self.horizontalLayout_3.setContentsMargins(24, -1, 24, -1)
         self.horizontalLayout_3.setObjectName("horizontalLayout_3")
         self.label_2 = QtWidgets.QLabel(dlgPlaylist)
-        self.label_2.setMinimumSize(QtCore.QSize(140, 0))
-        self.label_2.setMaximumSize(QtCore.QSize(140, 16777215))
+        self.label_2.setMinimumSize(QtCore.QSize(120, 0))
+        self.label_2.setMaximumSize(QtCore.QSize(120, 16777215))
         font = QtGui.QFont()
+        font.setFamily("Verdana")
         font.setItalic(True)
         self.label_2.setFont(font)
         self.label_2.setObjectName("label_2")
         self.horizontalLayout_3.addWidget(self.label_2)
         self.lineDate = QtWidgets.QDateTimeEdit(dlgPlaylist)
-        self.lineDate.setMinimumSize(QtCore.QSize(320, 28))
-        self.lineDate.setMaximumSize(QtCore.QSize(320, 28))
+        self.lineDate.setEnabled(False)
+        self.lineDate.setMinimumSize(QtCore.QSize(160, 28))
+        self.lineDate.setMaximumSize(QtCore.QSize(100000, 28))
+        font = QtGui.QFont()
+        font.setFamily("Verdana")
+        self.lineDate.setFont(font)
+        self.lineDate.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons)
         self.lineDate.setCalendarPopup(True)
         self.lineDate.setObjectName("lineDate")
         self.horizontalLayout_3.addWidget(self.lineDate)
-        spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
-        self.horizontalLayout_3.addItem(spacerItem1)
+        self.chkDateEnabled = QtWidgets.QCheckBox(dlgPlaylist)
+        self.chkDateEnabled.setText("")
+        self.chkDateEnabled.setObjectName("chkDateEnabled")
+        self.horizontalLayout_3.addWidget(self.chkDateEnabled)
+        spacerItem2 = QtWidgets.QSpacerItem(120, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
+        self.horizontalLayout_3.addItem(spacerItem2)
         self.verticalLayout.addLayout(self.horizontalLayout_3)
         self.label_3 = QtWidgets.QLabel(dlgPlaylist)
         self.label_3.setObjectName("label_3")
@@ -77,8 +114,8 @@ class Ui_dlgPlaylist(object):
         self.btnCancel.setIcon(icon1)
         self.btnCancel.setObjectName("btnCancel")
         self.horizontalLayout_4.addWidget(self.btnCancel)
-        spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
-        self.horizontalLayout_4.addItem(spacerItem2)
+        spacerItem3 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
+        self.horizontalLayout_4.addItem(spacerItem3)
         self.btnSave = QtWidgets.QPushButton(dlgPlaylist)
         self.btnSave.setMinimumSize(QtCore.QSize(140, 32))
         self.btnSave.setMaximumSize(QtCore.QSize(140, 32))
@@ -96,7 +133,8 @@ class Ui_dlgPlaylist(object):
     def retranslateUi(self, dlgPlaylist):
         _translate = QtCore.QCoreApplication.translate
         dlgPlaylist.setWindowTitle(_translate("dlgPlaylist", "Ma Session"))
-        self.label.setText(_translate("dlgPlaylist", "Nom de la session: "))
+        self.label_4.setText(_translate("dlgPlaylist", "Créer / Modifier ma séance"))
+        self.label.setText(_translate("dlgPlaylist", "Nom de la séance: "))
         self.lineName.setText(_translate("dlgPlaylist", "Ma session"))
         self.label_2.setText(_translate("dlgPlaylist", "Date (facultatif)"))
         self.label_3.setText(_translate("dlgPlaylist", "Notes:"))

+ 1 - 1
ui/qt/main_ui.py

@@ -2,7 +2,7 @@
 
 # Form implementation generated from reading ui file 'main.ui'
 #
-# Created by: PyQt5 UI code generator 5.15.2
+# Created by: PyQt5 UI code generator 5.15.4
 #
 # WARNING: Any manual changes made to this file will be lost when pyuic5 is
 # run again.  Do not edit this file unless you know what you are doing.

文件差异内容过多而无法显示
+ 932 - 1482
ui/qt/rsc_rc.py


+ 1 - 1
ui/qt/widgets/vlcframe_ui.py

@@ -2,7 +2,7 @@
 
 # Form implementation generated from reading ui file 'widgets/vlcframe.ui'
 #
-# Created by: PyQt5 UI code generator 5.15.2
+# Created by: PyQt5 UI code generator 5.15.4
 #
 # WARNING: Any manual changes made to this file will be lost when pyuic5 is
 # run again.  Do not edit this file unless you know what you are doing.

部分文件因为文件数量过多而无法显示