NAVSETITEM describes a navigation item that you wish to insert, get or set (via NavInsertItem, NavGetItem or NavSetItem)
Structure
Members
A bitmask that defines what fields in the NAVSETITEM structure are to be considered when using it with NavGetItem and NavSetItem. NavInsertItem uses all the specified fields.
NI_MASK_FLAGS | The flags member is valid |
NI_MASK_STATE | The state member is valid |
NI_MASK_LABEL | The label member is valid |
NI_MASK_DESCRIPTION | The description member is valid |
NI_MASK_ICON | The icon member is valid |
NI_MASK_EVENTMASK | The event mask is valid |
NI_MASK_INTERFACE | The callback interface member is valid |
NI_MASK_LPARAM | The LPARAM member is valid |
NI_MASK_ALIAS | The alias field is valid |
NI_MASK_FQN | The FQN field is valid |
A bitmask describing the flags for the item
Flag | Description |
---|---|
NI_FLAG_CONTAINER | The item has a panel associated with it that will display all child items when selected. Mutually exclusive with NI_FLAG_CUSTOMCONTAINER |
NI_FLAG_SORTCHILDREN | Sorts the children when displayed |
NI_FLAG_CUSTOMCONTAINER | Indicates that you wish to provide a custom panel for this container item. The framework will call you via the pInterface member in order to create your panel or notify you of navigation events. |
NI_FLAG_HIDDEN | The item is hidden |
NI_FLAG_OWNERDRAW | Child items of a container will be owner-drawn. You will be called via the pInterface->NavItemDrawItem function to draw the child item. |
NI_FLAG_XAMLTEXT | Unused |
NI_FLAG_DYNAMICHELP | Help content for this item is dynamic. Whenever the framework navigates to this item, you will be asked for the help content via a call to pInterface->NavItemGetHelpContent |
NI_FLAG_DEFAULTLOCATION | Used internally |
NI_FLAG_MESSAGEBAR_ICONINFO NI_FLAG_MESSAGEBAR_ICONWARNING NI_FLAG_MESSAGEBAR_ICONSHIELD | Message Bar Only: Places an icon of the specified type in front of the message in the Message Bar |
NI_FLAG_MESSAGEBAR_NOTIFY | Message Bar Only: Instead of navigating to the link in the item in the Message Bar, notify the item via its pInterface->NavItemNotify function. |
The current state of the item.
NI_STATE_SELECTED | The item is currently selected |
NI_STATE_FOCUS | The item is currently focussed |
The bitmask indicating what events this item wants to be notified about.
Flag | Valid Item Types | Description |
---|---|---|
NI_EVENT_MOUSE_LCLICK | Nav items created with NI_FLAG_CONTAINER Tasks, Listeners | For items registered with NI_FLAG_CONTAINER, then this event is sent when the panel is clicked. For tasks it's sent when the task item is clicked |
NI_EVENT_MOUSE_RCLICK | Nav items created with NI_FLAG_CONTAINER, , Listeners | The item wants notification of right mouse click events in the panel |
NI_EVENT_MOUSE_DBLCLICK | Nav Items with no panel and Nav items created with NI_FLAG_CONTAINER, Listeners | For nav items with no panel, this event is sent when the item is clicked. For items registered with NI_FLAG_CONTAINER, this event is sent when the panel is double clicked |
NI_EVENT_MOUSE_ENTEREXIT | Unused | The item wants notification when the mouse enters/exits the item |
NI_EVENT_MOUSE_MOVE | Unused | The item wants notification when the mouse moves within the item |
NI_EVENT_ACTIVATE | Nav Items created with NI_FLAG_CUSTOMCONTAINER, Listeners | The item wants to be notified when it is activated |
NI_EVENT_DEACTIVATE | Nav Items created with NI_FLAG_CUSTOMCONTAINER, Listeners | The item wants to be notified when it's deactivated. For listeners, this event is sent BEFORE deactivation. |
NI_EVENT_NOTIFY | Internal | Do not use |
NI_EVENT_CREATED | Listeners | Notifies all listeners registered with NavRegisterNavFilter that a new nav item has been created. |
NI_EVENT_DESTROYED | Listeners | Notifies all listeners registered with NavRegisterNavFilter that a nav item has been destroyed. |
The alias of this item. Can be NULL to indicate no alias.
The fully qualified name of this item. e.g. NAVIGATIONTREE\MyComponent\MyItem
Remarks
Components can register as listeners for navigation events by calling NavRegisterNavFilter. They can only listen on navigation tree items and not any other type of navigation item.
Examples
None