Class: Tk::Canvas::Item

Inherits:
Struct
  • Object
show all
Defined in:
lib/ffi-tk/widget/canvas/item.rb

Direct Known Subclasses

Arc, Bitmap, Image, Line, Oval, Polygon, Rectangle, Text, Window

Constant Summary collapse

OPTION_MAP =
{
  activebackground:       :bitmap,
  activebitmap:           :bitmap,
  activedash:             :integer,
  activefill:             :color,
  activeforeground:       :bitmap,
  activeimage:            :string,
  activeoutline:          :color,
  activeoutlinestipple:   :bitmap,
  activestipple:          :bitmap,
  activewidth:            :integer,
  anchor:                 :string,
  arrow:                  :symbol,
  arrowshape:             :list,
  background:             :color,
  bitmap:                 :bitmap,
  capstyle:               :symbol,
  dash:                   :integer,
  dashoffset:             :integer,
  disabledbackground:     :bitmap,
  disabledbitmap:         :bitmap,
  disableddash:           :integer,
  disabledfill:           :color,
  disabledforeground:     :bitmap,
  disabledimage:          :string,
  disabledoutline:        :color,
  disabledoutlinestipple: :bitmap,
  disabledstipple:        :bitmap,
  disabledwidth:          :integer,
  extent:                 :float,
  fill:                   :color,
  font:                   :font,
  foreground:             :color,
  height:                 :integer,
  image:                  :string,
  joinstyle:              :symbol,
  justify:                :symbol,
  offset:                 :string,
  outline:                :color,
  outlineoffset:          :integer,
  outlinestipple:         :bitmap,
  smooth:                 :boolean,
  splinesteps:            :integer,
  start:                  :float,
  state:                  :symbol,
  stipple:                :bitmap,
  style:                  :symbol,
  tags:                   :list,
  text:                   :string,
  underline:              :integer,
  width:                  :integer,
  window:                 :pathname
}.freeze
OPTIONS_CODE =
<<-RUBY
def %s
  Cget.type_to_ruby(%p, canvas.itemcget(id, %p))
end
RUBY

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#canvasObject

Returns the value of attribute canvas

Returns:

  • (Object)

    the current value of canvas



4
5
6
# File 'lib/ffi-tk/widget/canvas/item.rb', line 4

def canvas
  @canvas
end

#idObject

Returns the value of attribute id

Returns:

  • (Object)

    the current value of id



4
5
6
# File 'lib/ffi-tk/widget/canvas/item.rb', line 4

def id
  @id
end

Class Method Details

.create(canvas, type, id) ⇒ Object



59
60
61
62
# File 'lib/ffi-tk/widget/canvas/item.rb', line 59

def self.create(canvas, type, id)
  klass = Canvas.const_get(type.to_s.capitalize)
  klass.new(canvas, id)
end

.options(*names) ⇒ Object



70
71
72
73
74
75
# File 'lib/ffi-tk/widget/canvas/item.rb', line 70

def self.options(*names)
  names.each do |name|
    type = OPTION_MAP.fetch(name)
    class_eval(OPTIONS_CODE % [name, type, name], __FILE__, __LINE__)
  end
end

Instance Method Details

#addtag(tag) ⇒ Object



89
90
91
# File 'lib/ffi-tk/widget/canvas/item.rb', line 89

def addtag(tag)
  canvas.addtag_withtag(tag, self)
end

#bboxObject



93
94
95
# File 'lib/ffi-tk/widget/canvas/item.rb', line 93

def bbox
  canvas.bbox(self)
end

#bind(sequence = None, &command) ⇒ Object



97
98
99
# File 'lib/ffi-tk/widget/canvas/item.rb', line 97

def bind(sequence = None, &command)
  canvas.bind(self, sequence, &command)
end

#cget(option) ⇒ Object



85
86
87
# File 'lib/ffi-tk/widget/canvas/item.rb', line 85

def cget(option)
  canvas.itemcget(self, option)
end

#configure(options = None) ⇒ Object



133
134
135
# File 'lib/ffi-tk/widget/canvas/item.rb', line 133

def configure(options = None)
  canvas.itemconfigure(self, options)
end

#coords(*coord_list) ⇒ Object



101
102
103
# File 'lib/ffi-tk/widget/canvas/item.rb', line 101

def coords(*coord_list)
  canvas.coords(self, *coord_list)
end

#dchars(first, last = None) ⇒ Object



105
106
107
# File 'lib/ffi-tk/widget/canvas/item.rb', line 105

def dchars(first, last = None)
  canvas.dchars(self, first, last)
end

#deleteObject



109
110
111
# File 'lib/ffi-tk/widget/canvas/item.rb', line 109

def delete
  canvas.delete(self)
end

#dtag(tag) ⇒ Object



113
114
115
# File 'lib/ffi-tk/widget/canvas/item.rb', line 113

def dtag(tag)
  canvas.dtag(self, tag)
end

#focusObject



117
118
119
# File 'lib/ffi-tk/widget/canvas/item.rb', line 117

def focus
  canvas.focus(self)
end

#gettagsObject



121
122
123
# File 'lib/ffi-tk/widget/canvas/item.rb', line 121

def gettags
  canvas.gettags(self)
end

#icursor(index) ⇒ Object



125
126
127
# File 'lib/ffi-tk/widget/canvas/item.rb', line 125

def icursor(index)
  canvas.icursor(self, index)
end

#index(index) ⇒ Object



129
130
131
# File 'lib/ffi-tk/widget/canvas/item.rb', line 129

def index(index)
  canvas.index(self, index)
end

#inspectObject



81
82
83
# File 'lib/ffi-tk/widget/canvas/item.rb', line 81

def inspect
  '#<%s %d>' % [self.class.name, id]
end

#lower(below = None) ⇒ Object



137
138
139
# File 'lib/ffi-tk/widget/canvas/item.rb', line 137

def lower(below = None)
  canvas.lower(self, below)
end

#move(x_amount, y_amount) ⇒ Object



141
142
143
# File 'lib/ffi-tk/widget/canvas/item.rb', line 141

def move(x_amount, y_amount)
  canvas.move(self, x_amount, y_amount)
end

#raise(above = None) ⇒ Object



145
146
147
# File 'lib/ffi-tk/widget/canvas/item.rb', line 145

def raise(above = None)
  canvas.raise(self, above)
end

#scale(x_origin, y_origin, x_scale, y_scale) ⇒ Object



149
150
151
# File 'lib/ffi-tk/widget/canvas/item.rb', line 149

def scale(x_origin, y_origin, x_scale, y_scale)
  canvas.scale(self, x_origin, y_origin, x_scale, y_scale)
end

#select_adjust(index) ⇒ Object



153
154
155
# File 'lib/ffi-tk/widget/canvas/item.rb', line 153

def select_adjust(index)
  canvas.select_adjust(self, index)
end

#select_from(index) ⇒ Object



157
158
159
# File 'lib/ffi-tk/widget/canvas/item.rb', line 157

def select_from(index)
  canvas.select_from(self, index)
end

#select_to(index) ⇒ Object



161
162
163
# File 'lib/ffi-tk/widget/canvas/item.rb', line 161

def select_to(index)
  canvas.select_to(self, index)
end

#to_tclObject



77
78
79
# File 'lib/ffi-tk/widget/canvas/item.rb', line 77

def to_tcl
  TclString.new(id.to_s)
end

#typeObject



165
166
167
# File 'lib/ffi-tk/widget/canvas/item.rb', line 165

def type
  canvas.type(self)
end