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()
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)
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)