Sha256: 7489f5f2b5e381c2781da160c3d7a717ce6a7fe1dfaea6d233daca1b983c841c

Contents?: true

Size: 876 Bytes

Versions: 3

Compression:

Stored size: 876 Bytes

Contents

class Shoes
  module Swt
    class Line
      include Common::Clickable
      include Common::Stroke
      include Common::Visibility
      include Common::Remove
      include Common::PainterUpdatesPosition
      include ::Shoes::BackendDimensionsDelegations

      attr_reader :dsl, :app
      attr_reader :transform

      def initialize(dsl, app)
        @dsl, @app = dsl, app
        @painter = Painter.new(self)
        @app.add_paint_listener(@painter)

        @transform = nil # Not necessary for this shape
      end

      def angle
        @dsl.angle
      end

      class Painter < Common::Painter
        def draw(gc)
          gc.draw_line(@obj.element_left, @obj.element_top,
                       @obj.element_right + 1, @obj.element_bottom + 1)
        end

        # Don't do fill setup
        def fill_setup(_gc)
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
shoes-swt-4.0.0.pre6 lib/shoes/swt/line.rb
shoes-swt-4.0.0.pre5 lib/shoes/swt/line.rb
shoes-swt-4.0.0.pre4 lib/shoes/swt/line.rb