summaryrefslogtreecommitdiffstats
path: root/examples/SQL/sqlcustom1.py
diff options
context:
space:
mode:
Diffstat (limited to 'examples/SQL/sqlcustom1.py')
-rwxr-xr-xexamples/SQL/sqlcustom1.py94
1 files changed, 94 insertions, 0 deletions
diff --git a/examples/SQL/sqlcustom1.py b/examples/SQL/sqlcustom1.py
new file mode 100755
index 0000000..4da8f8a
--- /dev/null
+++ b/examples/SQL/sqlcustom1.py
@@ -0,0 +1,94 @@
+#!/usr/bin/env python
+
+#****************************************************************************
+#** $Id: sqlcustom1.py,v 1.3 2002/07/06 13:35:41 phil Exp $
+#**
+#** Copyright (C) 1992-1998 Troll Tech AS. All rights reserved.
+#**
+#** This file is part of an example program for PyTQt. This example
+#** program may be used, distributed and modified without limitation.
+#**
+#*****************************************************************************/
+
+import sys
+from python_tqt.qt import *
+from python_tqt.qtsql import *
+
+from dbconnect import createConnection
+
+TRUE = 1
+FALSE = 0
+
+class CustomEdit(TQLineEdit):
+ def __init__(self, parent = None, name = None):
+ TQLineEdit.__init__(self, parent, name)
+ TQObject.connect(self, SIGNAL("textChanged(const TQString &)"),
+ self.changed)
+
+ def changed(self, line):
+ self.setUpperLine(line)
+
+ def setUpperLine(self, line):
+ self.upperLineText = line.upper()
+ self.setText(self.upperLineText)
+
+
+class FormDialog(TQDialog):
+ def __init__(self):
+ TQDialog.__init__(self)
+ forenameLabel = TQLabel("Forename:", self)
+ forenameEdit = CustomEdit(self)
+ surnameLabel = TQLabel("Surname:", self)
+ surnameEdit = CustomEdit(self)
+ salaryLabel = TQLabel("Salary:", self)
+ salaryEdit = TQLineEdit(self)
+ salaryEdit.setAlignment(TQt.AlignRight)
+ saveButton = TQPushButton("&Save", self)
+ self.connect(saveButton, SIGNAL("clicked()"), self.save)
+
+ grid = TQGridLayout(self)
+ grid.addWidget(forenameLabel, 0, 0)
+ grid.addWidget(forenameEdit, 0, 1)
+ grid.addWidget(surnameLabel, 1, 0)
+ grid.addWidget(surnameEdit, 1, 1)
+ grid.addWidget(salaryLabel, 2, 0)
+ grid.addWidget(salaryEdit, 2, 1)
+ grid.addWidget(saveButton, 3, 0)
+ grid.activate()
+
+ self.staffCursor = TQSqlCursor("staff")
+ self.staffCursor.setTrimmed("forename", TRUE)
+ self.staffCursor.setTrimmed("surname", TRUE)
+ self.idIndex = self.staffCursor.index("id")
+ self.staffCursor.select(self.idIndex)
+ self.staffCursor.first()
+
+ self.propMap = TQSqlPropertyMap()
+ self.propMap.insert(forenameEdit.className(), "upperLine")
+
+ self.sqlForm = TQSqlForm()
+ self.sqlForm.setRecord(self.staffCursor.primeUpdate())
+ self.sqlForm.installPropertyMap(self.propMap)
+ self.sqlForm.insert(forenameEdit, "forename")
+ self.sqlForm.insert(surnameEdit, "surname")
+ self.sqlForm.insert(salaryEdit, "salary")
+ self.sqlForm.readFields()
+
+ def save(self):
+ self.sqlForm.writeFields()
+ self.staffCursor.update()
+ self.staffCursor.select(self.idIndex)
+ self.staffCursor.first()
+
+
+if __name__=='__main__':
+ app = TQApplication( sys.argv )
+
+ if createConnection():
+ formDialog = FormDialog()
+ formDialog.show()
+
+ app.setMainWidget(formDialog)
+ app.exec_loop()
+
+