Exemple #1
0
 def __init__(self, mainview, parent=None):
     super(DeviceTable, self).__init__(parent)
     self.ui = Ui_Form()
     self.mainview = mainview
     self.ui.setupUi(self)
     self.device_data = self.get_device_data()
     self.set_title("Choose an Android Device")
     self.ui.treeView.setEditTriggers(QtGui.QTableView.NoEditTriggers)
     self.ui.treeView.setAlternatingRowColors(True)
     self.ui.treeView.setSelectionMode(QtGui.QTableView.SingleSelection)
     self.ui.treeView.setSelectionBehavior(QtGui.QAbstractItemView.SelectRows)
     self.ui.treeView.doubleClicked.connect(self.device_clicked)
     self.setup_filtering()
     self.show_data()
Exemple #2
0
 def __init__(self, mainview, parent=None):
     super(DeviceTable, self).__init__(parent)
     self.ui = Ui_Form()
     self.mainview = mainview
     self.ui.setupUi(self)
     self.device_data = self.get_device_data()
     self.set_title("Choose an Android Device")
     self.ui.treeView.setEditTriggers(QtGui.QTableView.NoEditTriggers)
     self.ui.treeView.setAlternatingRowColors(True)
     self.ui.treeView.setSelectionMode(QtGui.QTableView.SingleSelection)
     self.ui.treeView.setSelectionBehavior(QtGui.QAbstractItemView.SelectRows)
     self.ui.treeView.doubleClicked.connect(self.device_clicked)
     self.setup_filtering()
     self.show_data()
Exemple #3
0
class DeviceTable(QtGui.QDialog):

    def __init__(self, mainview, parent=None):
        super(DeviceTable, self).__init__(parent)
        self.ui = Ui_Form()
        self.mainview = mainview
        self.ui.setupUi(self)
        self.device_data = self.get_device_data()
        self.set_title("Choose an Android Device")
        self.ui.treeView.setEditTriggers(QtGui.QTableView.NoEditTriggers)
        self.ui.treeView.setAlternatingRowColors(True)
        self.ui.treeView.setSelectionMode(QtGui.QTableView.SingleSelection)
        self.ui.treeView.setSelectionBehavior(QtGui.QAbstractItemView.SelectRows)
        self.ui.treeView.doubleClicked.connect(self.device_clicked)
        self.setup_filtering()
        self.show_data()

    def setup_filtering(self):
        self.filterPatternLineEdit = self.ui.lineEdit
        self.filterPatternLabel = QtGui.QLabel("&Filter string pattern:")
        self.filterPatternLabel.setBuddy(self.filterPatternLineEdit)
        self.filterPatternLineEdit.textChanged.connect(self.filterRegExpChanged)
        self.proxyModel = QtGui.QSortFilterProxyModel()
        self.proxyModel.setDynamicSortFilter(True)

    def filterRegExpChanged(self, value):
        regExp = QtCore.QRegExp(value)
        self.stringswindow.proxyModel.setFilterRegExp(regExp)

    def get_device_info_model(self):
        device_info = self.get_device_data()
        self.model = QtGui.QStandardItemModel(len(device_info), 2, self)
        self.model.setHeaderData(0, QtCore.Qt.Horizontal, "Device Id")
        self.model.setHeaderData(1, QtCore.Qt.Horizontal, "Android API")
        row = 0

        for key in device_info:
            self.model.setData(self.model.index(row, 0, QtCore.QModelIndex()), str(key))
            self.model.setData(self.model.index(row, 1, QtCore.QModelIndex()), str(device_info[key]))
            row += 1

        self.proxyModel.setSourceModel(self.model)
        self.ui.treeView.setModel(self.proxyModel)

    def filterRegExpChanged(self, value):
        regExp = QtCore.QRegExp(value)
        self.proxyModel.setFilterRegExp(regExp)

    def set_header(self,header_id,text):
        self.ui.treeView.setHorizontalHeaderItem(header_id,QtGui.QTableWidgetItem(text))

    def show_data(self):
        self.get_device_info_model()

    def set_title(self,text):
        self.setWindowTitle(text)

    def get_device_data(self):
        data = {}
        for device in dumpey.attached_devices():
            data[device] = dumpey.api_version(device)
        return data

    def device_clicked(self, mi):
        mi = self.proxyModel.mapToSource(mi)
        row = mi.row()
        self.device = mi.model().item(row,0).text()
        self.close()
        self.show_package_dialog(self.device, dumpey.package_list([self.device]))

    def show_package_dialog(self,device,package_list):
        package_list = package_list[device]
        table = PackageWindow(device,package_list,win=self.mainview)
        table.exec_()
