THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 01/12/2002 at 02:49, xxxxxxxx wrote:
There are still some things you can do with C.O.F.F.E.E. if you're willing to look up the IDs yourself. For example, consider Tdisplay.res:
CONTAINER Tdisplay
{
NAME Tdisplay;
INCLUDE Tbase;
GROUP ID_TAGPROPERTIES
{
COLUMNS 2;
BOOL DISPLAYTAG_AFFECT_DISPLAYMODE { }
LONG DISPLAYTAG_DISPLAYMODE
{
CYCLE
{
DISPLAYTAG_DISPLAYMODE_GOURAUDSHADING;
DISPLAYTAG_DISPLAYMODE_QUICKSHADING;
DISPLAYTAG_DISPLAYMODE_WIREFRAME;
DISPLAYTAG_DISPLAYMODE_ISOPARMS;
DISPLAYTAG_DISPLAYMODE_SHADEDBOX;
DISPLAYTAG_DISPLAYMODE_BOX;
DISPLAYTAG_DISPLAYMODE_SKELETON;
}
}
BOOL DISPLAYTAG_AFFECT_LEVELOFDETAIL { }
REAL DISPLAYTAG_LEVELOFDETAIL { UNIT PERCENT; MIN 0.0; MAX 1000; }
BOOL DISPLAYTAG_AFFECT_VISIBILITY { }
REAL DISPLAYTAG_VISIBILITY { UNIT PERCENT; MIN 0.0; MAX 100.0; }
BOOL DISPLAYTAG_AFFECT_BACKFACECULLING { }
BOOL DISPLAYTAG_BACKFACECULLING { }
BOOL DISPLAYTAG_AFFECT_TEXTURES { }
BOOL DISPLAYTAG_TEXTURES { }
}
}
And the corresponding Tdisplay.h:
#ifndef _Tdisplay_H_
#define _Tdisplay_H_
enum
{
DISPLAYTAG_DISPLAYMODE = 1000, // LONG
DISPLAYTAG_DISPLAYMODE_GOURAUDSHADING = 0,
DISPLAYTAG_DISPLAYMODE_QUICKSHADING = 1,
DISPLAYTAG_DISPLAYMODE_WIREFRAME = 2,
DISPLAYTAG_DISPLAYMODE_ISOPARMS = 3,
DISPLAYTAG_DISPLAYMODE_SHADEDBOX = 4,
DISPLAYTAG_DISPLAYMODE_BOX = 5,
DISPLAYTAG_DISPLAYMODE_SKELETON = 6,
DISPLAYTAG_BACKFACECULLING = 1001, // BOOL
DISPLAYTAG_TEXTURES = 1002, // BOOL
DISPLAYTAG_LEVELOFDETAIL = 1004, // REAL
DISPLAYTAG_VISIBILITY = 1006, // REAL
DISPLAYTAG_AFFECT_DISPLAYMODE = 1007, // BOOL
DISPLAYTAG_AFFECT_BACKFACECULLING = 1008, // BOOL
DISPLAYTAG_AFFECT_TEXTURES = 1009, // BOOL
DISPLAYTAG_AFFECT_LEVELOFDETAIL = 1010, // BOOL
DISPLAYTAG_AFFECT_VISIBILITY = 1012 // BOOL
};
#endif
So by pasting the above you can still do things like:
enum
{
DISPLAYTAG_DISPLAYMODE = 1000, // LONG
DISPLAYTAG_DISPLAYMODE_GOURAUDSHADING = 0,
DISPLAYTAG_DISPLAYMODE_QUICKSHADING = 1,
DISPLAYTAG_DISPLAYMODE_WIREFRAME = 2,
DISPLAYTAG_DISPLAYMODE_ISOPARMS = 3,
DISPLAYTAG_DISPLAYMODE_SHADEDBOX = 4,
DISPLAYTAG_DISPLAYMODE_BOX = 5,
DISPLAYTAG_DISPLAYMODE_SKELETON = 6,
DISPLAYTAG_BACKFACECULLING = 1001, // BOOL
DISPLAYTAG_TEXTURES = 1002, // BOOL
DISPLAYTAG_LEVELOFDETAIL = 1004, // REAL
DISPLAYTAG_VISIBILITY = 1006, // REAL
DISPLAYTAG_AFFECT_DISPLAYMODE = 1007, // BOOL
DISPLAYTAG_AFFECT_BACKFACECULLING = 1008, // BOOL
DISPLAYTAG_AFFECT_TEXTURES = 1009, // BOOL
DISPLAYTAG_AFFECT_LEVELOFDETAIL = 1010, // BOOL
DISPLAYTAG_AFFECT_VISIBILITY = 1012 // BOOL
};
main(doc,op)
{
var tag = op->GetFirstTag();
var bc = tag->GetContainer();
bc->SetData(DISPLAYTAG_DISPLAYMODE, DISPLAYTAG_DISPLAYMODE_ISOPARMS);
tag->SetContainer(bc);
tag->Message(MSG_UPDATE);
}
The only time you're out of luck is when a type like BASELINK is used.