/*
* app - zavai main window
*
- * Copyright (C) 2009 Enrico Zini <enrico@enricozini.org>
+ * Copyright (C) 2009-2010 Enrico Zini <enrico@enricozini.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
current = null;
destroy += Gtk.main_quit;
set_events(get_events() | Gdk.EventMask.VISIBILITY_NOTIFY_MASK);
+ set_position(Gtk.WindowPosition.MOUSE);
visibility_notify_event += on_visibility;
set_skip_pager_hint(true);
set_skip_taskbar_hint(true);
show_all();
}
}
-
- public void run_script(string command)
- {
- zavai.log.info("Run program: " + command);
- string[] args = command.split(" ");
- Pid pid;
- try {
- Process.spawn_async(
- Environment.get_home_dir(),
- args,
- null,
- SpawnFlags.SEARCH_PATH,
- null,
- out pid);
- } catch (SpawnError e) {
- zavai.log.error("Running " + command + ": " + e.message);
- }
- }
}
public abstract class Applet : Gtk.VBox, Resource
set_label(get_active() ? label_stop : label_start);
}
+ private void on_service_toggled(bool val)
+ {
+ set_active(val);
+ //set_label(val ? label_stop : label_start);
+ }
+
public ServiceRequestLink(Service service, string label_start, string label_stop)
{
this.service = service;
this.label_start = label_start;
this.label_stop = label_stop;
set_size_request(0, zavai.config.min_button_height);
+ set_active(service.started);
toggled += on_toggled;
+ service.toggled += on_service_toggled;
set_label(get_active() ? label_stop : label_start);
}