### Class

# Ide Workbench

#### Description

    final class Ide.Workbench : Gtk.WindowGroup {
      /* No available fields */
    }

No description available.

#### Ancestors

- GtkWindowGroup
- GObject

#### Implements

- GActionGroup

#### Constructors

###### ide_workbench_new

Creates a new `IdeWorkbench`.

Available since: 3.32

###### ide_workbench_new_for_context

Creates a new `IdeWorkbench` using `context` for the `IdeWorkbench:context`.

Available since: 3.32

#### Functions

###### ide_workbench_from_context

Helper to get the `IdeWorkbench` for a given context.

Available since: 3.40

###### ide_workbench_from_widget

Finds the `IdeWorkbench` associated with a widget.

Available since: 3.32

#### Instance methods

###### ide_workbench_activate

This function will attempt to raise the most recently focused workspace.

Available since: 3.32

###### ide_workbench_add_workspace

Adds `workspace` to `workbench`.

Available since: 3.32

###### ide_workbench_addin_find_by_module_name

Finds the addin (if any) matching the plugin’s `module_name`.

Available since: 3.32

###### ide_workbench_focus_workspace

Requests that `workspace` be raised in the windows of `self`, and displayed to the user.

Available since: 3.32

###### ide_workbench_foreach_page

Calls `callback` for every page loaded in the workbench, by iterating workspaces in order of most-recently-used.

Available since: 3.32

###### ide_workbench_foreach_workspace

Iterates the available workspaces in the workbench. Workspaces are iterated in most-recently-used order.

Available since: 3.32

###### ide_workbench_get_build_system

Gets the `IdeBuildSystem` for the workbench, if any.

Available since: 3.32

###### ide_workbench_get_context

Gets the `IdeContext` for the workbench.

Available since: 3.32

###### ide_workbench_get_current_workspace

Gets the most recently focused workspace, which may be used to deliver events such as opening new pages.

Available since: 3.32

###### ide_workbench_get_project_info

Gets the `IdeProjectInfo` for the workbench, if a project has been or is currently, loading.

Available since: 3.32

###### ide_workbench_get_search_engine

Gets the search engine for the workbench, if any.

Available since: 3.32

###### ide_workbench_get_vcs

Gets the `IdeVcs` that has been loaded for the workbench, if any.

Available since: 3.32

###### ide_workbench_get_vcs_monitor

Gets the `IdeVcsMonitor` for the workbench, if any.

Available since: 3.32

###### ide_workbench_get_workspace_by_type

Gets the most-recently-used workspace that matches `type`.

Available since: 3.32

###### ide_workbench_has_project

Returns `TRUE` if a project is loaded (or currently loading) in the workbench.

Available since: 3.32

###### ide_workbench_load_project_async

Requests that a project be opened in the workbench.

Available since: 3.32

###### ide_workbench_load_project_finish

Completes an asynchronous request to open a project using ide_workbench_load_project_async().

Available since: 3.32

###### ide_workbench_open_all_async

Requests that the workbench open all of the `GFile` denoted by `files`.

Available since: 3.32

###### ide_workbench_open_async

Requests that the workbench open `file`.

Available since: 3.32

###### ide_workbench_open_at_async

Like ide_workbench_open_async(), this allows opening a file within the workbench. However, it also allows specifying a line and column offset within the file to focus. Usually, this only makes sense for files that can be opened in an editor.

Available since: 3.32

###### ide_workbench_open_finish

Completes a request to open a file using either `ide_workbench_open_async()` or ide_workbench_open_at_async().

Available since: 3.32

###### ide_workbench_remove_workspace

Removes `workspace` from `workbench`.

Available since: 3.32

###### ide_workbench_resolve_file_async

This function will try to locate a given file based on the filename, possibly resolving it from a build directory, or source directory.

Available since: 3.32

###### ide_workbench_resolve_file_finish

Completes an asynchronous request to ide_workbench_resolve_file_async().

