gtk/
application.rs

1use gio::ApplicationFlags;
2use glib;
3use glib::translate::*;
4use gtk_sys;
5use rt;
6use Application;
7
8impl Application {
9    pub fn new(
10        application_id: Option<&str>,
11        flags: ApplicationFlags,
12    ) -> Result<Application, glib::BoolError> {
13        skip_assert_initialized!();
14        try!(rt::init());
15        unsafe {
16            Option::from_glib_full(gtk_sys::gtk_application_new(
17                application_id.to_glib_none().0,
18                flags.to_glib(),
19            ))
20            .ok_or_else(|| glib_bool_error!("Failed to create application"))
21        }
22    }
23}