src/eric7/QScintilla/MarkupProviders/ImageMarkupDialog.py

branch
eric7
changeset 10482
72d9b5ea39b4
parent 10475
ee41fab001f2
child 10692
9becf9ca115c
equal deleted inserted replaced
10481:9aea3575bd16 10482:72d9b5ea39b4
6 """ 6 """
7 Module implementing a dialog to enter data for an image markup. 7 Module implementing a dialog to enter data for an image markup.
8 """ 8 """
9 9
10 import contextlib 10 import contextlib
11 import enum
11 12
12 from PyQt6.QtCore import QSize, pyqtSlot 13 from PyQt6.QtCore import QSize, pyqtSlot
13 from PyQt6.QtGui import QImage, QImageReader 14 from PyQt6.QtGui import QImage, QImageReader
14 from PyQt6.QtWidgets import QDialog, QDialogButtonBox 15 from PyQt6.QtWidgets import QDialog, QDialogButtonBox
15 16
16 from eric7.EricWidgets.EricPathPicker import EricPathPickerModes 17 from eric7.EricWidgets.EricPathPicker import EricPathPickerModes
17 18
18 from .Ui_ImageMarkupDialog import Ui_ImageMarkupDialog 19 from .Ui_ImageMarkupDialog import Ui_ImageMarkupDialog
19 20
20 21
22 class ImageMarkupMode(enum.Enum):
23 """
24 Class defining the image markup modes.
25 """
26
27 Html = 0
28 MarkDown = 1
29 Rest = 2
30
31
21 class ImageMarkupDialog(QDialog, Ui_ImageMarkupDialog): 32 class ImageMarkupDialog(QDialog, Ui_ImageMarkupDialog):
22 """ 33 """
23 Class implementing a dialog to enter data for an image markup. 34 Class implementing a dialog to enter data for an image markup.
24 """ 35 """
25
26 # TODO: change this to an enum
27 HtmlMode = 0
28 MarkDownMode = 1
29 RestMode = 2
30 36
31 def __init__(self, mode, parent=None): 37 def __init__(self, mode, parent=None):
32 """ 38 """
33 Constructor 39 Constructor
34 40
38 @type QWidget 44 @type QWidget
39 """ 45 """
40 super().__init__(parent) 46 super().__init__(parent)
41 self.setupUi(self) 47 self.setupUi(self)
42 48
43 if mode == ImageMarkupDialog.MarkDownMode: 49 if mode == ImageMarkupMode.MarkDown:
44 self.sizeCheckBox.setEnabled(False) 50 self.sizeCheckBox.setEnabled(False)
45 self.aspectRatioCheckBox.setEnabled(False) 51 self.aspectRatioCheckBox.setEnabled(False)
46 self.widthSpinBox.setEnabled(False) 52 self.widthSpinBox.setEnabled(False)
47 self.heightSpinBox.setEnabled(False) 53 self.heightSpinBox.setEnabled(False)
48 elif mode == ImageMarkupDialog.RestMode: 54 elif mode == ImageMarkupMode.Rest:
49 self.titleEdit.setEnabled(False) 55 self.titleEdit.setEnabled(False)
50 56
51 self.__mode = mode 57 self.__mode = mode
52 self.__originalImageSize = QSize() 58 self.__originalImageSize = QSize()
53 59
103 def __updateOkButton(self): 109 def __updateOkButton(self):
104 """ 110 """
105 Private slot to set the state of the OK button. 111 Private slot to set the state of the OK button.
106 """ 112 """
107 enable = bool(self.imagePicker.text()) 113 enable = bool(self.imagePicker.text())
108 if self.__mode == ImageMarkupDialog.MarkDownMode: 114 if self.__mode == ImageMarkupMode.MarkDown:
109 enable = enable and bool(self.altTextEdit.text()) 115 enable = enable and bool(self.altTextEdit.text())
110 116
111 self.buttonBox.button(QDialogButtonBox.StandardButton.Ok).setEnabled(enable) 117 self.buttonBox.button(QDialogButtonBox.StandardButton.Ok).setEnabled(enable)
112 118
113 @pyqtSlot(str) 119 @pyqtSlot(str)

eric ide

mercurial