Available since: 3.32

###### ide_workbench_set_build_system

Sets the `IdeBuildSystem` for the workbench.

Available since: 3.32

###### ide_workbench_set_vcs

Sets the `IdeVcs` for the workbench.

Available since: 3.32

###### ide_workbench_unload_async

Asynchronously unloads the workbench.

Available since: 3.32

###### ide_workbench_unload_finish

Completes a request to unload the workbench.

Available since: 3.32

##### Methods inherited from GtkWindowGroup (5)

###### gtk_window_group_add_window

Adds a window to a `GtkWindowGroup`.

###### gtk_window_group_get_current_device_grab

Returns the current grab widget for `device`, or `NULL` if none.

Available since: 3.0

###### gtk_window_group_get_current_grab

Gets the current grab widget of the given group, see gtk_grab_add().

Available since: 2.22

###### gtk_window_group_list_windows

Returns a list of the `GtkWindows` that belong to `window_group`.

Available since: 2.14

###### gtk_window_group_remove_window

Removes a window from a `GtkWindowGroup`.

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

##### Methods inherited from GActionGroup (14)

###### g_action_group_action_added

Emits the `GActionGroup::action-added` signal on `action_group`.

Available since: 2.28

###### g_action_group_action_enabled_changed

Emits the `GActionGroup::action-enabled-changed` signal on `action_group`.

Available since: 2.28

###### g_action_group_action_removed

Emits the `GActionGroup::action-removed` signal on `action_group`.

Available since: 2.28

###### g_action_group_action_state_changed

Emits the `GActionGroup::action-state-changed` signal on `action_group`.

Available since: 2.28

###### g_action_group_activate_action

Activate the named action within `action_group`.

Available since: 2.28

###### g_action_group_change_action_state

Request for the state of the named action within `action_group` to be changed to `value`.

Available since: 2.28

###### g_action_group_get_action_enabled

Checks if the named action within `action_group` is currently enabled.

Available since: 2.28

###### g_action_group_get_action_parameter_type

Queries the type of the parameter that must be given when activating the named action within `action_group`.

Available since: 2.28

###### g_action_group_get_action_state

Queries the current state of the named action within `action_group`.

Available since: 2.28

###### g_action_group_get_action_state_hint

Requests a hint about the valid range of values for the state of the named action within `action_group`.

Available since: 2.28

###### g_action_group_get_action_state_type

Queries the type of the state of the named action within `action_group`.

Available since: 2.28

###### g_action_group_has_action

Checks if the named action exists within `action_group`.

Available since: 2.28

###### g_action_group_list_actions

Lists the actions contained within `action_group`.

Available since: 2.28

###### g_action_group_query_action

Queries all aspects of the named action within an `action_group`.

Available since: 2.32

#### Properties

###### Ide.Workbench:context

The “context” property is the `IdeContext` for the project.

Available since: 3.32

###### Ide.Workbench:vcs

The “vcs” property contains an `IdeVcs` that represents the version control system that is currently loaded for the project.

Available since: 3.32

#### Signals

##### Signals inherited from GObject (1)

###### GObject.Object::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

##### Signals inherited from GActionGroup (4)

###### Gio.ActionGroup::action-added

Signals that a new action was just added to the group. This signal is emitted after the action has been added and is now visible.

Available since: 2.28

###### Gio.ActionGroup::action-enabled-changed

Signals that the enabled status of the named action has changed.

Available since: 2.28

###### Gio.ActionGroup::action-removed

Signals that an action is just about to be removed from the group. This signal is emitted before the action is removed, so the action is still visible and can be queried from the signal handler.

Available since: 2.28

###### Gio.ActionGroup::action-state-changed

Signals that the state of the named action has changed.

Available since: 2.28

#### Class structure

    struct IdeWorkbenchClass {
      GtkWindowGroupClass parent_class;

    }

###### Class members

`parent_class` |
    GtkWindowGroupClass
| No description available.