Sha256: e4f5f82fd0e8417e39dffd6e6a2ed47b4d45de3c79bc692ac5645ff512d7fe30

Contents?: true

Size: 687 Bytes

Versions: 8

Compression:

Stored size: 687 Bytes

Contents

require 'glimmer/dsl/expression'
require 'glimmer/swt/cursor_proxy'

module Glimmer
  module DSL
    module SWT
      # cursor expression
      # Note: Cannot be a static expression because it clashes with cursor property expression
      class CursorExpression < Expression
        def can_interpret?(parent, keyword, *args, &block)
          keyword.to_s == 'cursor' and
            (parent.nil? or !parent.respond_to?('cursor')) and
            args.size == 1 and
            (args.first.is_a?(Integer) or textual?(args.first))
        end
  
        def interpret(parent, keyword, *args, &block)
          Glimmer::SWT::CursorProxy.new(*args)
        end
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
glimmer-dsl-swt-0.6.9 lib/glimmer/dsl/swt/cursor_expression.rb
glimmer-dsl-swt-0.6.8 lib/glimmer/dsl/swt/cursor_expression.rb
glimmer-dsl-swt-0.6.7 lib/glimmer/dsl/swt/cursor_expression.rb
glimmer-dsl-swt-0.6.6 lib/glimmer/dsl/swt/cursor_expression.rb
glimmer-dsl-swt-0.6.5 lib/glimmer/dsl/swt/cursor_expression.rb
glimmer-dsl-swt-0.6.4 lib/glimmer/dsl/swt/cursor_expression.rb
glimmer-dsl-swt-0.6.3 lib/glimmer/dsl/swt/cursor_expression.rb
glimmer-dsl-swt-0.6.2 lib/glimmer/dsl/swt/cursor_expression.rb