| Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte |
|---|---|
| License | LGPL-2.1 |
| Maintainer | Iñaki García Etxebarria |
| Safe Haskell | None |
| Language | Haskell2010 |
GI.Gtk.Objects.CssProvider
Description
GtkCssProvider is an object implementing the StyleProvider interface.
It is able to parse [CSS-like][css-overview] input in order to style widgets.
An application can make GTK+ parse a specific CSS style sheet by calling
cssProviderLoadFromFile or cssProviderLoadFromResource
and adding the provider with styleContextAddProvider or
styleContextAddProviderForDisplay.
In addition, certain files will be read when GTK+ is initialized. First, the
file $XDG_CONFIG_HOME/gtk-4.0/gtk.css is loaded if it exists. Then, GTK+
loads the first existing file among
XDG_DATA_HOME/themes/THEME/gtk-VERSION/gtk.css,
$HOME/.themes/THEME/gtk-VERSION/gtk.css,
$XDG_DATA_DIRS/themes/THEME/gtk-VERSION/gtk.css and
DATADIR/share/themes/THEME/gtk-VERSION/gtk.css, where THEME is the name of
the current theme (see the Settings:gtk-theme-name setting), DATADIR
is the prefix configured when GTK+ was compiled (unless overridden by the
GTK_DATA_PREFIX environment variable), and VERSION is the GTK+ version number.
If no file is found for the current version, GTK+ tries older versions all the
way back to 4.0.
In the same way, GTK+ tries to load a gtk-keys.css file for the current
key theme, as defined by Settings:gtk-key-theme-name.
Synopsis
- newtype CssProvider = CssProvider (ManagedPtr CssProvider)
- class (GObject o, IsDescendantOf CssProvider o) => IsCssProvider o
- toCssProvider :: (MonadIO m, IsCssProvider o) => o -> m CssProvider
- noCssProvider :: Maybe CssProvider
- cssProviderLoadFromData :: (HasCallStack, MonadIO m, IsCssProvider a) => a -> ByteString -> m ()
- cssProviderLoadFromFile :: (HasCallStack, MonadIO m, IsCssProvider a, IsFile b) => a -> b -> m ()
- cssProviderLoadFromPath :: (HasCallStack, MonadIO m, IsCssProvider a) => a -> Text -> m ()
- cssProviderLoadFromResource :: (HasCallStack, MonadIO m, IsCssProvider a) => a -> Text -> m ()
- cssProviderLoadNamed :: (HasCallStack, MonadIO m, IsCssProvider a) => a -> Text -> Maybe Text -> m ()
- cssProviderNew :: (HasCallStack, MonadIO m) => m CssProvider
- cssProviderToString :: (HasCallStack, MonadIO m, IsCssProvider a) => a -> m Text
Exported types
newtype CssProvider Source #
Memory-managed wrapper type.
Constructors
| CssProvider (ManagedPtr CssProvider) |
Instances
| Eq CssProvider Source # | |
Defined in GI.Gtk.Objects.CssProvider | |
| IsGValue CssProvider Source # | Convert |
Defined in GI.Gtk.Objects.CssProvider | |
| GObject CssProvider Source # | |
Defined in GI.Gtk.Objects.CssProvider Methods gobjectType :: IO GType # | |
| HasParentTypes CssProvider Source # | |
Defined in GI.Gtk.Objects.CssProvider | |
| type ParentTypes CssProvider Source # | |
Defined in GI.Gtk.Objects.CssProvider | |
class (GObject o, IsDescendantOf CssProvider o) => IsCssProvider o Source #
Type class for types which can be safely cast to CssProvider, for instance with toCssProvider.
Instances
| (GObject o, IsDescendantOf CssProvider o) => IsCssProvider o Source # | |
Defined in GI.Gtk.Objects.CssProvider | |
toCssProvider :: (MonadIO m, IsCssProvider o) => o -> m CssProvider Source #
Cast to CssProvider, for types for which this is known to be safe. For general casts, use castTo.
noCssProvider :: Maybe CssProvider Source #
A convenience alias for Nothing :: Maybe CssProvider.
Methods
Overloaded methods
loadFromData
cssProviderLoadFromData Source #
Arguments
| :: (HasCallStack, MonadIO m, IsCssProvider a) | |
| => a |
|
| -> ByteString |
|
| -> m () |
Loads data into cssProvider, and by doing so clears any previously loaded
information.
loadFromFile
cssProviderLoadFromFile Source #
Arguments
| :: (HasCallStack, MonadIO m, IsCssProvider a, IsFile b) | |
| => a |
|
| -> b |
|
| -> m () |
Loads the data contained in file into cssProvider, making it
clear any previously loaded information.
loadFromPath
cssProviderLoadFromPath Source #
Arguments
| :: (HasCallStack, MonadIO m, IsCssProvider a) | |
| => a |
|
| -> Text |
|
| -> m () |
Loads the data contained in path into cssProvider, making it clear
any previously loaded information.
loadFromResource
cssProviderLoadFromResource Source #
Arguments
| :: (HasCallStack, MonadIO m, IsCssProvider a) | |
| => a |
|
| -> Text |
|
| -> m () |
Loads the data contained in the resource at resourcePath into
the CssProvider, clearing any previously loaded information.
To track errors while loading CSS, connect to the
CssProvider::parsing-error signal.
loadNamed
Arguments
| :: (HasCallStack, MonadIO m, IsCssProvider a) | |
| => a |
|
| -> Text |
|
| -> Maybe Text |
|
| -> m () |
Loads a theme from the usual theme paths. The actual process of finding the theme might change between releases, but it is guaranteed that this function uses the same mechanism to load the theme that GTK uses for loading its own theme.
new
Arguments
| :: (HasCallStack, MonadIO m) | |
| => m CssProvider | Returns: A new |
Returns a newly created CssProvider.
toString
Arguments
| :: (HasCallStack, MonadIO m, IsCssProvider a) | |
| => a |
|
| -> m Text | Returns: a new string representing the |
Converts the provider into a string representation in CSS
format.
Using cssProviderLoadFromData with the return value
from this function on a new provider created with
cssProviderNew will basically create a duplicate of
this provider.