Пример #1
0
 def setUp(self):
     super(StatusBarTestCase, self).setUp()
     self.app = QApplication(sys.argv)
     self.parent = gui.FakeParent()
     self.patch(main_container.editor, 'Editor', gui.FakeEditor)
     self.main = main_container.MainContainer(None)
     self.main._parent = self.parent
     self.status = status_bar.StatusBar()
Пример #2
0
    def __init__(self, start_server=False):
        QMainWindow.__init__(self)
        self.setWindowTitle('NINJA-IDE {Ninja-IDE Is Not Just Another IDE}')
        self.setMinimumSize(700, 500)
        #Load the size and the position of the main window
        self.load_window_geometry()

        #Start server if needed
        self.s_listener = None
        if start_server:
            self.s_listener = QLocalServer()
            self.s_listener.listen("ninja_ide")
            self.connect(self.s_listener, SIGNAL("newConnection()"),
                         self._process_connection)

        #Profile handler
        self.profile = None
        #Opacity
        self.opacity = settings.MAX_OPACITY

        #Define Actions object before the UI
        self.actions = actions.Actions()
        #StatusBar
        self.status = status_bar.StatusBar(self)
        self.status.hide()
        self.setStatusBar(self.status)
        #Main Widget - Create first than everything else
        self.central = central_widget.CentralWidget(self)
        self.load_ui(self.central)
        self.setCentralWidget(self.central)

        #ToolBar
        self.toolbar = QToolBar(self)
        self.toolbar.setToolTip(self.tr("Press and Drag to Move"))
        self.toolbar.setToolButtonStyle(Qt.ToolButtonIconOnly)
        self.addToolBar(settings.TOOLBAR_AREA, self.toolbar)
        if settings.HIDE_TOOLBAR:
            self.toolbar.hide()

        #Install Shortcuts after the UI has been initialized
        self.actions.install_shortcuts(self)
        self.connect(self.mainContainer, SIGNAL("currentTabChanged(QString)"),
                     self.actions.update_explorer)

        #Menu
        menubar = self.menuBar()
        file_ = menubar.addMenu(self.tr("&File"))
        edit = menubar.addMenu(self.tr("&Edit"))
        view = menubar.addMenu(self.tr("&View"))
        source = menubar.addMenu(self.tr("&Source"))
        project = menubar.addMenu(self.tr("&Project"))
        self.pluginsMenu = menubar.addMenu(self.tr("&Addins"))
        about = menubar.addMenu(self.tr("Abou&t"))

        #The order of the icons in the toolbar is defined by this calls
        self._menuFile = menu_file.MenuFile(file_, self.toolbar, self)
        self._menuView = menu_view.MenuView(view, self.toolbar, self)
        self._menuEdit = menu_edit.MenuEdit(edit, self.toolbar)
        self._menuSource = menu_source.MenuSource(source)
        self._menuProject = menu_project.MenuProject(project, self.toolbar)
        self._menuPlugins = menu_plugins.MenuPlugins(self.pluginsMenu)
        self._menuAbout = menu_about.MenuAbout(about)

        self.load_toolbar()

        #Plugin Manager
        services = {
            'editor': plugin_services.MainService(),
            'toolbar': plugin_services.ToolbarService(self.toolbar),
            'menuApp': plugin_services.MenuAppService(self.pluginsMenu),
            'explorer': plugin_services.ExplorerService(),
            'misc': plugin_services.MiscContainerService(self.misc)
        }
        serviceLocator = plugin_manager.ServiceLocator(services)
        self.plugin_manager = plugin_manager.PluginManager(
            resources.PLUGINS, serviceLocator)
        self.plugin_manager.discover()
        #load all plugins!
        self.plugin_manager.load_all()

        #Tray Icon
        self.trayIcon = updates.TrayIconUpdates(self)
        self.trayIcon.show()

        self.connect(self._menuFile, SIGNAL("openFile(QString)"),
                     self.mainContainer.open_file)
        self.connect(self.mainContainer, SIGNAL("fileSaved(QString)"),
                     self.show_status_message)
        self.connect(self.mainContainer,
                     SIGNAL("recentTabsModified(QStringList)"),
                     self._menuFile.update_recent_files)
