| In: |
tk/lib/tk/textmark.rb
|
| Parent: | TkObject |
| TMarkID_TBL | = | TkCore::INTERP.create_table |
| Tk_TextMark_ID | = | ['mark'.freeze, '00000'.taint].freeze |
# File tk/lib/tk/textmark.rb, line 13 def TkTextMark.id2obj(text, id) tpath = text.path return id unless TMarkID_TBL[tpath] TMarkID_TBL[tpath][id]? TMarkID_TBL[tpath][id]: id end
# File tk/lib/tk/textmark.rb, line 19 def initialize(parent, index) unless parent.kind_of?(TkText) fail ArguemntError, "expect TkText for 1st argument" end @parent = @t = parent @tpath = parent.path @path = @id = Tk_TextMark_ID.join('') TMarkID_TBL[@id] = self TMarkID_TBL[@tpath] = {} unless TMarkID_TBL[@tpath] TMarkID_TBL[@tpath][@id] = self Tk_TextMark_ID[1].succ! tk_call_without_enc(@t.path, 'mark', 'set', @id, _get_eval_enc_str(index)) @t._addtag id, self end
# File tk/lib/tk/textmark.rb, line 58 def gravity tk_call_without_enc(@t.path, 'mark', 'gravity', @id) end
# File tk/lib/tk/textmark.rb, line 62 def gravity=(direction) tk_call_without_enc(@t.path, 'mark', 'gravity', @id, direction) #self direction end
# File tk/lib/tk/textmark.rb, line 68 def next(index = nil) if index @t.tagid2obj(_fromUTF8(tk_call_without_enc(@t.path, 'mark', 'next', _get_eval_enc_str(index)))) else @t.tagid2obj(_fromUTF8(tk_call_without_enc(@t.path, 'mark', 'next', @id))) end end
# File tk/lib/tk/textmark.rb, line 76 def previous(index = nil) if index @t.tagid2obj(_fromUTF8(tk_call_without_enc(@t.path, 'mark', 'previous', _get_eval_enc_str(index)))) else @t.tagid2obj(_fromUTF8(tk_call_without_enc(@t.path, 'mark', 'previous', @id))) end end