Method: TkItemConfigMethod#itemconfigure

Defined in:
ext/lib/tk/itemconfig.rb

#itemconfigure(tagOrId, slot, value = None) ⇒ Object



367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
# File 'ext/lib/tk/itemconfig.rb', line 367

def itemconfigure(tagOrId, slot, value=None)
  unless TkItemConfigMethod.__IGNORE_UNKNOWN_CONFIGURE_OPTION__
    __itemconfigure_core(tagOrId, slot, value)
  else
    if slot.kind_of?(Hash)
      begin
        __itemconfigure_core(tagOrId, slot)
      rescue
        slot = __check_available_itemconfigure_options(tagOrId, slot)
        __itemconfigure_core(tagOrId, slot) unless slot.empty?
      end
    else
      begin
        __itemconfigure_core(tagOrId, slot, value)
      rescue => e
        begin
          if __current_itemconfiginfo(tagOrId).has_key?(slot.to_s)
            # not tag error & option is known -> error on known option
            fail e
          else
            # not tag error & option is unknown
            nil
          end
        rescue
          fail e  # tag error
        end
      end
    end
  end
  self
end