The set of flags passed to IWidget_SetFlags() relpaces the flags currently set in the widget. That is, IWidget_SetFlags() turns off all flags set in the widget, then turns on the ones specified in the dwFlags parameter.
IWidget_SetFlags() calls IWidget_SetProperty(), setting the PROP_FLAGS property to the set of flags specified in dwFlags. Calling IWidget_SetFlags() on a widget that doesn't support PROP_FLAGS will result in an error. To determine if a specific type of widget supports PROP_FLAGS and, more importantly, what set of flags the widget understands, consult the widget's documentation.
For example, the text widget defines the TWF_MULTILINE, TWF_VERTICALNAV and TWF_PASSWORD flags. You can consult the Text Widget documentation for specific details on these flags. To tell a text widget to display text on multiple lines and allow vertical cursor navigation, an application would call:
int IWidget_SetFlags(IWidget *pif, uint32 dwFlags);
- AEE_SUCCESS : The widget was able to handle the event, and the internal
flags were set to the set specified..
AEE_EFAILED : The widget was unable to handle the event, and the internal
flags were not changed.
- Depending on the widget implementation and what flags were set, the widget's behavior will change. Refer to the widget's documentation to see what specific flags it supports and what effect they have.