Exemple #1
0
    def _build_window(self, interactive=True):
        ''' Initialize the TurtleWindow instance. '''
        if interactive:
            win = self.canvas.get_window()
            cr = win.cairo_create()
            surface = cr.get_target()
        else:
            img_surface = cairo.ImageSurface(cairo.FORMAT_RGB24,
                                             1024, 768)
            cr = cairo.Context(img_surface)
            surface = cr.get_target()
        self.turtle_canvas = surface.create_similar(
            cairo.CONTENT_COLOR,
            # max(1024, gtk.gdk.screen_width() * 2),
            # max(768, gtk.gdk.screen_height() * 2))
            Gdk.Screen.width() * 2,
            Gdk.Screen.height() * 2)
        self.tw = TurtleArtWindow(self.canvas, self._execdirname,
                                  turtle_canvas=self.turtle_canvas,
                                  activity=self, running_sugar=False)
        self.tw.save_folder = self._abspath  # os.path.expanduser('~')

        if hasattr(self, '_settings'):
            if self._settings.get_int(self._HOVER_HELP) == 1:
                self.hover.set_active(False)
                self._do_hover_help_off_cb(None)
            if not self._settings.get_int(self._COORDINATE_SCALE) in [0, 1]:
                    self.tw.coord_scale = 1
            else:
                self.tw.coord_scale = 0
Exemple #2
0
    def __init__(self, win, name="exported project"):
        """Create a scrolled window to contain the turtle canvas.
        win -- a GTK toplevel window
        """
        self.win = win
        self.set_title = self.win.set_title

        # setup a scrolled container for the canvas
        self.vbox = gtk.VBox(False, 0)
        self.vbox.show()
        self.sw = gtk.ScrolledWindow()
        self.sw.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
        self.sw.show()
        self.canvas = gtk.DrawingArea()
        width = gtk.gdk.screen_width() * 2
        height = gtk.gdk.screen_height() * 2
        self.canvas.set_size_request(width, height)
        self.sw.add_with_viewport(self.canvas)
        self.canvas.show()
        self.vbox.pack_end(self.sw, True, True)
        self.win.add(self.vbox)
        self.win.show_all()

        # exported code is always in interactive mode
        interactive = True

        # copied from turtleblocks.TurtleMain._build_window()
        if interactive:
            gdk_win = self.canvas.get_window()
            cr = gdk_win.cairo_create()
            surface = cr.get_target()
        else:
            img_surface = cairo.ImageSurface(cairo.FORMAT_RGB24, 1024, 768)
            cr = cairo.Context(img_surface)
            surface = cr.get_target()
        self.turtle_canvas = surface.create_similar(
            cairo.CONTENT_COLOR, max(1024,
                                     gtk.gdk.screen_width() * 2),
            max(768,
                gtk.gdk.screen_height() * 2))

        # instantiate an instance of a dummy sub-class that supports only
        # the stuff TurtleGraphics needs
        # TODO don't hardcode running_sugar
        share_path = _TA_INSTALLATION_PATH
        self.tw = TurtleArtWindow(self.canvas,
                                  _TA_INSTALLATION_PATH,
                                  share_path,
                                  turtle_canvas=self.turtle_canvas,
                                  parent=self,
                                  running_sugar=False,
                                  running_turtleart=False)

        self.name = name
Exemple #3
0
    def _build_window(self, interactive=True):
        ''' Initialize the TurtleWindow instance. '''
        if interactive:
            win = self.canvas.get_window()
            cr = win.cairo_create()
            surface = cr.get_target()
        else:
            img_surface = cairo.ImageSurface(cairo.FORMAT_RGB24,
                                             1024, 768)
            cr = cairo.Context(img_surface)
            surface = cr.get_target()
        self.turtle_canvas = surface.create_similar(
            cairo.CONTENT_COLOR,
            # max(1024,  Gdk.Screen.width() * 2),
            # max(768, Gdk.Screen.height() * 2))
            Gdk.Screen.width() * 2,
            Gdk.Screen.height() * 2)

        # Make sure the autosave directory is writeable
        if is_writeable(self._share_path):
            self._autosavedirname = self._share_path
        else:
            self._autosavedirname = os.path.expanduser('~')
        self.tw = TurtleArtWindow(
            self.canvas,
            self._lib_path,
            self._share_path,
            turtle_canvas=self.turtle_canvas,
            activity=self,
            running_sugar=False)
        self.tw.save_folder = self._abspath  # os.path.expanduser('~')

        if interactive:
            if self._settings.get_int(self._HOVER_HELP) == 1:
                self.tw.no_help = True
                self.hover.set_active(False)
                self._do_hover_help_off_cb()
            if not self._settings.get_int(self._COORDINATE_SCALE) in [0, 1]:
                self.tw.coord_scale = 1
            else:
                self.tw.coord_scale = 0
            if self._settings.get_int(self._ORIENTATION) == 1:
                self.tw.orientation = 1
        else:
            self.tw.coord_scale = 1
 def _build_window(self, interactive=True):
     ''' Initialize the TurtleWindow instance. '''
     if interactive:
         win = self.canvas.get_window()
         cr = win.cairo_create()
         surface = cr.get_target()
     else:
         img_surface = cairo.ImageSurface(cairo.FORMAT_RGB24, 1024, 768)
         cr = cairo.Context(img_surface)
         surface = cr.get_target()
     self.turtle_canvas = surface.create_similar(
         cairo.CONTENT_COLOR,
         gtk.gdk.screen_width() * 2,
         gtk.gdk.screen_height() * 2)
     self.tw = TurtleArtWindow(self.canvas,
                               self._execdirname,
                               turtle_canvas=self.turtle_canvas)
     self.tw.save_folder = os.path.expanduser('~')
 def _build_window(self):
     ''' Initialize the TurtleWindow instance. '''
     self.tw = TurtleArtWindow(self.canvas, self._dirname)
     self.tw.save_folder = os.path.expanduser('~')