コード例 #1
0
 def addGroupSlot(self):
     groupname = QInputDialog.getText(self, "输入分组名", "")
     if groupname[0] and groupname[1]:
         pListWidget1 = ListWidget(self.s, self.account, 'A')
         self.addItem(pListWidget1, groupname[0])
         dic_list = {'listwidget': pListWidget1, 'groupname': groupname[0]}
         pListWidget1.setListMap(dic_list)
     elif groupname[0] == '' and groupname[1]:
         QMessageBox.warning(self, "警告", "我说你没有填写分组名哦~!")
コード例 #2
0
 def __init__(self):
     '''
     一些初始设置
     '''
     super().__init__()
     self.setWindowTitle('公众号:学点编程吧--QQ')
     self.setWindowFlags(Qt.Dialog)
     self.setMinimumSize(200, 600)
     self.setWhatsThis('这个一个模拟QQ软件')
     self.setWindowIcon(QIcon('./res/log.ico'))
     pListWidget = ListWidget()
     dic_list = {'listwidget': pListWidget, 'groupname': "我的好友"}
     pListWidget.setListMap(dic_list)
     self.addItem(pListWidget, "我的好友")
     self.show()
コード例 #3
0
    def _initUI(self):
        self._layout = QtGui.QVBoxLayout()
        self.setLayout(self._layout)
        self._list_widget = ListWidget(parent=self)
        self._list_widget.itemSelectionChanged.connect(
            self.itemSelectionChangedSlot)
        self._layout.addWidget(self._list_widget)

        self._add_entry_button = QtGui.QPushButton("Add entry", parent=self)
        self._add_entry_button.clicked.connect(self.addEntryClicked)
        self._layout.addWidget(self._add_entry_button)

        self._remove_entry_button = QtGui.QPushButton("Remove entry",
                                                      parent=self)
        self._remove_entry_button.clicked.connect(self.removeEntryClicked)
        self._layout.addWidget(self._remove_entry_button)
コード例 #4
0
 def __init__(self, parent=None):
     super().__init__(parent)
     self.widgets = []
     self.setCentralWidget(QtGui.QStackedWidget(self))
     self.listwidget = ListWidget(self)
     self.centralWidget().addWidget(self.listwidget)
     self.centralWidget().setCurrentIndex(0)
     self.setWindowTitle("Bent File Explorer")
     self.setupMenuBar()
     self.show()
     self.listwidget.populate_widget()
コード例 #5
0
    def _initUI(self):
        self._layout=QtGui.QVBoxLayout()
        self.setLayout(self._layout)
        self._list_widget = ListWidget(parent=self)
        self._list_widget.itemSelectionChanged.connect(self.itemSelectionChangedSlot)
        self._layout.addWidget(self._list_widget)

        self._add_entry_button = QtGui.QPushButton("Add entry", parent=self)
        self._add_entry_button.clicked.connect(self.addEntryClicked)
        self._layout.addWidget(self._add_entry_button)

        self._remove_entry_button = QtGui.QPushButton("Remove entry", parent=self)
        self._remove_entry_button.clicked.connect(self.removeEntryClicked)
        self._layout.addWidget(self._remove_entry_button)
コード例 #6
0
    def __init__(self, s, account):
        super(QQ, self).__init__()
        self.s = s
        self.account = account
        self.setWindowTitle('1806聊天室')
        self.setWindowFlags(Qt.Dialog)
        self.setMinimumSize(200, 600)
        self.setWhatsThis('这个一个模拟QQ软件')
        self.setWindowIcon(QIcon('./res/log.ico'))
        pListWidget = ListWidget(self.s, self.account, 'F')
        pListWidget1 = ListWidget(self.s, self.account, 'G')

        dic_list = {'listwidget': pListWidget, 'groupname': "我的好友"}
        dic_list1 = {'listwidget': pListWidget1, 'groupname': "我的群"}
        pListWidget.setListMap(dic_list)
        pListWidget1.setListMap(dic_list1)
        self.addItem(pListWidget, "我的好友")
        self.addItem(pListWidget1, '我的群')
