Fix #5633 - preview diffs before merge
[gitlive] / MergeBranch.vala
index 5eec338..20fbc53 100644 (file)
@@ -20,6 +20,9 @@ public class MergeBranch : Object
     public Xcls_dbcellrenderer dbcellrenderer;
     public Xcls_dbmodel dbmodel;
     public Xcls_name name;
+    public Xcls_label_diff label_diff;
+    public Xcls_label_ticket label_ticket;
+    public Xcls_diff_view diff_view;
     public Xcls_scrolled_window scrolled_window;
     public Xcls_view view;
     public Xcls_spinner spinner;
@@ -48,10 +51,10 @@ public class MergeBranch : Object
         var child_0 = new Xcls_Box2( _this );
         child_0.ref();
         this.el.get_content_area().add (  child_0.el  );
-        var child_1 = new Xcls_Button17( _this );
+        var child_1 = new Xcls_Button24( _this );
         child_1.ref();
         this.el.add_action_widget (  child_1.el , 0 );
-        var child_2 = new Xcls_Button18( _this );
+        var child_2 = new Xcls_Button25( _this );
         child_2.ref();
         this.el.add_action_widget (  child_2.el , 1 );
 
@@ -132,16 +135,16 @@ public class MergeBranch : Object
        this.el.set_keep_above(true);    
        this.el.move((Gdk.Screen.width() / 2)- 250 ,0);
                GLib.debug("Loading tickets"); 
