- //
- // Use default font if no font set
- //
- if (m_font.Ok())
- {
- m_font.RealizeResource();
- }
- else
- {
- ::GpiSetCharSet(hPS, LCID_DEFAULT);
- }
- if (eStatus & wxODSelected)
- {
- vRef = (ULONG)::WinQuerySysColor( HWND_DESKTOP
- ,SYSCLR_MENUHILITEBGND // Light gray
- ,0L
- );
- vColBack.Set( GetRValue(vRef)
- ,GetGValue(vRef)
- ,GetBValue(vRef)
- );
- vColText = wxSystemSettings::GetSystemColour(wxSYS_COLOUR_MENUTEXT);
- }
- else if (eStatus & wxODDisabled)
- {
- vRef = (ULONG)::WinQuerySysColor( HWND_DESKTOP
- ,SYSCLR_MENU // Light gray
- ,0L
- );
- vColBack.Set( GetRValue(vRef)
- ,GetGValue(vRef)
- ,GetBValue(vRef)
- );
- vRef = (ULONG)::WinQuerySysColor( HWND_DESKTOP
- ,SYSCLR_MENUDISABLEDTEXT // dark gray
- ,0L
- );
- vColText.Set( GetRValue(vRef)
- ,GetGValue(vRef)
- ,GetBValue(vRef)
- );
- }
- else
- {
- //
- // Fall back to default colors if none explicitly specified
- //
- vRef = ::WinQuerySysColor( HWND_DESKTOP
- ,SYSCLR_MENU // we are using gray for all our window backgrounds in wxWindows
- ,0L
- );
- vColBack.Set( GetRValue(vRef)
- ,GetGValue(vRef)
- ,GetBValue(vRef)
- );
- vRef = ::WinQuerySysColor( HWND_DESKTOP
- ,SYSCLR_WINDOWTEXT // Black
- ,0L
- );
- vColText.Set( GetRValue(vRef)
- ,GetGValue(vRef)
- ,GetBValue(vRef)
- );
- }
- vRef = vColBack.GetPixel();
- vCbnd.lBackColor = (LONG)vRef;