[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

Ruby Tk (make available of a single pointer(marker) of TkText

? ??

12/17/2008 1:59:00 AM

Hi,

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.

After inserting a source into TkText panel, I set

@leftText['state'] = :disabled
@rightText['state'] = :disabled

I know, this two lines make uncursored panel.

But, without this lines, panel is modifiable. Users can delete and
insert their own texts.

Is any idea for this ?

1 Answer

Ron Fox

12/17/2008 11:11:00 AM

0

Jun Young Kim wrote:
> Hi,
>
> 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.
>
> After inserting a source into TkText panel, I set
>
> @leftText['state'] = :disabled
> @rightText['state'] = :disabled
>
> I know, this two lines make uncursored panel.
>
> 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