コード例 #7
0
class AddressBookView(QtGui.QWidget):
    def __init__(self, *args, **kwargs):
        super(QtGui.QWidget, self).__init__(*args, **kwargs)
        self._initUI()
        self._model = None
        self._selection_model = None

    def _initUI(self):
        self._layout = QtGui.QVBoxLayout()
        self.setLayout(self._layout)
        self._list_widget = ListWidget(parent=self)
        self._list_widget.itemSelectionChanged.connect(
            self.itemSelectionChangedSlot)
        self._layout.addWidget(self._list_widget)

        self._add_entry_button = QtGui.QPushButton("Add entry", parent=self)
        self._add_entry_button.clicked.connect(self.addEntryClicked)
        self._layout.addWidget(self._add_entry_button)

        self._remove_entry_button = QtGui.QPushButton("Remove entry",
                                                      parent=self)
        self._remove_entry_button.clicked.connect(self.removeEntryClicked)
        self._layout.addWidget(self._remove_entry_button)

    def addEntryClicked(self):
        self._model.addEntry(name=randomName(), phone="12345")

    def removeEntryClicked(self):
        print "remove"

    def itemSelectionChangedSlot(self, index, selected):
        print "itemSelectionChangedSlot ", index, selected
        self._selection_model.setSelected(index, selected)

    def notify(self, notifier):
        if notifier is self._model:
            self._list_widget.clear()
            for i in range(self._model.numEntries()):
                entry = self._model.getEntry(i)
                string = "%s (%s)" % (entry["name"], entry["phone"])
                self._list_widget.addItem(string)

        if notifier is self._model or notifier is self._selection_model:
            for i in range(self._model.numEntries()):
                self._list_widget.setItemSelected(
                    i, self._selection_model.isSelected(i))

    def setModels(self, model, selection_model):
        self._model = model
        self._selection_model = selection_model
        self._model.register(self)
        self._selection_model.register(self)
コード例 #8
0
class AddressBookView(QtGui.QWidget):
    def __init__(self, *args, **kwargs):
        super(QtGui.QWidget, self).__init__(*args, **kwargs)
        self._initUI()
        self._model = None
        self._selection_model = None

    def _initUI(self):
        self._layout=QtGui.QVBoxLayout()
        self.setLayout(self._layout)
        self._list_widget = ListWidget(parent=self)
        self._list_widget.itemSelectionChanged.connect(self.itemSelectionChangedSlot)
        self._layout.addWidget(self._list_widget)

        self._add_entry_button = QtGui.QPushButton("Add entry", parent=self)
        self._add_entry_button.clicked.connect(self.addEntryClicked)
        self._layout.addWidget(self._add_entry_button)

        self._remove_entry_button = QtGui.QPushButton("Remove entry", parent=self)
        self._remove_entry_button.clicked.connect(self.removeEntryClicked)
        self._layout.addWidget(self._remove_entry_button)

    def addEntryClicked(self):
        self._model.addEntry(name=randomName(), phone="12345" )

    def removeEntryClicked(self):
        print "remove"

    def itemSelectionChangedSlot(self, index, selected):
        print "itemSelectionChangedSlot ", index, selected
        self._selection_model.setSelected(index, selected)

    def notify(self, notifier):
        if notifier is self._model:
            self._list_widget.clear()
            for i in range(self._model.numEntries()):
                entry = self._model.getEntry(i)
                string = "%s (%s)" % (entry["name"], entry["phone"])
                self._list_widget.addItem(string)

        if notifier is self._model or notifier is self._selection_model:
            for i in range(self._model.numEntries()):
                self._list_widget.setItemSelected(i, self._selection_model.isSelected(i))

    def setModels(self, model, selection_model):
        self._model = model
        self._selection_model = selection_model
        self._model.register(self)
        self._selection_model.register(self)
