New classes for OS/2 and compiler warning suppressions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33407 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -115,7 +115,7 @@ bool wxControl::OS2CreateControl(
|
||||
dwStyle |= WS_VISIBLE;
|
||||
|
||||
wxWindow* pParent = GetParent();
|
||||
PSZ zClass;
|
||||
PSZ zClass = "";
|
||||
|
||||
if (!pParent)
|
||||
return FALSE;
|
||||
|
@@ -158,7 +158,7 @@ void CIDataObject::SetData (
|
||||
, char* pzBuffer
|
||||
)
|
||||
{
|
||||
ULONG ulSize;
|
||||
ULONG ulSize = 0;
|
||||
|
||||
switch (rFormat.GetType())
|
||||
{
|
||||
|
@@ -1304,7 +1304,7 @@ void wxDC::DoDrawBitmap(
|
||||
if (!IsKindOf(CLASSINFO(wxPrinterDC)))
|
||||
{
|
||||
HBITMAP hBitmap = (HBITMAP)rBmp.GetHBITMAP();
|
||||
HBITMAP hBitmapOld;
|
||||
HBITMAP hBitmapOld = NULLHANDLE;;
|
||||
POINTL vPoint[4];
|
||||
|
||||
vY = OS2Y(vY,rBmp.GetHeight());
|
||||
@@ -2842,8 +2842,8 @@ void wxDC::DoGetSizeMM(
|
||||
wxSize wxDC::GetPPI() const
|
||||
{
|
||||
LONG lArray[CAPS_VERTICAL_RESOLUTION];
|
||||
int nWidth;
|
||||
int nHeight;
|
||||
int nWidth = 0;
|
||||
int nHeight = 0;
|
||||
|
||||
if(::DevQueryCaps( m_hDC
|
||||
,CAPS_FAMILY
|
||||
|
91
src/os2/display.cpp
Normal file
91
src/os2/display.cpp
Normal file
@@ -0,0 +1,91 @@
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// Name: displayx11.cpp
|
||||
// Purpose: Unix/X11 implementation of wxDisplay class
|
||||
// Author: Brian Victor
|
||||
// Modified by:
|
||||
// Created: 12/05/02
|
||||
// RCS-ID: $Id$
|
||||
// Copyright: (c) wxWidgets team
|
||||
// Licence: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
|
||||
#pragma implementation "display.h"
|
||||
#endif
|
||||
|
||||
// For compilers that support precompilation, includes "wx.h".
|
||||
#include "wx/wxprec.h"
|
||||
|
||||
#ifdef __BORLANDC__
|
||||
#pragma hdrstop
|
||||
#endif
|
||||
|
||||
#include "wx/display.h"
|
||||
#include "wx/intl.h"
|
||||
#include "wx/log.h"
|
||||
|
||||
#ifndef WX_PRECOMP
|
||||
#include "wx/dynarray.h"
|
||||
#include "wx/gdicmn.h"
|
||||
#include "wx/string.h"
|
||||
#include "wx/utils.h"
|
||||
#endif /* WX_PRECOMP */
|
||||
|
||||
#if wxUSE_DISPLAY
|
||||
|
||||
size_t wxDisplayBase::GetCount()
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
int wxDisplayBase::GetFromPoint(const wxPoint &p)
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
|
||||
wxDisplay::wxDisplay(size_t index)
|
||||
: wxDisplayBase ( index )
|
||||
{
|
||||
}
|
||||
|
||||
wxDisplay::~wxDisplay()
|
||||
{
|
||||
}
|
||||
|
||||
wxRect wxDisplay::GetGeometry() const
|
||||
{
|
||||
wxRect vRect(0,0,0,0);
|
||||
|
||||
return vRect;
|
||||
}
|
||||
|
||||
int wxDisplay::GetDepth() const
|
||||
{
|
||||
return 24;
|
||||
}
|
||||
|
||||
wxString wxDisplay::GetName() const
|
||||
{
|
||||
return wxEmptyString;
|
||||
}
|
||||
|
||||
|
||||
wxArrayVideoModes wxDisplay::GetModes(const wxVideoMode& mode) const
|
||||
{
|
||||
wxArrayVideoModes modes;
|
||||
return modes;
|
||||
}
|
||||
|
||||
wxVideoMode wxDisplay::GetCurrentMode() const
|
||||
{
|
||||
// Not implemented
|
||||
return wxVideoMode();
|
||||
}
|
||||
|
||||
bool wxDisplay::ChangeMode(const wxVideoMode& mode)
|
||||
{
|
||||
// Not implemented
|
||||
return false;
|
||||
}
|
||||
|
||||
#endif /* wxUSE_DISPLAY */
|
@@ -127,7 +127,7 @@ MRESULT CIDropTarget::DragOver ()
|
||||
{
|
||||
char zBuffer[128];
|
||||
ULONG ulBytes;
|
||||
USHORT uOp;
|
||||
USHORT uOp = 0;
|
||||
USHORT uIndicator;
|
||||
ULONG ulItems;
|
||||
ULONG i;
|
||||
@@ -197,7 +197,7 @@ MRESULT CIDropTarget::Drop ()
|
||||
{
|
||||
char zBuffer[128];
|
||||
ULONG ulBytes;
|
||||
USHORT uOp;
|
||||
USHORT uOp = 0;
|
||||
USHORT uIndicator;
|
||||
ULONG ulItems;
|
||||
ULONG i;
|
||||
@@ -250,7 +250,7 @@ MRESULT CIDropTarget::Drop ()
|
||||
,m_pDragInfo->yDrop
|
||||
))
|
||||
{
|
||||
wxDragResult eRc;
|
||||
wxDragResult eRc = wxDragNone;;
|
||||
|
||||
//
|
||||
// And now it has the data
|
||||
|
157
src/os2/tglbtn.cpp
Normal file
157
src/os2/tglbtn.cpp
Normal file
@@ -0,0 +1,157 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: src/msw/tglbtn.cpp
|
||||
// Purpose: Definition of the wxToggleButton class, which implements a
|
||||
// toggle button under wxMSW.
|
||||
// Author: John Norris, minor changes by Axel Schlueter
|
||||
// and William Gallafent.
|
||||
// Modified by:
|
||||
// Created: 08.02.01
|
||||
// RCS-ID: $Id$
|
||||
// Copyright: (c) 2000 Johnny C. Norris II
|
||||
// License: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// ============================================================================
|
||||
// declatations
|
||||
// ============================================================================
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// headers
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
#include "wx/wxprec.h"
|
||||
|
||||
#ifdef __BORLANDC__
|
||||
#pragma hdrstop
|
||||
#endif
|
||||
|
||||
#include "wx/tglbtn.h"
|
||||
|
||||
#if wxUSE_TOGGLEBTN
|
||||
|
||||
#ifndef WX_PRECOMP
|
||||
#include "wx/button.h"
|
||||
#include "wx/brush.h"
|
||||
#include "wx/dcscreen.h"
|
||||
#include "wx/settings.h"
|
||||
|
||||
#include "wx/log.h"
|
||||
#endif // WX_PRECOMP
|
||||
|
||||
#include "wx/msw/private.h"
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// macros
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
IMPLEMENT_DYNAMIC_CLASS(wxToggleButton, wxControl)
|
||||
DEFINE_EVENT_TYPE(wxEVT_COMMAND_TOGGLEBUTTON_CLICKED)
|
||||
|
||||
#define BUTTON_HEIGHT_FROM_CHAR_HEIGHT(cy) (11*EDIT_HEIGHT_FROM_CHAR_HEIGHT(cy)/10)
|
||||
|
||||
// ============================================================================
|
||||
// implementation
|
||||
// ============================================================================
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// wxToggleButton
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
bool wxToggleButton::OS2Command(WXUINT WXUNUSED(param), WXWORD WXUNUSED(id))
|
||||
{
|
||||
wxCommandEvent event(wxEVT_COMMAND_TOGGLEBUTTON_CLICKED, m_windowId);
|
||||
event.SetInt(GetValue());
|
||||
event.SetEventObject(this);
|
||||
ProcessCommand(event);
|
||||
return true;
|
||||
}
|
||||
|
||||
// Single check box item
|
||||
bool wxToggleButton::Create(wxWindow *parent, wxWindowID id,
|
||||
const wxString& label,
|
||||
const wxPoint& pos,
|
||||
const wxSize& size, long style,
|
||||
const wxValidator& validator,
|
||||
const wxString& name)
|
||||
{
|
||||
if ( !CreateControl(parent, id, pos, size, style, validator, name) )
|
||||
return false;
|
||||
|
||||
if ( !OS2CreateControl(wxT("BUTTON"), label, pos, size, 0) )
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
wxBorder wxToggleButton::GetDefaultBorder() const
|
||||
{
|
||||
return wxBORDER_NONE;
|
||||
}
|
||||
|
||||
WXDWORD wxToggleButton::OS2GetStyle(long style, WXDWORD *exstyle) const
|
||||
{
|
||||
WXDWORD msStyle = wxControl::OS2GetStyle(style, exstyle);
|
||||
|
||||
#ifndef BS_PUSHLIKE
|
||||
#define BS_PUSHLIKE 0x00001000L
|
||||
#endif
|
||||
|
||||
msStyle |= BS_AUTOCHECKBOX | BS_PUSHLIKE | WS_TABSTOP;
|
||||
|
||||
return msStyle;
|
||||
}
|
||||
|
||||
wxSize wxToggleButton::DoGetBestSize() const
|
||||
{
|
||||
wxString label = wxGetWindowText(GetHWND());
|
||||
int wBtn;
|
||||
wxFont vFont = GetFont();
|
||||
int wChar;
|
||||
int hChar;
|
||||
|
||||
GetTextExtent(label, &wBtn, NULL);
|
||||
|
||||
|
||||
wxGetCharSize(GetHWND(), &wChar, &hChar, &vFont);
|
||||
|
||||
// add a margin - the button is wider than just its label
|
||||
wBtn += 3*wChar;
|
||||
|
||||
// the button height is proportional to the height of the font used
|
||||
int hBtn = BUTTON_HEIGHT_FROM_CHAR_HEIGHT(hChar);
|
||||
|
||||
#if wxUSE_BUTTON
|
||||
wxSize sz = wxButton::GetDefaultSize();
|
||||
if (wBtn > sz.x)
|
||||
sz.x = wBtn;
|
||||
if (hBtn > sz.y)
|
||||
sz.y = hBtn;
|
||||
#else
|
||||
wxSize sz(wBtn, hBtn);
|
||||
#endif
|
||||
|
||||
return sz;
|
||||
}
|
||||
|
||||
void wxToggleButton::SetValue(bool val)
|
||||
{
|
||||
::WinSendMsg(GetHwnd(), BM_SETCHECK, MPFROMSHORT(val), (MPARAM)0);
|
||||
}
|
||||
|
||||
#ifndef BST_CHECKED
|
||||
#define BST_CHECKED 0x0001
|
||||
#endif
|
||||
|
||||
bool wxToggleButton::GetValue() const
|
||||
{
|
||||
return (::WinSendMsg(GetHwnd(), BM_QUERYCHECK, 0, 0) == (MRESULT)BST_CHECKED);
|
||||
}
|
||||
|
||||
void wxToggleButton::Command(wxCommandEvent & event)
|
||||
{
|
||||
SetValue((event.GetInt() != 0));
|
||||
ProcessCommand(event);
|
||||
}
|
||||
|
||||
#endif // wxUSE_TOGGLEBTN
|
||||
|
Reference in New Issue
Block a user