Python源码示例:PyQt5.QtGui.QStandardItemModel()
示例1
def __init__(self,
name: str,
items: typing.Iterable[_ItemType],
sort: bool = True,
delete_func: util.DeleteFuncType = None,
parent: QWidget = None):
super().__init__(parent)
self.name = name
self.srcmodel = QStandardItemModel(parent=self)
self._pattern = ''
# ListCategory filters all columns
self.columns_to_filter = [0, 1, 2]
self.setFilterKeyColumn(-1)
for item in items:
self.srcmodel.appendRow([QStandardItem(x) for x in item])
self.setSourceModel(self.srcmodel)
self.delete_func = delete_func
self._sort = sort
示例2
def populate(self):
self.setFeatures(QtWidgets.QDockWidget.DockWidgetClosable)
self.setTitleBarWidget(QtWidgets.QWidget(self)) # Removes titlebar
self.sideDockTabWidget = QtWidgets.QTabWidget(self)
self.setWidget(self.sideDockTabWidget)
# This order is important
self.bookmarkModel = QtGui.QStandardItemModel(self)
self.bookmarkProxyModel = BookmarkProxyModel(self)
self.bookmarks = Bookmarks(self)
self.bookmarks.generate_bookmark_model()
if not self.parent.are_we_doing_images_only:
self.annotationModel = QtGui.QStandardItemModel(self)
self.annotations = Annotations(self)
self.annotations.generate_annotation_model()
self.searchResultsModel = QtGui.QStandardItemModel(self)
self.search = Search(self)
示例3
def populateUI(self):
self.availableObjectsList.addItems(Detector.getDefaultAvailableObjects())
for sourceMode in self.__sourceModes:
self.sourceCBox.addItem(sourceMode)
for displayMode in self.__displayModes:
self.displayCBox.addItem(displayMode)
for shapeMode in self.__shapeModes:
self.shapeCBox.addItem(shapeMode)
for fillMode in self.__fillModes:
self.fillCBox.addItem(fillMode)
for bgMode in self.__bgModes:
self.bgCBox.addItem(bgMode)
model = QtGui.QStandardItemModel(self)
func = lambda node, parent: self.populateTree(node, parent)
Detector.getDefaultObjectsTree().map(model, func)
self.objectsTree.setModel(model)
示例4
def _model_builder(self, model, data, initialize=False):
'''
Build the function model.
@param model: QStandardItemModel object
'''
if initialize:
model.clear() # Clear the model
FIRSTUI.SharedObjects.make_model_headers(model)
if not data:
return
model.add_data(data)
# Add db functions to the model
root_node = model.invisibleRootItem()
for address, matches in data.iteritems():
function = FIRST.Metadata.get_function(address)
func_row = self._make_function_item(function, len(matches))
root_node.appendRow(func_row)
for match in matches:
info_list = FIRSTUI.SharedObjects.make_match_info(match)
func_row[0].appendRow(info_list)
示例5
def __init__(self):
super(QtWidgets.QTreeView, self).__init__()
# self.__typeWidgets = {}
# self.__typeWrappers = {}
model = QtGui.QStandardItemModel(0, 1)
model.setHorizontalHeaderLabels(
["Name", "Value", "Unit", "Class", "Description"]
)
self.rootNode = model.invisibleRootItem()
self.setModel(model)
self.setColumnWidth(0, 150)
self.setAlternatingRowColors(True)
示例6
def __init__(self, view):
QObject.__init__(self, view)
self.view = view
self.model = QStandardItemModel()
self.view.setModel(self.model)
self.nodesets = []
self.server_mgr = None
self.view.header().setSectionResizeMode(1)
addNodeSetAction = QAction("Add Reference Node Set", self.model)
addNodeSetAction.triggered.connect(self.add_nodeset)
self.removeNodeSetAction = QAction("Remove Reference Node Set", self.model)
self.removeNodeSetAction.triggered.connect(self.remove_nodeset)
self.view.setContextMenuPolicy(Qt.CustomContextMenu)
self.view.customContextMenuRequested.connect(self.showContextMenu)
self._contextMenu = QMenu()
self._contextMenu.addAction(addNodeSetAction)
self._contextMenu.addAction(self.removeNodeSetAction)
示例7
def __init__(self, view):
QObject.__init__(self, view)
self.view = view
self.model = QStandardItemModel()
self.view.setModel(self.model)
delegate = MyDelegate(self.view, self)
delegate.error.connect(self.error.emit)
self.view.setItemDelegate(delegate)
self.node = None
self.view.header().setSectionResizeMode(1)
self.addNamespaceAction = QAction("Add Namespace", self.model)
self.addNamespaceAction.triggered.connect(self.add_namespace)
self.removeNamespaceAction = QAction("Remove Namespace", self.model)
self.removeNamespaceAction.triggered.connect(self.remove_namespace)
self.view.setContextMenuPolicy(Qt.CustomContextMenu)
self.view.customContextMenuRequested.connect(self.showContextMenu)
self._contextMenu = QMenu()
self._contextMenu.addAction(self.addNamespaceAction)
self._contextMenu.addAction(self.removeNamespaceAction)
示例8
def _model_builder(self, model):
"""
Build the function model.
@param model: QStandardItemModel object
"""
model.clear() # Clear the model
root_node = model.invisibleRootItem()
model.setHorizontalHeaderLabels(("Type", "Score", "Value", "Description", "Raw Value"))
if self.die_db is None:
return
value_list = self.die_db.get_all_values()
for value in value_list:
value_data_item_list = self._make_value_item(value)
root_node.appendRow(value_data_item_list)
示例9
def init_disk_ui(self):
self.model_disk = QStandardItemModel(1, 3)
self.config_tableview("disk")
self.btn_disk_delete.setIcon(QIcon(SRC_DIR + "delete.ico"))
self.btn_disk_dl.setIcon(QIcon(SRC_DIR + "downloader.ico"))
self.btn_disk_select_all.setIcon(QIcon(SRC_DIR + "select_all.ico"))
self.btn_disk_select_all.setToolTip("按下 Ctrl/Alt + A 全选或则取消全选")
self.btn_disk_select_all.clicked.connect(lambda: self.select_all_btn("reverse"))
self.table_disk.clicked.connect(lambda: self.select_all_btn("cancel"))
self.btn_disk_dl.clicked.connect(lambda: self.call_multi_manipulator("download"))
self.btn_disk_mkdir.setIcon(QIcon(SRC_DIR + "add_folder.ico"))
self.btn_disk_mkdir.clicked.connect(self.call_mkdir)
self.btn_disk_delete.clicked.connect(self.call_remove_files)
# 文件拖拽上传
self.table_disk.drop_files.connect(self.show_upload_dialog)
self.table_disk.doubleClicked.connect(self.change_dir)
# rec tab
示例10
def init_rec_ui(self):
"""回收站ui初始化"""
self.model_rec = QStandardItemModel(1, 3)
self.config_tableview("rec")
self.table_rec.doubleClicked.connect(self.call_rec_folder_dialog)
self.btn_rec_select_all.setIcon(QIcon(SRC_DIR + "select_all.ico"))
self.btn_rec_select_all.clicked.connect(lambda: self.select_all_btn("reverse"))
self.btn_rec_delete.clicked.connect(lambda: self.call_multi_manipulator("delete"))
self.btn_rec_delete.setIcon(QIcon(SRC_DIR + "delete.ico"))
self.btn_recovery.clicked.connect(lambda: self.call_multi_manipulator("recovery"))
self.btn_recovery.setIcon(QIcon(SRC_DIR + "rec_folder.ico"))
self.btn_rec_delete.setToolTip("彻底删除选中文件(夹)")
self.btn_recovery.setToolTip("恢复选中文件(夹)")
self.btn_recovery_all.clicked.connect(lambda: self.call_multi_manipulator("recovery_all"))
self.btn_recovery_all.setIcon(QIcon(SRC_DIR + "rec_folder.ico"))
self.btn_recovery_all.setToolTip("恢复全部")
self.btn_rec_clean.clicked.connect(lambda: self.call_multi_manipulator("clean"))
self.btn_rec_clean.setIcon(QIcon(SRC_DIR + "rec_bin.ico"))
self.btn_rec_clean.setToolTip("清理回收站全部")
self.btn_rec_expire_files.setToolTip("暂时无效!")
# shared url
示例11
def __init__(self, colors, *args, **kwargs):
super(CColorItems, self).__init__(*args, **kwargs)
self.setItemDelegate(StyledItemDelegate(self))
self.setEditTriggers(self.NoEditTriggers)
self.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
self.setFlow(self.LeftToRight)
self.setWrapping(True)
self.setResizeMode(self.Adjust)
self.setSpacing(6)
self.setCursor(Qt.PointingHandCursor)
self.setFrameShape(self.NoFrame)
self._model = QStandardItemModel(self)
self.setModel(self._model)
for color in colors:
self.addColor(color)
示例12
def __init__(self, parent=None, file_path=None):
super().__init__(parent=parent)
h_box = QHBoxLayout(self)
self._ident_titles = ['EI_MAG0', 'EI_MAG1', 'EI_MAG2', 'EI_MAG3', 'EI_CLASS', 'EI_DATA', 'EI_VERSION', 'EI_OSABI', 'EI_ABIVERSION', 'EI_PAD']
self.elf_info = DwarfListView(self)
self.elf_info.setRootIsDecorated(True)
self.elf_info.setExpandsOnDoubleClick(True)
self.elf_info.setContextMenuPolicy(Qt.CustomContextMenu)
self.elf_info.customContextMenuRequested.connect(self._on_context_menu)
h_box.addWidget(self.elf_info)
self._elf_info_mdl = QStandardItemModel(0, 2)
self._elf_info_mdl.setHeaderData(0, Qt.Horizontal, 'Name')
self._elf_info_mdl.setHeaderData(1, Qt.Horizontal, 'Value')
self.elf_info.setModel(self._elf_info_mdl)
self.elf_info.doubleClicked.connect(self._on_dblclicked)
self.title = "ELF Info"
self._elf_file_path = None
self.setLayout(h_box)
if file_path:
self.set_elf_file(file_path)
示例13
def __init__(self, *args, **kwargs):
super(ListView, self).__init__(*args, **kwargs)
# 模型
self._model = QStandardItemModel(self)
self.setModel(self._model)
# 循环生成10个自定义控件
for i in range(10):
item = QStandardItem()
self._model.appendRow(item) # 添加item
# 得到索引
index = self._model.indexFromItem(item)
widget = CustomWidget(str(i))
item.setSizeHint(widget.sizeHint()) # 主要是调整item的高度
# 设置自定义的widget
self.setIndexWidget(index, widget)
示例14
def data(self, index, role=QtCore.Qt.DisplayRole):
if role == QtCore.Qt.DisplayRole:
dstr = QtGui.QStandardItemModel.data(self, index, role)
if dstr == "" or dstr is None:
if isinstance(self.type, click.types.Tuple):
row = index.row()
if 0 <= row < len(self.type.types):
tp = self.type.types[row]
dstr = tp.name
else:
dstr = self.type.name
return dstr
if role == _GTypeRole:
tp = click.STRING
if isinstance(self.type, click.types.Tuple):
row = index.row()
if 0 <= row < len(self.type.types):
tp = self.type.types[row]
elif isinstance(self.type, click.types.ParamType):
tp = self.type
return tp
return QtGui.QStandardItemModel.data(self, index, role)
示例15
def init_listVIew(self):
self.listView.setViewMode(QListView.ListMode)#或者使用QListView.IconMode QListView.ListMode
#self.listView.setMovement(QListView.Static)
self.listView.setIconSize(QSize(20,20))#图标的大小(原始图标大小如果100,100,此时设置草果原始大小则失效)
self.listView.setGridSize(QSize(60,40))#每个选项所在网格大小(每个选项外层grid宽高)
#self.listView.setMaximumHeight(200)#listView整体最大高度
#self.listView.setMinimumSize(QSize(200,200))#listView最小面积(一般如果设置最大高和宽属性后就不设置这个属性了)
#self.listView.setMaximumSize(QSize(500,500))#listVIew最大面积(一般如果设置最大高和宽属性后就不设置这个属性了)
self.listView.setMinimumHeight(80)#listView最小高度
self.listView.setResizeMode(QListView.Adjust)
#self.listView.setMovement(QListView.Static)#设置图标可不可以移动,默认是可移动的,但可以改成静态的:
self.listView_model=QStandardItemModel()
self.listView.setModel(self.listView_model)
self.listView.clicked.connect(self.checkItem)
示例16
def add_debug_inspector(self):
"""
Display a debug inspector to view the call stack.
"""
self.debug_inspector = DebugInspector()
self.debug_model = QStandardItemModel()
self.debug_inspector.setModel(self.debug_model)
self.inspector = QDockWidget(_("Debug Inspector"))
self.inspector.setWidget(self.debug_inspector)
self.inspector.setFeatures(QDockWidget.DockWidgetMovable)
self.inspector.setAllowedAreas(
Qt.BottomDockWidgetArea
| Qt.LeftDockWidgetArea
| Qt.RightDockWidgetArea
)
self.addDockWidget(Qt.RightDockWidgetArea, self.inspector)
self.connect_zoom(self.debug_inspector)
示例17
def path_changed(self):
if self.flight_mode == FlightModeStates.PATH:
self.switch_flight_mode(FlightModeStates.HOVERING)
time.sleep(0.1)
# Flight path ui table setup
self.model = QStandardItemModel(10, 4)
self.model.setHorizontalHeaderItem(0, QStandardItem('X (m)'))
self.model.setHorizontalHeaderItem(1, QStandardItem('Y (m)'))
self.model.setHorizontalHeaderItem(2, QStandardItem('Z (m)'))
self.model.setHorizontalHeaderItem(3, QStandardItem('Yaw (deg)'))
# Populate the table with data
if (len(self.flight_paths) == 0):
return
current = self.flight_paths[self.pathSelector.currentIndex()]
for i in range(1, len(current)):
for j in range(0, 4):
self.model.setItem(i - 1, j,
QStandardItem(str(current[i][j])))
self._flight_path_set_model.emit(self.model)
Config().set("flight_paths", self.flight_paths)
示例18
def fill_sequence_list(self):
"""
Fill sequence_list with data.
"""
data = Data()
sequence_list = self.ui.sequence_list
model = QStandardItemModel(sequence_list)
sequences = data.get_sequence_list()
if len(sequences) > 0:
for sequence in sequences:
note = ""
if sequence[4] is not None:
note = " - %s" % sequence[4]
item = QStandardItem("%s%s" % (sequence[1], note))
item.setEditable(False)
item.setData(str(sequence[0]), QtCore.Qt.UserRole)
model.insertRow(0, item)
sequence_list.setModel(model)
示例19
def fill_image_list(self):
"""
Fill list_image with data.
"""
data = Data()
list_images = self.ui.list_images
model = QStandardItemModel(list_images)
images = data.get_image_list(self.sequence_id)
if len(images) > 0:
for image in images:
item = QStandardItem("%s - %s" % (image[1], functions.get_indicator(image[5])))
item.setEditable(False)
item.setData(str(image[0]), QtCore.Qt.UserRole)
model.appendRow(item)
list_images.setModel(model)
示例20
def __init__(self, parent=None, win=None, xrefs=None, headers=None):
super(XrefValueWindow, self).__init__(parent)
self.parent = parent
self.mainwin = win
self.xrefs = xrefs
self.headers = headers
self.reverse_strings = {}
self.proxyModel = QtCore.QSortFilterProxyModel()
self.proxyModel.setDynamicSortFilter(True)
self.model = QtGui.QStandardItemModel(len(self.xrefs),
len(self.headers), self)
column = 0
for header in headers:
self.model.setHeaderData(column, QtCore.Qt.Horizontal, header)
column += 1
row = 0
for ref in xrefs:
for column in range(len(self.headers)):
self.model.setData(self.model.index(
row, column, QtCore.QModelIndex()), "%s" % ref[column])
row += 1
self.proxyModel.setSourceModel(self.model)
self.setRootIsDecorated(False)
self.setAlternatingRowColors(True)
self.setModel(self.proxyModel)
self.setSortingEnabled(True)
self.setEditTriggers(QtWidgets.QAbstractItemView.NoEditTriggers)
self.doubleClicked.connect(self.slotDoubleClicked)
示例21
def make_model_headers(model, full=True, check_all=True):
'''
Set the model horizontal header data
@param model: the QStandardItemModel which headers should be set
When full is set to False this mean the headers are for the user
to review metadata they've created.
'''
center_align = ['Rank', 'Similarity', 'i', 'Matches']
headers = [ ('Function', 'function name'),
('Rank', 'number of times metadata has been applied'),
('Prototype', 'function prototype')]
if full:
full_headers = [headers[0]]
if check_all:
full_headers.append(('Matches', 'number of unique matches'))
full_headers += [
headers[1],
('Similarity', 'percent of how similary the match is to the function'),
headers[2],
('i', 'full prototype information'),
('Engines', 'engines that matched on this function'),
('i', 'detailed engine information'),
('User', 'creator of the metadata')
]
headers = full_headers
i = 0
for display_name, tooltip in headers:
item_header = QtGui.QStandardItem(display_name)
item_header.setToolTip(tooltip)
if display_name in center_align:
item_header.setTextAlignment(Qt.AlignCenter)
model.setHorizontalHeaderItem(i, item_header)
i += 1
示例22
def _create_item(self, parent_model: Union[QStandardItem, QStandardItemModel], name: str, data: Dict) -> QStandardItem:
item = QStandardItem(name)
for user_role, row_data in data.items():
item.setData(row_data, user_role)
parent_model.appendRow(item)
return item
示例23
def update_displayed_data_form(self):
self.model = QtGui.QStandardItemModel()
for label in TYPES:
item = QtGui.QStandardItem(label.description)
item.setData(label.label_id)
item.setCheckable(True)
item.setEditable(False)
if label.label_id in self.currentFieldSelection:
item.setCheckState(QtCore.Qt.Checked)
self.model.appendRow(item)
self.active_labels_view.setModel(self.model)
self.model.itemChanged.connect(self.updateField)
示例24
def update_displayed_data_form(self):
self.model = QtGui.QStandardItemModel()
for label in TYPES:
item = QtGui.QStandardItem(label.description)
item.setData(label.label_id)
item.setCheckable(True)
item.setEditable(False)
if label.label_id in self.currentFieldSelection:
item.setCheckState(QtCore.Qt.Checked)
self.model.appendRow(item)
self.active_labels_view.setModel(self.model)
self.model.itemChanged.connect(self.updateField)
示例25
def __init__(self, window, uaclient):
self.window = window
self.uaclient = uaclient
self._handler = EventHandler()
self._subscribed_nodes = [] # FIXME: not really needed
self.model = QStandardItemModel()
self.window.ui.evView.setModel(self.model)
self.window.ui.actionSubscribeEvent.triggered.connect(self._subscribe)
self.window.ui.actionUnsubscribeEvents.triggered.connect(self._unsubscribe)
# context menu
self.window.addAction(self.window.ui.actionSubscribeEvent)
self.window.addAction(self.window.ui.actionUnsubscribeEvents)
self.window.addAction(self.window.ui.actionAddToGraph)
self._handler.event_fired.connect(self._update_event_model, type=Qt.QueuedConnection)
# accept drops
self.model.canDropMimeData = self.canDropMimeData
self.model.dropMimeData = self.dropMimeData
示例26
def __init__(self, window, uaclient):
self.window = window
self.uaclient = uaclient
self._subhandler = DataChangeHandler()
self._subscribed_nodes = []
self.model = QStandardItemModel()
self.window.ui.subView.setModel(self.model)
self.window.ui.subView.horizontalHeader().setSectionResizeMode(1)
self.window.ui.actionSubscribeDataChange.triggered.connect(self._subscribe)
self.window.ui.actionUnsubscribeDataChange.triggered.connect(self._unsubscribe)
# populate contextual menu
self.window.addAction(self.window.ui.actionSubscribeDataChange)
self.window.addAction(self.window.ui.actionUnsubscribeDataChange)
# handle subscriptions
self._subhandler.data_change_fired.connect(self._update_subscription_model, type=Qt.QueuedConnection)
# accept drops
self.model.canDropMimeData = self.canDropMimeData
self.model.dropMimeData = self.dropMimeData
示例27
def initUI(self):
self.setWindowTitle("确认删除")
self.setWindowIcon(QIcon(SRC_DIR + "delete.ico"))
self.layout = QVBoxLayout()
self.list_view = QListView()
self.list_view.setViewMode(QListView.ListMode)
# 列表
self.slm = QStandardItem()
self.model = QStandardItemModel()
max_len = 10
count = 0
for info in self.infos:
if info.is_file: # 文件
self.model.appendRow(QStandardItem(set_file_icon(info.name), info.name))
else:
self.model.appendRow(QStandardItem(QIcon(SRC_DIR + "folder.gif"), info.name))
self.out.append({'fid': info.id, 'is_file': info.is_file, 'name': info.name}) # id,文件标示, 文件名
count += 1
if max_len < len(info.name): # 使用最大文件名长度
max_len = len(info.name)
self.list_view.setModel(self.model)
self.lb_name = QLabel("尝试删除以下{}个文件(夹):".format(count))
self.buttonBox = QDialogButtonBox()
self.buttonBox.setOrientation(Qt.Horizontal)
self.buttonBox.setStandardButtons(QDialogButtonBox.Ok | QDialogButtonBox.Cancel)
self.buttonBox.button(QDialogButtonBox.Ok).setText("确定")
self.buttonBox.button(QDialogButtonBox.Cancel).setText("取消")
self.layout.addWidget(self.lb_name)
self.layout.addWidget(self.list_view)
self.layout.addWidget(self.buttonBox)
self.setLayout(self.layout)
self.buttonBox.accepted.connect(self.btn_ok)
self.buttonBox.accepted.connect(self.accept)
self.buttonBox.rejected.connect(self.reject)
self.setMinimumWidth(400)
self.resize(int(max_len*8), int(count*34+60))
示例28
def init_extract_share_ui(self):
self.btn_share_select_all.setDisabled(True)
self.btn_share_dl.setDisabled(True)
self.table_share.setDisabled(True)
self.model_share = QStandardItemModel(1, 3)
self.config_tableview("share")
# 清理旧的信息
self.get_shared_info_thread.update.connect(lambda: self.model_share.removeRows(0, self.model_share.rowCount()))
self.get_shared_info_thread.msg.connect(self.show_status) # 提示信息
self.get_shared_info_thread.infos.connect(self.show_share_url_file_lists) # 内容信息
self.get_shared_info_thread.finished.connect(lambda: self.btn_extract.setEnabled(True))
self.get_shared_info_thread.finished.connect(lambda: self.line_share_url.setEnabled(True))
# 控件设置
self.line_share_url.setPlaceholderText("蓝奏云链接,如有提取码,放后面,空格或汉字等分割,回车键提取")
self.line_share_url.returnPressed.connect(self.call_get_shared_info)
self.line_share_url.setFocus() # 光标焦点
self.btn_extract.clicked.connect(self.call_get_shared_info)
self.btn_share_dl.clicked.connect(lambda: self.call_multi_manipulator("download"))
self.btn_share_dl.setIcon(QIcon(SRC_DIR + "downloader.ico"))
self.btn_share_select_all.setIcon(QIcon(SRC_DIR + "select_all.ico"))
self.btn_share_select_all.clicked.connect(lambda: self.select_all_btn("reverse"))
self.table_share.clicked.connect(lambda: self.select_all_btn("cancel")) # 全选按钮
# 添加文件下载路径选择器
self.share_set_dl_path.setText(self._config.path)
self.share_set_dl_path.clicked.connect(self.set_download_path)
# jobs tab
示例29
def init_jobs_ui(self):
"""初始化上传下载任务管理界面"""
self.model_jobs = QStandardItemModel(1, 4)
self.config_tableview("jobs")
self.jobs_tab.setEnabled(True)
self.btn_jobs_clean_all.clicked.connect(self.call_jobs_clean_all) # 信号
# others
示例30
def editSources(self, title, tip):
self.setWindowTitle(title)
list_view = QListView(self)
self.model = QtGui.QStandardItemModel(list_view)
self.model.itemChanged.connect(self.setItems)
self.setToolTip(tip)
verticalLayout = QVBoxLayout(self)
verticalLayout.addWidget(self.searchEditText)
verticalLayout.addWidget(list_view)
horizontalLayout = QHBoxLayout()
horizontalLayout.setAlignment(QtCore.Qt.AlignRight)
horizontalLayout.addWidget(self.label)
horizontalLayout.addWidget(self.btDisable)
horizontalLayout.addWidget(self.btnEnable)
horizontalLayout.addWidget(self.btnRemove)
horizontalLayout.addWidget(self.btnClose)
verticalLayout.addLayout(horizontalLayout)
mode = 0
args = (self.model, list_view, self.label, self.font, self.font2, mode)
self.searchEditText.textChanged.connect(lambda: UsefulTools().searchItem(*args, self.searchEditText.text()))
for dirpath, dirs, files in os.walk('/etc/apt/'):
word = 'deb'
for filename in fnmatch.filter(files, "*.list"):
source_list = os.path.join(dirpath, filename)
self.sourceslists.append(source_list)
with open(source_list, "r") as sources:
for line in sources:
if line.startswith(word) or line.startswith('#') \
and line[2:].split(' ')[0][:3] == word:
item = QtGui.QStandardItem(line.strip())
item.setCheckable(True)
item.setCheckState(QtCore.Qt.Unchecked)
self.model.appendRow(item)
list_view.setModel(self.model)