From ae172c785f89f3d00e3e8005388f17c5943def71 Mon Sep 17 00:00:00 2001 From: Sergio Costas Date: Sun, 13 Jul 2014 18:43:37 +0200 Subject: [PATCH] Now doesn't use "titles" and "files" for DVDs, but "files" for everything Started to implement the file properties --- data/interface/wadd_files.ui | 110 +-- data/interface/wask.ui | 2 + data/interface/wfile_properties.ui | 1141 ++++++++++++---------------- data/interface/wmain.ui | 474 ++++-------- src/devede/add_files.py | 18 - src/devede/file_movie.py | 54 +- src/devede/project.py | 163 +--- 7 files changed, 683 insertions(+), 1279 deletions(-) diff --git a/data/interface/wadd_files.ui b/data/interface/wadd_files.ui index 3404a3e..8fb788c 100644 --- a/data/interface/wadd_files.ui +++ b/data/interface/wadd_files.ui @@ -3,7 +3,7 @@ - 640 + 740 400 False Add new file(s) @@ -59,112 +59,12 @@ - + True False - vertical - - - True - False - False - True - - - - True - True - 0 - - - - - True - False - 0 - none - - - True - False - 12 - - - True - False - vertical - - - Add file(s) to the currently selected title - True - True - False - 0 - True - True - - - - - False - True - 0 - - - - - Add file(s) into its own new title - True - True - False - 0 - True - True - add_to_current_title - - - - - False - True - 1 - - - - - Use file name as title name - True - True - False - 20 - 0 - True - - - False - True - 2 - - - - - - - - - True - False - <b>Extra options</b> - True - - - - - False - True - 1 - - + False + True + True diff --git a/data/interface/wask.ui b/data/interface/wask.ui index 40cfc79..37c3603 100644 --- a/data/interface/wask.ui +++ b/data/interface/wask.ui @@ -66,6 +66,8 @@ True center True + word-char + start True diff --git a/data/interface/wfile_properties.ui b/data/interface/wfile_properties.ui index 7cb4cbd..847230f 100644 --- a/data/interface/wfile_properties.ui +++ b/data/interface/wfile_properties.ui @@ -16,79 +16,6 @@ 1 10 - - True - False - 0 - none - - - True - False - 12 - - - True - False - - - Split the file in chapters (for easy seeking) - True - True - False - 0 - True - True - - - 0 - 0 - 2 - 1 - - - - - True - False - Size (in minutes) for each chapter: - 0.029999999999999999 - - - 0 - 1 - 1 - 1 - - - - - True - True - adjustment_chapter_size - 1 - 5 - - - 1 - 1 - 1 - 1 - - - - - - - - - True - False - <b>Division in chapters</b> - True - - - -30 30 @@ -115,255 +42,11 @@ 1 10 - - True - False - vertical - 4 - - - True - False - 4 - - - True - False - 0 - none - - - True - False - 12 - - - True - False - vertical - - - PAL/SECAM - True - True - False - 0 - True - True - - - False - True - 0 - - - - - NTSC - True - True - False - 0 - True - True - radiobutton_pal - - - False - True - 1 - - - - - - - - - True - False - <b>Video format</b> - True - - - - - False - True - 0 - - - - - True - False - 0 - none - - - True - False - 12 - - - True - False - - - True - True - vertical - adjustment_volume - True - 1 - False - - - 0 - 0 - 1 - 2 - - - - - True - True - number - adjustment_volume - - - 1 - 0 - 1 - 1 - - - - - Reset - True - True - True - - - 1 - 1 - 1 - 1 - - - - - - - - - True - False - <b>Volume (%)</b> - True - - - - - False - True - 1 - - - - - False - True - 0 - - - - - True - False - 4 - - - True - False - 0 - none - - - True - False - 12 - - - True - True - - - - - - - True - False - <b>Video rate (KBits/sec)</b> - True - - - - - False - True - 0 - - - - - True - False - 0 - none - - - True - False - 12 - - - True - True - - - - - - - True - False - <b>Audio rate (KBits/sec)</b> - True - - - - - False - True - 1 - - - - - False - True - 1 - - - False True + center devede.svg True False @@ -374,32 +57,107 @@ vertical 4 - + True False - 0 - none + vertical - + True False - 12 - + True False - end + 0 + none + + + True + False + 12 + + + True + True + + + + + + + True + False + <b>Title</b> + True + + + + True + True + 0 + + + + + True + False + 0 + none + + + True + False + 12 + + + True + False + 0 + end + + + + + + + True + False + <b>File</b> + True + + + + + True + True + 1 + + + True + True + 0 + - - + + + Show this title in the menu True - False - <b>File</b> - True + True + False + 12 + 0 + True + True + + False + True + 1 + @@ -980,20 +738,6 @@ 1 - - - True - False - Size (in minutes) for each chapter: - 0.029999999999999999 - - - 0 - 1 - 1 - 1 - - True @@ -1010,6 +754,21 @@ 1 + + + True + False + 0 + 4 + Size (in minutes) for each chapter: + + + 0 + 1 + 1 + 1 + + @@ -1180,6 +939,7 @@ True False + 16 True @@ -1464,178 +1224,6 @@ 1 - - - True - False - 0 - none - - - True - False - 12 - - - True - False - - - No rotation - True - True - False - 0 - True - True - - - 0 - 0 - 1 - 1 - - - - - Rotate 90 degrees clockwise - True - True - False - 0 - True - True - rotation_0 - - - 1 - 0 - 1 - 1 - - - - - Rotate 180 degrees - True - True - False - 0 - True - True - rotation_0 - - - 0 - 1 - 1 - 1 - - - - - Rotate 90 degrees counter-clockwise - True - True - False - 0 - True - True - rotation_0 - - - 1 - 1 - 1 - 1 - - - - - - - - - True - False - <b>Rotation</b> - True - - - - - 0 - 1 - 1 - 1 - - - - - True - False - 0 - none - - - True - False - 12 - - - True - False - vertical - - - Horizontal mirror - True - True - False - 0 - True - - - False - True - 0 - - - - - Vertical mirror - True - True - False - 0 - True - - - False - True - 1 - - - - - - - - - True - False - <b>Mirror</b> - True - - - - - 1 - 1 - 1 - 1 - - True @@ -1758,11 +1346,180 @@ 0 - 2 + 1 2 1 + + + True + False + 0 + none + + + True + False + 12 + + + True + False + + + No rotation + True + True + False + 0 + True + True + + + 0 + 0 + 1 + 1 + + + + + 90 degrees (clockwise) + True + True + False + 0 + True + rotation_0 + + + 0 + 1 + 1 + 1 + + + + + 180 degrees + True + True + False + 0 + True + rotation_0 + + + 0 + 2 + 1 + 1 + + + + + 90 degrees (counter-clockwise) + True + True + False + 0 + True + rotation_0 + + + 0 + 3 + 1 + 1 + + + + + + + + + True + False + <b>Rotation</b> + True + + + + + 2 + 1 + 1 + 1 + + + + + True + False + 0 + none + + + True + False + 12 + + + True + False + vertical + + + Horizontal mirror + True + True + False + 0 + True + + + False + True + 0 + + + + + Vertical mirror + True + True + False + 0 + True + + + False + True + 1 + + + + + + + + + True + False + <b>Mirror</b> + True + + + + + 2 + 0 + 1 + 1 + + 2 @@ -2034,181 +1791,223 @@ - + True False - vertical + 0 + none - + True False - 0 - none + 12 - + True False - 12 + vertical - + + Stop reproduction/show disc menu True - False - vertical - - - This file is already a DVD/xCD-suitable MPEG-PS file - True - True - False - 0 - True - - - False - True - 0 - - - - - Repack audio and video without reencoding (useful for VOB files) - True - True - False - 0 - True - - - False - True - 1 - - - - - Use a GOP of 12 frames (improves compatibility) - True - True - False - 0 - True - - - False - True - 2 - - + True + False + 0 + True + True + + False + True + 0 + + + + + Play the first title + True + True + False + 0 + True + stop + + + False + True + 1 + + + + + Play the previous title + True + True + False + 0 + True + stop + + + False + True + 2 + + + + + Play this title again (loop) + True + True + False + 0 + True + stop + + + False + True + 3 + + + + + Play the next title + True + True + False + 0 + True + stop + + + False + True + 4 + + + + + Play the last title + True + True + False + 0 + True + stop + + + False + True + 5 + - - - True - False - <b>Special</b> - True - - - - False - True - 0 - - - + + True False - 0 - none - - - True - False - 12 - - - True - False - - - True - False - 0 - Main (-X -Y) - - - 0 - 0 - 1 - 1 - - - - - True - False - 0 - -VF (X,Y) - - - 0 - 1 - 1 - 1 - - - - - True - True - - - 1 - 0 - 1 - 1 - - - - - True - True - - - 1 - 1 - 1 - 1 - - - - - - - - - True - False - <b>Extra parameters for coder</b> - True - - + <b>Action to perform when this title ends</b> + True - - False - True - 1 - 5 + + + True + False + Actions + + + 5 + False + + + + + True + False + 0 + none + + + True + False + 12 + + + True + False + vertical + + + This file is already a DVD/xCD-suitable MPEG-PS file + True + True + False + 0 + True + + + False + True + 0 + + + + + Repack audio and video without reencoding (useful for VOB files) + True + True + False + 0 + True + + + False + True + 1 + + + + + Use a GOP of 12 frames (improves compatibility) + True + True + False + 0 + True + + + False + True + 2 + + + + + + + + + True + False + <b>Special</b> + True + + + + + 6 + + True @@ -2216,7 +2015,7 @@ Misc - 5 + 6 False @@ -2273,12 +2072,13 @@ - + gtk-cancel True True True True + False @@ -2287,12 +2087,13 @@ - + gtk-ok True True True True + False diff --git a/data/interface/wmain.ui b/data/interface/wmain.ui index 2e87b5b..50c7f66 100644 --- a/data/interface/wmain.ui +++ b/data/interface/wmain.ui @@ -30,18 +30,10 @@ - - - - - - - + - - @@ -215,152 +207,91 @@ - + True False + 0 + none - + True False - 0 - none + 12 - + True False - 12 + vertical - + True - False - vertical + True + in - + True True - in + liststore_files + False + True + False + 0 + False + + + + - - True - True - liststore_titles - False - True - False - False - - - - + + column - - Titles - - - - 0 - - - + + + 1 + + + + + True + True + 0 + + + + + True + False + + + gtk-add + True + True + True + True + top + True + + - True + False True 0 - + + gtk-remove True - False - - - gtk-add - True - True - True - True - top - True - - - - False - True - 0 - - - - - gtk-remove - True - True - True - True - top - True - - - - False - True - 1 - - - - - gtk-go-down - True - True - True - True - top - True - - - - False - True - 2 - - - - - gtk-go-up - True - True - True - True - top - True - - - - False - True - 3 - - - - - gtk-properties - True - True - True - True - top - True - - - - False - True - 4 - - + True + True + True + top + True + False @@ -368,237 +299,120 @@ 1 - - - - - - - True - False - <b>Titles</b> - True - - - - - True - True - 0 - - - - - True - False - 0 - none - - - True - False - 12 - - - True - False - vertical - + + gtk-go-down True True - in - - - True - True - liststore_files - False - True - False - False - - - - - - - column - - - - 0 - - - - - - + True + True + top + True + - True + False True - 0 + 2 - + + gtk-go-up True - False + True + True + True + top + True + + + + False + True + 3 + + + + + gtk-properties + True + True + True + True + top + True + + + + False + True + 4 + + + + + True + True + True + 0.4699999988079071 + top - - gtk-add + True - True - True - True - top - True - - - - False - True - 0 - - - - - gtk-remove - True - True - True - True - top - True - - - - False - True - 1 - - - - - gtk-go-down - True - True - True - True - top - True - - - - False - True - 2 - - - - - gtk-go-up - True - True - True - True - top - True - - - - False - True - 3 - - - - - gtk-properties - True - True - True - True - top - True - - - False - True - 4 - - - - - True - True - True - 0.4699999988079071 - top + False + vertical - + True False - vertical - - - True - False - video-display - - - False - True - 0 - - - - - True - False - Preview - - - False - True - 1 - - + video-display + + False + True + 0 + + + + + True + False + Preview + + + False + True + 1 + - - False - True - 5 - False True - 1 + 5 + + False + True + 1 + - - - True - False - <b>Files</b> - True - - - - True - True - 1 - + + + + True + False + <b>Files</b> + True + diff --git a/src/devede/add_files.py b/src/devede/add_files.py index 4af4ef4..7ea0f35 100644 --- a/src/devede/add_files.py +++ b/src/devede/add_files.py @@ -45,30 +45,16 @@ class add_files: self.wfile_chooser = builder.get_object("filechooserwidget1") if (add_files.last_path != None): self.wfile_chooser.set_current_folder(add_files.last_path) - self.wadd_to_current_title = builder.get_object("add_to_current_title") - self.wadd_to_new_titles = builder.get_object("add_to_new_titles") - self.wuse_filename_as_title = builder.get_object("use_filename_as_title") self.wbutton_accept = builder.get_object("button_accept") - woptions = builder.get_object("frame_options") - wadd_files.show_all() - if (self.show_title_options == False): - woptions.hide() - self.on_add_to_new_titles_toggled(None) retval = wadd_files.run() self.files = None - self.add_to_current_title = True - self.use_filename_as_title = False if (retval == 2): - self.add_to_current_title = self.wadd_to_current_title.get_active() - self.use_filename_as_title = self.wuse_filename_as_title.get_active() self.files = self.get_files() - print(self.files) - add_files.last_path = self.wfile_chooser.get_current_folder() wadd_files.destroy() @@ -93,7 +79,3 @@ class add_files: self.wbutton_accept.set_sensitive(False) else: self.wbutton_accept.set_sensitive(True) - - def on_add_to_new_titles_toggled(self,b): - - self.wuse_filename_as_title.set_sensitive(self.wadd_to_new_titles.get_active()) \ No newline at end of file diff --git a/src/devede/file_movie.py b/src/devede/file_movie.py index bdc763f..9b347cd 100644 --- a/src/devede/file_movie.py +++ b/src/devede/file_movie.py @@ -15,7 +15,8 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see -from gi.repository import GObject +from gi.repository import Gtk,GObject +import os class file_movie(GObject.GObject): @@ -26,15 +27,58 @@ class file_movie(GObject.GObject): GObject.GObject.__init__(self) self.config = config self.file_name = file_name + self.title_name = os.path.splitext(os.path.basename(file_name))[0] + self.wfile_properties = None + self.model = None + self.treeiter = None + self.builder = None - def set_type(self,disc_type): + def set_type(self,disc_type = None): - self.disc_type = disc_type + if (disc_type != None): + self.disc_type = disc_type + def delete_file(self): print("Deleted file "+self.file_name) - def properties(self): + def properties(self,model,treeiter): + + if (self.wfile_properties != None): + self.wfile_properties.present() + return + + self.model = model + self.treeiter = treeiter + + self.builder = Gtk.Builder() + self.builder.set_translation_domain(self.config.gettext_domain) - file_movie.counter2 += 1 \ No newline at end of file + self.builder.add_from_file(os.path.join(self.config.glade,"wfile_properties.ui")) + self.builder.connect_signals(self) + self.wfile_properties = self.builder.get_object("file_properties") + self.wfile_properties.show_all() + + self.wfile = self.builder.get_object("label_filename") + self.wtitle = self.builder.get_object("entry_title") + + self.wfile.set_text(self.file_name) + self.wtitle.set_text(self.title_name) + + def on_button_accept_clicked(self,b): + + + self.title_name = self.wtitle.get_text() + self.model.set_value(self.treeiter,1,self.title_name) + self.on_button_cancel_clicked(None) + + def on_button_cancel_clicked(self,b): + + self.wfile_properties.destroy() + self.wfile_properties = None + self.builder = None + self.model = None + self.treeiter = None + + \ No newline at end of file diff --git a/src/devede/project.py b/src/devede/project.py index df9cf75..c076bf0 100644 --- a/src/devede/project.py +++ b/src/devede/project.py @@ -18,7 +18,6 @@ from gi.repository import Gtk import os -import devede.title import devede.file_movie import devede.ask import devede.add_files @@ -35,21 +34,14 @@ class devede_project: self.wask_window = None self.wmain_window = None - self.wframe_titles = None self.wdisc_size = None self.wliststore_files = None - self.wliststore_titles = None self.wfiles = None - self.wtitles = None self.wdisc_fill_level = None self.wuse_pal = None self.wuse_ntsc = None self.wcreate_menu = None self.disc_type = None - self.wdelete_title = None - self.wup_title = None - self.wdown_title = None - self.wproperties_title = None self.wadd_file = None self.wdelete_file = None self.wup_file = None @@ -57,8 +49,6 @@ class devede_project: self.wproperties_file = None self.wcreate_disc = None - devede.title.counter = 0 - def ask_type(self): """ This method resets the project and asks the user what kind of project want to do """ @@ -115,40 +105,10 @@ class devede_project: # Set the default disc size if (self.disc_type == "dvd"): self.wdisc_size.set_active(1) # 4.7 GB DVD - self.wframe_titles.show() else: self.wdisc_size.set_active(3) # 700 MB CD - self.wframe_titles.hide() - # create a new title - self.on_add_title_clicked(None) - - - def get_current_title(self): - """ returns the currently selected title """ - - selection = self.wtitles.get_selection() - model, treeiter = selection.get_selected() - - if treeiter != None: - element = model[treeiter][1] - position = 0 - for row in self.wliststore_titles: - item = row.model[row.iter][1] - if element == item: - break - position += 1 - return ( (element, position, model, treeiter) ) - else: - # If there is no selection, try to select the first one if exists - try: - first = self.wliststore_titles[0] - selection.select_iter(first.iter) - return ( (first.model[first.iter][1], 0, first.model, first.iter) ) - except: - return ( (None, -1, None, None) ) - def get_current_file(self): """ returns the currently selected file """ @@ -157,10 +117,10 @@ class devede_project: model, treeiter = selection.get_selected() if treeiter != None: - element = model[treeiter][1] + element = model[treeiter][0] position = 0 for row in self.wfiles.get_model(): - item = row.model[row.iter][1] + item = row.model[row.iter][0] if element == item: break position += 1 @@ -172,12 +132,6 @@ class devede_project: def set_interface_status(self,b): - self.wadd_title.set_sensitive(True) - self.wdelete_title.set_sensitive(True) - self.wup_title.set_sensitive(True) - self.wdown_title.set_sensitive(True) - self.wproperties_title.set_sensitive(True) - self.wadd_file.set_sensitive(True) self.wdelete_file.set_sensitive(True) self.wup_file.set_sensitive(True) @@ -185,36 +139,8 @@ class devede_project: self.wproperties_file.set_sensitive(True) self.wpreview_file.set_sensitive(True) - self.wcreate_disc.set_sensitive(True) - - (element, position, model, treeiter) = self.get_current_title() - - if (self.current_title != element): - self.current_title = element - element.refresh() - + (element, position, model, treeiter) = self.get_current_file() if (element == None): - self.wdelete_title.set_sensitive(False) - self.wup_title.set_sensitive(False) - self.wdown_title.set_sensitive(False) - self.wproperties_title.set_sensitive(False) - self.wadd_file.set_sensitive(False) - self.wdelete_file.set_sensitive(False) - self.wup_file.set_sensitive(False) - self.wdown_file.set_sensitive(False) - self.wproperties_file.set_sensitive(False) - self.wpreview_file.set_sensitive(False) - else: - ntitles = len(self.wliststore_titles) - if (ntitles < 2): - self.wdelete_title.set_sensitive(False) - if (position == 0): - self.wup_title.set_sensitive(False) - if (position == (ntitles-1)): - self.wdown_title.set_sensitive(False) - - (element2, position2, model2, treeiter2) = self.get_current_file() - if (element2 == None): self.wdelete_file.set_sensitive(False) self.wup_file.set_sensitive(False) self.wdown_file.set_sensitive(False) @@ -224,9 +150,9 @@ class devede_project: nfiles = len(self.wfiles.get_model()) if (nfiles < 1): self.wdelete_file.set_sensitive(False) - if (position2 == 0): + if (position == 0): self.wup_file.set_sensitive(False) - if (position2 == (nfiles-1)): + if (position == (nfiles-1)): self.wdown_file.set_sensitive(False) @@ -248,20 +174,13 @@ class devede_project: self.wmain_window = builder.get_object("wmain_window") self.wdisc_size = builder.get_object("disc_size") self.wliststore_files = builder.get_object("liststore_files") - self.wliststore_titles = builder.get_object("liststore_titles") self.wfiles = builder.get_object("files") - self.wtitles = builder.get_object("titles") self.wdisc_fill_level = builder.get_object("disc_fill_level") self.wuse_pal = builder.get_object("use_pal") self.wuse_ntsc = builder.get_object("use_ntsc") self.wcreate_menu = builder.get_object("create_menu") self.wframe_titles = builder.get_object("frame_titles") - self.wadd_title = builder.get_object("delete_title") - self.wdelete_title = builder.get_object("delete_title") - self.wup_title = builder.get_object("up_title") - self.wdown_title = builder.get_object("down_title") - self.wproperties_title = builder.get_object("properties_title") self.wadd_file = builder.get_object("add_file") self.wdelete_file = builder.get_object("delete_file") self.wup_file = builder.get_object("up_file") @@ -273,10 +192,9 @@ class devede_project: selection = self.wfiles.get_selection() selection.mode = Gtk.SelectionMode.SINGLE - selection = self.wtitles.get_selection() - selection.mode = Gtk.SelectionMode.SINGLE self.wmain_window.show_all() + self.set_interface_status(None) def on_wmain_window_delete_event(self,b,e=None): @@ -285,54 +203,18 @@ class devede_project: Gtk.main_quit() return True - def on_add_title_clicked(self,b): - """ Creates a new title and adds it to the current project """ - - self.get_current_title() - - new_title = devede.title.title(self.config,self.wfiles,self.wliststore_files) - new_title.set_type(self.disc_type) - self.wliststore_titles.append([new_title.title_name, new_title]) - self.set_interface_status(None) - def on_add_file_clicked(self,b): - (element, position, model, treeiter) = self.get_current_title() - if (element == None): - return - ask_files = devede.add_files.add_files(self.config) ask_files.set_type(self.disc_type) if (ask_files.run()): for efile in ask_files.files: new_file = devede.file_movie.file_movie(self.config,efile) new_file.set_type(self.disc_type) - if (ask_files.add_to_current_title): - element.add_file(new_file) - else: - if (ask_files.use_filename_as_title): - filename = os.path.splitext(os.path.basename(efile))[0] - new_title = devede.title.title(self.config,self.wfiles,self.wliststore_files,filename) - else: - new_title = devede.title.title(self.config,self.wfiles,self.wliststore_files) - new_title.set_type(self.disc_type) - self.wliststore_titles.append([new_title.title_name, new_title]) - new_title.add_file(new_file) + self.wliststore_files.append([new_file, new_file.title_name]) self.set_interface_status(None) - def on_delete_title_clicked(self,b): - - (element, position, model, treeiter) = self.get_current_title() - if (element == None): - return - - ask_w = devede.ask.ask_window(self.config) - if (ask_w.run(_("The title %(X)s will be removed.") % {"X":element.title_name},_("Delete title"))): - element.delete_title() - model.remove(treeiter) - self.set_interface_status(None) - def on_delete_file_clicked(self,b): (element, position, model, treeiter) = self.get_current_file() @@ -340,21 +222,11 @@ class devede_project: return ask_w = devede.ask.ask_window(self.config) - if (ask_w.run(_("The file %(X)s will be removed.") % {"X":element.file_name},_("Delete file"))): + if (ask_w.run(_("The file %(X)s (%(Y)s) will be removed.") % {"X":element.title_name, "Y":element.file_name},_("Delete file"))): element.delete_file() model.remove(treeiter) self.set_interface_status(None) - def on_up_title_clicked(self,b): - - (element, position, model, treeiter) = self.get_current_title() - if (element == None) or (position == 0): - return - - last_element = self.wliststore_titles[position-1] - self.wliststore_titles.swap(last_element.iter,treeiter) - self.set_interface_status(None) - def on_up_file_clicked(self,b): (element, position, model, treeiter) = self.get_current_file() @@ -365,16 +237,6 @@ class devede_project: self.wfiles.get_model().swap(last_element.iter,treeiter) self.set_interface_status(None) - def on_down_title_clicked(self,b): - - (element, position, model, treeiter) = self.get_current_title() - if (element == None) or (position == (len(self.wliststore_titles)-1)): - return - - last_element = self.wliststore_titles[position+1] - self.wliststore_titles.swap(last_element.iter,treeiter) - self.set_interface_status(None) - def on_down_file_clicked(self,b): (element, position, model, treeiter) = self.get_current_file() @@ -385,13 +247,12 @@ class devede_project: self.wfiles.get_model().swap(last_element.iter,treeiter) self.set_interface_status(None) - def on_properties_title_clicked(self,b): - (element, position, model, treeiter) = self.get_current_title() - if (element == None) or (position == (len(self.wfiles.get_model())-1)): + def on_properties_file_clicked(self,b): + (element, position, model, treeiter) = self.get_current_file() + if (element == None): return - element.properties() - self.wliststore_titles.set_value(treeiter,0,element.title_name) + element.properties(model,treeiter) def on_adjust_disc_usage_clicked(self,b):