Boopsi, 291 - see also Appendix B: Boopsi Class Reference AddClass(), 312 attribute, 293 attributes - OM_GET, 311, setting, 295, 296, 309 Boopsi and Tags, 294 Building on Existing Public Classes, 306 Building Rkmmodelclass, 306 buttonglclass, 315 Callback Hooks, 312 caveats - message, 293, struct GadgetInfo, 316 class, 292 creating, 305 custom, 305 private, 293 public, 293 class reference, 891 Creating an Object, 294 dispatcher, 305 Dispatcher Hook, 312 DisposeObject(), 295 Disposing of an Object, 295 DoMethod(), 302 DoMethodA(), 302 DoSuperMethod(), 310 DoSuperMethodA(), 308, 310 Example custom gadget class, 323 custom model subclass, 312 Talk2boopsi.c, 299 function descriptions, 330 gadget, 291 ActivateGadget(), 321 active gadget, 323 GFLG_DISABLED, 321 GMR_MEACTIVE, 321 GMR_NEXTACTIVE, 321 GMR_NOREUSE, 321 GMR_PREVACTIVE, 321 GMR_REUSE, 321 GM_GOINACTIVE, 322 handling input, 320 implemention of, 318 Methods, 318 ObtainGIRPort(), 323 ReleaseGIRPort(), 323 RemoveGList(), 322 rendering a gadget, 319 gadgetclass, 292, 297 buttongclass, 297 frbuttonclass, 298 groupgclass, 297 propgclass, 297 strgclass, 297 GA_RelVerify, 301 GetAttr(), 296, 301 getting attributes, 296 GFLG_RELVERIFY, 301 GMR_GADGETHIT, 320 GM_GOACTIVE, 318, 320 GM_GOINACTIVE, 318 GM_HANDLEINPUT, 318, 321 GM_HITTEST, 318, 320 GM_RENDER, 318, 319 GREDRAW_REDRAW, 319 GREDRAW_TOGGLE, 319 GREDRAW_UPDATE, 319 handling input, 320 ICA_MAP - Boopsi gadgets, 299, icclass, 302 ICA_TARGET, 309 - Boopsi gadgets, 298, 302, icclass, 302 icclass, 292, 297, 302 ICSPECIAL_CODE - Boopsi gadgets, 302 IDCMP_GADGETUP, 301 IDCMP_IDCMPUPDATE - Boopsi gadgets, 302 imageclass, 292, 297 fillrectclass, 297 frameiclass, 297 itexticlass, 297 sysiclass, 297 Images, 291 inheritance, 293, 306, 311 input events, 321 instance, 292 instance data, 293, 308 - initializing, 308 INST_DATA() macro, 309 Intuition public classes, 297 MakeClass(), 311 Making Objects Talk to Each Other, 298 Making Objects Talk to the Application, 301 message, 293 - final, 309, interim, 309 methods, 293 modelclass, 302 Msg, 307 NewObject(), 295 NewObjectA(), 294 object, 292 ObtainGIRPort(), 319 obtaining gadget RastPort, 319 OM_ADDMEMBER, 302, 307 OM_ADDTAIL, 307 OM_DISPOSE, 296, 307 OM_GET, 296, 307, 311 OM_NEW, 296, 307, 308 OM_NOTIFY, 307, 309 OM_REMMEMBER, 307 OM_REMOVE, 307 OM_SET, 296, 305, 307, 309 - Boopsi gadgets, 298 OM_UPDATE, 307, 309 - Boopsi gadgets, 298 OOP Overview, 292 OPUF_INTERIM, 309 RemoveClass(), 312 rootclass, 292, 297 SetAttrs(), 295 SetGadgetAttrs(), 295, 305 setting attributes, 295 struct GadgetInfo, 316, 318 struct gpGoInactive, 322 struct gpHitTest, 320 struct gpInput, 320 struct gpRender, 319 struct Hook, 312 struct InputEvent, 321 struct Msg, 303 struct opGet, 311 struct opMember, 303 struct opSet, 305, 308 struct opUpdate, 309 subclass, 292 superclass, 292 typedef Class, 305 user input, 321 White Boxes--The Transparent Base Classes, 316 Writing a Dispatcher, 307