Пример #3
0
    def __init__(self, menuEdit, toolbar):
        QObject.__init__(self)

        undoAction = menuEdit.addAction(QIcon(resources.IMAGES['undo']),
            self.tr("Undo (%1+Z)").arg(settings.OS_KEY))
        redoAction = menuEdit.addAction(QIcon(resources.IMAGES['redo']),
            self.tr("Redo (%1)").arg(
                resources.get_shortcut("Redo").toString(
                    QKeySequence.NativeText)))
        cutAction = menuEdit.addAction(QIcon(resources.IMAGES['cut']),
            self.tr("&Cut (%1+X)").arg(settings.OS_KEY))
        copyAction = menuEdit.addAction(QIcon(resources.IMAGES['copy']),
            self.tr("&Copy (%1+C)").arg(settings.OS_KEY))
        pasteAction = menuEdit.addAction(QIcon(resources.IMAGES['paste']),
            self.tr("&Paste (%1+V)").arg(settings.OS_KEY))
        menuEdit.addSeparator()
        findAction = menuEdit.addAction(QIcon(resources.IMAGES['find']),
            self.tr("Find (%1)").arg(
                resources.get_shortcut("Find").toString(
                    QKeySequence.NativeText)))
        findReplaceAction = menuEdit.addAction(
            QIcon(resources.IMAGES['findReplace']),
            self.tr("Find/Replace (%1)").arg(
                resources.get_shortcut("Find-replace").toString(
                    QKeySequence.NativeText)))
        findWithWordAction = menuEdit.addAction(
            self.tr("Find using word under cursor (%1)").arg(
                resources.get_shortcut("Find-with-word").toString(
                    QKeySequence.NativeText)))
        findInFilesAction = menuEdit.addAction(QIcon(resources.IMAGES['find']),
            self.tr("Find in Files (%1)").arg(
                resources.get_shortcut("Find-in-files").toString(
                    QKeySequence.NativeText)))
        locatorAction = menuEdit.addAction(QIcon(resources.IMAGES['locator']),
            self.tr("Code Locator (%1)").arg(
                resources.get_shortcut("Code-locator").toString(
                    QKeySequence.NativeText)))
        menuEdit.addSeparator()
        upperAction = menuEdit.addAction(
            self.tr("Convert selected Text to: UPPER"))
        lowerAction = menuEdit.addAction(
            self.tr("Convert selected Text to: lower"))
        titleAction = menuEdit.addAction(
            self.tr("Convert selected Text to: Title Word"))
        menuEdit.addSeparator()
        prefAction = menuEdit.addAction(QIcon(resources.IMAGES['pref']),
            self.tr("Preference&s"))

        self.toolbar_items = {
            'undo': undoAction,
            'redo': redoAction,
            'cut': cutAction,
            'copy': copyAction,
            'paste': pasteAction,
            'find': findAction,
            'find-replace': findReplaceAction,
            'find-files': findInFilesAction,
            'code-locator': locatorAction}

        self.connect(cutAction, SIGNAL("triggered()"), self._editor_cut)
        self.connect(copyAction, SIGNAL("triggered()"), self._editor_copy)
        self.connect(pasteAction, SIGNAL("triggered()"), self._editor_paste)
        self.connect(redoAction, SIGNAL("triggered()"), self._editor_redo)
        self.connect(undoAction, SIGNAL("triggered()"), self._editor_undo)
        self.connect(upperAction, SIGNAL("triggered()"), self._editor_upper)
        self.connect(lowerAction, SIGNAL("triggered()"), self._editor_lower)
        self.connect(titleAction, SIGNAL("triggered()"), self._editor_title)
        self.connect(findAction, SIGNAL("triggered()"),
            status_bar.StatusBar().show)
        self.connect(findWithWordAction, SIGNAL("triggered()"),
            status_bar.StatusBar().show_with_word)
        self.connect(findReplaceAction, SIGNAL("triggered()"),
            status_bar.StatusBar().show_replace)
        self.connect(findInFilesAction, SIGNAL("triggered()"),
            self._show_find_in_files)
        self.connect(locatorAction, SIGNAL("triggered()"),
            status_bar.StatusBar().show_locator)
        self.connect(prefAction, SIGNAL("triggered()"), self._show_preferences)