/*** Information about MUI Custom Classes $VER: 0.9 ***/ - Preface: You should *only* make MCCs when you intend to release a custom class to the public and you have to document its interface. You should *not* make MCCs for classes which are only used by yourself. If you need a class in different executables, you may put this class into an external library to reuse the code. So again... a xyz.mcc needs to be public and needs to have its interface well documented, otherwise it shouldnt be a public xyz.mcc. If you don't want others to use your classes, dont make them as MCCs! - Info: * to register 1) At first send *only* information to about what kind of class you are writing. A short description is fine. 2) Ask yourself if the class should be made publically, is there an *interest*? All new classes *should* be discussed in the MUI mailing list: mui@sunsite.Informatik.RWTH-Aachen.DE ! 3) If you don't know your MUI serial nr (4 digits), ask me! 4) Create Autodocs, Includes and an example for your class, test it with the latest MUI release, Enforcer and Mungwall or PoolWatch! 5) Make a list of _all_ IDs the class is using, this means all public and private ones! Furthermore the config IDs which are used by the MCC and the MCP. Create a *Registration Report*! 6) Create a archive with: - class, readme - autodocs, C includes - demo, demo source - Registration Report > send it to: mccreg@sasg.com * Registration Report ...looks like this: MCC Tron -- Registration Report MCC Tron is (c) 1996 by Klaus 'kmel' Melchior Classname:         Tron.mcc         Tron.mcp Public:         MUIM_Tron_Demo 0x8002000b MUIA_Tron_Running 0x80020040 Private: MUIA_Tron_PenSpec1 0x80020043 MUIA_Tron_PenSpec2 0x8002003e MUIA_Tron_PenSpecB 0x80020065 MUIA_Tron_Sample 0x8002003f MUIA_Tron_Speed 0x80020042 Config: MUICFG_Tron_Pen1 0x80020005 MUICFG_Tron_Pen2 0x80020006 MUICFG_Tron_PenB 0x8002000c MUICFG_Tron_Speed 0x80020007 MCC END * to get an example C source for MCCs and MCPs > write to: mccreg@sasg.com > or better, take it from aminet: dev/mui/MCC_Tron0_8.lha - More Info: * Public name for the custom class. Note that you *must* register public names with the author of MUI. All unregistered public classes are promised to go on a builtin blacklist and will fail with future versions of MUI! * Uniqueness. I suggest a format like this: 1441_Toolbar.mcc ie 4-digit serial number, followed by an underscore, followed by a somewhat meaningfull name. This fixed format allows me to handle these classes in a preferences editor some day. * Private custom classes. Private custom classes need to be placed in a 'MUI/' subdir of your applications main directory. MUI will find it there if you simply do a MUI_NewObject("1441_Toolbar.mcc"). Do not install them in 'MUI:Libs/'! * Attributes and methods for the new class. Your tags have to be named MUI(A/M)__. The upper sixteen bits of your tag values need to be (TAG_USER | ( << 16 )) Again, classes with invalid tag specs are promised to go on the blacklist. This implies that you have to be a registered MUI user if you want to distribute public classes. The first ID tag is used for internal purpose, so you must not use it! Example: If your serial number is 4711 (decimal): 4711 = 0x1267 tagbase: 0x9267xxxx First usable ID: 0x92670001 last: 0x9267ffff * Config IDs Also the IDs to store configuration data of you MCP have to be named MUICFG__, these are private at normal conditions. The upper sixteen bits of your IDs need to be (TAG_USER | ( << 16 )), as you IDs. The first config ID is used for internal purpose, so you must not use it! Example: 4711 = 0x1267 tagbase: 0x9267xxxx First usable config ID: 0x92670001 last: 0x9267ffff > WARNING: Don't use your config IDs twice, nor use any old config ID! * File specification: - Custom class header files should have a "_mcc.h" appended and should be place in 'Include:mui/'! - Autodocs files should be named "MCC_.doc". - Example code & source: -Demo & -Demo.c - Documentation: .mcc.doc & .mcc.guide - Catalogs: _mcc.catalog * MCC archives: Filename: 'MCC_.lha' MCC_/Demos/-Demo MCC_/Developer/AutoDocs/MCC_.doc [option] MCC_/Developer/C/Examples/-Demo.c [option] MCC_/Developer/C/Include/MUI/_mcc.h [option] MCC_/Developer/Amiga-E/Modules/MUI/_mcc.e [option] MCC_/Developer/Amiga-E/Examples/-Demo.e [option] MCC_/Developer/Assembler/Include/MUI/_mcc.i [option] MCC_/Developer/Assembler/Examples/-Demo.s [option] MCC_/Developer/BB2/Include/MUI/_mcc.asc [option] MCC_/Developer/BB2/Examples/-Demo.asc [option] MCC_/Developer/Cluster/txt/MCC.def [option] MCC_/Developer/Cluster/txt/MCC.mod [option] MCC_/Developer/Cluster/txt/Demo.mod [option] MCC_/Developer/Modula/txt/MCC.def [option] MCC_/Developer/Modula/txt/MCC.mod [option] MCC_/Developer/Modula/Demo/Demo.mod [option] MCC_/Developer/MUIBuilder3/.mb [option] MCC_/Developer/MUIBuilder3/behaviour/.mbcc [option] MCC_/Developer/Oberon/txt/MCC.mod [option] MCC_/Developer/Oberon/examples/Demo.mod [option] MCC_/Developer/Rexx/Include/_mcc.rexx [option] MCC_/Developer/Rexx/Examples/-Demo.rexx [option] MCC_/Developer/Source/... [option] MCC_/Docs/English/.mcc.doc MCC_/Docs/English/.mcc.guide MCC_/Docs/English/_home.html [option] MCC_/Docs/English/_home.html.info [option] MCC_/Docs/English/_.html [option] MCC_/Docs/English/_.html.info [option] MCC_/Docs/.../.mcc.doc [option] MCC_/Docs/.../.mcc.guide [option] MCC_/Images/... [option] MCC_/Libs/MUI/.mcc MCC_/Libs/MUI/.mcp [option] MCC_/Locale/Catalogs/.../_mcc.catalog [option] MCC_/Locale/Catalogs/.../_mcp.catalog [option] MCC_/MCC_.readme MCC_/MCC-Install [option] As example take this from Aminet: dev/mui/MCC_Tron0_8.lha