ProjectDjango/DjangoLoaddataDataDialog.py

Sun, 16 Feb 2014 17:06:27 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sun, 16 Feb 2014 17:06:27 +0100
changeset 40
b793fc09d732
parent 31
a632d10fdb7c
child 44
ae62ba409285
permissions
-rw-r--r--

Adjusted the Django info routines to show info about Django version related to current project.

2
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
31
a632d10fdb7c Updated copyright for 2014.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 29
diff changeset
3 # Copyright (c) 2013 - 2014 Detlev Offenbach <detlev@die-offenbachs.de>
2
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Module implementing a dialog to enter the data for the 'loaddata' command.
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9
26
2dd206cd1aa2 Python 2 compatibility for Eric 5.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents: 2
diff changeset
10 from __future__ import unicode_literals # __IGNORE_WARNING__
2dd206cd1aa2 Python 2 compatibility for Eric 5.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents: 2
diff changeset
11
2
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
12 from PyQt4.QtCore import pyqtSlot
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
13 from PyQt4.QtGui import QDialog, QDialogButtonBox
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
15 from E5Gui import E5FileDialog
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
16
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
17 from .Ui_DjangoLoaddataDataDialog import Ui_DjangoLoaddataDataDialog
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
18
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
19 import Utilities
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
20
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
21
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
22 class DjangoLoaddataDataDialog(QDialog, Ui_DjangoLoaddataDataDialog):
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
23 """
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
24 Class implementing a dialog to enter the data for the 'loaddata' command.
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25 """
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
26 def __init__(self, project, parent=None):
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
27 """
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
28 Constructor
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
29
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
30 @param project reference to the Django project object
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
31 @param parent reference to the parent widget (QWidget)
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
32 """
26
2dd206cd1aa2 Python 2 compatibility for Eric 5.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents: 2
diff changeset
33 super(DjangoLoaddataDataDialog, self).__init__(parent)
2
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
34 self.setupUi(self)
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
35
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
36 self.__project = project
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
37
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
38 self.buttonBox.button(QDialogButtonBox.Ok).setEnabled(False)
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
39
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
40 @pyqtSlot(str)
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
41 def on_fixturesEdit_textChanged(self, txt):
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
42 """
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
43 Private slot to handle a change of the fixtures text.
29
76d04dd67367 Fixed code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 26
diff changeset
44
76d04dd67367 Fixed code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 26
diff changeset
45 @param txt text of the line edit (string)
2
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
46 """
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
47 self.buttonBox.button(QDialogButtonBox.Ok).setEnabled(bool(txt))
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
48
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
49 @pyqtSlot()
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
50 def on_fixtureFileButton_clicked(self):
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
51 """
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
52 Private slot to select a fixture file via a file selection dialog.
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
53 """
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
54 fileFilters = self.trUtf8("JSON Files (*.json);;XML Files (*.xml);;")
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
55 try:
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
56 import yaml # __IGNORE_WARNING__
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
57 fileFilters += self.trUtf8("YAML Files (*.yaml);;")
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
58 except ImportError:
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
59 pass
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
60 fileFilters += self.trUtf8("All Files (*)")
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
61
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
62 fixtureFiles = E5FileDialog.getOpenFileNames(
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
63 self,
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
64 self.trUtf8("Select fixture file"),
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
65 self.__project.getProjectPath(),
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
66 fileFilters)
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
67
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
68 if fixtureFiles:
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
69 self.fixturesEdit.setText(" ".join(
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
70 [Utilities.toNativeSeparators(f) for f in fixtureFiles]))
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
71
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
72 def getData(self):
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
73 """
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
74 Public method to get the data entered into the dialog.
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
75
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
76 @return list of fixtures (list of strings)
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
77 """
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
78 fixturesStr = self.fixturesEdit.text()
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
79 fixtures = fixturesStr.split()
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
80
1e97424fda0c Continued porting the Django project plug-in from eric4.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
81 return fixtures

eric ide

mercurial