...
Code Block |
---|
void AddMessageBarItem(LPCWSTR text, LPCWSTR link) { // First get the root of the MESSAGEBAR domain NAVSETITEM messageBarRootData; memset(&messageBarRootData, 0, sizeof(NAVSETITEM)); if( !NavGetItem(_T("MESSAGEBAR"), &messageBarRootData) ) { return; // Failed to find MESSAGEBAR root } NavHandle messageBarRoot = messageBarRootData.hItem; // Now add a simple message bar item NAVSETITEM newItem; memset(&newItem, 0, sizeof(newItem)); newItem.flags = NI_FLAG_MESSAGEBAR_ICONWARNING; // The icon we want to show. NI_FLAG_MESSAGEBAR_ICONINFO, NI_FLAG_MESSAGEBAR_ICONWARNING and NI_FLAG_MESSAGEBAR_ICONSHIELD newItem.EventMask = NI_EVENT_MOUSE_LCLICK; // Need click events to navigate somewhere when the link is clicked newItem.strLabel = L"This is a message bar message"; newItem.strDescription = L"NAVIGATIONTREE\\ControlPanel\\Events"; // Override description field as the FQN or alias to navigate to when the link is clicked newItem.lParam = 0; // Custom context data newItem.pInterface = ¬ificationInterface; // Interface to handle messages from the message bar NavInsertItem(hMessageBarmessageBarRoot, _T("MyComponentWarningEvents"), &newItem); } |
...