108 lines
4.9 KiB
Plaintext
108 lines
4.9 KiB
Plaintext
|
|
||
|
Scale Widget
|
||
|
|
||
|
Header file Scale.h
|
||
|
Class scaleWidgetClass
|
||
|
Class Name Scale
|
||
|
Superclass Simple
|
||
|
|
||
|
The Scale widget is an immutable image displayed within a rectangular
|
||
|
region of the screen. When the widget is selected, it is highlighted,
|
||
|
and an application callback routine is invoked. When the
|
||
|
widget is resized the image can be autoscaled to fit new size of the
|
||
|
widget window. The widget can also cut and paste its contents.
|
||
|
|
||
|
When creating a Scale widget instance, the following resources are
|
||
|
retreived from the argument list or from the resource database:
|
||
|
|
||
|
All the Simple Widget resources plus...
|
||
|
-------------------------------------------------------------------------------
|
||
|
Name Cass Type Default Value
|
||
|
-------------------------------------------------------------------------------
|
||
|
aspectRatio AspectRatio Float 1.0
|
||
|
autoscale Autoscale Boolean True
|
||
|
bufferSize BufferSize Cardinal 1024
|
||
|
foreground Foreground Pixel XtDefaultForeground
|
||
|
gravity Gravity XtGravity ForgetGravity
|
||
|
image Image XImage* NULL
|
||
|
internalHeight Height Dimension 2
|
||
|
internalWidth Width Dimension 2
|
||
|
pasteBuffer PasteBuffer Boolean False
|
||
|
precision Precision Float 0.001
|
||
|
proportional Proportional Boolean True
|
||
|
resize Resize Boolean True
|
||
|
scaleX ScaleFactor Float DefaultScaleValue
|
||
|
scaleY ScaleFactor Float DefaultScaleValue
|
||
|
exponent Exponent integer -3
|
||
|
-------------------------------------------------------------------------------
|
||
|
|
||
|
aspectRatio This resource specifies the aspect ratio of the scaled image
|
||
|
in the x / y * aspectRatio = 1 form. It is effective within
|
||
|
the precision resource only if proportional resource is set
|
||
|
to true. AspectRatio resource can be any positive number
|
||
|
greater than zero.
|
||
|
|
||
|
autoscale If this resource is set to True then the image will be
|
||
|
autoscaled to fit the window size within internal width
|
||
|
and internal height resource values. If the resource is
|
||
|
False, the widget will only reposition the image
|
||
|
according to the gravity resource value.
|
||
|
|
||
|
bufferSize This resource specifies the buffer size in XRectangle's for
|
||
|
buffering the XFillRectangle calls. It is effective only
|
||
|
for XYBitmap image type.
|
||
|
|
||
|
background This resource has the same meaning as for the Simple widget.
|
||
|
However, it is worth mentioning that if the most frequent
|
||
|
pixel value in the XYPixmap or ZPixmap image is specified
|
||
|
as backgroud, the scaling process can be speeded up noticably.
|
||
|
|
||
|
foreground The color used to paint the image if in XYBitmap format.
|
||
|
If the image is XYPixmap or ZPixmap format, the foreground
|
||
|
resource has no effect.
|
||
|
|
||
|
gravity This resource will determine where to put the image if it does
|
||
|
not fit the window size minus internal width and height.
|
||
|
The widget will try to preserve gravity rather than internal
|
||
|
width and height resources.
|
||
|
|
||
|
image This is the image to be displayed in the widget window.
|
||
|
If no image is desired, the NULL value can be passed.
|
||
|
The passed image is copied and set to the resource value.
|
||
|
Applications should destroy the passed image argument
|
||
|
if they do not intend to use it at some later time.
|
||
|
|
||
|
internalHeight
|
||
|
internalWidth These resources specify the minimum distance from the boarder
|
||
|
of the widget window to be maintanied when manipulating the
|
||
|
image. If image is too big or small to satisfy given
|
||
|
conditions, the widget will position the image to preserve
|
||
|
gravity rather than internalWidth or internalHeight.
|
||
|
|
||
|
pasteBuffer If this resource is true then the widget owns the paste
|
||
|
selection buffer. This resource can only be queried.
|
||
|
|
||
|
precision This resource specifies the precision of the scale factors
|
||
|
when scaling the image. The precision resource can be any
|
||
|
positive number greater than zero. (For example, if precision
|
||
|
is 1.0 then the image will be scaled only by integer values.)
|
||
|
|
||
|
proportional If this resource is set to true it will make sure that the
|
||
|
image proportions, as specified by aspectRatio resource,
|
||
|
are being kept whenever it is scaled.
|
||
|
|
||
|
resize If this resource is true the widget will try to resize when
|
||
|
addopting a new image thus preserveing the scale values.
|
||
|
If it is false the scale values will not be preserved unless
|
||
|
the image can fit in the current window size with the same
|
||
|
scale values.
|
||
|
|
||
|
scaleX
|
||
|
scaleY These resources specify the scaling values for the widget
|
||
|
image. They will be floored to satisfy precision resource
|
||
|
values. If uniform resource is true the scale values will
|
||
|
be only integers. These resources can be any positive number
|
||
|
greater than zero.
|
||
|
|
||
|
shiftFactor ...
|