mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-01-13 09:39:11 +01:00
822326eea9
From wxWidgets master 81570ae070b35c9d52de47b1f14897f3ff1a66c7. include/wx/defs.h -- __w64 warning disable patch by comex brought forward. include/wx/msw/window.h -- added GetContentScaleFactor() which was not implemented on Windows but is necessary for wxBitmap scaling on Mac OS X so it needs to work to avoid #ifdef-ing the code. src/gtk/window.cpp -- Modified DoSetClientSize() to direct call wxWindowGTK::DoSetSize() instead of using public wxWindowBase::SetSize() which now prevents derived classes (like wxAuiToolbar) intercepting the call and breaking it. This matches Windows which does NOT need to call DoSetSize internally. End result is this fixes Dolphin's debug tools toolbars on Linux. src/osx/window_osx.cpp -- Same fix as for GTK since it has the same issue. src/msw/radiobox.cpp -- Hacked to fix display in HiDPI (was clipping off end of text). Updated CMakeLists for Linux and Mac OS X. Small code changes to Dolphin to fix debug error boxes, deprecation warnings, and retain previous UI behavior on Windows.
99 lines
3.1 KiB
C++
99 lines
3.1 KiB
C++
///////////////////////////////////////////////////////////////////////////////
|
|
// Name: wx/osx/menuitem.h
|
|
// Purpose: wxMenuItem class
|
|
// Author: Vadim Zeitlin
|
|
// Modified by:
|
|
// Created: 11.11.97
|
|
// Copyright: (c) 1998 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
|
|
// Licence: wxWindows licence
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
#ifndef _MENUITEM_H
|
|
#define _MENUITEM_H
|
|
|
|
// ----------------------------------------------------------------------------
|
|
// headers
|
|
// ----------------------------------------------------------------------------
|
|
|
|
#include "wx/defs.h"
|
|
#include "wx/bitmap.h"
|
|
|
|
// ----------------------------------------------------------------------------
|
|
// wxMenuItem: an item in the menu, optionally implements owner-drawn behaviour
|
|
// ----------------------------------------------------------------------------
|
|
|
|
class WXDLLIMPEXP_FWD_CORE wxMenuItemImpl ;
|
|
|
|
class WXDLLIMPEXP_CORE wxMenuItem: public wxMenuItemBase
|
|
{
|
|
public:
|
|
// ctor & dtor
|
|
wxMenuItem(wxMenu *parentMenu = NULL,
|
|
int id = wxID_SEPARATOR,
|
|
const wxString& name = wxEmptyString,
|
|
const wxString& help = wxEmptyString,
|
|
wxItemKind kind = wxITEM_NORMAL,
|
|
wxMenu *subMenu = NULL);
|
|
virtual ~wxMenuItem();
|
|
|
|
// override base class virtuals
|
|
virtual void SetItemLabel(const wxString& strName);
|
|
|
|
virtual void Enable(bool bDoEnable = true);
|
|
virtual void Check(bool bDoCheck = true);
|
|
|
|
virtual void SetBitmap(const wxBitmap& bitmap) ;
|
|
virtual const wxBitmap& GetBitmap() const { return m_bitmap; }
|
|
|
|
|
|
// Implementation only from now on.
|
|
|
|
// update the os specific representation
|
|
void UpdateItemBitmap() ;
|
|
void UpdateItemText() ;
|
|
void UpdateItemStatus() ;
|
|
|
|
// mark item as belonging to the given radio group
|
|
void SetAsRadioGroupStart(bool start = true);
|
|
void SetRadioGroupStart(int start);
|
|
void SetRadioGroupEnd(int end);
|
|
|
|
// return true if this is the starting item of a radio group
|
|
bool IsRadioGroupStart() const;
|
|
|
|
// get the start of the radio group this item belongs to: should not be
|
|
// called for the starting radio group item itself because it doesn't have
|
|
// this information
|
|
int GetRadioGroupStart() const;
|
|
|
|
// get the end of the radio group this item belongs to: should be only
|
|
// called for the starting radio group item, i.e. if IsRadioGroupStart() is
|
|
// true
|
|
int GetRadioGroupEnd() const;
|
|
|
|
wxMenuItemImpl* GetPeer() { return m_peer; }
|
|
private:
|
|
void UncheckRadio() ;
|
|
|
|
// the positions of the first and last items of the radio group this item
|
|
// belongs to or -1: start is the radio group start and is valid for all
|
|
// but first radio group items (m_isRadioGroupStart == FALSE), end is valid
|
|
// only for the first one
|
|
union
|
|
{
|
|
int start;
|
|
int end;
|
|
} m_radioGroup;
|
|
|
|
// does this item start a radio group?
|
|
bool m_isRadioGroupStart;
|
|
|
|
wxBitmap m_bitmap; // Bitmap for menuitem, if any
|
|
|
|
wxMenuItemImpl* m_peer;
|
|
|
|
wxDECLARE_DYNAMIC_CLASS(wxMenuItem);
|
|
};
|
|
|
|
#endif //_MENUITEM_H
|