No description.
class IDE(QMainWindow):
This class is like the Sauron's Ring:
One ring to rule them all, One ring to find them,
One ring to bring them all and in the darkness bind them.
This Class knows all the containers, and its know by all the containers,
but the containers don't need to know between each other, in this way we
can keep a better api without the need to tie the behaviour between
the widgets, and let them just consume the 'actions' they need.
def __get_profile():
No description.
def __init__(start_server=False):
No description.
def __set_profile(profileName):
No description.
def _change_tab_index():
Change the tabs of the current TabWidget using alt+numbers.
def _close_tray_icon():
Close the System Tray Icon.
def _connect_signals():
Connect the signals between the different services.
def _last_tab_closed():
Called when the last tasb is closed
def _load_profile_data(key):
Activate the selected profile, closing the current files/projects
def _process_connection():
Read the ipc input from another instance of ninja.
def activate_profile():
Show the Profile Manager dialog.
def change_window_title(title):
Change the title of the Application.
def closeEvent(event):
Saves some global settings before closing.
def create_profile():
Create a profile binding files and projects to a key.
def deactivate_profile():
Close the Profile Session.
def fullscreen_mode():
Change to fullscreen mode.
def get_current_project():
No description.
def get_editable(filename, project=None):
No description.
def get_opened_projects():
No description.
def get_project(path):
No description.
def get_project_for_file(filename):
No description.
def get_service(cls, service_name):
Return the instance of a registered service.
Decorators:
def install_service(service_name):
Activate the registered service.
def load_external_plugins(paths):
Load external plugins, the ones added to ninja throw the cmd.
def load_session_files_projects(filesTab1, filesTab2, projects, current_file, recent_files=None):
Load the files and projects from previous session.
def load_window_geometry():
Load from QSettings the window size of de Ninja IDE
def notify_plugin_errors():
No description.
def place_me_on(name, obj, region=str, top=False):
Place a widget in some of the areas in the IDE.
@name: id to access to that widget later if needed.
@obj: the instance of the widget to be placed.
@region: the area where to put the widget [central, lateral]
@top: place the widget as the first item in the split.
def register_service(cls, service_name, obj):
Register a service providing the service name and the instance.
Decorators:
def register_shortcut(cls, shortcut_name, shortcut, action=None):
Register a shortcut and action.
Decorators:
def register_signals(cls, service_name, connections):
Register all the signals that a particular service wants to be
attached of.
@service_name: id of the service
@connections: list of dictionaries for the connection with:
- 'target': 'the_other_service_name',
- 'signal_name': 'name of the signal in the other service',
- 'slot': function object in this service
Decorators:
def save_profile(profileName):
Save the updates from a profile.
def save_settings():
Save the settings before the application is closed with QSettings.
Info saved: Tabs and projects opened, windows state(size and position).
def show_about_ninja():
Show About NINJA-IDE Dialog.
def show_languages():
Open the Language Manager to install/uninstall languages.
def show_manager():
Open the Plugins Manager to install/uninstall plugins.
def show_preferences():
Open the Preferences Dialog.
def show_python_detection():
Show Python detection dialog for windows.
def show_status_message(message, duration=int):
def show_themes():
Open the Themes Manager to install/uninstall themes.
def switch_focus():
Switch the current keyboard focus to the next widget.
def update_shortcut(cls, shortcut_name):
Update all the shortcuts of the application.
Decorators:
def wheelEvent(event):
Change the opacity of the application.