ProjectDjangoTagsMenu/IeCommentDialog.py

Sat, 26 Apr 2014 16:15:45 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sat, 26 Apr 2014 16:15:45 +0200
changeset 23
070a6c65c8a9
parent 21
2f95d929282e
child 26
b21b4fc418bc
permissions
-rw-r--r--

Released as stable.

9
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
16
f2d493540f04 Added Python2 compatibility code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10
diff changeset
3 # Copyright (c) 2014 Detlev Offenbach <detlev@die-offenbachs.de>
f2d493540f04 Added Python2 compatibility code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10
diff changeset
4 #
f2d493540f04 Added Python2 compatibility code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10
diff changeset
5
9
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Module implementing a dialog to enter data for an IE comment.
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9
23
070a6c65c8a9 Released as stable.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 21
diff changeset
10 from __future__ import unicode_literals
10
ef5694c0bf3a Implemented the 'internatinalization' menu and some Python2 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9
diff changeset
11
9
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
12 from PyQt4.QtGui import QDialog
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
13
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14 from .Ui_IeCommentDialog import Ui_IeCommentDialog
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
15
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
16
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
17 class IeCommentDialog(QDialog, Ui_IeCommentDialog):
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
18 """
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
19 Class implementing a dialog to enter data for an IE comment.
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
20 """
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
21 def __init__(self, parent=None):
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
22 """
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
23 Constructor
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
24
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25 @param parent reference to the parent widget (QWidget)
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
26 """
16
f2d493540f04 Added Python2 compatibility code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10
diff changeset
27 super(IeCommentDialog, self).__init__(parent)
9
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
28 self.setupUi(self)
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
29
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
30 for condStr, condData in [("==", ""), ("<=", " lte"), ("<", " lt"),
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
31 (">", " gt"), (">=", " gte")]:
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
32 self.conditionalComboBox.addItem(condStr, condData)
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33
21
2f95d929282e Fixed a window sizing issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 16
diff changeset
34 msh = self.minimumSizeHint()
2f95d929282e Fixed a window sizing issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 16
diff changeset
35 self.resize(max(self.width(), msh.width()), msh.height())
2f95d929282e Fixed a window sizing issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 16
diff changeset
36
9
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
37 def getData(self):
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
38 """
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
39 Public method to retrieve the entered data.
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
40
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
41 @return tuple of condition (string) and version (integer)
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
42 """
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
43 return (self.conditionalComboBox.itemData(
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
44 self.conditionalComboBox.currentIndex()),
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
45 self.versionSpinBox.value())
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
46
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
47 @staticmethod
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
48 def getTag(selectedText):
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
49 """
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
50 Static method to get the formatted tag.
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
51
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
52 @param selectedText selected text to embed (string)
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
53 @return formatted tag (string) and a flag indicating the acceptance
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
54 state (boolean)
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
55 """
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
56 dlg = IeCommentDialog()
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
57 if dlg.exec_() == QDialog.Accepted:
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
58 condition, version = dlg.getData()
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
59 tag = '[if{0} IE {1}]> {2} <![endif]'.format(
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
60 condition, version, selectedText)
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
61 return tag, True
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
62 else:
1b11bf54b3b2 Implemented the comments menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
63 return "", False

eric ide

mercurial