open-insight/SYSPROG/STPROCINS/PS_MENU_EQUATES.txt
2024-03-25 15:17:34 -07:00

86 lines
3.2 KiB
Plaintext

compile insert ps_Menu_Equates
/*
** Copyright (C) 2020 Revelation Software Inc. All Rights Reserved **
Author : Wile C Coyote - Super Genius
Date : Sept 2020
Purpose : Constants for working with PS MENU object structures
Comments
========
Menu position equates can be found in OIWIN_EQUATES - we'll keep them
there for backwards compatibility with existing code - this insert serves
to document the PS MENU structure.
Amended Date Reason
======= ==== ======
*/
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
#ifndef _PS_MENU_EQUATES_
#define _PS_MENU_EQUATES_
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
$insert oiwin_Equates
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// PS Menus are structured as follows:
//
// <0,1> Menu Name
// <0,2> Menu class - context menus set this to "FLOATING", otherwise null.
// <0,3> Menu Type - always "MENU"
// <0,4> Parent Object
//
// After which each _value_ represents an @svm delimited item structure:
//
// <0,0,1> Type "P"opup, "S"eparator, "I"tem
// <0,0,2> End (T/F)
// <0,0,3> ID
// <0,0,4> Text
// <0,0,5> Grey (T/F)
// <0,0,6> Check (T/F)
// <0,0,7> Hidden (T/F)
// <0,0,8> Accelerator
// <0,0,9> HelpText
// <0,0,10> EventHandler <-- Currently unused.
// <0,0,11> Style
// <0,0,12> ImageName <-- @tm delimited DPI list
// <0,0,13> ImageColorKey
// <0,0,14> ImageListNumber
// <0,0,15> ImageAutoScale (T/F)
// <0,0,16> ImageFrameIndex
// <0,0,17> ImageOffset <- @tm'd (x,y)
// <0,0,18> ImageOrigin <- @tm'd (x,y)
// <0,0,19> ImageTranslucency (0-100)
// <0,0,20> Misc
//
// Still, we need to expand this somewhat - we need to add space to specify
// an ImageList file for a start, or series of them, so we need a way to
// identify a v10 expanded structure.
//
// Well, if the first char of an item is an "@" then we assume that we're
// still processing the header and _not_ the items. This allows us to specify
// an ImageList DPI list for a start like so:
//
// <0,1> Menu Name
// <0,2> Menu class - context menus set this to "FLOATING"
// <0,3> Menu Type - always "MENU"
// <0,4> Parent Object
// <0,5> @.\bmps\stdmenu_96dpi.png<@svm>.\bmps\stdmenu_120dpi.png<@svm> ...etc ..
// <0,6> @<colorkey><@svm>ImageCount>
//
// ... and then have each value after this contain an item.
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
#endif _PS_MENU_EQUATES_
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////