コード例 #9
0
ファイル: MainWindow.py プロジェクト: alexandry-augustin/aafm
    def initUI(self):
        self.setGeometry(0, 0, 1024, 768)
        self.setWindowTitle('pwd')
        #------------------------------------------
        # ListWidget
        #------------------------------------------
        self.listWidget = ListWidget()
        #------------------------------------------
        #
        #------------------------------------------
        #		self.model = QtGui.QFileSystemModel()
        #		self.model.setRootPath("/home/alex/")
        #		self.listWidget.setModel_(self.model)
        #------------------------------------------
        # Actions
        #------------------------------------------
        self.home = QtGui.QAction(QtGui.QIcon("../res/icones/basic_home.svg"),
                                  "home", self)
        self.home.triggered.connect(self.listWidget.setPath)

        self.toggleView = QtGui.QAction(
            QtGui.QIcon("../res/icones/arrows_hamburger 2.svg"), "toggleView",
            self)
        self.toggleView.triggered.connect(self.listWidget.toggleMode)

        self.refreshAction = QtGui.QAction(
            QtGui.QIcon('../res/icones/arrows_clockwise.svg'), '&Refresh',
            self)
        self.refreshAction.setShortcut('Ctrl+R')
        self.refreshAction.setStatusTip('Refresh')

        self.showStatusBarAction = QtGui.QAction('&Show Status Bar', self)
        #		self.showStatusBarAction.setShortcut('Ctrl+R')
        self.showStatusBarAction.setStatusTip('Show Status Bar')
        self.showStatusBarAction.triggered.connect(
            self.toggleViewStatusBarEvent)

        self.showToolBarAction = QtGui.QAction('&Show Tool Bar', self)
        #		self.showToolBarAction.setShortcut('Ctrl+R')
        self.showToolBarAction.setStatusTip('Show Tool Bar')
        self.showToolBarAction.triggered.connect(self.toggleViewToolBarEvent)

        self.exitAction = QtGui.QAction(
            QtGui.QIcon('../res/icones/arrows_remove.svg'), '&Exit', self)
        self.exitAction.setShortcut('Ctrl+Q')
        self.exitAction.setStatusTip('Exit')
        self.exitAction.triggered.connect(QtGui.qApp.quit)
        #------------------------------------------
        # Menu Bar
        #------------------------------------------
        self.fileMenu = self.menuBar().addMenu('&File')
        #		self.fileMenu.addAction(self.restartAction)
        self.fileMenu.addAction(self.exitAction)

        self.viewMenu = self.menuBar().addMenu('&View')
        self.viewMenu.addAction(self.showToolBarAction)
        self.viewMenu.addAction(self.showStatusBarAction)

        self.helpMenu = self.menuBar().addMenu('&Help')
        self.helpMenu.addAction("About")
        #------------------------------------------
        # ToolBar
        #------------------------------------------
        self.toolBar = self.addToolBar("Main")
        self.toolBar.addAction(self.home)
        self.toolBar.addAction(self.toggleView)
        self.toolBar.addAction(self.refreshAction)
        self.toolBar.addAction(self.exitAction)

        #		self.toolBar.actionTriggered[QAction].connect(self.toolbtnpressed)
        #------------------------------------------
        # Terminal
        #------------------------------------------
        #		self.terminalWidget = TerminalWidget(self)
        #------------------------------------------
        # StatusBar
        #------------------------------------------
        self.statusBar().showMessage("Ready")
        #------------------------------------------
        # Central Widget
        #------------------------------------------
        layout = QtGui.QVBoxLayout()
        layout.setMargin(0)
        layout.addWidget(self.listWidget)
        #		layout.addWidget(self.terminalWidget)

        self.centralWidget = QtGui.QWidget()
        self.centralWidget.setLayout(layout)

        self.setCentralWidget(self.centralWidget)

        self.show()
