Flags and
Preferences
Flags
- OEFLAG_MOVEMENTS: Gives
your object movement properties. You must include rCom
and rMov structures in the RUNDATA structure. Structure Order
- OEFLAG_ANIMATIONS:
Goves your object a sprite-based animation property. You
must include the rCom and rAni structures in the RUNDATA
structure. If you set both the OEFLAG_ANIMATIONS and
OEFLAG_SPRITE flags, the display will be automatically be
done by MMF, so you won't need any drawing routines of
your own. Structure
Order
- OEFLAG_VALUES:
Gives your object an alterable value property. You must
include the rVal structures in the RUNDATA structure. Structure Order
- OEFLAG_DISPLAYINFRONT:
This flag tells MMF to draw your object in front of all
other objects in the frame editor. You should use this
when your object is displayed as a window so as to
reflect how things will look at run-time.
- OEFLAG_WINDOWPROC:
This flag tells MMF to call the WindowProc routine for
your object.
- OEFLAG_TABSTOP:
This flag tells MMF to have your object intercept
tabulation commands.
- OEFLAG_SCROLLINGINDEPENDANT:
This flag tells MMF to not have your object follow the
playfield when scrolling. In other words, your object
will be displayed statically on the screen.
- OEFLAG_NEVERKILL:
This flag tells MMF not to destroy your object if it gets
too far from the frame.
- OEFLAG_RUNBEFOREFADEIN:
I'm not exactly sure what this does... but only use it
with true sprites (OEFLAG_SPRITES+OEFLAG_ANIMATIONS).
- OEFLAG_MANUALSLEEP:
This flag tells MMF to not automatically
deactivate objects that are far from the frame.
- OEFLAG_BACKGROUND:
This flag tells MMF to display your object in the middle
of the background objects. You should only use this for
objects that do not update very often and that do not
move. Updating their display requires the whole frame to
be redrawn.
- OEFLAG_SPRITES:
This flag tells MMF to treat your object as a sprite. If
the OEFLAG_ANIMATIONS flag is also set, MMF treates your
object as a true sprite and will handle its display.
- OEFLAG_BACKSAVE:
This flag tells MMF to save the background covered by the
object.
- OEFLAG_INTERNALBACKSAVE:
When used with the OEFLAG_BACKSAVE flag, it tells MMF to
run the background svaing routines, which must be defined.
The SaveBackground routine must save the background to a
buffer, and the RestoreBackground routine must restore
the background from that buffer. You may use the
following fields from the RUNDATA headerObject structure:
- HGLOBAL hoHgBack
- ulong hoAdBack
- RECT hoRectSave
- OEFLAG_QUICKDISPLAY:
This flag, which may only be used with the OEFLAG_SPRITES
flag, tells MMF not to redraw the object when another
object comes over top of it. MMF will draw your object
just in front of the backdrops.
Preferences
- OEPREFS_BACKSAVE: Enables
the save background option (OEFLAG_BACKSAVE).
- OEPREFS_BACKEFFECTS:
Enables the background erase effects if OEFLAG_BACKSAVE
is set.
- OEPREFS_QUICKDISPLAY:
Enables the quick display option (OEFLAG_QUICKDISPLAY).
- OEPREFS_SCROLLINGINDEPENDANT:
Enables the follow the playfield option (OEFLAG_SCROLLINGINDEPENDANT).
- OEPREFS_LOADONCALL:
Enables the load on call option.
- OEPREFS_GLOBAL:
Enables the global object option (doesn't seem to work).
- OEPREFS_SLEEP:
Enables the manual sleep options (OEFLAG_MANUALSLEEP).
- OEPREFS_KILL:
Enables the destroy if far from playfield option (OEFLAG_NEVERKILL).
Note About Structure Order
- The structures must appear in the following order:
headerObject rHo;
rCom rc;
rMvt rm;
rAni ra;
rSpr rs;
rVal rv;
- If you're not using one of these structures, remove it,
and use the ordering that results. If you neglect proper
ordering, things will not work properly.
Back to Main Page