Struct gtk4::Application
source · #[repr(transparent)]pub struct Application { /* private fields */ }
Expand description
Application
is a high-level API for writing applications.
It supports many aspects of writing a GTK application in a convenient fashion, without enforcing a one-size-fits-all model.
Currently, Application
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 Application
works fine with plain Window
s, it is
recommended to use it together with ApplicationWindow
.
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 “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.
Note that automatic resource loading uses the resource base path that is set at construction time and will not work if the resource base path is changed at a later time.
It is also possible to provide the menubar manually using
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 IconTheme::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
Application
associates an instance of this shortcuts window with
each ApplicationWindow
and sets up the keyboard accelerator
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
A simple example is available in the GTK source code repository
Application
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
HowDoI: Using GtkApplication, Getting Started with GTK: Basics
Properties
active-window
The currently focused window of the application.
Readable
menubar
The GMenuModel
to be used for the application’s menu bar.
Readable | Writeable
register-session
Set this property to TRUE
to register with the session manager.
This will make GTK track the session state (such as the
screensaver-active
property).
Readable | Writeable
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 currently only supported on Linux.
Readable
Application
action-group
Writeable
application-id
Readable | Writeable | Construct
flags
Readable | Writeable
inactivity-timeout
Readable | Writeable
is-busy
Whether the application is currently marked as busy through g_application_mark_busy() or g_application_bind_busy_property().
Readable
is-registered
Readable
is-remote
Readable
resource-base-path
Readable | Writeable
Signals
query-end
Emitted when the session manager is about to end the session.
This signal is only emitted if register-session
is TRUE
. Applications can connect to this signal and call
GtkApplicationExt::inhibit()
with GTK_APPLICATION_INHIBIT_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
.
This can happen as a side-effect of the window being destroyed
or explicitly through GtkApplicationExt::remove_window()
.
Application
activate
The ::activate signal is emitted on the primary instance when an activation occurs. See g_application_activate().
command-line
The ::command-line signal is emitted on the primary instance when a commandline is not handled locally. See g_application_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 g_application_add_main_option_entries() and g_application_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 g_application_activate(). One or
more arguments results in a call to g_application_open().
If you want to handle the local commandline arguments for yourself
by converting them to calls to g_application_open() or
g_action_group_activate_action() then you must be sure to register
the application first. You should probably not call
g_application_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 g_application_quit().
open
The ::open signal is emitted on the primary instance when there are files to open. See g_application_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 g_application_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
, glib::ObjectExt
, gio::prelude::ActionGroupExt
, gio::prelude::ActionMapExt
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: impl IntoOptionalGStr, flags: ApplicationFlags ) -> Self
Trait Implementations§
source§impl Clone for Application
impl Clone for Application
source§impl Debug for Application
impl Debug for Application
source§impl Default for Application
impl Default for Application
source§impl Display for Application
impl Display for Application
source§impl HasParamSpec for Application
impl HasParamSpec for Application
type ParamSpec = ParamSpecObject
§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
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§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
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read moresource§impl StaticType for Application
impl StaticType for Application
source§fn static_type() -> Type
fn static_type() -> Type
Self
.impl Eq for Application
impl IsA<ActionGroup> for Application
impl IsA<ActionMap> for Application
impl IsA<Application> for Application
Auto Trait Implementations§
impl RefUnwindSafe for Application
impl !Send for Application
impl !Sync for Application
impl Unpin 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, Global>
fn connect_action_added<F>(&self, detail: Option<&str>, f: F) -> SignalHandlerIdwhere F: Fn(&O, &str) + 'static,
fn connect_action_enabled_changed<F>( &self, detail: Option<&str>, f: F ) -> SignalHandlerIdwhere F: Fn(&O, &str, bool) + 'static,
fn connect_action_removed<F>( &self, detail: Option<&str>, f: F ) -> SignalHandlerIdwhere F: Fn(&O, &str) + 'static,
fn connect_action_state_changed<F>( &self, detail: Option<&str>, f: F ) -> SignalHandlerIdwhere F: Fn(&O, &str, &Variant) + 'static,
source§impl<O> ActionMapExt for Owhere
O: IsA<ActionMap>,
impl<O> ActionMapExt for Owhere O: IsA<ActionMap>,
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 Owhere
O: IsA<ActionMap>,
impl<O> ActionMapExtManual for Owhere O: IsA<ActionMap>,
fn add_action_entries(&self, entries: impl IntoIterator<Item = ActionEntry<O>>)
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>)
fn unbind_busy_property(&self, object: &impl IsA<Object>, property: &str)
fn withdraw_notification(&self, id: &str)
fn set_action_group<P>(&self, action_group: Option<&P>)where P: IsA<ActionGroup>,
fn connect_activate<F>(&self, f: F) -> SignalHandlerIdwhere F: Fn(&O) + 'static,
fn connect_command_line<F>(&self, f: F) -> SignalHandlerIdwhere F: Fn(&O, &ApplicationCommandLine) -> i32 + 'static,
fn connect_handle_local_options<F>(&self, f: F) -> SignalHandlerIdwhere F: Fn(&O, &VariantDict) -> i32 + 'static,
source§fn connect_name_lost<F>(&self, f: F) -> SignalHandlerIdwhere
F: Fn(&O) -> bool + 'static,
fn connect_name_lost<F>(&self, f: F) -> SignalHandlerIdwhere F: Fn(&O) -> bool + 'static,
v2_60
only.fn connect_shutdown<F>(&self, f: F) -> SignalHandlerIdwhere F: Fn(&O) + 'static,
fn connect_startup<F>(&self, f: F) -> SignalHandlerIdwhere F: Fn(&O) + 'static,
fn connect_action_group_notify<F>(&self, f: F) -> SignalHandlerIdwhere F: Fn(&O) + 'static,
fn connect_application_id_notify<F>(&self, f: F) -> SignalHandlerIdwhere F: Fn(&O) + 'static,
fn connect_flags_notify<F>(&self, f: F) -> SignalHandlerIdwhere F: Fn(&O) + 'static,
fn connect_inactivity_timeout_notify<F>(&self, f: F) -> SignalHandlerIdwhere F: Fn(&O) + 'static,
fn connect_is_busy_notify<F>(&self, f: F) -> SignalHandlerIdwhere F: Fn(&O) + 'static,
fn connect_is_registered_notify<F>(&self, f: F) -> SignalHandlerIdwhere F: Fn(&O) + 'static,
fn connect_is_remote_notify<F>(&self, f: F) -> SignalHandlerIdwhere F: Fn(&O) + 'static,
fn connect_resource_base_path_notify<F>(&self, f: F) -> SignalHandlerIdwhere F: Fn(&O) + 'static,
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]) -> ExitCodewhere S: AsRef<str>,
fn connect_open<F>(&self, f: F) -> SignalHandlerIdwhere F: Fn(&O, &[File], &str) + 'static,
fn hold(&self) -> ApplicationHoldGuard
fn mark_busy(&self) -> ApplicationBusyGuard
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: CanDowncast<T>,
fn downcast<T>(self) -> Result<T, Self>where T: ObjectType, Self: CanDowncast<T>,
T
. Read moresource§fn downcast_ref<T>(&self) -> Option<&T>where
T: ObjectType,
Self: CanDowncast<T>,
fn downcast_ref<T>(&self) -> Option<&T>where T: ObjectType, Self: CanDowncast<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> 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>,
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>,
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>,
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>,
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>,
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>,
source§impl<T> IntoClosureReturnValue for Twhere
T: Into<Value>,
impl<T> IntoClosureReturnValue for Twhere T: Into<Value>,
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>)where T: ObjectSubclass, <U as ParentClassIs>::Parent: IsSubclassable<T>,
fn parent_instance_init<T>(instance: &mut InitializingObject<T>)where T: ObjectSubclass, <U as ParentClassIs>::Parent: IsSubclassable<T>,
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 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
) -> SignalHandlerIdwhere
F: Fn(&[Value]) -> Option<Value> + Send + Sync + 'static,
fn connect<F>( &self, signal_name: &str, after: bool, callback: F ) -> SignalHandlerIdwhere F: Fn(&[Value]) -> Option<Value> + Send + Sync + 'static,
signal_name
on this object. Read moresource§fn connect_id<F>(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
callback: F
) -> SignalHandlerIdwhere
F: Fn(&[Value]) -> Option<Value> + Send + Sync + 'static,
fn connect_id<F>( &self, signal_id: SignalId, details: Option<Quark>, after: bool, callback: F ) -> SignalHandlerIdwhere F: Fn(&[Value]) -> Option<Value> + Send + Sync + 'static,
signal_id
on this object. Read moresource§fn connect_local<F>(
&self,
signal_name: &str,
after: bool,
callback: F
) -> SignalHandlerIdwhere
F: Fn(&[Value]) -> Option<Value> + 'static,
fn connect_local<F>( &self, signal_name: &str, after: bool, callback: F ) -> SignalHandlerIdwhere F: Fn(&[Value]) -> Option<Value> + 'static,
signal_name
on this object. Read moresource§fn connect_local_id<F>(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
callback: F
) -> SignalHandlerIdwhere
F: Fn(&[Value]) -> Option<Value> + 'static,
fn connect_local_id<F>( &self, signal_id: SignalId, details: Option<Quark>, after: bool, callback: F ) -> SignalHandlerIdwhere F: Fn(&[Value]) -> Option<Value> + 'static,
signal_id
on this object. Read moresource§unsafe fn connect_unsafe<F>(
&self,
signal_name: &str,
after: bool,
callback: F
) -> SignalHandlerIdwhere
F: Fn(&[Value]) -> Option<Value>,
unsafe fn connect_unsafe<F>( &self, signal_name: &str, after: bool, callback: F ) -> SignalHandlerIdwhere F: Fn(&[Value]) -> Option<Value>,
signal_name
on this object. Read moresource§unsafe fn connect_unsafe_id<F>(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
callback: F
) -> SignalHandlerIdwhere
F: Fn(&[Value]) -> Option<Value>,
unsafe fn connect_unsafe_id<F>( &self, signal_id: SignalId, details: Option<Quark>, after: bool, callback: F ) -> SignalHandlerIdwhere F: Fn(&[Value]) -> Option<Value>,
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) -> SignalHandlerIdwhere
F: Fn(&T, &ParamSpec) + Send + Sync + 'static,
fn connect_notify<F>(&self, name: Option<&str>, f: F) -> SignalHandlerIdwhere F: Fn(&T, &ParamSpec) + Send + Sync + 'static,
notify
signal of the object. Read moresource§fn connect_notify_local<F>(&self, name: Option<&str>, f: F) -> SignalHandlerIdwhere
F: Fn(&T, &ParamSpec) + 'static,
fn connect_notify_local<F>(&self, name: Option<&str>, f: F) -> SignalHandlerIdwhere F: Fn(&T, &ParamSpec) + 'static,
notify
signal of the object. Read moresource§unsafe fn connect_notify_unsafe<F>(
&self,
name: Option<&str>,
f: F
) -> SignalHandlerIdwhere
F: Fn(&T, &ParamSpec),
unsafe fn connect_notify_unsafe<F>( &self, name: Option<&str>, f: F ) -> SignalHandlerIdwhere F: Fn(&T, &ParamSpec),
notify
signal of the object. Read more