X-Git-Url: http://git.roojs.org/?p=gitlive;a=blobdiff_plain;f=RepoStatusPopover.bjs;h=2b996ec45a649afb1cfcb14b1869b59e4d536b9e;hp=a34afca6b2b22d38a611f3a59427b51df46f12e7;hb=refs%2Fheads%2Fwip_alan_T5639_gitlive_general_tidy_ups;hpb=2d3bb6db4cf59fb23b8774360ee0f15ffb7dc975 diff --git a/RepoStatusPopover.bjs b/RepoStatusPopover.bjs index a34afca6..2b996ec4 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\tif (repo.activeTicket == null) {\n\t\t_this.btn_merge.el.set_sensitive(false);\n\t} else {\n\t\t_this.btn_merge.el.set_sensitive(true);\n\t}\n\t_this.btn_create.el.set_sensitive(repo.is_master_branch());\n\t\n\t_this.btn_stash.el.set_sensitive(repo.has_local_changes);\n\t_this.btn_commit.el.set_sensitive(repo.has_local_changes);\n\t_this.btn_reset.el.set_sensitive(repo.has_local_changes);\n\t_this.btn_pull.el.set_sensitive(repo.ahead_or_behind == \"B\");\t\n\t\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,9 +25,77 @@ "$ homogeneous" : false, "items" : [ { - "* pack" : "pack_start,true,true,0", + "* pack" : "pack_start,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", + "xtype" : "Toolbar", + "* pack" : "add", + "$ xns" : "Gtk", + "items" : [ + { + "listeners" : { + "clicked" : "() => {\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 \n}" + }, + "label" : "Stash Changes", + "* ctor" : "new Gtk.ToolButton(new Gtk.Image.from_icon_name (\"gtk-undo\", Gtk.IconSize.SMALL_TOOLBAR), null);", + "id" : "btn_stash", + "xtype" : "ToolButton", + "* pack" : "add", + "$ xns" : "Gtk", + "bool is_important" : true + }, + { + "listeners" : { + "clicked" : "() => {\n _this.el.hide();\n GitMonitor.gitmonitor.stop();\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\n Clones.singleton().reposStore.load();\n GitMonitor.gitmonitor.start();\n \n}" + }, + "label" : "Commit Changes", + "* ctor" : "new Gtk.ToolButton(new Gtk.Image.from_icon_name (\"gtk-save\", Gtk.IconSize.SMALL_TOOLBAR), null);", + "id" : "btn_commit", + "* pack" : "add", + "xtype" : "ToolButton", + "$ xns" : "Gtk", + "bool is_important" : true + }, + { + "listeners" : { + "clicked" : "() => {\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 \n}" + }, + "label" : "Reset / clear changes", + "* ctor" : "new Gtk.ToolButton(new Gtk.Image.from_icon_name (\"gtk-revert-to-saved\", Gtk.IconSize.SMALL_TOOLBAR), null);", + "id" : "btn_reset", + "* pack" : "add", + "xtype" : "ToolButton", + "$ xns" : "Gtk", + "bool is_important" : true + }, + { + "listeners" : { + "clicked" : "() => {\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 \n}" + }, + "label" : "Pull updates", + "* ctor" : "new Gtk.ToolButton(new Gtk.Image.from_icon_name (\"gtk-goto-bottom\", Gtk.IconSize.SMALL_TOOLBAR), null);", + "id" : "btn_pull", + "xtype" : "ToolButton", + "* pack" : "add", + "$ xns" : "Gtk", + "bool is_important" : true + } + ] + } + ] + }, + { + "* pack" : "add", "xtype" : "Notebook", "$ xns" : "Gtk", + "bool vexpand" : true, "items" : [ { "id" : "label_status", @@ -74,13 +142,14 @@ "Gtk.Orientation orientation" : "Gtk.Orientation.VERTICAL", "items" : [ { + "int height_request" : 400, "* pack" : "pack_start,true,true,0", "xtype" : "ScrolledWindow", "$ xns" : "Gtk", "items" : [ { "id" : "diff_view", - "* init" : " \n var description = Pango.FontDescription.from_string(\"monospace\");\n description.set_size(9000);\n this.el.override_font(description);", + "* init" : " \n var description = Pango.FontDescription.from_string(\"monospace\");\n description.set_size(9000);\n this.el.override_font(description);\n var lm = Gtk.SourceLanguageManager.get_default();\n \n ((Gtk.SourceBuffer)(this.el.get_buffer())).set_language(\n lm.get_language(\"diff\")\n );\n ", "xtype" : "View", "* pack" : "add", "$ xns" : "GtkSource" @@ -101,31 +170,47 @@ "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", "* pack" : "add", - "xtype" : "Button", - "$ xns" : "Gtk" + "xtype" : "Toolbar", + "$ xns" : "Gtk", + "items" : [ + { + "listeners" : { + "clicked" : "() => {\n var oldq = new Gee.ArrayList(); \n\n\tClones.singleton().el.response(-1);\n\tNewBranch.singleton().show(_this.repo, oldq);\n\n \n}" + }, + "label" : "Create Branch / Start ticket", + "* ctor" : "new Gtk.ToolButton(new Gtk.Image.from_icon_name (\"gtk-add\", Gtk.IconSize.SMALL_TOOLBAR), null);", + "id" : "btn_create", + "xtype" : "ToolButton", + "* pack" : "add", + "$ xns" : "Gtk", + "bool is_important" : true + }, + { + "listeners" : { + "clicked" : "() => {\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 \n}" + }, + "label" : "Merge branch / Complete ticket", + "* ctor" : "new Gtk.ToolButton(new Gtk.Image.from_icon_name (\"gtk-goto-top\", Gtk.IconSize.SMALL_TOOLBAR), null);", + "id" : "btn_merge", + "xtype" : "ToolButton", + "* pack" : "add", + "$ xns" : "Gtk", + "bool is_important" : true + }, + { + "listeners" : { + "clicked" : "() => {\n \n\n\n Clones.singleton().el.response(-1);\n \n _this.el.hide();\n Ticket.singleton().show( _this.repo);\n \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 + } + ] } ] }