void wxTopLevelWindowGTK::SetIcons( const wxIconBundle &icons ) { wxASSERT_MSG( (m_widget != NULL), wxT("invalid frame") ); wxTopLevelWindowBase::SetIcons( icons ); if ( icons.IsEmpty() ) return; GdkWindow* window = m_widget->window; if (!window) return; wxIcon icon = icons.GetIcon(-1); if (icon.IsOk()) { wxMask *mask = icon.GetMask(); GdkBitmap *bm = NULL; if (mask) bm = mask->GetBitmap(); gdk_window_set_icon( m_widget->window, NULL, icon.GetPixmap(), bm ); } wxSetIconsX11( (WXDisplay*)GDK_WINDOW_XDISPLAY( window ), (WXWindow)GDK_WINDOW_XWINDOW( window ), icons ); }
void wxTopLevelWindowX11::SetIcons(const wxIconBundle& icons ) { // this sets m_icon wxTopLevelWindowBase::SetIcons( icons ); DoSetIcon( icons.GetIcon( -1 ) ); wxSetIconsX11( wxGlobalDisplay(), X11GetMainWindow(), icons ); }
bool wxTopLevelWindowMSW::DoSelectAndSetIcon(const wxIconBundle& icons, int smX, int smY, int i) { const wxSize size(::GetSystemMetrics(smX), ::GetSystemMetrics(smY)); wxIcon icon = icons.GetIcon(size, wxIconBundle::FALLBACK_NEAREST_LARGER); if ( !icon.IsOk() ) return false; ::SendMessage(GetHwnd(), WM_SETICON, i, (LPARAM)GetHiconOf(icon)); return true; }
void wxAuiMDIChildFrame::SetIcons(const wxIconBundle& icons) { // get icon with the system icon size SetIcon(icons.GetIcon(-1)); m_icon_bundle = icons; }