Sha256: 55c468434f9b074dddd04371a7981e015698675553b247e396a29b73ccf99d93

Contents?: true

Size: 731 Bytes

Versions: 8

Compression:

Stored size: 731 Bytes

Contents

require 'glimmer/dsl/expression'
require 'glimmer/dsl/top_level_expression'
require 'glimmer/swt/font_proxy'

module Glimmer
  module DSL
    module SWT
      # font expression
      # Note: Cannot be a static expression because it clashes with font property expression
      class FontExpression < Expression
        include TopLevelExpression
  
        def can_interpret?(parent, keyword, *args, &block)
          keyword.to_s == 'font' and     
            (parent.nil? || !parent.respond_to?('font')) and
            args.size == 1 and 
            args.first.is_a?(Hash)
        end
  
        def interpret(parent, keyword, *args, &block)
          Glimmer::SWT::FontProxy.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/font_expression.rb
glimmer-dsl-swt-0.6.8 lib/glimmer/dsl/swt/font_expression.rb
glimmer-dsl-swt-0.6.7 lib/glimmer/dsl/swt/font_expression.rb
glimmer-dsl-swt-0.6.6 lib/glimmer/dsl/swt/font_expression.rb
glimmer-dsl-swt-0.6.5 lib/glimmer/dsl/swt/font_expression.rb
glimmer-dsl-swt-0.6.4 lib/glimmer/dsl/swt/font_expression.rb
glimmer-dsl-swt-0.6.3 lib/glimmer/dsl/swt/font_expression.rb
glimmer-dsl-swt-0.6.2 lib/glimmer/dsl/swt/font_expression.rb