X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=RepoStatusPopover.bjs;h=ee42f33566ac1d49b2d101e69c02b82e03ed6ec8;hb=361d6fef57068abcdcf275493b6d0b04f07e121e;hp=a34afca6b2b22d38a611f3a59427b51df46f12e7;hpb=2d3bb6db4cf59fb23b8774360ee0f15ffb7dc975;p=gitlive diff --git a/RepoStatusPopover.bjs b/RepoStatusPopover.bjs index a34afca6..ee42f335 100644 --- a/RepoStatusPopover.bjs +++ b/RepoStatusPopover.bjs @@ -9,7 +9,7 @@ "items" : [ { "GitRepo repo" : "", - "| void show" : " (Gtk.Widget btn, Gdk.Rectangle rect, GitRepo repo) {\n _this.repo = repo;\n // get the active project.\n var lm = Gtk.SourceLanguageManager.get_default();\n \n// ((Gtk.SourceBuffer)(_this.view.el.get_buffer())) .set_language(\n // lm.get_language(\"html\")\n // );\n \n //print (project.fn);\n //project.runhtml = project.runhtml || '';\n _this.diff_view.el.get_buffer().set_text(repo.git_diff);\n _this.status_view.el.get_buffer().set_text(repo.git_status);\n \n \t//console.log('show all');\n\tthis.el.set_modal(true);\n\tthis.el.set_relative_to(btn);\n this.el.set_pointing_to(rect);\n \n\t//this.el.set_position(Gtk.PositionType.RIGHT);\n\n\t// window + header?\n\t GLib.debug(\"SHOWALL - POPIP\\n\");\n\tthis.el.show_all();\n\tthis.el.set_size_request(800,500);\n//\tthis.diff_view.el.grab_focus();\n\t\n //this.el.show_all();\n}\n", + "| void show" : " (Gtk.Widget btn, Gdk.Rectangle rect, GitRepo repo) {\n _this.repo = repo;\n // get the active project.\n var lm = Gtk.SourceLanguageManager.get_default();\n \n// ((Gtk.SourceBuffer)(_this.view.el.get_buffer())) .set_language(\n // lm.get_language(\"html\")\n // );\n \n //print (project.fn);\n //project.runhtml = project.runhtml || '';\n _this.diff_view.el.get_buffer().set_text(repo.git_diff);\n _this.status_view.el.get_buffer().set_text(repo.git_status);\n \n \t//console.log('show all');\n\tthis.el.set_modal(true);\n\tthis.el.set_relative_to(btn);\n this.el.set_pointing_to(rect);\n \n\t//this.el.set_position(Gtk.PositionType.RIGHT);\n\n\t// window + header?\n\t GLib.debug(\"SHOWALL - POPIP\\n\");\n\tthis.el.show_all();\n\t//this.el.set_size_request(800,500);\n//\tthis.diff_view.el.grab_focus();\n\t\n //this.el.show_all();\n}\n", "xtype" : "Popover", "Gtk.PositionType position" : "Gtk.PositionType.RIGHT", "$ xns" : "Gtk", @@ -25,21 +25,85 @@ "$ homogeneous" : false, "items" : [ { - "* pack" : "pack_start,true,true,0", + "* pack" : "pack_end,false,false,0", + "xtype" : "Box", + "gboolean expand" : false, + "$ xns" : "Gtk", + "Gtk.Orientation orientation" : "Gtk.Orientation.HORIZONTAL", + "$ homogeneous" : true, + "gboolean vexpand" : false, + "items" : [ + { + "Gtk.ToolbarStyle toolbar_style" : "Gtk.ToolbarStyle.BOTH_HORIZ", + "* pack" : "add", + "xtype" : "Toolbar", + "$ xns" : "Gtk", + "items" : [ + { + "listeners" : { + "button_press_event" : "() => {\n \n \n GitMonitor.gitmonitor.stop();\n _this.repo.git({ \"stash\" , \"--all\" });\n _this.repo.loadStatus();\n GitMonitor.gitmonitor.start();\n _this.diff_view.el.get_buffer().set_text(_this.repo.git_diff);\n _this.status_view.el.get_buffer().set_text(_this.repo.git_status);\n Clones.singleton().reposStore.load();\n \n _this.el.hide();\n return false;\n}" + }, + "label" : "Stash Changes", + "* ctor" : "new Gtk.ToolButton(new Gtk.Image.from_icon_name (\"gtk-undo\", Gtk.IconSize.SMALL_TOOLBAR), null);", + "xtype" : "ToolButton", + "* pack" : "add", + "$ xns" : "Gtk", + "bool is_important" : true + }, + { + "listeners" : { + "button_press_event" : "() => {\n _this.repo.git({ \"commit\" , \"-a\" ,\"-m\", \"Uncommited changes synced\" });\n _this.repo.push();\n _this.repo.loadStatus();\n \n _this.diff_view.el.get_buffer().set_text(_this.repo.git_diff);\n _this.status_view.el.get_buffer().set_text(_this.repo.git_status);\n \n _this.el.hide();\n Clones.singleton().reposStore.load();\n \n return false;\n}" + }, + "label" : "Commit Changes", + "* ctor" : "new Gtk.ToolButton(new Gtk.Image.from_icon_name (\"gtk-save\", Gtk.IconSize.SMALL_TOOLBAR), null);", + "* pack" : "add", + "xtype" : "ToolButton", + "$ xns" : "Gtk", + "bool is_important" : true + }, + { + "listeners" : { + "button_press_event" : "() => {\n \n \n GitMonitor.gitmonitor.stop();\n _this.repo.git({ \"reset\" , \"--hard\" });\n _this.repo.loadStatus();\n GitMonitor.gitmonitor.start();\n _this.diff_view.el.get_buffer().set_text(_this.repo.git_diff);\n _this.status_view.el.get_buffer().set_text(_this.repo.git_status);\n Clones.singleton().reposStore.load();\n \n _this.el.hide();\n return false;\n}" + }, + "label" : "Reset / clear changes", + "* ctor" : "new Gtk.ToolButton(new Gtk.Image.from_icon_name (\"gtk-revert-to-saved\", Gtk.IconSize.SMALL_TOOLBAR), null);", + "* pack" : "add", + "xtype" : "ToolButton", + "$ xns" : "Gtk", + "bool is_important" : true + }, + { + "listeners" : { + "button_press_event" : "() => {\n \n \n GitMonitor.gitmonitor.stop();\n _this.repo.git({ \"pull\" , \"--all\" });\n _this.repo.loadStatus();\n GitMonitor.gitmonitor.start();\n _this.diff_view.el.get_buffer().set_text(_this.repo.git_diff);\n _this.status_view.el.get_buffer().set_text(_this.repo.git_status);\n Clones.singleton().reposStore.load();\n \n _this.el.hide();\n return false;\n}" + }, + "label" : "Pull updates", + "* ctor" : "new Gtk.ToolButton(new Gtk.Image.from_icon_name (\"gtk-goto-bottom\", Gtk.IconSize.SMALL_TOOLBAR), null);", + "xtype" : "ToolButton", + "* pack" : "add", + "$ xns" : "Gtk", + "bool is_important" : true + } + ] + } + ] + }, + { + "* pack" : "add", "xtype" : "Notebook", "$ xns" : "Gtk", + "bool vexpand" : true, "items" : [ { "id" : "label_status", - "* pack" : false, "xtype" : "Label", + "* pack" : false, "$ xns" : "Gtk", "utf8 label" : "Status" }, { "id" : "label_diff", - "xtype" : "Label", "* pack" : false, + "xtype" : "Label", "$ xns" : "Gtk", "utf8 label" : "Diff" }, @@ -74,8 +138,9 @@ "Gtk.Orientation orientation" : "Gtk.Orientation.VERTICAL", "items" : [ { - "* pack" : "pack_start,true,true,0", + "int height_request" : 400, "xtype" : "ScrolledWindow", + "* pack" : "pack_start,true,true,0", "$ xns" : "Gtk", "items" : [ { @@ -101,31 +166,45 @@ "gboolean vexpand" : false, "items" : [ { - "listeners" : { - "button_press_event" : "() => {\n _this.repo.git({ \"stash\" , \"--all\" });\n _this.repo.loadStatus();\n \n _this.diff_view.el.get_buffer().set_text(_this.repo.git_diff);\n _this.status_view.el.get_buffer().set_text(_this.repo.git_status);\n Clones.singleton().reposStore.load();\n \n _this.el.hide();\n return false;\n}" - }, - "label" : "Stash Changes", - "xtype" : "Button", - "* pack" : "add", - "$ xns" : "Gtk" - }, - { - "listeners" : { - "button_press_event" : "() => {\n _this.repo.git({ \"commit\" , \"-a\" ,\"-m\", \"Uncommited changes synced\" });\n _this.repo.push();\n _this.repo.loadStatus();\n \n _this.diff_view.el.get_buffer().set_text(_this.repo.git_diff);\n _this.status_view.el.get_buffer().set_text(_this.repo.git_status);\n \n _this.el.hide();\n Clones.singleton().reposStore.load();\n \n return false;\n}" - }, - "label" : "Commit Changes", - "xtype" : "Button", - "* pack" : "add", - "$ xns" : "Gtk" - }, - { - "listeners" : { - "button_press_event" : "() => {\n _this.el.hide();\n return false;\n}" - }, - "label" : "Ignore for now", + "Gtk.ToolbarStyle toolbar_style" : "Gtk.ToolbarStyle.BOTH_HORIZ", + "xtype" : "Toolbar", "* pack" : "add", - "xtype" : "Button", - "$ xns" : "Gtk" + "$ xns" : "Gtk", + "items" : [ + { + "listeners" : { + "button_press_event" : "() => {\n var oldq = new Gee.ArrayList(); \n\n\tClones.singleton().el.response(-1);\n\tNewBranch.singleton().show(_this.repo, oldq);\n\n return false;\n}" + }, + "label" : "Create Branch / Start ticket", + "* ctor" : "new Gtk.ToolButton(new Gtk.Image.from_icon_name (\"gtk-add\", Gtk.IconSize.SMALL_TOOLBAR), null);", + "xtype" : "ToolButton", + "* pack" : "add", + "$ xns" : "Gtk", + "bool is_important" : true + }, + { + "listeners" : { + "button_press_event" : "() => {\n\n _this.el.hide();\n Clones.singleton().el.response(-1);\n if (_this.repo.activeTicket != null) {\n\t MergeBranch.singleton().show(_this.repo.activeTicket, null); \n }\n return false;\n}" + }, + "label" : "Merge branch/ ticket", + "* ctor" : "new Gtk.ToolButton(new Gtk.Image.from_icon_name (\"gtk-goto-top\", Gtk.IconSize.SMALL_TOOLBAR), null);", + "xtype" : "ToolButton", + "* pack" : "add", + "$ xns" : "Gtk", + "bool is_important" : true + }, + { + "listeners" : { + "button_press_event" : "() => {\n \n\n\n Clones.singleton().el.response(-1);\n \n _this.el.hide();\n Ticket.singleton().show( _this.repo);\n \n return false;\n}" + }, + "label" : "Create Ticket", + "* ctor" : "new Gtk.ToolButton(new Gtk.Image.from_icon_name (\"gtk-new\", Gtk.IconSize.SMALL_TOOLBAR), null);", + "* pack" : "add", + "xtype" : "ToolButton", + "$ xns" : "Gtk", + "bool is_important" : true + } + ] } ] }