Now, I am trying to make simple Diff-viewer by using Ruby Tk.
But, I have a problems to show a pointer(cursor) on the TkText panel.
Simply, you can understand my case in the following code pattern.
@leftText = TkText.new(leftFrame) do
padx 0
borderwidth 0
background 'white'
state 'normal'
end @rightText = TkText.new(rightFrame) do
padx 0
borderwidth 0
background 'white'
state 'normal'
end
Create both of TkText instances to show a diff of sources.
Now, I am trying to make simple Diff-viewer by using Ruby Tk.
But, I have a problems to show a pointer(cursor) on the TkText panel.
Simply, you can understand my case in the following code pattern.
@leftText = TkText.new(leftFrame) do
padx 0
borderwidth 0
background 'white'
state 'normal'
end @rightText = TkText.new(rightFrame) do
padx 0
borderwidth 0
background 'white'
state 'normal'
end
Create both of TkText instances to show a diff of sources.
But, without this lines, panel is modifiable. Users can delete and insert their own texts.
Is any idea for this ?
I don't know enough about Ruby to be sure, but one method we Tcl/Tk programmers would use is the Tk Bind command to catch keystroke events and then decide what to do based on the keystroke. That can be used to bypass the default key event bindings to insert text.
But a question I'd ask is why do you want a cursor on an unmodifiable text widget. That seem counter to GUI design patterns which say that a cursor is an insertion point in text items. Do you really just want a scroll bar and tandem scrolling between both text widgets in some way?
···
--
Ron Fox
NSCL
Michigan State University
East Lansing, MI 48824-1321