[Gtk-sharp-list] RichTextBox.TextChanged (event) equivalent in GTk.?

True Friend true.friend2004 at gmail.com
Thu Sep 25 21:58:36 EDT 2008


This was the reason. The unlimited loop was due to last change when it put
back the modified text. Thanks David, it should work now.
Regards

On Thu, Sep 25, 2008 at 10:15 PM, David Cantin <dcantin at gmail.com> wrote:

> I can do something like :
>
> protected virtual void OnTextBufferChanged(object o, System.EventArgs e)
> {
>   string temp = this.textview1.Buffer.Text;
>   string temp1 = Regex.Replace(temp, "[\x0011\x0012\u0060]","\'");
>   string temp2 = Regex.Replace(temp1, "[\x0013\x0014]", "\"");
>   string temp3 = Regex.Replace(temp2, "[+\x0017\x0005\x0015]", "");
>   string temp4 = Regex.Replace(temp3, "\x0016", "-");
>
>    this.textview1.Buffer.Changed -= new
> EventHandler(OnTextBufferChanged);
>
>   this.textview1.Buffer.Text = temp4;
>
>    this.textview1.Buffer.Changed += new
> EventHandler(OnTextBufferChanged);
>
> }
>
>
>
> Le jeudi 25 septembre 2008 à 21:50 +0500, True Friend a écrit :
> >
> > Ok I have added it to the MainWindow's constructor as follows.
> >
> > this.textview1.Buffer.Changed += new
> > EventHandler(OnTextBufferChanged);
> >
> > The evnt handler is as follows.
> > -----------------------------------------------
> > protected virtual void OnTextBufferChanged(object o, System.EventArgs
> > e)
> >     {
> >         string temp = this.textview1.Buffer.Text;
> >            string temp1 = Regex.Replace(temp, "[\x0011\x0012\u0060]",
> > "\'");
> >            string temp2 = Regex.Replace(temp1, "[\x0013\x0014]",
> > "\"");
> >            string temp3 = Regex.Replace(temp2, "[+\x0017\x0005
> > \x0015]", "");
> >            string temp4 = Regex.Replace(temp3, "\x0016", "-");
> >         this.textview1.Buffer.Text = temp4;
> >     }
> > -------------------------------------------
> > And the result is an unlimited loop. Under is output at MD console
> > output.
> > --------------------------------------------
> > /usr/lib/libgobject-2.0.so.0(g_cclosure_marshal_VOID__VOID+0x4f)
> > [0xb6964aff]
> >     /usr/lib/libgobject-2.0.so.0(g_closure_invoke+0x1ff) [0xb695782f]
> >     /usr/lib/libgobject-2.0.so.0 [0xb696c329]
> >     /usr/lib/libgobject-2.0.so.0(g_signal_emit_valist+0x8ef)
> > [0xb696dc1f]
> >     /usr/lib/libgobject-2.0.so.0(g_signal_emit+0x29) [0xb696df69]
> >     /usr/lib/libgtk-x11-2.0.so.0 [0xb6d56a7c]
> >     /usr/lib/libgtk-x11-2.0.so.0 [0xb6cb5b38]
> >     /usr/lib/libgobject-2.0.so.0 [0xb6956079]
> >     /usr/lib/libgobject-2.0.so.0(g_closure_invoke+0x1ff) [0xb695782f]
> >     /usr/lib/libgobject-2.0.so.0 [0xb696c11a]
> >     /usr/lib/libgobject-2.0.so.0(g_signal_emit_valist+0x8ef)
> > [0xb696dc1f]
> >     /usr/lib/libgobject-2.0.so.0(g_signal_emit+0x29) [0xb696df69]
> >     /usr/lib/libgtk-x11-2.0.so.0 [0xb6d51422]
> >     /usr/lib/libgtk-x11-2.0.so.0(gtk_text_buffer_set_text+0xbe)
> > [0xb6d5254e]
> >     /usr/lib/libgobject-2.0.so.0(g_object_set_property+0x403)
> > [0xb695eb13]
> >     [0xb664c759]
> >     [0xb664c654]
> >     [0xb407f2da]
> >     [0xb407f526]
> >     [0xb6651733]
> >     [0xb66490d8]
> >     /usr/lib/libgobject-2.0.so.0(g_cclosure_marshal_VOID__VOID+0x4f)
> > [0xb6964aff]
> >     /usr/lib/libgobject-2.0.so.0(g_closure_invoke+0x1ff) [0xb695782f]
> >     /usr/lib/libgobject-2.0.so.0 [0xb696c329]
> >     /usr/lib/libgobject-2.0.so.0(g_signal_emit_valist+0x8ef)
> > [0xb696dc1f]
> >     /usr/lib/libgobject-2.0.so.0(g_signal_emit+0x29) [0xb696df69]
> >     /usr/lib/libgtk-x11-2.0.so.0 [0xb6d56a7c]
> >     /usr/lib/libgtk-x11-2.0.so.0 [0xb6cb5b38]
> >     /usr/lib/libgobject-2.0.so.0 [0xb6956079]
> >     /usr/lib/libgobject-2.0.so.0(g_closure_invoke+0x1ff) [0xb695782f]
> >     /usr/lib/libgobject-2.0.so.0 [0xb696c11a]
> >     /usr/lib/libgobject-2.0.so.0(g_signal_emit_valist+0x8ef)
> > [0xb696dc1f]
> >     /usr/lib/libgobject-2.0.so.0(g_signal_emit+0x29) [0xb696df69]
> >     /usr/lib/libgtk-x11-2.0.so.0 [0xb6d51422]
> >     /usr/lib/libgtk-x11-2.0.so.0(gtk_text_buffer_set_text+0xbe)
> > [0xb6d5254e]
> >     /usr/lib/libgobject-2.0.so.0(g_object_set_property+0x403)
> > [0xb695eb13]
> >     [0xb664c759]
> >     [0xb664c654]
> >     [0xb407f2da]
> >     [0xb407f526]
> >     [0xb6651733]
> >     [0xb66490d8]
> >     /usr/lib/libgobject-2.0.so.0(g_cclosure_marshal_VOID__VOID+0x4f)
> > [0xb6964aff]
> >     /usr/lib/libgobject-2.0.so.0(g_closure_invoke+0x1ff) [0xb695782f]
> >     /usr/lib/libgobject-2.0.so.0 [0xb696c329]
> >     /usr/lib/libgobject-2.0.so.0(g_signal_emit_valist+0x8ef)
> > [0xb696dc1f]
> >     /usr/lib/libgobject-2.0.so.0(g_signal_emit+0x29) [0xb696df69]
> > ---------------------------------------------------
> > So any ideas?
> > Regards
> > On Thu, Sep 25, 2008 at 9:27 PM, True Friend
> > <true.friend2004 at gmail.com> wrote:
> >         Thanks. After trying different events finally I added it to
> >         filesave event handler. I'll try this as well.
> >         Regards
> >
> >
> >
> >         On Thu, Sep 25, 2008 at 9:22 PM, Chris Howie
> >         <cdhowie at gmail.com> wrote:
> >                 On Thu, Sep 25, 2008 at 7:00 AM, True Friend
> >                 <true.friend2004 at gmail.com> wrote:
> >                 > HI
> >                 > I am working on a simple application. I had same in
> >                 winforms where I added
> >                 > above (in subject) said event handler so when I
> >                 pasted some text or text
> >                 > changed in rich text box the method was called and
> >                 it made some
> >                 > modifications in text. Can you tell me what is its
> >                 equal in gtk? I tried to
> >                 > search textview events but couldn't find an
> >                 appropriate one which can work
> >                 > as textchanged event...
> >
> >
> >                 Much of GTK+ uses the MVC (Model, View, and
> >                 Controller) model.  In
> >                 this case, TextView is the view and TextBuffer is the
> >                 model.  The
> >                 changed event is on the TextBuffer, so:
> >
> >                 this.someTextView.Buffer.Changed +=
> >                 this.OnSomeTextViewChanged;
> >
> >                 --
> >                 Chris Howie
> >                 http://www.chrishowie.com
> >                 http://en.wikipedia.org/wiki/User:Crazycomputers
> >
> >
> >
> >
> >         --
> >         Muhammad Shakir Aziz محمد شاکر عزیز
> >
> >
> >
> >
> >
> > --
> > Muhammad Shakir Aziz محمد شاکر عزیز
> >
> >
> > _______________________________________________
> > Gtk-sharp-list maillist  -  Gtk-sharp-list at lists.ximian.com
> > http://lists.ximian.com/mailman/listinfo/gtk-sharp-list
>
>


-- 
Muhammad Shakir Aziz محمد شاکر عزیز
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/pipermail/gtk-sharp-list/attachments/20080926/b3fa1960/attachment-0001.html 


More information about the Gtk-sharp-list mailing list