Trait gtk4::prelude::StyleContextExt [−][src]
pub trait StyleContextExt: 'static {
Show 20 methods
fn add_class(&self, class_name: &str);
fn add_provider<P: IsA<StyleProvider>>(&self, provider: &P, priority: u32);
fn border(&self) -> Border;
fn color(&self) -> RGBA;
fn display(&self) -> Display;
fn margin(&self) -> Border;
fn padding(&self) -> Border;
fn scale(&self) -> i32;
fn state(&self) -> StateFlags;
fn has_class(&self, class_name: &str) -> bool;
fn lookup_color(&self, color_name: &str) -> Option<RGBA>;
fn remove_class(&self, class_name: &str);
fn remove_provider<P: IsA<StyleProvider>>(&self, provider: &P);
fn restore(&self);
fn save(&self);
fn set_display<P: IsA<Display>>(&self, display: &P);
fn set_scale(&self, scale: i32);
fn set_state(&self, flags: StateFlags);
fn to_string(&self, flags: StyleContextPrintFlags) -> GString;
fn connect_display_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
}
Expand description
Required methods
Adds a style class to self
, so later uses of the
style context will make use of this new class for styling.
In the CSS file format, a Entry
defining a “search”
class, would be matched by:
entry.search { ... }
While any widget defining a “search” class would be matched by:
.search { ... }
class_name
class name to use in styling
fn add_provider<P: IsA<StyleProvider>>(&self, provider: &P, priority: u32)
fn add_provider<P: IsA<StyleProvider>>(&self, provider: &P, priority: u32)
Adds a style provider to self
, to be used in style construction.
Note that a style provider added by this function only affects
the style of the widget to which self
belongs. If you want
to affect the style of all widgets, use
StyleContext::add_provider_for_display()
.
Note: If both priorities are the same, a StyleProvider
added through this function takes precedence over another added
through StyleContext::add_provider_for_display()
.
provider
priority
the priority of the style provider. The lower
it is, the earlier it will be used in the style construction.
Typically this will be in the range between
GTK_STYLE_PROVIDER_PRIORITY_FALLBACK
and
GTK_STYLE_PROVIDER_PRIORITY_USER
fn state(&self) -> StateFlags
fn state(&self) -> StateFlags
Returns the state used for style matching.
This method should only be used to retrieve the StateFlags
to pass to StyleContext
methods, like
padding()
.
If you need to retrieve the current state of a Widget
, use
WidgetExt::state_flags()
.
Returns
the state flags
Returns true
if self
currently has defined the
given class name.
class_name
a class name
Returns
true
if self
has class_name
defined
fn lookup_color(&self, color_name: &str) -> Option<RGBA>
fn lookup_color(&self, color_name: &str) -> Option<RGBA>
Looks up and resolves a color name in the self
color map.
color_name
color name to lookup
Returns
true
if color_name
was found and resolved, false
otherwise
color
Return location for the looked up color
fn remove_class(&self, class_name: &str)
fn remove_class(&self, class_name: &str)
fn remove_provider<P: IsA<StyleProvider>>(&self, provider: &P)
fn remove_provider<P: IsA<StyleProvider>>(&self, provider: &P)
Saves the self
state.
This allows temporary modifications done through
add_class()
,
remove_class()
,
set_state()
to be quickly
reverted in one go through restore()
.
The matching call to restore()
must be done before GTK returns to the main loop.
fn set_display<P: IsA<Display>>(&self, display: &P)
fn set_display<P: IsA<Display>>(&self, display: &P)
Attaches self
to the given display.
The display is used to add style information from “global”
style providers, such as the display’s Settings
instance.
If you are using a StyleContext
returned from
WidgetExt::style_context()
, you do not need to
call this yourself.
display
fn set_state(&self, flags: StateFlags)
fn set_state(&self, flags: StateFlags)
fn to_string(&self, flags: StyleContextPrintFlags) -> GString
fn to_string(&self, flags: StyleContextPrintFlags) -> GString
Converts the style context into a string representation.
The string representation always includes information about
the name, state, id, visibility and style classes of the CSS
node that is backing self
. Depending on the flags, more
information may be included.
This function is intended for testing and debugging of the CSS implementation in GTK. There are no guarantees about the format of the returned string, it may change.
flags
Flags that determine what to print
Returns
a newly allocated string representing self