Sha256: 9b225e0a239b2a95ffdbd888d85cf8299e30ced587b40597c506f449a4c4cb1b

Contents?: true

Size: 1.62 KB

Versions: 9

Compression:

Stored size: 1.62 KB

Contents

module Wx::PG

  # since wxWidgets 3.3.0
  unless const_defined?(:PG_GETPROPERTYVALUES_FLAGS)
    module PG_GETPROPERTYVALUES_FLAGS
      PG_DONT_RECURSE = PGPropertyValuesFlags::DontRecurse
      PG_KEEP_STRUCTURE = PGPropertyValuesFlags::KeepStructure
      PG_RECURSE = PGPropertyValuesFlags::Recurse
      PG_INC_ATTRIBUTES = PGPropertyValuesFlags::IncAttributes
      PG_RECURSE_STARTS = PGPropertyValuesFlags::RecurseStarts
      PG_FORCE = PGPropertyValuesFlags::Force
      PG_SORT_TOP_LEVEL_ONLY = PGPropertyValuesFlags::SortTopLevelOnly
    end
  end
  
  module PropertyGridInterface

    wx_each_property = instance_method :each_property
    define_method :each_property do |flags = Wx::PG::PG_ITERATE_DEFAULT, start = nil, reverse: false, &block|
      if block
        wx_each_property.bind(self).call(flags.to_int, start, reverse, &block)
      else
        ::Enumerator.new { |y| wx_each_property.bind(self).call(flags.to_int, start, reverse) { |prop| y << prop } }
      end
    end
    alias :properties :each_property

    def reverse_each_property(flags = Wx::PG::PG_ITERATE_DEFAULT, start = nil, &block)
      each_property(flags, start, reverse: true, &block)
    end
    alias :properties_reversed :reverse_each_property

    wx_each_property_attribute = instance_method :each_property_attribute
    define_method :each_property_attribute do |id, &block|
      if block
        wx_each_property_attribute.bind(self).call(id, &block)
      else
        ::Enumerator.new { |y| wx_each_property_attribute.bind(self).call(id) { |variant| y << variant } }
      end
    end
    alias :property_attributes :each_property_attribute

  end

end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
wxruby3-0.9.0.pre.rc.3 lib/wx/pg/property_grid_interface.rb
wxruby3-0.9.0.pre.rc.2 lib/wx/pg/property_grid_interface.rb
wxruby3-0.9.0.pre.rc.1 lib/wx/pg/property_grid_interface.rb
wxruby3-0.9.0.pre.beta.14 lib/wx/pg/property_grid_interface.rb
wxruby3-0.9.0.pre.beta.13 lib/wx/pg/property_grid_interface.rb
wxruby3-0.9.0.pre.beta.11 lib/wx/pg/property_grid_interface.rb
wxruby3-0.9.0.pre.beta.10 lib/wx/pg/property_grid_interface.rb
wxruby3-0.9.0.pre.beta.9 lib/wx/pg/property_grid_interface.rb
wxruby3-0.9.0.pre.beta.8 lib/wx/pg/property_grid_interface.rb