Page 1 of 1

balloon on a systray icon?

Posted: Sun Feb 13, 2011 7:29 pm
by MoonKid
Is there a way to produce balloon-tips over a systray icon?

Something like "new updates available". You know what I mean?

Posted: Mon Feb 14, 2011 1:32 pm
by Yggi
Yes, with

Code: Select all

wxTaskBarIcon::SetIcon(const wxIcon &icon, const wxString &tooltip=wxEmptyString)

Posted: Mon Feb 14, 2011 5:34 pm
by doublemax
Method from wxTaskBarIcon, undocumented, probably because it's MSW only:

Code: Select all

    // MSW-specific class methods

#if wxUSE_TASKBARICON_BALLOONS
    // show a balloon notification (the icon must have been already initialized
    // using SetIcon)
    //
    // title and text are limited to 63 and 255 characters respectively, msec
    // is the timeout, in milliseconds, before the balloon disappears (will be
    // clamped down to the allowed 10-30s range by Windows if it's outside it)
    // and flags can include wxICON_ERROR/INFO/WARNING to show a corresponding
    // icon
    //
    // return true if balloon was shown, false on error (incorrect parameters
    // or function unsupported by OS)
    bool ShowBalloon(const wxString& title,
                     const wxString& text,
                     unsigned msec = 0,
                     int flags = 0);
#endif // wxUSE_TASKBARICON_BALLOONS

Posted: Thu Feb 17, 2011 9:02 pm
by Big Muscle
I use this:

Code: Select all

	wxNotificationMessage notify(title, text);
	notify.SetFlags(icon);
#ifdef __WXMSW__
	// ensure that current taskbar icon is used
	// FIXME: notify.UseTaskBarIcon(mainWindow->getTaskBarIcon());
#endif
	notify.Show();
but this add new icon for each balloon. There's undocumented UseTaskBarIcon function, but your taskbar will be deleted when balloon disappears. i already reported here, but no response - http://trac.wxwidgets.org/ticket/12807