diff options
author | aneejit1 <[email protected]> | 2022-07-28 15:46:19 +0000 |
---|---|---|
committer | aneejit1 <[email protected]> | 2022-07-30 17:54:15 +0000 |
commit | e602246539fd7435aaeb440fcb7f852c92c8426b (patch) | |
tree | 35e09f5d93c67158e6c1160d6d9b27ae8a0bf966 /examples3/SQL/sqlsubclass5.py | |
parent | b34531364d5c0d3be7056d87011afd8bd538a0e7 (diff) | |
download | pytqt-e602246539fd7435aaeb440fcb7f852c92c8426b.tar.gz pytqt-e602246539fd7435aaeb440fcb7f852c92c8426b.zip |
Remove Qt V2 support and example files
Build files for pyuic2 have been removed along with the examples for
version 2 of Qt and the build/configure scripts have been amended
accordingly. The "examples3" directory has been renamed to just
"examples".
Signed-off-by: aneejit1 <[email protected]>
Diffstat (limited to 'examples3/SQL/sqlsubclass5.py')
-rwxr-xr-x | examples3/SQL/sqlsubclass5.py | 151 |
1 files changed, 0 insertions, 151 deletions
diff --git a/examples3/SQL/sqlsubclass5.py b/examples3/SQL/sqlsubclass5.py deleted file mode 100755 index 0fdc78c..0000000 --- a/examples3/SQL/sqlsubclass5.py +++ /dev/null @@ -1,151 +0,0 @@ -#!/usr/bin/env python - -#**************************************************************************** -#** $Id: sqlsubclass5.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 CustomTable(TQDataTable): - def __init__(self, cursor, autoPopulate = FALSE, parent = None, name = None): - TQDataTable.__init__(self, cursor, autoPopulate, parent, name) - - def paintField(self, p, field, cr, b): - if not field: - return - fn = str(field.name()) - if fn == "pricesid": - query = TQSqlQuery("SELECT name FROM prices WHERE id=%s" % - field.value().toString()) - value = "" - if next(query): - value = query.value(0).toString() - p.drawText(2, 2, cr.width()-4, cr.height()-4, - self.fieldAlignment(field), value) - elif fn == "quantity": - p.drawText(2, 2, cr.width()-6, cr.height()-4, - TQt.AlignRight|TQt.AlignVCenter, field.value().toString()) - elif fn in ("price", "cost"): - v = field.value().toDouble() - if v < 0: - p.setPen(TQColor("red")) - value = TQString("%.2f \u20ac" % v) - p.drawText(2, 2, cr.width()-6, cr.height()-4, - TQt.AlignRight|TQt.AlignVCenter, value) - elif fn == "paiddate": - if field.value().toDate().isNull(): - v = TQString("not yet") - p.setPen(TQColor("red")) - else: - v = field.value().toDate().toString(TQt.LocalDate) - p.drawText(2, 2, cr.width()-4, cr.height()-4, - TQt.AlignHCenter|TQt.AlignVCenter, v) - else: - TQDataTable.paintField(self, p, field, cr, b) - - -class InvoiceItemCursor(TQSqlCursor): - def __init__(self): - TQSqlCursor.__init__(self, "invoiceitem") - - productPrice = TQSqlFieldInfo("price", TQVariant.Double) - self.append(productPrice) - self.setCalculated(productPrice.name(), TRUE) - - productCost = TQSqlFieldInfo("cost", TQVariant.Double) - self.append(productCost) - self.setCalculated(productCost.name(), TRUE) - - def calculateField(self, name): - fn = str(name) - if fn == "productname": - query = TQSqlQuery("SELECT name FROM prices WHERE id=%d;" % - (self.field("pricesid").value().toInt())) - if next(query): - return query.value(0) - elif fn == "price": - query = TQSqlQuery("SELECT price FROM prices WHERE id=%d;" % - (self.field("pricesid").value().toInt())) - if next(query): - return query.value(0) - elif fn == "cost": - query = TQSqlQuery("SELECT price FROM prices WHERE id=%d;" % - (self.field("pricesid").value().toInt())) - if next(query): - return TQVariant(query.value(0).toDouble() * - self.value("quantity").toDouble()) - return TQVariant(TQString.null) - - def primeInsert(self): - buffer = self.editBuffer() - buffer.setValue("id", TQVariant(0)) - buffer.setValue("paiddate", TQVariant(TQDate.currentDate())) - buffer.setValue("quantity", TQVariant(1)) - return buffer - - -class ProductPicker(TQComboBox): - def __init__(self, parent = None, name = None): - TQComboBox.__init__(self, parent, name) - cur = TQSqlCursor("prices") - cur.select(cur.index("id")) - while next(cur): - self.insertItem(cur.value("name").toString(), cur.value("id").toInt()) - - -class CustomSqlEditorFactory(TQSqlEditorFactory): - def __init__(self): - TQSqlEditorFactory.__init__(self) - - def createEditor(self, parent, field): - try: - if str(field.name()) == "pricesid": - return ProductPicker(parent) - except AttributeError: - pass - return TQSqlEditorFactory.createEditor(self, parent, field) - -class Table(CustomTable): - def __init__(self): - self.invoiceItemCursor = InvoiceItemCursor() - TQDataTable.__init__(self, self.invoiceItemCursor) - self.propMap = TQSqlPropertyMap() - self.editorFactory = CustomSqlEditorFactory() - self.propMap.insert("ProductPicker", "pricesid") - self.installPropertyMap(self.propMap) - self.installEditorFactory(self.editorFactory) - - for cn, ch in (("pricesid", "Product"), - ("quantity", "Quantity"), - ("price", "Price" ), - ("cost", "Cost"), - ("paiddate", "Paid")): - self.addColumn(cn, ch) - self.setColumnWidth(0 , 150) - self.setColumnWidth(1, 70) - self.resize(600, 250) - self.refresh() - - -if __name__=='__main__': - app = TQApplication(sys.argv) - if createConnection(): - t = Table() - app.setMainWidget(t) - t.show() - app.exec_loop() - - |