Esempio n. 1
0
    def show_name_edit(self):
        """
        Shows a QLineEdit widget where the tab
        text is, allowing renaming of tabs.
        """
        self.rename_tab()

        editor = self.edittabs.currentWidget()
        if not editor.objectName() == 'Editor':
            return

        index = self.currentIndex()
        button = self.tabButton(index, QtWidgets.QTabBar.LeftSide)
        if isinstance(button, TabButton):
            label = button.text()
        else:
            label = self.tabText(index)

        self.editor = editor
        self.tab_text = label
        self.tab_index = index
        self.setTabText(index, '')

        self.name_edit = QtWidgets.QLineEdit(self)
        self.name_edit.editingFinished.connect(self.rename_tab)
        self.name_edit.setText(label)
        self.name_edit.selectAll()

        self.setTabButton(index,
                          QtWidgets.QTabBar.LeftSide,
                          self.name_edit)

        self.name_edit.setFocus(QtCore.Qt.MouseFocusReason)
Esempio n. 2
0
    def _show_name_edit(self, index):
        """
        Shows a QLineEdit widget where the tab
        text is, allowing renaming of tabs.
        """
        rect = self.tabRect(index)

        label = self.tabText(index)
        self.renaming_label = label

        self.tab_text = label
        self.tab_index = index

        self.name_edit = QtWidgets.QLineEdit(self)
        self.name_edit.resize(rect.width(), rect.height() - 7)
        self.name_edit.tab_index = index
        self.name_edit.tab_text = label
        self.name_edit.editingFinished.connect(self.rename_tab)
        self.name_edit.setText(label.strip())
        self.name_edit.selectAll()
        self.name_edit.show()
        self.name_edit.raise_()
        p = rect.topLeft()
        self.name_edit.move(p.x(), p.y() + 5)

        self.name_edit.setFocus(QtCore.Qt.MouseFocusReason)
Esempio n. 3
0
    def build_layout(self):
        """
        Create the layout.
        """
        layout = QtWidgets.QVBoxLayout(self)
        layout.setContentsMargins(0, 0, 0, 0)
        # self.setup_menu()
        self.menubar = menubar.MenuBar(self)

        left_widget = QtWidgets.QWidget()
        left_layout = QtWidgets.QVBoxLayout(left_widget)

        path_edit = QtWidgets.QLineEdit()
        path_edit.textChanged.connect(self.update_tree)
        self.path_edit = path_edit

        splitter = QtWidgets.QSplitter(QtCore.Qt.Horizontal)
        self.splitter = splitter

        self.xpanded = False
        self.setLayout(layout)
        self.tool_button = QtWidgets.QToolButton()
        self.tool_button.setText('<')
        self.tool_button.clicked.connect(self.xpand)
        self.tool_button.setMaximumWidth(20)

        layout.addWidget(splitter)

        browse = browser.FileTree(NUKE_DIR)
        self.browser = browse
        left_layout.addWidget(self.path_edit)
        left_layout.addWidget(self.browser)

        self.tabs = edittabs.EditTabs()

        widgets = [left_widget, self.tool_button, self.tabs]
        for w in widgets:
            splitter.addWidget(w)

        splitter.setSizes([200, 10, 800])

        self.install_features()

        self.check_modified_tabs()
        if self.tabs.count() == 0:
            self.tabs.new_tab()
Esempio n. 4
0
    def build_layout(self):
        """
        Create the layout.
        """
        layout = QtWidgets.QVBoxLayout(self)
        layout.setContentsMargins(0, 0, 0, 0)
        # self.setup_menu()
        self.read_only = True
        self.menubar = menubar.MenuBar(self)

        left_widget = QtWidgets.QWidget()
        left_layout = QtWidgets.QVBoxLayout(left_widget)

        path_edit = QtWidgets.QLineEdit()
        path_edit.textChanged.connect(self.update_tree)
        self.path_edit = path_edit

        splitter = QtWidgets.QSplitter(QtCore.Qt.Horizontal)
        self.splitter = splitter

        self.xpanded = False
        self.setLayout(layout)
        self.tool_button = QtWidgets.QToolButton()
        self.tool_button.setText('<')
        self.tool_button.clicked.connect(self.xpand)
        self.tool_button.setMaximumWidth(20)

        layout.addWidget(splitter)

        browse = browser.FileTree(NUKE_DIR)
        self.browser = browse
        left_layout.addWidget(self.path_edit)
        left_layout.addWidget(self.browser)

        self.editor = editor.Editor(handle_shortcuts=True)
        self.editor.path = 'C:/Users/tsalx/Desktop/temp_editor_save.py'

        widgets = [left_widget, self.tool_button, self.editor]
        for w in widgets:
            splitter.addWidget(w)

        splitter.setSizes([200, 10, 800])
        self.browser.path_signal.connect(self.read)
        self.editor.textChanged.connect(self.write)
        self.editor.modificationChanged.connect(self.handle_changed)
Esempio n. 5
0
    def build_layout(self):

        # external editor path
        self.edit_path = QtWidgets.QLineEdit()
        self.external_editor_label = QtWidgets.QLabel('External Editor Path')
        self.external_editor_label.setBuddy(self.edit_path)
        self.layout.addWidget(self.external_editor_label)
        self.layout.addWidget(self.edit_path)

        # # change editor colours
        self.choose_colour_button = QtWidgets.QPushButton('Choose Colour')
        self.colour_dialog = QtWidgets.QColorDialog()
        self.choose_colour_button.clicked.connect(self.colour_dialog.show)
        self.layout.addWidget(self.choose_colour_button)

        # change editor font
        self.font_size = QtWidgets.QSpinBox()
        self.font_size.setValue(9)
        self.font_size_label = QtWidgets.QLabel('Choose Font Size')
        self.font_size_label.setBuddy(self.font_size)
        self.layout.addWidget(self.font_size_label)
        self.layout.addWidget(self.font_size)