+ (id) instanceFromMUI:(Boopsiobject *)boopsi

Returns the MUIObject associated with the MUI BOOPSI object or NULL, if no association was made. Generally this allows getting the MUIObject instance that has instantiated the BOOPSI object.

+ (id) wrapMUIInstance:(Boopsiobject *)boopsi

Returns a (possibly new) MUIObject of class closest to the class of the boopsi instance. Meaning for a List.mui instance this will return a MUIList, for a List.mui subclass this will return a MUIList The framework uses this to handle MUI methods that return (create) a Boopsiobject CAUTION: returns the preexisting object if one is already associated with the boopsi object

+ (id) wrapNonRetainedMUIInstance:(Boopsiobject *)boopsi
- (void) deinstantiate
- (IPTR) doMethod:(ULONG)method
- (IPTR) doMethod:(ULONG)method argCount:(ULONG)count args:(IPTR)arg1, ...
- (IPTR) doMethodA:(Msg)msg
- (IPTR) doMethodTags:(ULONG)methodAndTags, ... 
- (IPTR) doSuperMethod:(ULONG)method
- (IPTR) doSuperMethod:(ULONG)method argCount:(ULONG)count args:(IPTR)arg1, ...
- (IPTR) doSuperMethodTags:(ULONG)methodAndTags, ... 
- (OBNumber *) floatValueForAttribute:(ULONG)muiAttr
- (id) initWithClassName:(OBString *)muiClassName

initializes w/o an instance, but for use with a given class, so that the instance can be instantiated at a later time

- (id) initWithMUIInstance:(Boopsiobject *)instance

assumes ownership of mui instance, does not retain on init, releases in dealloc

- (id) initWithNonRetainedMUIInstance:(Boopsiobject *)instance

retains ownership of mui instance, does retain on init, releases in dealloc

- (Boopsiobject *) instantiate

same as calling instantiateTagList:NULL, do NOT overload

- (Boopsiobject *) instantiateTagList:(struct TagItem *)tags

Designated instantiatior, overload to pass additional tags (but remember to end taglist with {TAG_MORE, tags}!)

- (Boopsiobject *) instantiateTags:(IPTR)tag1, ... 

same as calling instantiateTagList: with the tags, do NOT overload

- (BOOL) knowsAttribute:(ULONG)muiAttr

tests whether the MUI instance knows about the given attribute

- (OBNumber *) longValueForAttribute:(ULONG)muiAttr
- (Boopsiclass *) muiClass
- (OBString *) muiClassName
- (Boopsiobject *) muiInstance
- (void) noNotifySetFloatValue:(OBNumber *)number forAttribute:(ULONG)muiAttr
- (void) noNotifySetLongValue:(OBNumber *)number forAttribute:(ULONG)muiAttr
- (void) noNotifySetStringValue:(OBString *)value forAttribute:(ULONG)muiAttr
- (void) noNotifySetStringValue:(OBString *)value forAttribute:(ULONG)muiAttr withEncoding:(ULONG)mibenum
- (void) noNotifySetUnsignedLongValue:(OBNumber *)number forAttribute:(ULONG)muiAttr
- (void) noNotifySetValue:(IPTR)value forAttribute:(ULONG)muiAttr
- (void) setFloatValue:(OBNumber *)number forAttribute:(ULONG)muiAttr
- (void) setLongValue:(OBNumber *)number forAttribute:(ULONG)muiAttr
- (void) setMUIInstance:(Boopsiobject *)muiInstance
- (void) setStringValue:(OBString *)value forAttribute:(ULONG)muiAttr

sets the value of the attribute to a native string encoded with MIBENUM_SYSTEM encoding CAUTION: the string is temporary so if the attribute does not copy the string, you MUST pass an OBNativeString to this method and make sure to retain it yourself when passing an OBNativeString, no conversion is applied, no matter whan encoding the string uses

- (void) setStringValue:(OBString *)value forAttribute:(ULONG)muiAttr withEncoding:(ULONG)mibenum

sets the value of the attribute to a native string encoded with given encoding the string will be temporary, so use the above variant and see the notes if the attr value isn't copied by the mui class

- (void) setSuperValue:(IPTR)value forAttribute:(ULONG)muiAttr
- (void) setUnsignedLongValue:(OBNumber *)number forAttribute:(ULONG)muiAttr
- (void) setValue:(IPTR)value forAttribute:(ULONG)muiAttr

sets the attribute to a given value

- (OBString *) stringValueForAttribute:(ULONG)muiAttr

returns the value of the attribute as a string object, assuming input encoding to be MIBENUM_SYSTEM

- (OBString *) stringValueForAttribute:(ULONG)muiAttr fromEncoding:(ULONG)mibenum
- (IPTR) superValueForAttribute:(ULONG)muiAttr

getter that's called on the class' superclass and its superlcasses rather than the class itself. this is to avoid circular sequences in getter setter implementations

- (OBNumber *) unsignedLongValueForAttribute:(ULONG)muiAttr
- (IPTR) valueForAttribute:(ULONG)muiAttr

returns the value of the attribute