コード例 #10
0
class MainWindow(QtGui.QMainWindow):
    def __init__(self, parent=None):
        super().__init__(parent)
        self.widgets = []
        self.setCentralWidget(QtGui.QStackedWidget(self))
        self.listwidget = ListWidget(self)
        self.centralWidget().addWidget(self.listwidget)
        self.centralWidget().setCurrentIndex(0)
        self.setWindowTitle("Bent File Explorer")
        self.setupMenuBar()
        self.show()
        self.listwidget.populate_widget()

    def setCurrentIndex(self, index):
        self.centralWidget().setCurrentIndex(index)

    def makeMenuBarEntry(self, parent_menu, parent_dict):
        for key in parent_dict.keys():
            menu = QtGui.QMenu(key, self)
            sub = dict[key]
            if isinstance(sub, dict):
                parent_menu.addMenu(makeMenuBarEntry(new_menu, sub))
            elif isinstance(sub, str):
                parent_menu.addActions()
            else:
                print("error, something unique lctauet")
                sys.exit("unknown type")
        
    def setupMenuBar(self):
        menu_layout = {
            "menu":{
                "quit":{}
            }
        }
        menu = makeMenuBarEntry(self.menuBar(), menu_layout)
        menu = QtGui.QMenu("menu", self)
        search = QtGui.QMenu("search", self)
        view = QtGui.QMenu("view", self)
        actions = []
        actions.append(QtGui.QAction("quit", menu))
        actions[-1].triggered.connect(QtGui.qApp.quit)
        menu.addActions(actions)
        actions = []
        search.addActions(actions)
        actions = []
        view.addActions(actions)
        self.menuBar().addMenu(menu)
        self.menuBar().addMenu(search)
        self.menuBar().addMenu(view)

    def searchPrompt(self, recursive):
        string, bool = QtGui.QInputDialog.getText(self, "enter search string", "searches are fun")
        if bool and string:
            if isinstance(self.centralWidget().currentWidget(), ListWidget):
                #print(self.centralWidget().currentWidget(), " is an instance of ", ListWidget)
                directory = str(self.centralWidget().currentWidget().path)
            else:
                #print(self.centralWidget().currentWidget(), " is not an instance of ", ListWidget)
                directory = QtGui.QFileDialog.getExistingDirectory()
            result = searchInterface.getSearchResults(0, directory, str(string), recursive)
            self.listwidget.replaceItems(result)

    def searchReplacePrompt(self, recursive):
        search, boolone = QtGui.QInputDialog.getText(self, "search and replace", "enter string for search")
        replace, booltwo = QtGui.QInputDialog.getText(self, "search and replace", "enter string for replace")
        if boolone and booltwo and search:
            if isinstance(self.centralWidget().currentWidget(), ListWidget):
                #print(self.centralWidget().currentWidget(), " is an instance of ", ListWidget)
                directory = str(self.centralWidget().currentWidget().path)
            else:
                #print(self.centralWidget().currentWidget(), " is not an instance of ", ListWidget)
                directory = QtGui.QFileDialog.getExistingDirectory()
            result = searchInterface.getPotentialRenames(0, directory, str(search), str(replace), recursive)
            for key in result.keys():
                rename_confirm = QtGui.QMessageBox(self)
                rename_confirm.setText("going to rename\n{} to\n{}".format(key, result[key]))
                rename_confirm.setInformativeText("Is this OK?")
                rename_confirm.setStandardButtons(QtGui.QMessageBox.Cancel | QtGui.QMessageBox.Ok)
                rename = rename_confirm.exec_()
                if rename == QtGui.QMessageBox.Ok:
                    # filter out empty string just in case path ended with '/'
                    thing = list(filter(lambda y: y, result[key].split("/")))[-1]
                    # test for existance of file (for collision)
                    if os.path.isfile(result[key]) or os.path.isdir(result[key]):
                        overwrite_confirm = QtGui.QMessageBox(self)
                        overwrite_confirm.setText("the file "+thing+" already exists in the directory")
                        overwrite_confirm.setInformativeText("Do you want to overwrite the file?")
                        overwrite_confirm.setStandardButtons(QtGui.QMessageBox.Cancel | QtGui.QMessageBox.Ok)
                        overwrite = overwrite_confirm.exec_()
                        if overwrite == QtGui.QMessageBox.Ok:
                            #searchInterface.renameFiles(result)
                            os.rename(key, result[key])