Re: [API 2.4] font in entry



Here is some information to add to the subject: connecting my function to signal size-request or size-allocate works when the signal is called for the second time.

This solution is unsatisfying as the signal is emitted quite often and it isn't easy to disconnect the signal only when not needed anymore.

yann

On 07/11/12 09:33, Yann Leydier wrote:
Connecting the realize signal does not work any better than map and
map-event. :o(

According to this page, the realize signal is emitted even before map :
http://blog.yorba.org/jim/2010/10/those-realize-map-widget-signals.html

Other ideas?

Thanks,
yann

On 06/11/12 21:32, José Alburquerque wrote:
On Tue, 2012-11-06 at 18:09 +0100, Yann Leydier wrote:
Hullo,

I'm trying to change the font (face and style) in a custom object
derived from Entry.

I use the following code:
    Pango::FontDescription
fd(get_layout()->get_context()->get_font_description());
    if (word.HasSerif())
        fd.set_family("times");
    else
        fd.set_family("arial");
    if (word.IsItalics())
        fd.set_style(Pango::STYLE_ITALIC);
    else
        fd.set_style(Pango::STYLE_NORMAL);
    get_layout()->get_context()->set_font_description(fd);


This seems to need the widget to be associated to a fully functionnal
GdkWidow, so rather than putting this code in the constructor, I
connected it to a signal.

I tried map and map-event but it did not work. I thought that these
signals where emitted when (resp.) asking to associate and associating
the widget to a GdkWindow…

I also tried expose-event, which is supposed to be emitted when the
widget is rendered, and it changes the font only when the edit gets the
focus! O_O

Do you have any insight on the matter, please?

You can use the Gtk::Widget::signal_realize().  When it is emitted, the
Gdk::Window associated with the widget should be fully functional.


yann
_______________________________________________
gtkmm-list mailing list
gtkmm-list gnome org
https://mail.gnome.org/mailman/listinfo/gtkmm-list

_______________________________________________
gtkmm-list mailing list
gtkmm-list gnome org
https://mail.gnome.org/mailman/listinfo/gtkmm-list


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]