gtk-0.12.4: Binding to the Gtk+ graphical user interface library.

Portability | portable (depends on GHC)
Stability | provisional
Maintainer | gtk2hs-users@lists.sourceforge.net
Safe Haskell | None

Graphics.UI.Gtk.Builder

Contents

- Detail
- Class Hierarchy
- Types
- Constructing and adding objects
- Retrieving objects

Description

Build an interface from an XML UI definition

All functions in this module are only available in Gtk 2.12 or higher.

Synopsis

- data Builder
- class ObjectClass o => BuilderClass o
- castToBuilder :: GObjectClass obj => obj -> Builder
- gTypeBuilder :: GType
- toBuilder :: BuilderClass o => o -> Builder
- data BuilderError
  - = BuilderErrorInvalidTypeFunction
  - | BuilderErrorUnhandledTag
  - | BuilderErrorMissingAttribute
  - | BuilderErrorInvalidAttribute
  - | BuilderErrorInvalidTag
  - | BuilderErrorMissingPropertyValue
  - | BuilderErrorInvalidValue
  - | BuilderErrorVersionMismatch
  - | BuilderErrorDuplicateId
- builderNew :: IO Builder
- builderAddFromFile :: Builder -> FilePath -> IO ()
- builderAddFromString :: Builder -> String -> IO ()
- builderAddObjectsFromFile :: Builder -> FilePath -> [String] -> IO ()
- builderAddObjectsFromString :: Builder -> String -> [String] -> IO ()
- builderGetObject :: GObjectClass cls => Builder -> (GObject -> cls) -> String -> IO cls
- builderGetObjects :: Builder -> IO [GObject]
- builderGetObjectRaw :: Builder -> String -> IO (Maybe GObject)
- builderSetTranslationDomain :: Builder -> Maybe String -> IO ()
- builderGetTranslationDomain :: Builder -> IO (Maybe String)

# Detail

# Class Hierarchy

     | GObject
     | +----GtkBuilder

# Types

data Builder

Instances

Eq Builder |
Ord Builder |
GObjectClass Builder |
BuilderClass Builder |
ObjectClass Builder |

class ObjectClass o => BuilderClass o

Instances

BuilderClass Builder |

castToBuilder :: GObjectClass obj => obj -> Builder

gTypeBuilder :: GType

toBuilder :: BuilderClass o => o -> Builder

data BuilderError

Constructors

BuilderErrorInvalidTypeFunction |
BuilderErrorUnhandledTag |
BuilderErrorMissingAttribute |
BuilderErrorInvalidAttribute |
BuilderErrorInvalidTag |
BuilderErrorMissingPropertyValue |
BuilderErrorInvalidValue |
BuilderErrorVersionMismatch |
BuilderErrorDuplicateId |

Instances

Enum BuilderError |
Eq BuilderError |
Show BuilderError |

# Constructing and adding objects

builderNew :: IO Builder

Creates a new `Builder` object.

builderAddFromFile :: Builder -> FilePath -> IO ()

Parses a file containing a GtkBuilder UI definition and merges it with the current contents of the `Builder`.

- If an error occurs, the computation will throw an exception that can be caught using e.g. `catchGErrorJust` and one of the error codes in `BuilderError`.

builderAddFromString :: Builder -> String -> IO ()

Parses a string containing a GtkBuilder UI definition and merges it with the current contents of the `Builder`.

- If an error occurs, the computation will throw an exception that can be caught using e.g. `catchGErrorJust` and one of the error codes in `BuilderError`.

builderAddObjectsFromFile

Arguments

:: Builder |
-> FilePath |
-> [String] | Object IDs
-> IO () |

Parses a file containing a GtkBuilder UI definition building only the requested objects and merges them with the current contents of the `Builder`.

- If an error occurs, the computation will throw an exception that can be caught using e.g. `catchGErrorJust` and one of the error codes in `BuilderError`.

builderAddObjectsFromString

Arguments

:: Builder |
-> String |
-> [String] | Object IDs
-> IO () |

Parses a string containing a GtkBuilder UI definition building only the requested objects and merges them with the current contents of the `Builder`.

- If an error occurs, the computation will throw an exception that can be caught using e.g. `catchGErrorJust` and one of the error codes in `BuilderError`.

# Retrieving objects

builderGetObject

Arguments

:: GObjectClass cls |
=> Builder |
-> (GObject -> cls) | A dynamic cast function which returns an object of the expected type, eg `castToButton`
-> String |
-> IO cls |

Gets the object with the given name, with a conversion function. Note that this computation does not increment the reference count of the returned object.

If the object with the given ID is not of the requested type, an exception will be thrown.

builderGetObjects :: Builder -> IO [GObject]

Gets all objects that have been constructed by builder. Note that this computation does not increment the reference counts of the returned objects.

builderGetObjectRaw :: Builder -> String -> IO (Maybe GObject)

Gets the object with the given name. Note that this computation does not increment the reference count of the returned object.

builderSetTranslationDomain :: Builder -> Maybe String -> IO ()

Sets the translation domain of the `Builder`.

builderGetTranslationDomain :: Builder -> IO (Maybe String)

Gets the translation domain of the `Builder`.