pub struct Application { /* private fields */ }Expand description
Application is a class that handles many important aspects
of a GTK+ application in a convenient fashion, without enforcing
a one-size-fits-all application model.
Currently, GtkApplication handles GTK+ initialization, application uniqueness, session management, provides some basic scriptability and desktop shell integration by exporting actions and menus and manages a list of toplevel windows whose life-cycle is automatically tied to the life-cycle of your application.
While GtkApplication works fine with plain GtkWindows, it is recommended
to use it together with ApplicationWindow.
When GDK threads are enabled, GtkApplication will acquire the GDK
lock when invoking actions that arrive from other processes. The GDK
lock is not touched for local action invocations. In order to have
actions invoked in a predictable context it is therefore recommended
that the GDK lock be held while invoking actions locally with
[ActionGroupExtManual::activate_action()][crate::gio::prelude::ActionGroupExtManual::activate_action()]. The same applies to actions
associated with ApplicationWindow and to the “activate” and
“open” gio::Application methods.
§Automatic resources ## {automatic-resources}
Application will automatically load menus from the Builder
resource located at “gtk/menus.ui”, relative to the application’s
resource base path (see [ApplicationExtManual::set_resource_base_path()][crate::gio::prelude::ApplicationExtManual::set_resource_base_path()]). The
menu with the ID “app-menu” is taken as the application’s app menu
and the menu with the ID “menubar” is taken as the application’s
menubar. Additional menus (most interesting submenus) can be named
and accessed via GtkApplicationExt::menu_by_id() which allows for
dynamic population of a part of the menu structure.
If the resources “gtk/menus-appmenu.ui” or “gtk/menus-traditional.ui” are
present then these files will be used in preference, depending on the value
of GtkApplicationExt::prefers_app_menu(). If the resource “gtk/menus-common.ui”
is present it will be loaded as well. This is useful for storing items that
are referenced from both “gtk/menus-appmenu.ui” and
“gtk/menus-traditional.ui”.
It is also possible to provide the menus manually using
GtkApplicationExt::set_app_menu() and GtkApplicationExt::set_menubar().
Application will also automatically setup an icon search path for
the default icon theme by appending “icons” to the resource base
path. This allows your application to easily store its icons as
resources. See IconThemeExt::add_resource_path() for more
information.
If there is a resource located at “gtk/help-overlay.ui” which
defines a ShortcutsWindow with ID “help_overlay” then GtkApplication
associates an instance of this shortcuts window with each
ApplicationWindow and sets up keyboard accelerators (Control-F1
and Control-?) to open it. To create a menu item that displays the
shortcuts window, associate the item with the action win.show-help-overlay.
§A simple application ## {gtkapplication}
GtkApplication optionally registers with a session manager
of the users session (if you set the register-session
property) and offers various functionality related to the session
life-cycle.
An application can block various ways to end the session with
the GtkApplicationExt::inhibit() function. Typical use cases for
this kind of inhibiting are long-running, uninterruptible operations,
such as burning a CD or performing a disk backup. The session
manager may not honor the inhibitor, but it can be expected to
inform the user about the negative consequences of ending the
session while inhibitors are present.
§See Also ## {seealso}
HowDoI: Using GtkApplication, Getting Started with GTK+: Basics
§Properties
§active-window
Readable
§app-menu
Readable | Writable
§menubar
Readable | Writable
§register-session
Set this property to true to register with the session manager.
Readable | Writable
§screensaver-active
This property is true if GTK+ believes that the screensaver is
currently active. GTK+ only tracks session state (including this)
when register-session is set to true.
Tracking the screensaver state is supported on Linux.
Readable
Application
§action-group
The group of actions that the application exports.
Writable
§application-id
The unique identifier for the application.
Readable | Writable | Construct
§flags
Flags specifying the behaviour of the application.
Readable | Writable
§inactivity-timeout
Time (in milliseconds) to stay alive after becoming idle.
Readable | Writable
§is-busy
Whether the application is currently marked as busy through
ApplicationExtManual::mark_busy() or [ApplicationExtManual::bind_busy_property()][crate::gio::prelude::ApplicationExtManual::bind_busy_property()].
Readable
§is-registered
Whether [methodGio.register] has been called.
Readable
§is-remote
Whether this application instance is remote.
Readable
§resource-base-path
The base resource path for the application.
Readable | Writable
§version
The human-readable version number of the application.
Readable | Writable
§Signals
§query-end
Emitted when the session manager is about to end the session, only
if register-session is true. Applications can
connect to this signal and call GtkApplicationExt::inhibit() with
ApplicationInhibitFlags::LOGOUT to delay the end of the session
until state has been saved.
§window-added
Emitted when a Window is added to application through
GtkApplicationExt::add_window().
§window-removed
Emitted when a Window is removed from application,
either as a side-effect of being destroyed or explicitly
through GtkApplicationExt::remove_window().
Application
§activate
The ::activate signal is emitted on the primary instance when an
activation occurs. See [ApplicationExtManual::activate()][crate::gio::prelude::ApplicationExtManual::activate()].
§command-line
The ::command-line signal is emitted on the primary instance when
a commandline is not handled locally. See ApplicationExtManual::run() and
the GApplicationCommandLine documentation for more information.
§handle-local-options
The ::handle-local-options signal is emitted on the local instance after the parsing of the commandline options has occurred.
You can add options to be recognised during commandline option
parsing using [ApplicationExtManual::add_main_option_entries()][crate::gio::prelude::ApplicationExtManual::add_main_option_entries()] and
[ApplicationExtManual::add_option_group()][crate::gio::prelude::ApplicationExtManual::add_option_group()].
Signal handlers can inspect options (along with values pointed to
from the arg_data of an installed GOptionEntrys) in order to
decide to perform certain actions, including direct local handling
(which may be useful for options like –version).
In the event that the application is marked
gio::ApplicationFlags::HANDLES_COMMAND_LINE the “normal processing” will
send the options dictionary to the primary instance where it can be
read with g_application_command_line_get_options_dict(). The signal
handler can modify the dictionary before returning, and the
modified dictionary will be sent.
In the event that gio::ApplicationFlags::HANDLES_COMMAND_LINE is not set,
“normal processing” will treat the remaining uncollected command
line arguments as filenames or URIs. If there are no arguments,
the application is activated by [ApplicationExtManual::activate()][crate::gio::prelude::ApplicationExtManual::activate()]. One or
more arguments results in a call to [ApplicationExtManual::open()][crate::gio::prelude::ApplicationExtManual::open()].
If you want to handle the local commandline arguments for yourself
by converting them to calls to [ApplicationExtManual::open()][crate::gio::prelude::ApplicationExtManual::open()] or
[ActionGroupExtManual::activate_action()][crate::gio::prelude::ActionGroupExtManual::activate_action()] then you must be sure to register
the application first. You should probably not call
[ApplicationExtManual::activate()][crate::gio::prelude::ApplicationExtManual::activate()] for yourself, however: just return -1 and
allow the default handler to do it for you. This will ensure that
the --gapplication-service switch works properly (i.e. no activation
in that case).
Note that this signal is emitted from the default implementation of
local_command_line(). If you override that function and don’t
chain up then this signal will never be emitted.
You can override local_command_line() if you need more powerful
capabilities than what is provided here, but this should not
normally be required.
§name-lost
The ::name-lost signal is emitted only on the registered primary instance
when a new instance has taken over. This can only happen if the application
is using the gio::ApplicationFlags::ALLOW_REPLACEMENT flag.
The default handler for this signal calls [ApplicationExtManual::quit()][crate::gio::prelude::ApplicationExtManual::quit()].
§open
The ::open signal is emitted on the primary instance when there are
files to open. See [ApplicationExtManual::open()][crate::gio::prelude::ApplicationExtManual::open()] for more information.
§shutdown
The ::shutdown signal is emitted only on the registered primary instance immediately after the main loop terminates.
§startup
The ::startup signal is emitted on the primary instance immediately
after registration. See [ApplicationExtManual::register()][crate::gio::prelude::ApplicationExtManual::register()].
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.
Detailed
§action-enabled-changed
Signals that the enabled status of the named action has changed.
Detailed
§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.
Detailed
§action-state-changed
Signals that the state of the named action has changed.
Detailed
§Implements
GtkApplicationExt, gio::prelude::ApplicationExt, [trait@glib::ObjectExt], gio::prelude::ActionGroupExt, gio::prelude::ActionMapExt, [gio::ApplicationExtManual][trait@crate::prelude::gio::ApplicationExtManual]
GLib type: GObject with reference counted clone semantics.
Implementations§
Source§impl Application
impl Application
pub const NONE: Option<&'static Application> = None
Sourcepub fn builder() -> ApplicationBuilder
pub fn builder() -> ApplicationBuilder
Creates a new builder-pattern struct instance to construct Application objects.
This method returns an instance of ApplicationBuilder which can be used to create Application objects.
Source§impl Application
impl Application
pub fn new(application_id: Option<&str>, flags: ApplicationFlags) -> Application
Trait Implementations§
Source§impl Clone for Application
impl Clone for Application
Source§impl Debug for Application
impl Debug for Application
impl Eq for Application
Source§impl HasParamSpec for Application
impl HasParamSpec for Application
type ParamSpec = ParamSpecObject
Source§type SetValue = Application
type SetValue = Application
type BuilderFn = fn(&str) -> ParamSpecObjectBuilder<'_, Application>
fn param_spec_builder() -> Self::BuilderFn
Source§impl Hash for Application
impl Hash for Application
impl IsA<ActionGroup> for Application
impl IsA<ActionMap> for Application
impl IsA<Application> for Application
Source§impl<T: GtkApplicationImpl> IsSubclassable<T> for Application
impl<T: GtkApplicationImpl> IsSubclassable<T> for Application
Source§fn class_init(class: &mut Class<Self>)
fn class_init(class: &mut Class<Self>)
Source§fn instance_init(instance: &mut InitializingObject<T>)
fn instance_init(instance: &mut InitializingObject<T>)
Source§impl Ord for Application
impl Ord for Application
Source§fn cmp(&self, other: &Self) -> Ordering
fn cmp(&self, other: &Self) -> Ordering
Comparison for two GObjects.
Compares the memory addresses of the provided objects.
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl ParentClassIs for Application
impl ParentClassIs for Application
type Parent = Application
Source§impl<OT: ObjectType> PartialEq<OT> for Application
impl<OT: ObjectType> PartialEq<OT> for Application
Source§impl<OT: ObjectType> PartialOrd<OT> for Application
impl<OT: ObjectType> PartialOrd<OT> for Application
Source§fn partial_cmp(&self, other: &OT) -> Option<Ordering>
fn partial_cmp(&self, other: &OT) -> Option<Ordering>
Partial comparison for two GObjects.
Compares the memory addresses of the provided objects.
Source§impl StaticType for Application
impl StaticType for Application
Source§fn static_type() -> Type
fn static_type() -> Type
Self.Auto Trait Implementations§
impl !Send for Application
impl !Sync for Application
impl Freeze for Application
impl RefUnwindSafe for Application
impl Unpin for Application
impl UnsafeUnpin for Application
impl UnwindSafe for Application
Blanket Implementations§
Source§impl<O> ActionGroupExt for Owhere
O: IsA<ActionGroup>,
impl<O> ActionGroupExt for Owhere
O: IsA<ActionGroup>,
fn action_added(&self, action_name: &str)
fn action_enabled_changed(&self, action_name: &str, enabled: bool)
fn action_removed(&self, action_name: &str)
fn action_state_changed(&self, action_name: &str, state: &Variant)
fn activate_action(&self, action_name: &str, parameter: Option<&Variant>)
fn change_action_state(&self, action_name: &str, value: &Variant)
fn is_action_enabled(&self, action_name: &str) -> bool
fn action_parameter_type(&self, action_name: &str) -> Option<VariantType>
fn action_state(&self, action_name: &str) -> Option<Variant>
fn action_state_hint(&self, action_name: &str) -> Option<Variant>
fn action_state_type(&self, action_name: &str) -> Option<VariantType>
fn has_action(&self, action_name: &str) -> bool
fn list_actions(&self) -> Vec<GString>
fn connect_action_added<F>(&self, detail: Option<&str>, f: F) -> SignalHandlerId
fn connect_action_enabled_changed<F>( &self, detail: Option<&str>, f: F, ) -> SignalHandlerId
fn connect_action_removed<F>( &self, detail: Option<&str>, f: F, ) -> SignalHandlerId
fn connect_action_state_changed<F>( &self, detail: Option<&str>, f: F, ) -> SignalHandlerId
Source§impl<O> ActionMapExt for O
impl<O> ActionMapExt for O
fn add_action(&self, action: &impl IsA<Action>)
fn lookup_action(&self, action_name: &str) -> Option<Action>
fn remove_action(&self, action_name: &str)
Source§impl<O> ActionMapExtManual for O
impl<O> ActionMapExtManual for O
fn add_action_entries( &self, entries: impl IntoIterator<Item = ActionEntry<Self>>, )
Source§impl<O> ApplicationExt for Owhere
O: IsA<Application>,
impl<O> ApplicationExt for Owhere
O: IsA<Application>,
fn activate(&self)
fn add_main_option( &self, long_name: &str, short_name: Char, flags: OptionFlags, arg: OptionArg, description: &str, arg_description: Option<&str>, )
fn bind_busy_property(&self, object: &impl IsA<Object>, property: &str)
fn application_id(&self) -> Option<GString>
fn dbus_connection(&self) -> Option<DBusConnection>
fn dbus_object_path(&self) -> Option<GString>
fn flags(&self) -> ApplicationFlags
fn inactivity_timeout(&self) -> u32
fn is_busy(&self) -> bool
fn is_registered(&self) -> bool
fn is_remote(&self) -> bool
fn resource_base_path(&self) -> Option<GString>
fn open(&self, files: &[File], hint: &str)
fn quit(&self)
fn register( &self, cancellable: Option<&impl IsA<Cancellable>>, ) -> Result<(), Error>
fn send_notification(&self, id: Option<&str>, notification: &Notification)
fn set_application_id(&self, application_id: Option<&str>)
fn set_default(&self)
fn set_flags(&self, flags: ApplicationFlags)
fn set_inactivity_timeout(&self, inactivity_timeout: u32)
fn set_option_context_description(&self, description: Option<&str>)
fn set_option_context_parameter_string(&self, parameter_string: Option<&str>)
fn set_option_context_summary(&self, summary: Option<&str>)
fn set_resource_base_path(&self, resource_path: Option<&str>)
Source§fn set_version(&self, version: &str)
fn set_version(&self, version: &str)
v2_80 only.fn unbind_busy_property(&self, object: &impl IsA<Object>, property: &str)
fn withdraw_notification(&self, id: &str)
fn connect_activate<F>(&self, f: F) -> SignalHandlerIdwhere
F: Fn(&Self) + 'static,
Source§fn connect_name_lost<F>(&self, f: F) -> SignalHandlerId
fn connect_name_lost<F>(&self, f: F) -> SignalHandlerId
v2_60 only.fn connect_shutdown<F>(&self, f: F) -> SignalHandlerIdwhere
F: Fn(&Self) + 'static,
fn connect_startup<F>(&self, f: F) -> SignalHandlerIdwhere
F: Fn(&Self) + 'static,
fn connect_application_id_notify<F>(&self, f: F) -> SignalHandlerIdwhere
F: Fn(&Self) + 'static,
fn connect_flags_notify<F>(&self, f: F) -> SignalHandlerIdwhere
F: Fn(&Self) + 'static,
fn connect_inactivity_timeout_notify<F>(&self, f: F) -> SignalHandlerIdwhere
F: Fn(&Self) + 'static,
fn connect_is_busy_notify<F>(&self, f: F) -> SignalHandlerIdwhere
F: Fn(&Self) + 'static,
fn connect_is_registered_notify<F>(&self, f: F) -> SignalHandlerIdwhere
F: Fn(&Self) + 'static,
fn connect_is_remote_notify<F>(&self, f: F) -> SignalHandlerIdwhere
F: Fn(&Self) + 'static,
fn connect_resource_base_path_notify<F>(&self, f: F) -> SignalHandlerIdwhere
F: Fn(&Self) + 'static,
Source§fn connect_version_notify<F>(&self, f: F) -> SignalHandlerIdwhere
F: Fn(&Self) + 'static,
fn connect_version_notify<F>(&self, f: F) -> SignalHandlerIdwhere
F: Fn(&Self) + 'static,
v2_80 only.Source§impl<O> ApplicationExtManual for Owhere
O: IsA<Application>,
impl<O> ApplicationExtManual for Owhere
O: IsA<Application>,
fn run(&self) -> ExitCode
fn run_with_args<S>(&self, args: &[S]) -> ExitCode
fn connect_open<F>(&self, f: F) -> SignalHandlerId
fn connect_command_line<F>(&self, f: F) -> SignalHandlerId
fn connect_handle_local_options<F>(&self, f: F) -> SignalHandlerId
fn hold(&self) -> ApplicationHoldGuard
fn mark_busy(&self) -> ApplicationBusyGuard
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> Cast for Twhere
T: ObjectType,
impl<T> Cast for Twhere
T: ObjectType,
Source§fn upcast<T>(self) -> Twhere
T: ObjectType,
Self: IsA<T>,
fn upcast<T>(self) -> Twhere
T: ObjectType,
Self: IsA<T>,
T. Read moreSource§fn upcast_ref<T>(&self) -> &Twhere
T: ObjectType,
Self: IsA<T>,
fn upcast_ref<T>(&self) -> &Twhere
T: ObjectType,
Self: IsA<T>,
T. Read moreSource§fn downcast<T>(self) -> Result<T, Self>where
T: ObjectType,
Self: MayDowncastTo<T>,
fn downcast<T>(self) -> Result<T, Self>where
T: ObjectType,
Self: MayDowncastTo<T>,
T. Read moreSource§fn downcast_ref<T>(&self) -> Option<&T>where
T: ObjectType,
Self: MayDowncastTo<T>,
fn downcast_ref<T>(&self) -> Option<&T>where
T: ObjectType,
Self: MayDowncastTo<T>,
T. Read moreSource§fn dynamic_cast<T>(self) -> Result<T, Self>where
T: ObjectType,
fn dynamic_cast<T>(self) -> Result<T, Self>where
T: ObjectType,
T. This handles upcasting, downcasting
and casting between interface and interface implementors. All checks are performed at
runtime, while upcast will do many checks at compile-time already. downcast will
perform the same checks at runtime as dynamic_cast, but will also ensure some amount of
compile-time safety. Read moreSource§fn dynamic_cast_ref<T>(&self) -> Option<&T>where
T: ObjectType,
fn dynamic_cast_ref<T>(&self) -> Option<&T>where
T: ObjectType,
T. This handles upcasting, downcasting
and casting between interface and interface implementors. All checks are performed at
runtime, while downcast and upcast will do many checks at compile-time already. Read moreSource§unsafe fn unsafe_cast<T>(self) -> Twhere
T: ObjectType,
unsafe fn unsafe_cast<T>(self) -> Twhere
T: ObjectType,
T unconditionally. Read moreSource§unsafe fn unsafe_cast_ref<T>(&self) -> &Twhere
T: ObjectType,
unsafe fn unsafe_cast_ref<T>(&self) -> &Twhere
T: ObjectType,
&T unconditionally. Read moreSource§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GList> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GList> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
Source§impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GPtrArray> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GPtrArray> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
Source§impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GSList> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GSList> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
Source§impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GList> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GList> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
Source§impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GPtrArray> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GPtrArray> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
Source§impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GSList> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GSList> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
Source§impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GList> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GList> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
unsafe fn from_glib_none_as_vec(ptr: *const GList) -> Vec<T>
unsafe fn from_glib_container_as_vec(_: *const GList) -> Vec<T>
unsafe fn from_glib_full_as_vec(_: *const GList) -> Vec<T>
Source§impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GPtrArray> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GPtrArray> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
unsafe fn from_glib_none_as_vec(ptr: *const GPtrArray) -> Vec<T>
unsafe fn from_glib_container_as_vec(_: *const GPtrArray) -> Vec<T>
unsafe fn from_glib_full_as_vec(_: *const GPtrArray) -> Vec<T>
Source§impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GSList> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GSList> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
unsafe fn from_glib_none_as_vec(ptr: *const GSList) -> Vec<T>
unsafe fn from_glib_container_as_vec(_: *const GSList) -> Vec<T>
unsafe fn from_glib_full_as_vec(_: *const GSList) -> Vec<T>
Source§impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GList> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GList> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
unsafe fn from_glib_none_as_vec(ptr: *mut GList) -> Vec<T>
unsafe fn from_glib_container_as_vec(ptr: *mut GList) -> Vec<T>
unsafe fn from_glib_full_as_vec(ptr: *mut GList) -> Vec<T>
Source§impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GPtrArray> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GPtrArray> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
unsafe fn from_glib_none_as_vec(ptr: *mut GPtrArray) -> Vec<T>
unsafe fn from_glib_container_as_vec(ptr: *mut GPtrArray) -> Vec<T>
unsafe fn from_glib_full_as_vec(ptr: *mut GPtrArray) -> Vec<T>
Source§impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GSList> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GSList> for Twhere
T: GlibPtrDefault + FromGlibPtrNone<<T as GlibPtrDefault>::GlibType> + FromGlibPtrFull<<T as GlibPtrDefault>::GlibType>,
unsafe fn from_glib_none_as_vec(ptr: *mut GSList) -> Vec<T>
unsafe fn from_glib_container_as_vec(ptr: *mut GSList) -> Vec<T>
unsafe fn from_glib_full_as_vec(ptr: *mut GSList) -> Vec<T>
impl<'a, T, C, E> FromValueOptional<'a> for Twhere
T: FromValue<'a, Checker = C>,
C: ValueTypeChecker<Error = ValueTypeMismatchOrNoneError<E>>,
E: Error + Send + 'static,
Source§impl<O> GtkApplicationExt for Owhere
O: IsA<Application>,
impl<O> GtkApplicationExt for Owhere
O: IsA<Application>,
Source§fn accels_for_action(&self, detailed_action_name: &str) -> Vec<GString>
fn accels_for_action(&self, detailed_action_name: &str) -> Vec<GString>
Source§fn actions_for_accel(&self, accel: &str) -> Vec<GString>
fn actions_for_accel(&self, accel: &str) -> Vec<GString>
accel maps to.
Each item in the list is a detailed action name in the usual form. Read moreSource§fn active_window(&self) -> Option<Window>
fn active_window(&self) -> Option<Window>
set_app_menu(). Read moreset_menubar(). Read moreSource§fn window_by_id(&self, id: u32) -> Option<Window>
fn window_by_id(&self, id: u32) -> Option<Window>
ApplicationWindow with the given ID. Read moreSource§fn inhibit(
&self,
window: Option<&impl IsA<Window>>,
flags: ApplicationInhibitFlags,
reason: Option<&str>,
) -> u32
fn inhibit( &self, window: Option<&impl IsA<Window>>, flags: ApplicationInhibitFlags, reason: Option<&str>, ) -> u32
Source§fn is_inhibited(&self, flags: ApplicationInhibitFlags) -> bool
fn is_inhibited(&self, flags: ApplicationInhibitFlags) -> bool
flags are
currently inhibited (possibly by another application). Read moreSource§fn list_action_descriptions(&self) -> Vec<GString>
fn list_action_descriptions(&self) -> Vec<GString>
set_accels_for_action(). Read moreSource§fn set_accels_for_action(&self, detailed_action_name: &str, accels: &[&str])
fn set_accels_for_action(&self, detailed_action_name: &str, accels: &[&str])
accels will be the primary
accelerator, which may be displayed in the UI. Read moreself. Read moreself. Read moreSource§fn is_register_session(&self) -> bool
fn is_register_session(&self) -> bool
true to register with the session manager.Source§fn set_register_session(&self, register_session: bool)
fn set_register_session(&self, register_session: bool)
true to register with the session manager.Source§fn is_screensaver_active(&self) -> bool
fn is_screensaver_active(&self) -> bool
v3_24 only.true if GTK+ believes that the screensaver is
currently active. GTK+ only tracks session state (including this)
when register-session is set to true. Read moreSource§fn connect_query_end<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId
fn connect_query_end<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId
v3_24_8 only.register-session is true. Applications can
connect to this signal and call inhibit() with
ApplicationInhibitFlags::LOGOUT to delay the end of the session
until state has been saved.Source§fn connect_window_added<F: Fn(&Self, &Window) + 'static>(
&self,
f: F,
) -> SignalHandlerId
fn connect_window_added<F: Fn(&Self, &Window) + 'static>( &self, f: F, ) -> SignalHandlerId
Source§fn connect_window_removed<F: Fn(&Self, &Window) + 'static>(
&self,
f: F,
) -> SignalHandlerId
fn connect_window_removed<F: Fn(&Self, &Window) + 'static>( &self, f: F, ) -> SignalHandlerId
Window is removed from application,
either as a side-effect of being destroyed or explicitly
through remove_window(). Read morefn connect_active_window_notify<F: Fn(&Self) + 'static>( &self, f: F, ) -> SignalHandlerId
fn connect_register_session_notify<F: Fn(&Self) + 'static>( &self, f: F, ) -> SignalHandlerId
Source§fn connect_screensaver_active_notify<F: Fn(&Self) + 'static>(
&self,
f: F,
) -> SignalHandlerId
fn connect_screensaver_active_notify<F: Fn(&Self) + 'static>( &self, f: F, ) -> SignalHandlerId
v3_24 only.Source§impl<T> IntoClosureReturnValue for T
impl<T> IntoClosureReturnValue for T
fn into_closure_return_value(self) -> Option<Value>
Source§impl<U> IsSubclassableExt for Uwhere
U: IsClass + ParentClassIs,
impl<U> IsSubclassableExt for Uwhere
U: IsClass + ParentClassIs,
fn parent_class_init<T>(class: &mut Class<U>)
fn parent_instance_init<T>(instance: &mut InitializingObject<T>)
impl<Super, Sub> MayDowncastTo<Sub> for Super
Source§impl<T> ObjectExt for Twhere
T: ObjectType,
impl<T> ObjectExt for Twhere
T: ObjectType,
Source§fn is<U>(&self) -> boolwhere
U: StaticType,
fn is<U>(&self) -> boolwhere
U: StaticType,
true if the object is an instance of (can be cast to) T.Source§fn object_class(&self) -> &Class<Object>
fn object_class(&self) -> &Class<Object>
ObjectClass of the object. Read moreSource§fn class_of<U>(&self) -> Option<&Class<U>>where
U: IsClass,
fn class_of<U>(&self) -> Option<&Class<U>>where
U: IsClass,
T. Read moreSource§fn interface<U>(&self) -> Option<InterfaceRef<'_, U>>where
U: IsInterface,
fn interface<U>(&self) -> Option<InterfaceRef<'_, U>>where
U: IsInterface,
T of the object. Read moreSource§fn set_property_from_value(&self, property_name: &str, value: &Value)
fn set_property_from_value(&self, property_name: &str, value: &Value)
Source§fn set_properties(&self, property_values: &[(&str, &dyn ToValue)])
fn set_properties(&self, property_values: &[(&str, &dyn ToValue)])
Source§fn set_properties_from_value(&self, property_values: &[(&str, Value)])
fn set_properties_from_value(&self, property_values: &[(&str, Value)])
Source§fn property<V>(&self, property_name: &str) -> Vwhere
V: for<'b> FromValue<'b> + 'static,
fn property<V>(&self, property_name: &str) -> Vwhere
V: for<'b> FromValue<'b> + 'static,
property_name of the object and cast it to the type V. Read moreSource§fn property_value(&self, property_name: &str) -> Value
fn property_value(&self, property_name: &str) -> Value
property_name of the object. Read moreSource§fn has_property(&self, property_name: &str) -> bool
fn has_property(&self, property_name: &str) -> bool
property_name.Source§fn has_property_with_type(&self, property_name: &str, type_: Type) -> bool
fn has_property_with_type(&self, property_name: &str, type_: Type) -> bool
property_name of the given type_.Source§fn property_type(&self, property_name: &str) -> Option<Type>
fn property_type(&self, property_name: &str) -> Option<Type>
property_name of this object. Read moreSource§fn find_property(&self, property_name: &str) -> Option<ParamSpec>
fn find_property(&self, property_name: &str) -> Option<ParamSpec>
ParamSpec of the property property_name of this object.Source§fn list_properties(&self) -> PtrSlice<ParamSpec>
fn list_properties(&self) -> PtrSlice<ParamSpec>
ParamSpec of the properties of this object.Source§fn freeze_notify(&self) -> PropertyNotificationFreezeGuard
fn freeze_notify(&self) -> PropertyNotificationFreezeGuard
Source§unsafe fn set_qdata<QD>(&self, key: Quark, value: QD)where
QD: 'static,
unsafe fn set_qdata<QD>(&self, key: Quark, value: QD)where
QD: 'static,
key. Read moreSource§unsafe fn qdata<QD>(&self, key: Quark) -> Option<NonNull<QD>>where
QD: 'static,
unsafe fn qdata<QD>(&self, key: Quark) -> Option<NonNull<QD>>where
QD: 'static,
key. Read moreSource§unsafe fn steal_qdata<QD>(&self, key: Quark) -> Option<QD>where
QD: 'static,
unsafe fn steal_qdata<QD>(&self, key: Quark) -> Option<QD>where
QD: 'static,
key. Read moreSource§unsafe fn set_data<QD>(&self, key: &str, value: QD)where
QD: 'static,
unsafe fn set_data<QD>(&self, key: &str, value: QD)where
QD: 'static,
key. Read moreSource§unsafe fn data<QD>(&self, key: &str) -> Option<NonNull<QD>>where
QD: 'static,
unsafe fn data<QD>(&self, key: &str) -> Option<NonNull<QD>>where
QD: 'static,
key. Read moreSource§unsafe fn steal_data<QD>(&self, key: &str) -> Option<QD>where
QD: 'static,
unsafe fn steal_data<QD>(&self, key: &str) -> Option<QD>where
QD: 'static,
key. Read moreSource§fn block_signal(&self, handler_id: &SignalHandlerId)
fn block_signal(&self, handler_id: &SignalHandlerId)
Source§fn unblock_signal(&self, handler_id: &SignalHandlerId)
fn unblock_signal(&self, handler_id: &SignalHandlerId)
Source§fn stop_signal_emission(&self, signal_id: SignalId, detail: Option<Quark>)
fn stop_signal_emission(&self, signal_id: SignalId, detail: Option<Quark>)
Source§fn stop_signal_emission_by_name(&self, signal_name: &str)
fn stop_signal_emission_by_name(&self, signal_name: &str)
Source§fn connect<F>(
&self,
signal_name: &str,
after: bool,
callback: F,
) -> SignalHandlerId
fn connect<F>( &self, signal_name: &str, after: bool, callback: F, ) -> SignalHandlerId
signal_name on this object. Read moreSource§fn connect_id<F>(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
callback: F,
) -> SignalHandlerId
fn connect_id<F>( &self, signal_id: SignalId, details: Option<Quark>, after: bool, callback: F, ) -> SignalHandlerId
signal_id on this object. Read moreSource§fn connect_local<F>(
&self,
signal_name: &str,
after: bool,
callback: F,
) -> SignalHandlerId
fn connect_local<F>( &self, signal_name: &str, after: bool, callback: F, ) -> SignalHandlerId
signal_name on this object. Read moreSource§fn connect_local_id<F>(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
callback: F,
) -> SignalHandlerId
fn connect_local_id<F>( &self, signal_id: SignalId, details: Option<Quark>, after: bool, callback: F, ) -> SignalHandlerId
signal_id on this object. Read moreSource§unsafe fn connect_unsafe<F>(
&self,
signal_name: &str,
after: bool,
callback: F,
) -> SignalHandlerId
unsafe fn connect_unsafe<F>( &self, signal_name: &str, after: bool, callback: F, ) -> SignalHandlerId
signal_name on this object. Read moreSource§unsafe fn connect_unsafe_id<F>(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
callback: F,
) -> SignalHandlerId
unsafe fn connect_unsafe_id<F>( &self, signal_id: SignalId, details: Option<Quark>, after: bool, callback: F, ) -> SignalHandlerId
signal_id on this object. Read moreSource§fn connect_closure(
&self,
signal_name: &str,
after: bool,
closure: RustClosure,
) -> SignalHandlerId
fn connect_closure( &self, signal_name: &str, after: bool, closure: RustClosure, ) -> SignalHandlerId
signal_name on this object. Read moreSource§fn connect_closure_id(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
closure: RustClosure,
) -> SignalHandlerId
fn connect_closure_id( &self, signal_id: SignalId, details: Option<Quark>, after: bool, closure: RustClosure, ) -> SignalHandlerId
signal_id on this object. Read moreSource§fn watch_closure(&self, closure: &impl AsRef<Closure>)
fn watch_closure(&self, closure: &impl AsRef<Closure>)
closure to the lifetime of the object. When
the object’s reference count drops to zero, the closure will be
invalidated. An invalidated closure will ignore any calls to
invoke_with_values, or
invoke when using Rust closures.Source§fn emit<R>(&self, signal_id: SignalId, args: &[&dyn ToValue]) -> Rwhere
R: TryFromClosureReturnValue,
fn emit<R>(&self, signal_id: SignalId, args: &[&dyn ToValue]) -> Rwhere
R: TryFromClosureReturnValue,
Source§fn emit_with_values(&self, signal_id: SignalId, args: &[Value]) -> Option<Value>
fn emit_with_values(&self, signal_id: SignalId, args: &[Value]) -> Option<Value>
Self::emit but takes Value for the arguments.Source§fn emit_by_name<R>(&self, signal_name: &str, args: &[&dyn ToValue]) -> Rwhere
R: TryFromClosureReturnValue,
fn emit_by_name<R>(&self, signal_name: &str, args: &[&dyn ToValue]) -> Rwhere
R: TryFromClosureReturnValue,
Source§fn emit_by_name_with_values(
&self,
signal_name: &str,
args: &[Value],
) -> Option<Value>
fn emit_by_name_with_values( &self, signal_name: &str, args: &[Value], ) -> Option<Value>
Source§fn emit_by_name_with_details<R>(
&self,
signal_name: &str,
details: Quark,
args: &[&dyn ToValue],
) -> Rwhere
R: TryFromClosureReturnValue,
fn emit_by_name_with_details<R>(
&self,
signal_name: &str,
details: Quark,
args: &[&dyn ToValue],
) -> Rwhere
R: TryFromClosureReturnValue,
Source§fn emit_by_name_with_details_and_values(
&self,
signal_name: &str,
details: Quark,
args: &[Value],
) -> Option<Value>
fn emit_by_name_with_details_and_values( &self, signal_name: &str, details: Quark, args: &[Value], ) -> Option<Value>
Source§fn emit_with_details<R>(
&self,
signal_id: SignalId,
details: Quark,
args: &[&dyn ToValue],
) -> Rwhere
R: TryFromClosureReturnValue,
fn emit_with_details<R>(
&self,
signal_id: SignalId,
details: Quark,
args: &[&dyn ToValue],
) -> Rwhere
R: TryFromClosureReturnValue,
Source§fn emit_with_details_and_values(
&self,
signal_id: SignalId,
details: Quark,
args: &[Value],
) -> Option<Value>
fn emit_with_details_and_values( &self, signal_id: SignalId, details: Quark, args: &[Value], ) -> Option<Value>
Source§fn disconnect(&self, handler_id: SignalHandlerId)
fn disconnect(&self, handler_id: SignalHandlerId)
Source§fn connect_notify<F>(&self, name: Option<&str>, f: F) -> SignalHandlerId
fn connect_notify<F>(&self, name: Option<&str>, f: F) -> SignalHandlerId
notify signal of the object. Read moreSource§fn connect_notify_local<F>(&self, name: Option<&str>, f: F) -> SignalHandlerId
fn connect_notify_local<F>(&self, name: Option<&str>, f: F) -> SignalHandlerId
notify signal of the object. Read moreSource§unsafe fn connect_notify_unsafe<F>(
&self,
name: Option<&str>,
f: F,
) -> SignalHandlerId
unsafe fn connect_notify_unsafe<F>( &self, name: Option<&str>, f: F, ) -> SignalHandlerId
notify signal of the object. Read more