def __init__(self, cursor, path, daemon = False): QtGui.QWidget.__init__(self) self.ui = Ui_ViberBrowser() self.ui.setupUi(self) self.setAttribute(QtCore.Qt.WA_DeleteOnClose) self.cursor = cursor self.backup_path = path self.fname_contacts = os.path.join(self.backup_path, plugins_utils.realFileName(self.cursor, filename="Contacts.data", domaintype="AppDomain")) # check if files exist if (not os.path.isfile(self.fname_contacts)): raise Exception("Viber database not found: \"%s\""%self.fname_chatstorage) if (daemon == False): self.populateUI() # signal-slot chats/msgs connection QtCore.QObject.connect(self.ui.chatsWidget, QtCore.SIGNAL("itemSelectionChanged()"), self.onChatsClick) self.ui.chatsWidget.setColumnHidden(0,True) self.ui.msgsWidget.setColumnHidden(0,True) # signal-slot connection: right click context menu on contacts table self.ui.contactsWidget.setContextMenuPolicy(QtCore.Qt.CustomContextMenu) self.connect(self.ui.contactsWidget, QtCore.SIGNAL('customContextMenuRequested(QPoint)'), self.ctxMenuContacts) # signal-slot connection: right click context menu on calls table self.ui.callsWidget.setContextMenuPolicy(QtCore.Qt.CustomContextMenu) self.connect(self.ui.callsWidget, QtCore.SIGNAL('customContextMenuRequested(QPoint)'), self.ctxMenuCalls) # signal-slot connection: right click context menu on chats table self.ui.chatsWidget.setContextMenuPolicy(QtCore.Qt.CustomContextMenu) self.connect(self.ui.chatsWidget, QtCore.SIGNAL('customContextMenuRequested(QPoint)'), self.ctxMenuChats) # signal-slot connection: right click context menu on messages table self.ui.msgsWidget.setContextMenuPolicy(QtCore.Qt.CustomContextMenu) self.connect(self.ui.msgsWidget, QtCore.SIGNAL('customContextMenuRequested(QPoint)'), self.ctxMenuMsgs)