-    
-    
-       
+     
        
         this.ticket = ticket;
         this.repo = repo;
         
        
        Timeout.add_seconds(1, () => {
-               
+           _this.diff_view.el.get_buffer().set_text(
+               repo != null ? repo.previewMerge() : GitRepo.previewMerges(ticket.id)
+               );              
                // if we are not working on a ticket, then we should be able to pick one?
                _this.dbmodel.loadTickets();
                _this.actionmodel.loadActions();
@@ -176,7 +179,7 @@ public class MergeBranch : Object
             var child_0 = new Xcls_table( _this );
             child_0.ref();
             this.el.pack_start (  child_0.el , false,false,0 );
-            var child_1 = new Xcls_scrolled_window( _this );
+            var child_1 = new Xcls_Notebook14( _this );
             child_1.ref();
             this.el.add (  child_1.el  );
             var child_2 = new Xcls_spinner( _this );
@@ -649,6 +652,188 @@ public class MergeBranch : Object
     }
 
 
+    public class Xcls_Notebook14 : Object
+    {
+        public Gtk.Notebook el;
+        private MergeBranch  _this;
+
+
+            // my vars (def)
+
+        // ctor
+        public Xcls_Notebook14(MergeBranch _owner )
+        {
+            _this = _owner;
+            this.el = new Gtk.Notebook();
+
+            // my vars (dec)
+
+            // set gobject values
+            this.el.vexpand = true;
+            var child_0 = new Xcls_label_diff( _this );
+            child_0.ref();
+            var child_1 = new Xcls_label_ticket( _this );
+            child_1.ref();
+            var child_2 = new Xcls_Box17( _this );
+            child_2.ref();
+            this.el.append_page (  child_2.el , _this.label_diff.el );
+            var child_3 = new Xcls_Box20( _this );
+            child_3.ref();
+            this.el.append_page (  child_3.el , _this.label_ticket.el );
+        }
+
+        // user defined functions
+    }
+    public class Xcls_label_diff : Object
+    {
+        public Gtk.Label el;
+        private MergeBranch  _this;
+
+
+            // my vars (def)
+
+        // ctor
+        public Xcls_label_diff(MergeBranch _owner )
+        {
+            _this = _owner;
+            _this.label_diff = this;
+            this.el = new Gtk.Label( "Projected Commit Diff" );
+
+            // my vars (dec)
+
+            // set gobject values
+        }
+
+        // user defined functions
+    }
+
+    public class Xcls_label_ticket : Object
+    {
+        public Gtk.Label el;
+        private MergeBranch  _this;
+
+
+            // my vars (def)
+
+        // ctor
+        public Xcls_label_ticket(MergeBranch _owner )
+        {
+            _this = _owner;
+            _this.label_ticket = this;
+            this.el = new Gtk.Label( "Ticket Details" );
+
+            // my vars (dec)
+
+            // set gobject values
+        }
+
+        // user defined functions
+    }
+
+    public class Xcls_Box17 : Object
+    {
+        public Gtk.Box el;
+        private MergeBranch  _this;
+
+
+            // my vars (def)
+
+        // ctor
+        public Xcls_Box17(MergeBranch _owner )
+        {
+            _this = _owner;
+            this.el = new Gtk.Box( Gtk.Orientation.VERTICAL, 0 );
+
+            // my vars (dec)
+
+            // set gobject values
+            this.el.homogeneous = false;
+            var child_0 = new Xcls_ScrolledWindow18( _this );
+            child_0.ref();
+            this.el.pack_start (  child_0.el , true,true,0 );
+        }
+
+        // user defined functions
+    }
+    public class Xcls_ScrolledWindow18 : Object
+    {
+        public Gtk.ScrolledWindow el;
+        private MergeBranch  _this;
+
+
+            // my vars (def)
+
+        // ctor
+        public Xcls_ScrolledWindow18(MergeBranch _owner )
+        {
+            _this = _owner;
+            this.el = new Gtk.ScrolledWindow( null, null );
+
+            // my vars (dec)
+
+            // set gobject values
+            this.el.height_request = 400;
+            var child_0 = new Xcls_diff_view( _this );
+            child_0.ref();
+            this.el.add (  child_0.el  );
+        }
+
+        // user defined functions
+    }
+    public class Xcls_diff_view : Object
+    {
+        public Gtk.SourceView el;
+        private MergeBranch  _this;
+
+
+            // my vars (def)
+
+        // ctor
+        public Xcls_diff_view(MergeBranch _owner )
+        {
+            _this = _owner;
+            _this.diff_view = this;
+            this.el = new Gtk.SourceView();
+
+            // my vars (dec)
+
+            // init method
+
+            var description =   Pango.FontDescription.from_string("monospace");
+                description.set_size(9000);
+                this.el.override_font(description);
+        }
+
+        // user defined functions
+    }
+
+
+
+    public class Xcls_Box20 : Object
+    {
+        public Gtk.Box el;
+        private MergeBranch  _this;
+
+
+            // my vars (def)
+
+        // ctor
+        public Xcls_Box20(MergeBranch _owner )
+        {
+            _this = _owner;
+            this.el = new Gtk.Box( Gtk.Orientation.VERTICAL, 0 );
+
+            // my vars (dec)
+
+            // set gobject values
+            this.el.homogeneous = false;
+            var child_0 = new Xcls_scrolled_window( _this );
+            child_0.ref();
+            this.el.add (  child_0.el  );
+        }
+
+        // user defined functions
+    }
     public class Xcls_scrolled_window : Object
     {
         public Gtk.ScrolledWindow el;
@@ -726,6 +911,8 @@ public class MergeBranch : Object
     }
 
 
+
+
     public class Xcls_spinner : Object
     {
         public Gtk.Spinner el;
@@ -752,7 +939,7 @@ public class MergeBranch : Object
     }
 
 
-    public class Xcls_Button17 : Object
+    public class Xcls_Button24 : Object
     {
         public Gtk.Button el;
         private MergeBranch  _this;
@@ -761,7 +948,7 @@ public class MergeBranch : Object
             // my vars (def)
 
         // ctor
-        public Xcls_Button17(MergeBranch _owner )
+        public Xcls_Button24(MergeBranch _owner )
         {
             _this = _owner;
             this.el = new Gtk.Button();
@@ -776,7 +963,7 @@ public class MergeBranch : Object
         // user defined functions
     }
 
-    public class Xcls_Button18 : Object
+    public class Xcls_Button25 : Object
     {
         public Gtk.Button el;
         private MergeBranch  _this;
@@ -785,7 +972,7 @@ public class MergeBranch : Object
             // my vars (def)
 
         // ctor
-        public Xcls_Button18(MergeBranch _owner )
+        public Xcls_Button25(MergeBranch _owner )
         {
             _this = _owner;
             this.el = new Gtk.Button();