Method: Qt::Variant#initialize

Defined in:
lib/Qt/qtruby4.rb

#initialize(*args) ⇒ Variant

Returns a new instance of Variant.



2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
# File 'lib/Qt/qtruby4.rb', line 2271

def initialize(*args)
  if args.size == 1 && args[0].nil?
    return super()
  elsif args.size == 1 && args[0].class.name == "Date"
    return super(Qt::Date.new(args[0]))
  elsif args.size == 1 && args[0].class.name == "DateTime"
    return super(Qt::DateTime.new(  Qt::Date.new(args[0].year, args[0].month, args[0].day),
                    Qt::Time.new(args[0].hour, args[0].min, args[0].sec) ) )
  elsif args.size == 1 && args[0].class.name == "Time"
    return super(Qt::Time.new(args[0]))
  elsif args.size == 1 && args[0].class.name == "BigDecimal"
    return super(args[0].to_f) # we have to make do with a float
  else
    return super(*args)
  end
end