hello_rust/
hello-rust.rs

1extern crate gtk;
2extern crate libayatana_appindicator;
3use std::env;
4use std::path::Path;
5
6use gtk::prelude::*;
7use libayatana_appindicator::{AppIndicator, AppIndicatorStatus};
8
9fn main() {
10    gtk::init().unwrap();
11    let mut indicator =
12        AppIndicator::new("libayatana-appindicator test application", "");
13    indicator.set_status(AppIndicatorStatus::Active);
14    let icon_path = Path::new(env!("CARGO_MANIFEST_DIR")).join("examples");
15    indicator.set_icon_theme_path(icon_path.to_str().unwrap());
16    indicator.set_icon_full("rust-logo-64x64-blk", "icon");
17    let mut m = gtk::Menu::new();
18    let mi = gtk::CheckMenuItem::with_label("Hello RUST");
19    mi.connect_activate(|_| {
20        gtk::main_quit();
21    });
22    m.append(&mi);
23    indicator.set_menu(&mut m);
24    m.show_all();
25    gtk::main();
26}