public Xcls_dbcellrenderer dbcellrenderer;
public Xcls_dbmodel dbmodel;
public Xcls_name name;
+ public Xcls_createbtn createbtn;
public Xcls_btn_not_me btn_not_me;
public Xcls_btn_closed btn_closed;
public Xcls_scrolled_window scrolled_window;
public Xcls_view view;
+ public Xcls_label_select_ticket label_select_ticket;
+ public Xcls_label_create_ticket label_create_ticket;
+ public Xcls_label_quick_commit label_quick_commit;
// my vars (def)
public GitRepo? repo;
var child_0 = new Xcls_Box2( _this );
child_0.ref();
this.el.get_content_area().add ( child_0.el );
+ var child_1 = new Xcls_Notebook22( _this );
+ child_1.ref();
+ this.el.add ( child_1.el );
//listeners
this.el.delete_event.connect( (self, event) => {
this.el.response.connect( (self, response_id) => {
GLib.debug("got %d", (int) response_id);
- if (response_id < 1) {
- _this.el.hide();
- this.running = false;
- return;
- }
+
+
+
// have they selected a ticket..
// make that the current active ticket?
// -- each repo would have their active ticket (only one per repo)
// -- so we could just store that in there
// -- initial load can check the contents of the ticket files on first scan.
+
+
+ if (response_id < 1) {
+ _this.el.hide();
+ this.running = false;
+ return;
+ }
+
var ticket_id = _this.ticketsel.selectedTicketId();
if (this.repo != null) {
}
}
-
+
this.running = false;
_this.prmodel.loadProjects(curproj == null ? "" : curproj.id);
_this.dbmodel.loadTickets(curproj == null ? "": curproj.id, tid);
-
- if (tid != "") {
+ _this.createbtn.updateState();
+
+ _this.ticketsel.el.get_child().get_style_context().remove_class("warning");
+ if (tid != "") {
var name = RooTicket.singleton().usernameLocal();
var ticket = RooTicket.singleton().getById(tid);
_this.name.el.set_text("wip_%s_T%s_%s".printf(name,ticket.id, ticket.summaryToBranchName()));
-
-
+ } else {
+ _this.ticketsel.el.get_child().get_style_context().add_class("warning");
}
_this.view.loadTicket(tid);
this.el.run();
var child_6 = new Xcls_name( _this );
child_6.ref();
this.el.attach_defaults ( child_6.el , 0,4,4,5 );
- var child_7 = new Xcls_Button15( _this );
+ var child_7 = new Xcls_createbtn( _this );
child_7.ref();
this.el.attach_defaults ( child_7.el , 4,5,4,5 );
var child_8 = new Xcls_Box16( _this );
var name = RooTicket.singleton().usernameLocal();
+ this.el.get_child().get_style_context().remove_class("warning");
if (ticket_id == "" || ticket_id == null) {
var dt = new DateTime.now_local();
_this.name.el.set_text("wip_%s_%s".printf(name,dt.format("%Y_%b_%d")));
_this.view.loadTicket("");
+
+ this.el.get_child().get_style_context().add_class("warning");
+ _this.createbtn.updateState();
return;
}
_this.scrolled_window.el.show();
_this.view.loadTicket(ticket.id);
+ _this.createbtn.updateState();
+
//GLib.debug (//"Selection: %s, %s\n", (string) val1, (string) val2);
});
}
// user defined functions
}
- public class Xcls_Button15 : Object
+ public class Xcls_createbtn : Object
{
public Gtk.Button el;
private NewBranch _this;
// my vars (def)
// ctor
- public Xcls_Button15(NewBranch _owner )
+ public Xcls_createbtn(NewBranch _owner )
{
_this = _owner;
+ _this.createbtn = this;
this.el = new Gtk.Button();
// my vars (dec)
//listeners
this.el.clicked.connect( () => {
+
GLib.debug("fire response = 1");
+
+ var ticket_id = _this.ticketsel.selectedTicketId();
+
+ if (ticket_id == "") {
+ _this.ticketsel.el.get_child().get_style_context().add_class("warning");
+ return;
+ }
+
_this.el.response(1);
});
}
// user defined functions
+ public void updateState () {
+
+ var ticket_id = _this.ticketsel.selectedTicketId();
+
+ if (ticket_id == "") {
+ this.el.set_sensitive(false);
+ return;
+ }
+
+ this.el.set_sensitive(true);
+
+ }
}
public class Xcls_Box16 : Object
+ public class Xcls_Notebook22 : Object
+ {
+ public Gtk.Notebook el;
+ private NewBranch _this;
+
+
+ // my vars (def)
+
+ // ctor
+ public Xcls_Notebook22(NewBranch _owner )
+ {
+ _this = _owner;
+ this.el = new Gtk.Notebook();
+
+ // my vars (dec)
+
+ // set gobject values
+ this.el.vexpand = true;
+ var child_0 = new Xcls_label_select_ticket( _this );
+ child_0.ref();
+ var child_1 = new Xcls_label_create_ticket( _this );
+ child_1.ref();
+ var child_2 = new Xcls_label_quick_commit( _this );
+ child_2.ref();
+ }
+
+ // user defined functions
+ }
+ public class Xcls_label_select_ticket : Object
+ {
+ public Gtk.Label el;
+ private NewBranch _this;
+
+
+ // my vars (def)
+
+ // ctor
+ public Xcls_label_select_ticket(NewBranch _owner )
+ {
+ _this = _owner;
+ _this.label_select_ticket = this;
+ this.el = new Gtk.Label( "Select Existing Ticket to work on" );
+
+ // my vars (dec)
+
+ // set gobject values
+ }
+
+ // user defined functions
+ }
+
+ public class Xcls_label_create_ticket : Object
+ {
+ public Gtk.Label el;
+ private NewBranch _this;
+
+
+ // my vars (def)
+
+ // ctor
+ public Xcls_label_create_ticket(NewBranch _owner )
+ {
+ _this = _owner;
+ _this.label_create_ticket = this;
+ this.el = new Gtk.Label( "Create a new Ticket" );
+
+ // my vars (dec)
+
+ // set gobject values
+ }
+
+ // user defined functions
+ }
+
+ public class Xcls_label_quick_commit : Object
+ {
+ public Gtk.Label el;
+ private NewBranch _this;
+
+
+ // my vars (def)
+
+ // ctor
+ public Xcls_label_quick_commit(NewBranch _owner )
+ {
+ _this = _owner;
+ _this.label_quick_commit = this;
+ this.el = new Gtk.Label( "Quick Commit" );
+
+ // my vars (dec)
+
+ // set gobject values
+ }
+
+ // user defined functions
+ }
+
+
}