Re: [[gtkmm] New pangomm interface issue]



At Mon, 2 Sep 2002 10:56:35 +0200,
Martin Schulze wrote:
> 
> Am 31.08.2002 11:44 schrieb(en) Murray Cumming:
> > Naofumi Yasufuku <naofumi yasufuku net> wrote:
> > > Hi,
> > >
> > > In gtkmm-1.3.22, some pangomm interfaces have been changed, and so
> > > I'm faced with some problems.
> > >
> > > I want to call Pango::Font::get_matrics() with NULL language argument
> > > to indicate to get the metrics for the entire font.
> > > But I cannot do it because new interface requires a const reference to
> > > Language.
> > >
> > > pango C API allows pango_font_get_metrics(font, NULL), but pangomm
> > > doesn't allow it.
> > >
> > > I think Pango::Font should provide
> > >
> > >   FontMetrics Font::get_metrics()
> > >   {
> > >     return FontMetrics((pango_font_get_metrics(gobj(), 0)));
> > >   }
> > >
> > > to support pango C API specification completely.
> 
> Please wait with this change. In the process of documenting pangomm I
> found that a default contructor for Pango::Language that creates an
> invalid object (gobject_ = 0) is needed anyway. So this could also
> be implemented with a default argument then:
> 
> Pango::Font::get_metrics(const Language& lang = Language())
> 
> What do you think is the better solution - Function overload or
> default argument?
> 

What is default Pango::Language?
I think it is not a good thing that Pango::Language has NULL gobject_.
pango_language_* operation with NULL language is invalid.

NULL language for pango_font_get_metrics() means that the argument is
omitt-able, and the omission indicates special behavior.
I think default argument doesn't mean the same thing as omitt-able argument.

Regards,
--Naofumi



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