Projects/laydi
Projects
/
laydi
Archived
7
0
Fork 0

Removed data information as function in workflow and added as default action on datasets double-clicked in navigator.

This commit is contained in:
Truls Alexander Tangstad 2006-04-21 15:02:13 +00:00
parent efcd8c8587
commit c601ad3966
2 changed files with 19 additions and 31 deletions

View File

@ -36,6 +36,24 @@ class NavigatorView (gtk.TreeView):
t = type(obj) t = type(obj)
logger.log('debug', 'Selected datatype was %s. Don\'t know what to do.' % t) logger.log('debug', 'Selected datatype was %s. Don\'t know what to do.' % t)
def display_data_info(self, data):
dims = []
for name in data.get_dim_names():
dims.append((name, data.dims[data._dim_num[name]]))
dim_text = ", ".join(["%s (%d)" % dim for dim in dims])
text = """<span weight="bold">Data:</span> %s
<span weight="bold">Dimensions:</span> %s""" % (data.get_name(), dim_text)
d = gtk.MessageDialog(flags=(gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT),
buttons=gtk.BUTTONS_OK)
d.set_markup(text)
d.set_default_response(gtk.BUTTONS_OK)
d.run()
d.destroy()
def row_activated_handler(self, widget, path, column): def row_activated_handler(self, widget, path, column):
tree_iter = self.data_tree.get_iter(path) tree_iter = self.data_tree.get_iter(path)
obj = self.data_tree.get_value(tree_iter, 2) obj = self.data_tree.get_value(tree_iter, 2)
@ -44,8 +62,7 @@ class NavigatorView (gtk.TreeView):
logger.log('debug', 'Activating plot') logger.log('debug', 'Activating plot')
self.app.change_plot(obj) self.app.change_plot(obj)
elif isinstance(obj, dataset.Dataset): elif isinstance(obj, dataset.Dataset):
# do nothing self.display_data_info(obj)
pass
else: else:
t = type(obj) t = type(obj)
logger.log('debug', 'Activated datatype was %s. Don\'t know what to do.' % t) logger.log('debug', 'Activated datatype was %s. Don\'t know what to do.' % t)

View File

@ -17,7 +17,6 @@ class EinarsWorkflow (Workflow):
load = Stage('load', 'Load Data') load = Stage('load', 'Load Data')
load.add_function(Function('load', 'Load Microarrays')) load.add_function(Function('load', 'Load Microarrays'))
load.add_function(TestDataFunction()) load.add_function(TestDataFunction())
load.add_function(DatasetInfoFunction())
self.add_stage(load) self.add_stage(load)
preproc = Stage('preprocess', 'Preprocessing') preproc = Stage('preprocess', 'Preprocessing')
@ -99,31 +98,3 @@ class TestDataFunction(Function):
axis_1 = ['cols',[]] axis_1 = ['cols',[]]
X = dataset.Dataset(x,[axis_0,axis_1]) X = dataset.Dataset(x,[axis_0,axis_1])
return [X, plots.SinePlot(None)] return [X, plots.SinePlot(None)]
class DatasetInfoFunction(Function):
def __init__(self):
Function.__init__(self, 'data_info', 'Show information')
def run(self, data):
if not data:
return []
dims = []
for name in data.get_dim_names():
dims.append((name, data.dims[data._dim_num[name]]))
dim_text = ", ".join(["%s (%d)" % dim for dim in dims])
text = """<span weight="bold">Data:</span> %s
<span weight="bold">Dimensions:</span> %s""" % (data.get_name(), dim_text)
d = gtk.MessageDialog(flags=(gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT),
buttons=gtk.BUTTONS_OK)
d.set_markup(text)
d.set_default_response(gtk.BUTTONS_OK)
d.run()
d.destroy()
return []