<--- Cannot embed stylesheet: [Errno 2] No such file or directory: '../../../../aros.css' --->

Imagedisplay.mui

MUIA_Imagedisplay_FreeHoriz

Function

Control default-size centering on the horizontal axis.

Inputs

Initialize only, BOOL, default TRUE. No local setter or getter.

Notes

FALSE caps this drawing dimension at the backend default when content is
larger, centering the image on that axis. TRUE leaves it free; when both
flags are TRUE the separate backend-maximum caps apply. Smaller content
is not expanded. UseDefSize changes both flags, so constructor tag order
matters. Object size negotiation remains independent of these flags.

MUIA_Imagedisplay_FreeVert

Function

Control default-size centering on the vertical axis.

Inputs

Initialize only, BOOL, default TRUE. No local setter or getter.

Notes

FALSE caps this drawing dimension at the backend default when content is
larger, centering the image on that axis. TRUE leaves it free; when both
flags are TRUE the separate backend-maximum caps apply. Smaller content
is not expanded. UseDefSize changes both flags, so constructor tag order
matters. Object size negotiation remains independent of these flags.

MUIA_Imagedisplay_Spec

Function

Set or retrieve the preview specification.

Inputs

Initialize, set and get. AROS accepts a specification string or
supported numeric MUII identifier and returns STRPTR, despite the header
structure-pointer annotation.

Notes

The string is copied and owned; a getter pointer is borrowed until
replacement/disposal. Numeric configuration and pattern identifiers use
the conversion ranges described by Image. Set has no constructor-style
fallback on duplication failure, frees before copying, and rebuilds
active resources without requesting relayout. Avoid aliased input and
repeated constructor tags. No equality suppression occurs; tags reach
normal superclass notification processing.

MUIA_Imagedisplay_UseDefSize

Function

Set both free-axis flags to the inverse of this value.

Inputs

Initialize only, BOOL. With no sizing tags both free-axis flags are
TRUE. No local setter or getter.

Notes

TRUE clears FreeHoriz and FreeVert, causing larger image regions to be
capped and centered at backend default dimensions during Draw. FALSE
enables both flags. Later per-axis tags can override either flag; tag
order matters. This does not change the object minimum/default/maximum
size requirements.

MUIC_Imagedisplay

Superclass

Area.mui

Description

Preview a Zune image specification with optional centering at its
default size. Both FreeHoriz and FreeVert default to TRUE. Constructor
specification duplication failure or absence falls back to the string
"0:128"; construction fails only if that fallback allocation also fails.
Repeated Spec tags overwrite earlier copies without freeing them.
The object owns its specification string and setup-time image resources.
Complete Hide and Cleanup before disposal; Dispose frees the string and
returns zero without cleaning the image itself. Setup returns zero on
Area failure, otherwise one even if image preparation fails. Cleanup
calls image cleanup when a specification exists but does not clear the
image pointer; repeated Cleanup without a matching Setup is unsafe.

Methods

AskMinMax adds three pixels to minimum width/height and sixteen to
default width/height, with both maxima MUI_MAXMAX. These object-size
requirements do not depend on the image or free-axis flags. Draw calls
Area and returns zero without MADF_DRAWOBJECT; otherwise it draws a
prepared image clipped to the content rectangle and returns one. It
always uses IDS_NORMAL.
If either axis is not free, Draw caps and centers each nonfree axis at
the backend default size when there is extra room; the other axis
remains at content size. If both axes are free, it instead caps and
centers each axis at the backend maximum. It does not enlarge smaller
content to the default size. Show calls Area but always returns one;
Hide returns the superclass result.
DragQuery refuses self and accepts another object when its
Imagedisplay_Spec or Pendisplay_Spec getter succeeds. DragDrop prefers
an image specification; otherwise it prefixes up to 64 pen-specification
bytes with "2:" and sets the copied result. It returns zero and does not
validate a successful getter's pointer or independently reject self. No
image-selection requester is implemented here.

Notes

Spec is copied through the same numeric-MUII/string conversion helper
used by Image. Despite the header's struct MUI_ImageSpec pointer
annotation, this implementation stores and returns a specification
string. Set destroys the old string before copying the argument, then
replaces prepared resources as required and requests redraw without
relayout. Getter pointers must not be passed back to that setter because
they would be freed before use. Invalid specifications or allocation
failures do not have a separate setter error result.