示例#1
0
    def __init__(self, smsdb, abookdb=None, abimgdb=None):
        QtGui.QMainWindow.__init__(self)

        self.chat_session_list = []
        self.address_book_list = []

        if smsdb == None:
            self.smsdb = None
        else:
            self.smsdb = smsdb
        if abookdb == "" or abookdb is None:
            self.abookdb = None
        else:
            self.abookdb = abookdb
        if abimgdb == "" or abimgdb is None:
            self.abimgdb = None
        else:
            self.abimgdb = abimgdb

        self.ui = Ui_frmSMS()
        self.ui.setupUi(self)
        self.setAttribute(QtCore.Qt.WA_DeleteOnClose)
        QtCore.QObject.connect(self.ui.tableViewChats,
                               QtCore.SIGNAL("itemSelectionChanged()"),
                               self.onTreeClick)
        QtCore.QObject.connect(self.ui.actionReport,
                               QtCore.SIGNAL("triggered(bool)"),
                               self.printReport)
        QtCore.QObject.connect(self.ui.actionExtract,
                               QtCore.SIGNAL("triggered(bool)"),
                               self.extractApp)

        if self.abookdb is not None:
            self.address_book_list = get_addressbook(self.abookdb,
                                                     self.abimgdb)

        msgstore = sqlite3.connect(self.smsdb)
        msgstore.row_factory = sqlite3.Row
        c1 = msgstore.cursor()

        self.chat_session_list = getChatSessions(c1, self.address_book_list)
        self.chat_session_list = getChatMessages(c1, self.chat_session_list)
        chatsmodel = ChatsTableModel(self.chat_session_list)
        self.ui.tableViewChats.setModel(chatsmodel)
        self.ui.tableViewChats.setSortingEnabled(True)