Gtk2::Ex::FormFactory::Image − An Image in a FormFactory framework


Gtk2::Ex::FormFactory::Image−>new (
bgcolor => Background color of the widget,
with_frame => Draw a frame around the image?,
scale_to_fit => Automatially scale the image in its container?,
max_width => Maximum width the image may scale to,
max_height => Maximum height the image may scale to,
scale => Display the image with this constant scaling,
scale_hook => Callback which returns the actual scale,
Gtk2::Ex::FormFactory::Widget attributes


This class implements an Image in a Gtk2::Ex::FormFactory framework. The image is always displayed with its natural aspect ratio, but there are various possibilities to control the scaling of the image.

The value of the associated application object attribute is the filename of the displayed image. The file format must be supported by Gtk2::Gdk::PixBuf.


+−−− Gtk2::Ex::FormFactory::Image


Attributes are handled through the common get_ATTR(), set_ATTR() style accessors, but they are mostly passed once to the object constructor and must not be altered after the associated FormFactory was built.
= " RGB Hex Triple" [optional]

This is the background color of the widget. If set all areas of the widget not filled with the image are painted with this color.

with_frame = BOOL [optional]

If set to TRUE a frame is rendered around the image.

scale_to_fit = BOOL [optional]

If set to TRUE the image will automatically scale proportionally into to the space the container of this widget allocated for the image widget.

max_width = INTEGER [optional]

With this attribute you can define a maximm width the image may scale to.

max_height = INTEGER [optional]

With this attribute you can define a maximm height the image may scale to.

scale = FLOAT [optional]

If you set this attribute, no dynamic scaling applies, but the image will be constantly scaled with this value. This overrides all other attributes regarding dynamic scaling.

scale_hook = CODEREF (FormFactory::Image, PixBuf) [optional]

This code reference is called if the image needs an update e.g. if the associated application object attribute changed or the parent was resized and scale_to_fit was set.

The Gtk2::Ex::FormFactory::Image instance and the Gtk2::Gdk::PixBuf of the image are passed to the function.

If scale_to_fit is set the widget’s dimension are tracked automatically. The actual width and height are stored in the attributes widget_width and widget_height and thus can be accessed from the callback by calling get_widget_width and get_widget_width.

For more attributes refer to Gtk2::Ex::FormFactory::Widget.


Jörn Reder <joern at zyn dot de>


Copyright 2004−2006 by Jörn Reder.

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY ; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details.

You should have received a copy of the GNU Library General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place − Suite 330, Boston, MA 02111−1307 USA.


Hey! The above document had some coding errors, which are explained below:
Around line 259:

Non-ASCII character seen before =encoding in ’Jörn’. Assuming CP1252