}
-
+pubic StatusIconA statusicon;
class StatusIconA : StatusIcon {
bool paused = false;
-
- MenuA menu = null;
-
+
public StatusIconA() {
+
+ statusicon = this;
+
+
//title : 'gitlive',
this.stock = Gtk.STOCK_REFRESH;
this.tooltip_text = "GitLive";
this.title = "gitlive";
this.set_name("gitlive");
+
+ var menu = new MenuA();
+
+
this.popup_menu.connect( (button,event_time) =>{
//print(Array.prototype.slice.call(arguments).join(','));
this.menu.show_all();
if (this.paused) {
- this.menu.resume.show();
- this.menu.pause.hide();
+ menu.resume.show();
+ menu.pause.hide();
} else {
- this.menu.resume.hide();
- this.menu.pause.show();
+ menu.resume.hide();
+ menu.pause.show();
}
//Gtk.get_current_event_device ()
- this.menu.popup(
+ menu.popup(
null, null,
null, button,
- this.menu = new MenuA();
-
//var g = { };
//var a = new Gdk.Rectangle();
// needs direction=inout setting in gir to work (in bugzilla @present)
public MenuA()
{
- this.pause = new Gtk.ImageMenuItemA();
- this.add(this.pause);
+ this.pause = new ImageMenuItemA();
+ this.append(this.pause);
+ this.resume = new ImageMenuItemB();
+ this.append(this.resume);
+ }
+
+
+ class ImageMenuItemA : ImageMenuItem {
+
+ public ImageMenuItemA()
+ {
+ this.set_from_stock( Gtk.STOCK_MEDIA_PAUSE );
+ this.label= "Pause Commits";
+ this.always_show_image = true;
+ this.accel_group = null;
+
+ this.activate.connect( () => {
+ statusicon.paused = true;
+
+ //GitMonitor.GitMonitor.stop();
+ // this.el.label = status ? 'Resume' : 'Pause';
+ statusicon.el.set_from_stock( Gtk.STOCK_MEDIA_PAUSE );
+
+
+ })
+ // id : 'pause',
+ }
+
+
+ }
+ class ImageMenuItemB : ImageMenuItem {
+
+ public ImageMenuItemB()
+ {
+ this.set_from_stock( Gtk.STOCK_MEDIA_PLAY );
+ this.label= "Start Commits";
+ this.always_show_image = true;
+ this.accel_group = null;
+
+ this.activate.connect( () => {
+ //GitMonitor.GitMonitor.start();
+ statusicon.paused = false;
+
+ //
+ // this.el.label = status ? 'Resume' : 'Pause';
+ statusicon.el.set_from_stock( Gtk.STOCK_MEDIA_PAUSE );
+
+
+ })
+ // id : 'pause',
+ }
+
+
}
}
pack: false,
items : [
{
- init : function() {
-
- this.el = XObject.isSeed ?
- new Gtk.ImageMenuItem.from_stock(Gtk.STOCK_MEDIA_PAUSE)
- : new Gtk.ImageMenuItem.new_from_stock(Gtk.STOCK_MEDIA_PAUSE, null);
- XObject.prototype.init.call(this);
- },
- label: 'Pause Commits',
-
- always_show_image : true,
- accel_group : null,
- id : 'pause',
+
//label: 'Pause',
pack: 'append',
listeners : {