Sha256: 685f18444c34d7ebe9e0fd6193843df7d171d3cccbb68c59c8d3dc360d68ea5e

Contents?: true

Size: 1 KB

Versions: 2

Compression:

Stored size: 1 KB

Contents

class Shoes
  module Swt
    class Arc
      include Common::Clickable
      include Common::Fill
      include Common::Stroke
      include Common::PainterUpdatesPosition
      include Common::Visibility
      include Common::Remove
      include Common::Translate
      include ::Shoes::BackendDimensionsDelegations

      attr_reader :dsl, :app, :transform

      # Creates a new Shoes::Swt::Arc
      #
      # @param [Shoes::Arc] dsl The DSL object represented by this implementation
      # @param [Shoes::Swt::App] app The implementation object of the Shoes app
      def initialize(dsl, app)
        @dsl = dsl
        @app = app

        @painter = ArcPainter.new(self)
        @app.add_paint_listener @painter
      end

      def angle1
        radians_to_degrees dsl.angle1
      end

      def angle2
        radians_to_degrees dsl.angle2
      end

      def wedge?
        dsl.wedge?
      end

      private

      def radians_to_degrees(radians)
        radians * 180 / ::Shoes::PI
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
shoes-swt-4.0.0.pre8 lib/shoes/swt/arc.rb
shoes-swt-4.0.0.pre7 lib/shoes/swt/arc.rb