print objects as tooltip or by double clicking.

change reset to use the internal broken one.
hide the stop button.
This commit is contained in:
Jaromil
2009-09-01 02:21:59 +02:00
parent a716a6a58a
commit bc3bdfedf3
2 changed files with 72 additions and 60 deletions

View File

@@ -1,7 +1,7 @@
<?xml version="1.0"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
<!--Generated with glade3 3.4.5 on Tue Sep 1 01:57:12 2009 -->
<glade-interface>
<!-- interface-requires gtk+ 2.16 -->
<!-- interface-naming-policy toplevel-contextual -->
<widget class="GtkWindow" id="main">
<property name="width_request">400</property>
<property name="visible">True</property>
@@ -22,8 +22,8 @@
<property name="visible">True</property>
<child>
<widget class="GtkImageMenuItem" id="imagemenuitem1">
<property name="label">gtk-new</property>
<property name="visible">True</property>
<property name="label">gtk-new</property>
<property name="use_underline">True</property>
<property name="use_stock">True</property>
<signal name="activate" handler="on_script_new"/>
@@ -31,9 +31,9 @@
</child>
<child>
<widget class="GtkImageMenuItem" id="imagemenuitem2">
<property name="label">gtk-open</property>
<property name="visible">True</property>
<property name="tooltip" translatable="yes">Open Script</property>
<property name="label">gtk-open</property>
<property name="use_underline">True</property>
<property name="use_stock">True</property>
<signal name="activate" handler="open_script"/>
@@ -41,9 +41,9 @@
</child>
<child>
<widget class="GtkImageMenuItem" id="imagemenuitem3">
<property name="label">gtk-save</property>
<property name="visible">True</property>
<property name="tooltip" translatable="yes">Save Script</property>
<property name="label">gtk-save</property>
<property name="use_underline">True</property>
<property name="use_stock">True</property>
<signal name="activate" handler="on_script_save"/>
@@ -51,8 +51,8 @@
</child>
<child>
<widget class="GtkImageMenuItem" id="imagemenuitem4">
<property name="label">gtk-save-as</property>
<property name="visible">True</property>
<property name="label">gtk-save-as</property>
<property name="use_underline">True</property>
<property name="use_stock">True</property>
<signal name="activate" handler="on_script_save_as"/>
@@ -65,8 +65,8 @@
</child>
<child>
<widget class="GtkImageMenuItem" id="imagemenuitem5">
<property name="label">gtk-quit</property>
<property name="visible">True</property>
<property name="label">gtk-quit</property>
<property name="use_underline">True</property>
<property name="use_stock">True</property>
<signal name="activate" handler="gtk_main_quit"/>
@@ -86,32 +86,32 @@
<property name="visible">True</property>
<child>
<widget class="GtkImageMenuItem" id="imagemenuitem6">
<property name="label">gtk-cut</property>
<property name="visible">True</property>
<property name="label">gtk-cut</property>
<property name="use_underline">True</property>
<property name="use_stock">True</property>
</widget>
</child>
<child>
<widget class="GtkImageMenuItem" id="imagemenuitem7">
<property name="label">gtk-copy</property>
<property name="visible">True</property>
<property name="label">gtk-copy</property>
<property name="use_underline">True</property>
<property name="use_stock">True</property>
</widget>
</child>
<child>
<widget class="GtkImageMenuItem" id="imagemenuitem8">
<property name="label">gtk-paste</property>
<property name="visible">True</property>
<property name="label">gtk-paste</property>
<property name="use_underline">True</property>
<property name="use_stock">True</property>
</widget>
</child>
<child>
<widget class="GtkImageMenuItem" id="imagemenuitem9">
<property name="label">gtk-delete</property>
<property name="visible">True</property>
<property name="label">gtk-delete</property>
<property name="use_underline">True</property>
<property name="use_stock">True</property>
</widget>
@@ -179,10 +179,9 @@
<property name="visible">True</property>
<child>
<widget class="GtkImageMenuItem" id="menuitem6">
<property name="label" translatable="yes">Open Video</property>
<property name="visible">True</property>
<property name="tooltip" translatable="yes">Open Video</property>
<property name="use_stock">False</property>
<property name="label" translatable="yes">Open Video</property>
<signal name="activate" handler="open_file"/>
</widget>
</child>
@@ -208,8 +207,8 @@
<property name="visible">True</property>
<child>
<widget class="GtkImageMenuItem" id="imagemenuitem10">
<property name="label">gtk-about</property>
<property name="visible">True</property>
<property name="label">gtk-about</property>
<property name="use_underline">True</property>
<property name="use_stock">True</property>
</widget>
@@ -221,7 +220,6 @@
</widget>
<packing>
<property name="expand">False</property>
<property name="position">0</property>
</packing>
</child>
<child>
@@ -231,16 +229,13 @@
<child>
<widget class="GtkVBox" id="vbox2">
<property name="visible">True</property>
<property name="orientation">vertical</property>
<child>
<widget class="GtkTreeView" id="main_tree">
<property name="visible">True</property>
<property name="can_focus">True</property>
<signal name="button_press_event" handler="tree_button"/>
<signal name="row_activated" handler="on_item_activated"/>
</widget>
<packing>
<property name="position">0</property>
</packing>
</child>
<child>
<widget class="GtkHBox" id="hbox1">
@@ -249,16 +244,14 @@
<widget class="GtkComboBox" id="combobox_effects">
<property name="visible">True</property>
</widget>
<packing>
<property name="position">0</property>
</packing>
</child>
<child>
<widget class="GtkButton" id="add_effect">
<property name="label" translatable="yes">add</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="label" translatable="yes">add</property>
<property name="response_id">0</property>
<signal name="clicked" handler="add_effect"/>
</widget>
<packing>
@@ -294,11 +287,10 @@
<child>
<widget class="GtkVBox" id="vbox3">
<property name="visible">True</property>
<property name="orientation">vertical</property>
<child>
<widget class="GtkToolbar" id="toolbar1">
<property name="visible">True</property>
<property name="toolbar_style">both-horiz</property>
<property name="toolbar_style">GTK_TOOLBAR_BOTH_HORIZ</property>
<child>
<widget class="GtkToolButton" id="toolbutton2">
<property name="visible">True</property>
@@ -308,20 +300,17 @@
<signal name="clicked" handler="on_script_play"/>
</widget>
<packing>
<property name="expand">False</property>
<property name="homogeneous">True</property>
</packing>
</child>
<child>
<widget class="GtkToolButton" id="toolbutton3">
<property name="visible">True</property>
<property name="label" translatable="yes">stop</property>
<property name="use_underline">True</property>
<property name="stock_id">gtk-media-stop</property>
<signal name="clicked" handler="on_script_stop"/>
</widget>
<packing>
<property name="expand">False</property>
<property name="homogeneous">True</property>
</packing>
</child>
@@ -329,15 +318,14 @@
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">0</property>
</packing>
</child>
<child>
<widget class="GtkScrolledWindow" id="text_scroll">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="hscrollbar_policy">automatic</property>
<property name="vscrollbar_policy">automatic</property>
<property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
<property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
<child>
<placeholder/>
</child>
@@ -356,8 +344,8 @@
<widget class="GtkScrolledWindow" id="status_scroll">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="hscrollbar_policy">automatic</property>
<property name="vscrollbar_policy">automatic</property>
<property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
<property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
<child>
<widget class="GtkTreeView" id="status_list">
<property name="visible">True</property>
@@ -393,14 +381,12 @@
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">0</property>
</packing>
</child>
<child>
<widget class="GtkEntry" id="entry1">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="invisible_char">&#x25CF;</property>
<signal name="activate" handler="run_command"/>
</widget>
<packing>

