def build_grid(self): permissions_header = Util.create_label("<big>PERMISSIONS</big>", align=Gtk.Align.START) permissions_header.set_use_markup(True) self.attach(permissions_header, 0, 0, 1, 1) # create attribute labels owner_label = Util.create_label("Owner:") group_label = Util.create_label("Group:") perms_label = Util.create_info_label( Util.create_perm_str(self._filestat.st_mode), align=Gtk.Align.END) # create attribute values owner = Util.create_info_label(self._owner_name) group = Util.create_info_label(self._group_name) # Entry box perms_entry = Gtk.Entry.new() perms_entry.set_max_length(3) perms_entry.set_width_chars(3) perms_entry.set_text(Util.create_777_format(self._filestat.st_mode)) perms_entry.connect("changed", self.on_perms_changed, perms_label) self.attach(owner_label, 0, 1, 1, 1) self.attach(group_label, 0, 2, 1, 1) self.attach(perms_label, 0, 3, 1, 1) self.attach(owner, 1, 1, 1, 1) self.attach(group, 1, 2, 1, 1) self.attach(perms_entry, 1, 3, 1, 1)
def generate_git_info(self, grid, filepath): repo = Repository(filepath) vbox = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, spacing=5) git_label = Util.create_label("<big>Git Repository Information</big>", align=Gtk.Align.START) git_label.set_use_markup(True) vbox.pack_start(git_label, False, False, 0) # Current branch name cur_branch_hbox = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, spacing=5) cur_branch_label = Util.create_label("Current Branch: ") cur_branch_name = Util.create_info_label(repo.get_cur_branch()) cur_branch_hbox.pack_start(cur_branch_label, False, False, 1) cur_branch_hbox.pack_start(cur_branch_name, False, False, 1) vbox.pack_start(cur_branch_hbox, False, False, 1) # branch list combo box branch_hbox = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, spacing=5) branches_label = Util.create_label("All Branches: ") branch_hbox.pack_start(branches_label, False, False, 1) branch_combo = Gtk.ComboBox.new_with_model(repo.branch_list_store()) renderer_text = Gtk.CellRendererText() branch_combo.pack_start(renderer_text, True) branch_combo.add_attribute(renderer_text, "text", 0) branch_hbox.pack_start(branch_combo, False, False, 1) vbox.pack_start(branch_hbox, False, False, 1) # total commits count_hbox = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, spacing=5) count_label = Util.create_label("Total Commits:") count_hbox.pack_start(count_label, False, False, 1) count_entry = Gtk.Entry() count_entry. set_max_length(4) count_entry.set_width_chars(4) count_entry.set_text(str(repo.commit_count())) count_entry.set_editable(False) count_hbox.pack_start(count_entry, False, False, 1) vbox.pack_start(count_hbox, False, False, 1) # status and branch creation button git_button_box = Gtk.ButtonBox(Gtk.Orientation.HORIZONTAL) git_button_box.set_layout(Gtk.ButtonBoxStyle.START) status_btn = Gtk.Button(label="Git Status") create_branch_btn = Gtk.Button.new_with_label("Create Branch") status_btn.connect("clicked", self.create_git_status_tab, repo) create_branch_btn.connect("clicked", self.on_click_create_branch, repo) git_button_box.pack_start(status_btn, False, False, 0) git_button_box.pack_start(create_branch_btn, False, False, 0) vbox.pack_start(git_button_box, False, False, 0) # add vbox to the grid grid.attach(vbox, 0, 4, 1, 1)
def create_grid(self): general_header = Util.create_label("<big>GENERAL</big>", align=Gtk.Align.START) general_header.set_use_markup(True) self.attach(general_header, 0, 0, 1, 1) # create attribute labels filename_label = Util.create_label("Name:") filesize_label = Util.create_label("Filesize:") location_label = Util.create_label("Location:") last_modified_label = Util.create_label("Last Modified:") last_access_label = Util.create_label("Last Access:") # create attribute values filename = Util.create_info_label(os.path.basename(self._filepath)) filesize = self.file_or_folder_size_widget() location = Util.create_info_label(os.path.dirname(self._filepath), ellipsize=True) last_modified = Util.create_info_label(time.ctime(self._filestat.st_mtime)) last_access = Util.create_info_label(time.ctime(self._filestat.st_atime)) # add all widgets to the grid self.attach(filename_label, 0, 1, 1, 1) self.attach(filename, 1, 1, 1, 1) self.attach(filesize_label, 0, 2, 1, 1) self.attach(filesize, 1, 2, 1, 1) self.attach(location_label, 0, 3, 1, 1) self.attach(location, 1, 3, 1, 1) self.attach(last_modified_label, 0, 4, 1, 1) self.attach(last_modified, 1, 4, 1, 1) self.attach(last_access_label, 0, 5, 1, 1) self.attach(last_access, 1, 5, 1, 1)
def __init__(self, filepath, index_manager): Gtk.Box.__init__(self) self.set_orientation(Gtk.Orientation.VERTICAL) self.set_spacing(3) self._filepath = filepath self._index_manager = index_manager permissions_header = Util.create_label("<big>TAGS</big>", align=Gtk.Align.START) permissions_header.set_use_markup(True) self.pack_start(permissions_header, False, False, 0) add_box = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL, spacing=5) tag_entry = Gtk.Entry() add_tag_button = Gtk.Button(label="Add Tag") add_tag_button.connect("clicked", self.on_clicked_add_tag, (filepath, tag_entry)) add_box.pack_start(tag_entry, False, False, 0) add_box.pack_start(add_tag_button, False, False, 0) self.pack_start(add_box, False, False, 0) self._tags_container = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, spacing=2) self.pack_start(self._tags_container, False, False, 0) self.show_all_tags()