Module: Tk::TkDND::DND

Module | Tk::TkDND::DND
In: | tk/lib/tkextlib/tkDND/tkdnd.rb

### Methods

dnd_bindsource dnd_bindsource_info dnd_bindtarget dnd_bindtarget_info dnd_clearsource dnd_cleartarget dnd_drag version

### Public Class methods

version()

[Source]

    # File tk/lib/tkextlib/tkDND/tkdnd.rb, line 65
          def self.version
            begin
              TkPackage.require('tkdnd')
            rescue
              ''
            end
          end

### Public Instance methods

dnd_bindsource(type, *args)

def dnd_bindsource(type, cmd=Proc.new, prior=None)

      tk_call('dnd', 'bindsource', @path, type, cmd, prior)
      self

end

[Source]

    # File tk/lib/tkextlib/tkDND/tkdnd.rb, line 135
          def dnd_bindsource(type, *args)
            # if args[0].kind_of?(Proc) || args[0].kind_of?(Method)
            if TkComm._callback_entry?(args[0]) || !block_given?
              cmd = args.shift
            else
              cmd = Proc.new
            end

            args = [None] if args.empty

            tk_call('dnd', 'bindsource', @path, type, cmd, *args)
            self
          end

dnd_bindsource_info(type=nil)

[Source]

    # File tk/lib/tkextlib/tkDND/tkdnd.rb, line 123
          def dnd_bindsource_info(type=nil)
            if type
              procedure(tk_call('dnd', 'bindsource', @path, type))
            else
              simplelist(tk_call('dnd', 'bindsource', @path))
            end
          end

dnd_bindtarget(type, event, *args)

def dnd_bindtarget(type, event, cmd=Proc.new, prior=50, *args)

      event = tk_event_sequence(event)
      if prior.kind_of?(Numeric)
        tk_call('dnd', 'bindtarget', @path, type, event,
                install_bind_for_event_class(DND_Subst, cmd, *args),
                prior)
      else
        tk_call('dnd', 'bindtarget', @path, type, event,
                install_bind_for_event_class(DND_Subst, cmd, prior, *args))
      end
      self

end

[Source]

    # File tk/lib/tkextlib/tkDND/tkdnd.rb, line 95
          def dnd_bindtarget(type, event, *args)
            # if args[0].kind_of?(Proc) || args[0].kind_of?(Method)
            if TkComm._callback_entry?(args[0]) || !block_given?
              cmd = args.shift
            else
              cmd = Proc.new
            end

            prior = 50
            prior = args.shift unless args.empty?

            event = tk_event_sequence(event)
            if prior.kind_of?(Numeric)
              tk_call('dnd', 'bindtarget', @path, type, event,
                      install_bind_for_event_class(DND_Subst, cmd, *args),
                      prior)
            else
              tk_call('dnd', 'bindtarget', @path, type, event,
                      install_bind_for_event_class(DND_Subst, cmd, prior, *args))
            end
            self
          end

dnd_bindtarget_info(type=nil, event=nil)

[Source]

    # File tk/lib/tkextlib/tkDND/tkdnd.rb, line 73
          def dnd_bindtarget_info(type=nil, event=nil)
            if event
              procedure(tk_call('dnd', 'bindtarget', @path, type, event))
            elsif type
              procedure(tk_call('dnd', 'bindtarget', @path, type))
            else
              simplelist(tk_call('dnd', 'bindtarget', @path))
            end
          end

dnd_clearsource()

[Source]

    # File tk/lib/tkextlib/tkDND/tkdnd.rb, line 149
          def dnd_clearsource()
            tk_call('dnd', 'clearsource', @path)
            self
          end

dnd_cleartarget()

[Source]

    # File tk/lib/tkextlib/tkDND/tkdnd.rb, line 118
          def dnd_cleartarget
            tk_call('dnd', 'cleartarget', @path)
            self
          end

dnd_drag(keys=nil)

[Source]

    # File tk/lib/tkextlib/tkDND/tkdnd.rb, line 154
          def dnd_drag(keys=nil)
            tk_call('dnd', 'drag', @path, *hash_kv(keys))
            self
          end

[Validate]