View File

@@ -242,9 +242,20 @@ class App(FreeJ):
"on_script_play" : self.on_script_play,
"on_script_stop" : self.on_script_stop,
"run_command": self.run_command,
"on_item_activated": self.on_item_activated,
"show_preview": self.show_preview,
"show_history": self.show_history})
def on_item_activated(self, treeview, path, view_column):
"""
An item from the main tree view was selected.
"""
obj = self.get_selected_object(treeview.get_model().get_iter(path))
if not obj: # type of object not handled
return
self.console.act(self.get_description(obj))
def invert_array(self, data):
if not has_numpy:
return data
@@ -312,10 +323,11 @@ class App(FreeJ):
self._timeout_id = gobject.idle_add(self.__timeout, self.window)
def on_script_play(self, button):
self.on_script_save(button)
# self.on_script_save(button)
if self.lang == 'js':
if self.buffer.filename:
self.cx.open_script(self.buffer.filename)
self.cx.parse_js_cmd(self.buffer.get_property('text'))
# self.cx.open_script(self.buffer.filename)
elif self.lang == 'python':
if self.buffer.filename:
self.run_python_command(self.buffer.get_property('text'))
@@ -411,17 +423,18 @@ class App(FreeJ):
def do_reset(self, button):
#del self.cx
# self.cx.reset()
print " * delete controllers"
for controller in list(self.cx.controllers):
self.cx.rem_controller(controller)
print " * delete layers"
for layer in list(self.scr.layers):
self.delete_layer(layer)
print " * clear layers"
print " * init context"
#self.init_context()
print " * fill tree"
self.cx.reset()
# print " * delete controllers"
# for controller in list(self.cx.controllers):
# self.cx.rem_controller(controller)
# print " * delete layers"
# for layer in list(self.scr.layers):
# layer.rem()
# # self.delete_layer(layer)
# print " * clear layers"
# print " * init context"
# self.init_context()
self.fill_tree()
def add_effect(self, button):
@@ -442,11 +455,17 @@ class App(FreeJ):
idx = model.get_value(iter, 1)
obj_type = model.get_value(iter, 2)
if obj_type == LAYER:
return self.scr.layers[idx]
return self.scr.layers[idx+1]
elif obj_type == FILTER:
return None
parent_iter = model.iter_parent(iter)
lay_idx = model.get_value(parent_iter, 1)
layer = self.scr.layers[lay_idx+1]
filter = layer.filters[idx+1]
return filter
elif obj_type == CONTROLLER:
return None
return self.cx.controllers[idx+1]
elif obj_type == SCREEN:
return self.cx.screens[idx+1]
def delete_effect(self, button=None):
model, iter = self.main_tree.get_selection().get_selected()
@@ -494,9 +513,17 @@ class App(FreeJ):
obj = self.get_selected_object(iter)
if not obj:
return
tooltip.set_text(obj.get_filename()+"\n active: "+str(obj.active))
tooltip.set_text(self.get_description(obj))
return True
def get_description(self, obj):
if isinstance(obj, freej.Layer):
return obj.name+"\n active: "+str(obj.active)
elif isinstance(obj, freej.ViewPort):
return "a viewport has no name"
else:
return obj.name
def prepare_tree(self):
self.main_tree = self.wTree.get_widget("main_tree")
#self.main_tree.set_tooltip_column(4)
@@ -536,14 +563,13 @@ class App(FreeJ):
name = layer.get_filename()
if not name:
name = layer.name
lay_iter = self.main_model.append(layers, [name, l_idx, LAYER,
lay_iter = self.main_model.append(layers, [name, l_idx, LAYER,
self.layer_icon, tooltip])
# print layer.type
# for f_idx, filter in enumerate(layer.filters):
# iter = self.main_model.append(lay_iter, [filter.name, f_idx,
# FILTER,
# self.effect_icon,
# tooltip])
for f_idx, filter in enumerate(layer.filters):
iter = self.main_model.append(lay_iter, [filter.name, f_idx,
FILTER,
self.effect_icon,
tooltip])
controllers = self.main_model.append(None, ["Controllers", 0, MENU,
self.folder_icon, tooltip])