From 7b4f64c4f876de9e80549ef214de8b305dc90800 Mon Sep 17 00:00:00 2001 From: Julien Veyssier Date: Thu, 14 Mar 2013 03:44:19 +0100 Subject: [PATCH] [qcineoob] a few comments, docstrings, renamings, hiding --- weboob/applications/qcineoob/main_window.py | 41 ++++++++++++++------- weboob/applications/qcineoob/subtitle.py | 9 +++++ 2 files changed, 36 insertions(+), 14 deletions(-) diff --git a/weboob/applications/qcineoob/main_window.py b/weboob/applications/qcineoob/main_window.py index 445ec8c8..2e1a1f07 100644 --- a/weboob/applications/qcineoob/main_window.py +++ b/weboob/applications/qcineoob/main_window.py @@ -51,10 +51,13 @@ class MainWindow(QtMainWindow): self.minis = [] self.current_info_widget = None - self.search_history = self.loadHistory() + # search history is a list of patterns which have been searched + self.search_history = self.loadSearchHistory() self.updateCompletion() - self.history = {'last_action':None,'action_list':[]} + # action history is composed by the last action and the action list + # An action is a function, a list of arguments and a description string + self.action_history = {'last_action':None,'action_list':[]} self.connect(self.ui.backButton, SIGNAL("clicked()"), self.doBack) self.ui.backButton.hide() @@ -96,7 +99,9 @@ class MainWindow(QtMainWindow): else: self.ui.searchEdit.setEnabled(True) - def loadHistory(self): + def loadSearchHistory(self): + ''' Return search string history list loaded from history file + ''' result = [] history_path = os.path.join(self.weboob.workdir, 'qcineoob_history') if os.path.exists(history_path): @@ -107,7 +112,9 @@ class MainWindow(QtMainWindow): result = conf_hist.strip().split('\n') return result - def saveHistory(self): + def saveSearchHistory(self): + ''' Save search history in history file + ''' if len(self.search_history) > 0: history_path = os.path.join(self.weboob.workdir, 'qcineoob_history') f=codecs.open(history_path,'w','utf-8') @@ -128,23 +135,29 @@ class MainWindow(QtMainWindow): self.ui.langLabel.hide() def doAction(self, description, fun, args): + ''' Call fun with args as arguments + and save it in the action history + ''' self.ui.currentActionLabel.setText(description) - if self.history['last_action'] != None: - self.history['action_list'].append(self.history['last_action']) - self.ui.backButton.setToolTip(self.history['last_action']['description']) + if self.action_history['last_action'] != None: + self.action_history['action_list'].append(self.action_history['last_action']) + self.ui.backButton.setToolTip(self.action_history['last_action']['description']) self.ui.backButton.show() - self.history['last_action'] = {'function':fun,'args':args,'description':description} + self.action_history['last_action'] = {'function':fun,'args':args,'description':description} return fun(*args) def doBack(self): - if len(self.history['action_list']) > 0: - todo = self.history['action_list'].pop() + ''' Go back in action history + Basically call previous function and update history + ''' + if len(self.action_history['action_list']) > 0: + todo = self.action_history['action_list'].pop() self.ui.currentActionLabel.setText(todo['description']) - self.history['last_action'] = todo - if len(self.history['action_list']) == 0: + self.action_history['last_action'] = todo + if len(self.action_history['action_list']) == 0: self.ui.backButton.hide() else: - self.ui.backButton.setToolTip(self.history['action_list'][-1]['description']) + self.ui.backButton.setToolTip(self.action_history['action_list'][-1]['description']) return todo['function'](*todo['args']) def castingAction(self, id, role): @@ -371,7 +384,7 @@ class MainWindow(QtMainWindow): def closeEvent(self, ev): self.config.set('settings', 'backend', str(self.ui.backendEdit.itemData(self.ui.backendEdit.currentIndex()).toString())) - self.saveHistory() + self.saveSearchHistory() self.config.save() ev.accept() diff --git a/weboob/applications/qcineoob/subtitle.py b/weboob/applications/qcineoob/subtitle.py index 6a94b16c..b3ee9cac 100644 --- a/weboob/applications/qcineoob/subtitle.py +++ b/weboob/applications/qcineoob/subtitle.py @@ -40,12 +40,21 @@ class Subtitle(QFrame): self.ui.nameLabel.setText(u'%s'%subtitle.name) if subtitle.nb_cd != NotAvailable: self.ui.nbcdLabel.setText(u'%s'%subtitle.nb_cd) + else: + self.ui.nbcdLabel.parent().hide() if subtitle.language != NotAvailable: self.ui.langLabel.setText(u'%s'%subtitle.language) + else: + self.ui.langLabel.parent().hide() if subtitle.description != NotAvailable: self.ui.descriptionPlain.setPlainText(u'%s'%subtitle.description) + else: + self.ui.descriptionPlain.parent().hide() if subtitle.url != NotAvailable: self.ui.urlEdit.setText(u'%s'%subtitle.url) + else: + self.ui.downloadButton.setDisabled(True) + self.ui.downloadButton.setText('Impossible to download this subtitle') self.ui.verticalLayout.setAlignment(Qt.AlignTop)