Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--TurtleArt/tawindow.py22
-rw-r--r--TurtleArtActivity.py5
-rwxr-xr-xturtleblocks.py21
3 files changed, 26 insertions, 22 deletions
diff --git a/TurtleArt/tawindow.py b/TurtleArt/tawindow.py
index e0a9106..32e672b 100644
--- a/TurtleArt/tawindow.py
+++ b/TurtleArt/tawindow.py
@@ -95,7 +95,6 @@ class TurtleArtWindow():
self._loaded_project = ''
self._sharing = False
self.parent = parent
- self.window_init_complete = False
self.turtle_canvas = turtle_canvas
self.send_event = None # method to send events over the network
self.gst_available = GST_AVAILABLE
@@ -263,7 +262,7 @@ class TurtleArtWindow():
CONSTANTS['height'] = int(self.canvas.height / self.coord_scale)
self._icon_paths = [os.path.join(self.path, 'icons')]
- self._plugins = []
+ self.turtleart_plugins = []
self._init_plugins()
self.lc = LogoCode(self)
@@ -283,7 +282,6 @@ class TurtleArtWindow():
show=True)
self.saved_pictures = []
self.block_operation = ''
- self.window_init_complete = True
def _set_screen_dpi(self):
dpi = get_screen_dpi()
@@ -329,7 +327,7 @@ class TurtleArtWindow():
# NOTE: When debugging plugins, it may be useful to not trap errors
try:
exec f in globals(), plugins
- self._plugins.append(plugins.values()[0](self))
+ self.turtleart_plugins.append(plugins.values()[0](self))
debug_output('Successfully importing %s' % (plugin_class),
self.running_sugar)
# Add the icon dir to the icon_theme search path
@@ -356,44 +354,44 @@ class TurtleArtWindow():
self._get_plugin_home())
if plugin_name in list_plugins:
number_plugin = list_plugins.index(plugin_name)
- return self._plugins[number_plugin]
+ return self.turtleart_plugins[number_plugin]
else:
return None
def _setup_plugins(self):
''' Initial setup -- called just once. '''
- for plugin in self._plugins:
+ for plugin in self.turtleart_plugins:
plugin.setup()
def _start_plugins(self):
''' Start is called everytime we execute blocks. '''
- for plugin in self._plugins:
+ for plugin in self.turtleart_plugins:
plugin.start()
def _stop_plugins(self):
''' Stop is called whenever we stop execution. '''
- for plugin in self._plugins:
+ for plugin in self.turtleart_plugins:
plugin.stop()
def clear_plugins(self):
''' Clear is called from the clean block and erase button. '''
- for plugin in self._plugins:
+ for plugin in self.turtleart_plugins:
if hasattr(plugin, 'clear'):
plugin.clear()
def background_plugins(self):
''' Background is called when we are pushed to the background. '''
- for plugin in self._plugins:
+ for plugin in self.turtleart_plugins:
plugin.goto_background()
def foreground_plugins(self):
''' Foreground is called when we are return from the background. '''
- for plugin in self._plugins:
+ for plugin in self.turtleart_plugins:
plugin.return_to_foreground()
def quit_plugins(self):
''' Quit is called upon program exit. '''
- for plugin in self._plugins:
+ for plugin in self.turtleart_plugins:
plugin.quit()
def _setup_events(self):
diff --git a/TurtleArtActivity.py b/TurtleArtActivity.py
index af3acc9..0e6880a 100644
--- a/TurtleArtActivity.py
+++ b/TurtleArtActivity.py
@@ -79,6 +79,8 @@ class TurtleArtActivity(activity.Activity):
_logger.error(str(e))
self.tw = None
+ self.init_complete = False
+
self._check_ver_change(get_path(activity, 'data'))
self.connect("notify::active", self._notify_active_cb)
@@ -111,6 +113,7 @@ class TurtleArtActivity(activity.Activity):
self.metadata['activity count'] = str(count)
self._defer_palette_move = False
+ self.init_complete = True
# Activity toolbar callbacks
def do_save_as_logo_cb(self, button):
@@ -1005,7 +1008,7 @@ Plugin section of plugin.info file.')
create_palette.append(False)
_logger.debug('Initializing plugin...')
self.tw.init_plugin(plugin_name)
- self.tw._plugins[-1].setup()
+ self.tw.turtleart_plugins[-1].setup()
self.tw.load_media_shapes()
for i, palette_name in enumerate(palette_name_list):
if create_palette[i]:
diff --git a/turtleblocks.py b/turtleblocks.py
index 5c536a2..b508c5b 100755
--- a/turtleblocks.py
+++ b/turtleblocks.py
@@ -89,20 +89,22 @@ class TurtleMain():
self._init_vars()
self._parse_command_line()
self._ensure_sugar_paths()
- self._plugins = []
+ self._gnome_plugins = []
if self._output_png:
# Outputing to file, so no need for a canvas
self.canvas = None
self._build_window(interactive=False)
+ self.init_complete = True
self._draw_and_quit()
else:
self._read_initial_pos()
- self._init_plugins()
+ self._init_gnome_plugins()
self._setup_gtk()
self._build_window()
- self._run_plugins()
+ self._run_gnome_plugins()
self._start_gtk()
+ self.init_complete = True
def get_config_home(self):
return CONFIG_HOME
@@ -125,7 +127,7 @@ class TurtleMain():
plugin_files.append(c.split('.')[0])
return plugin_files
- def _init_plugins(self):
+ def _init_gnome_plugins(self):
''' Try launching any plugins we may have found. '''
for p in self._get_plugin_candidates(self._get_gnome_plugin_home()):
P = p.capitalize()
@@ -134,13 +136,13 @@ class TurtleMain():
plugin = {}
try:
exec f in globals(), plugin
- self._plugins.append(plugin.values()[0](self))
+ self._gnome_plugins.append(plugin.values()[0](self))
except ImportError, e:
print 'failed to import %s: %s' % (P, str(e))
- def _run_plugins(self):
+ def _run_gnome_plugins(self):
''' Tell the plugin about the TurtleWindow instance. '''
- for p in self._plugins:
+ for p in self._gnome_plugins:
p.set_tw(self.tw)
def _mkdir_p(self, path):
@@ -212,6 +214,7 @@ class TurtleMain():
self.current_palette = 0
self.scale = 2.0
self.tw = None
+ self.init_complete = False
def _parse_command_line(self):
''' Try to make sense of the command-line arguments. '''
@@ -408,7 +411,7 @@ class TurtleMain():
menu_bar.append(turtle_menu)
# Add menus for plugins
- for p in self._plugins:
+ for p in self._gnome_plugins:
menu_bar.append(p.get_menu())
return menu_bar
@@ -421,7 +424,7 @@ class TurtleMain():
else:
if self.tw.project_has_changed():
self._show_save_dialog(False)
- for plugin in self.tw._plugins:
+ for plugin in self.tw.turtleart_plugins:
if hasattr(plugin, 'quit'):
plugin.quit()
gtk.main_quit()