Example #1
0
    def __init__(self):
        QtGui.QMainWindow.__init__(self)
        self.ui = Ui_Search_MainWindow()
        self.ui.setupUi(self)

        self.conn()  #need catch exception

        #TODO deal with foreign key
        self.ui.Class = QSqlRelationalTableModel(db=self.db)
        self.ui.Class.setTable("Class")

        self.ui.Class.setHeaderData(0, QtCore.Qt.Horizontal, "ID")
        self.ui.Class.setHeaderData(1, QtCore.Qt.Horizontal, "Name")
        self.ui.Class.setHeaderData(2, QtCore.Qt.Horizontal, "Cost")
        self.ui.Class.setHeaderData(3, QtCore.Qt.Horizontal, "Start Time")
        self.ui.Class.setHeaderData(4, QtCore.Qt.Horizontal, "End Time")
        self.ui.Class.setHeaderData(6, QtCore.Qt.Horizontal, "Location")
        self.ui.Class.setHeaderData(7, QtCore.Qt.Horizontal, "Capacity")
        self.ui.Class.setFilter('')
        self.ui.Class.select()

        #display window
        self.ui.Class_view.setModel(self.ui.Class)
        self.ui.Class_view.hideColumn(2)
        self.ui.Class_view.hideColumn(8)
        self.ui.Class_view.hideColumn(9)
        self.ui.Class_view.hideColumn(10)
        self.ui.Class_view.hideColumn(11)
        self.ui.Class_view.hideColumn(12)
        self.ui.Class_view.hideColumn(13)
        self.ui.Class_view.setEditTriggers(QAbstractItemView.NoEditTriggers)

        self.ui.Search_btn.clicked.connect(self.search)
        self.ui.Adv_search_btn.clicked.connect(self.advsearch_show)
        self.ui.Reset_search_btn.clicked.connect(self.reset_table)
        self.ui.Detail_btn.clicked.connect(self.detail_show)
        self.ui.Back_btn.clicked.connect(self.close)

        self.ui.Class_view.setSelectionMode(QAbstractItemView.SingleSelection)
        self.ui.Class_view.setSelectionBehavior(QAbstractItemView.SelectRows)