From 3dd7ddd70b982829813d1faa117f54dbf94c9710 Mon Sep 17 00:00:00 2001 From: Jussi Kukkonen Date: Tue, 5 Mar 2013 13:20:37 +0200 Subject: [Model] Name column indexes This makes it easier to change the model without breaking things outside the model. Signed-off-by: Jussi Kukkonen --- src/msd/msd_generic_model.py | 20 +++++++++++++------- src/msd/msd_main_window.py | 8 ++++---- 2 files changed, 17 insertions(+), 11 deletions(-) diff --git a/src/msd/msd_generic_model.py b/src/msd/msd_generic_model.py index cf5a692..cc80988 100644 --- a/src/msd/msd_generic_model.py +++ b/src/msd/msd_generic_model.py @@ -91,9 +91,15 @@ class _ResultArray(dict): class GenericModel(gtk.GenericTreeModel): - columns = (("DisplayName", str), ("Artist", str), ("Date", str), - ("Type",str), ("Path", str), ("URL", str), - ("Loaded", bool)) + # columns + COL_DISPLAY_NAME = 0 + COL_ARTIST = 1 + COL_DATE = 2 + COL_TYPE = 3 + COL_PATH = 4 + COL_URL = 5 + COL_LOADED = 6 + column_types = [str, str, str, str, str, str, bool] filter = ["Artist", "DisplayName", "URLs", "Date", "Path", "Type"] @@ -207,9 +213,9 @@ class GenericModel(gtk.GenericTreeModel): self.__request_range = [start, end] # skip any rows in beginning or end that are already loaded try: - while self.__items[start][6] and start <= end: + while self.__items[start][self.COL_LOADED] and start <= end: start = start + 1 - while self.__items[end][6] and start <= end: + while self.__items[end][self.COL_LOADED] and start <= end: end = end - 1 except: pass @@ -231,10 +237,10 @@ class GenericModel(gtk.GenericTreeModel): return gtk.TREE_MODEL_LIST_ONLY def on_get_n_columns(self): - return len(GenericModel.columns) + return len(self.column_types) def on_get_column_type(self, n): - return GenericModel.columns[n][1] + return self.column_types[n] def on_get_iter(self, path): # return internal row reference (key) for use in on_* methods diff --git a/src/msd/msd_main_window.py b/src/msd/msd_main_window.py index 5891a5a..43291e7 100644 --- a/src/msd/msd_main_window.py +++ b/src/msd/msd_main_window.py @@ -165,10 +165,10 @@ class MainWindow(object): def __content_clicked(self, treeview, path, col): model = treeview.get_model() rowref = model.get_iter(path) - name = model.get_value(rowref, 0) - ctype = model.get_value(rowref, 3) - path = model.get_value(rowref, 4) - url = model.get_value(rowref, 5) + name = model.get_value(rowref, model.COL_DISPLAY_NAME) + ctype = model.get_value(rowref, model.COL_TYPE) + path = model.get_value(rowref, model.COL_PATH) + url = model.get_value(rowref, model.COL_URL) if url != "": if ctype == "Image": -- cgit v1.2.1