Exemple #4
0
class DeviceTable(QtGui.QDialog):

    def __init__(self, mainview, parent=None):
        super(DeviceTable, self).__init__(parent)
        self.ui = Ui_Form()
        self.mainview = mainview
        self.ui.setupUi(self)
        self.device_data = self.get_device_data()
        self.set_title("Choose an Android Device")
        self.ui.treeView.setEditTriggers(QtGui.QTableView.NoEditTriggers)
        self.ui.treeView.setAlternatingRowColors(True)
        self.ui.treeView.setSelectionMode(QtGui.QTableView.SingleSelection)
        self.ui.treeView.setSelectionBehavior(QtGui.QAbstractItemView.SelectRows)
        self.ui.treeView.doubleClicked.connect(self.device_clicked)
        self.setup_filtering()
        self.show_data()

    def setup_filtering(self):
        self.filterPatternLineEdit = self.ui.lineEdit
        self.filterPatternLabel = QtGui.QLabel("&Filter string pattern:")
        self.filterPatternLabel.setBuddy(self.filterPatternLineEdit)
        self.filterPatternLineEdit.textChanged.connect(self.filterRegExpChanged)
        self.proxyModel = QtGui.QSortFilterProxyModel()
        self.proxyModel.setDynamicSortFilter(True)

    def filterRegExpChanged(self, value):
        regExp = QtCore.QRegExp(value)
        self.stringswindow.proxyModel.setFilterRegExp(regExp)

    def get_device_info_model(self):
        device_info = self.get_device_data()
        self.model = QtGui.QStandardItemModel(len(device_info), 2, self)
        self.model.setHeaderData(0, QtCore.Qt.Horizontal, "Device Id")
        self.model.setHeaderData(1, QtCore.Qt.Horizontal, "Android API")
        row = 0

        for key in device_info:
            self.model.setData(self.model.index(row, 0, QtCore.QModelIndex()), str(key))
            self.model.setData(self.model.index(row, 1, QtCore.QModelIndex()), str(device_info[key]))
            row += 1

        self.proxyModel.setSourceModel(self.model)
        self.ui.treeView.setModel(self.proxyModel)

    def filterRegExpChanged(self, value):
        regExp = QtCore.QRegExp(value)
        self.proxyModel.setFilterRegExp(regExp)

    def set_header(self,header_id,text):
        self.ui.treeView.setHorizontalHeaderItem(header_id,QtGui.QTableWidgetItem(text))

    def show_data(self):
        self.get_device_info_model()

    def set_title(self,text):
        self.setWindowTitle(text)

    def get_device_data(self):
        data = {}
        for device in dumpey.attached_devices():
            data[device] = dumpey.api_version(device)
        return data

    def device_clicked(self, mi):
        mi = self.proxyModel.mapToSource(mi)
        row = mi.row()
        self.device = mi.model().item(row,0).text()
        self.close()
        self.show_package_dialog(self.device, dumpey.package_list([self.device]))

    def show_package_dialog(self,device,package_list):
        package_list = package_list[device]
        table = PackageWindow(device,package_list,win=self.mainview)
        table.exec_()