Exemplo n.º 1
0
    def __init__(self, toolbar, activity, fill_color_button):

        self._activity = activity
        self.properties = self._activity.area.tool
        self._fill_color_button = fill_color_button
        self._selected_tool_name = self._TOOL_BRUSH_NAME

        self._tool_brush = DrawToolButton('tool-brush', activity.tool_group,
                                          _('Brush'))
        activity.tool_group = self._tool_brush
        toolbar.insert(self._tool_brush, -1)

        add_menu('tool-brush', _('Brush'), self._TOOL_BRUSH_NAME,
                 self._tool_brush, self.set_tool)

        add_menu('tool-eraser', _('Eraser'), self._TOOL_ERASER_NAME,
                 self._tool_brush, self.set_tool)

        add_menu('tool-bucket', _('Bucket'), self._TOOL_BUCKET_NAME,
                 self._tool_brush, self.set_tool)

        add_menu('tool-picker', _('Picker'), self._TOOL_PICKER_NAME,
                 self._tool_brush, self.set_tool)

        self._tool_stamp = add_menu('tool-stamp', _('Stamp'),
                                    self._TOOL_STAMP_NAME, self._tool_brush,
                                    self.set_tool)

        is_selected = self._activity.area.is_selected()
        self._tool_stamp.set_sensitive(is_selected)

        add_menu('tool-stamp', _('Load stamp'), 'load-stamp', self._tool_brush,
                 self.set_tool)

        self._activity.area.connect('undo', self._on_signal_undo_cb)
        self._activity.area.connect('redo', self._on_signal_redo_cb)
        self._activity.area.connect('select', self._on_signal_select_cb)
        self._activity.area.connect('action-saved',
                                    self._on_signal_action_saved_cb)

        self._tool_marquee_rectangular = add_menu('tool-marquee-rectangular',
                                                  _('Select Area'),
                                                  self._TOOL_MARQUEE_RECT_NAME,
                                                  self._tool_brush,
                                                  self.set_tool)

        self._tool_brush.connect('clicked', self._tool_button_clicked_cb)

        self._stroke_color = ButtonStrokeColor(activity)
        self.set_tool(self._tool_brush, self._TOOL_BRUSH_NAME)
        self._stroke_color.connect('notify::color', self._color_button_cb)
        toolbar.insert(self._stroke_color, -1)