Native PalmOS wxControl and wxButton implementation. wxTLW without fixed size. Unused MSW code cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31578 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -2,10 +2,10 @@
|
||||
// Name: src/palmos/button.cpp
|
||||
// Purpose: wxButton
|
||||
// Author: William Osborne - minimal working wxPalmOS port
|
||||
// Modified by:
|
||||
// Modified by: Wlodzimierz ABX Skiba - native wxButton implementation
|
||||
// Created: 10/13/04
|
||||
// RCS-ID: $Id$
|
||||
// Copyright: (c) William Osborne
|
||||
// Copyright: (c) William Osborne, Wlodzimierz Skiba
|
||||
// Licence: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -40,8 +40,6 @@
|
||||
#include "wx/dcscreen.h"
|
||||
#endif
|
||||
|
||||
#include "wx/palmos/private.h"
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// macros
|
||||
// ----------------------------------------------------------------------------
|
||||
@@ -128,8 +126,8 @@ bool wxButton::Create(wxWindow *parent,
|
||||
const wxValidator& validator,
|
||||
const wxString& name)
|
||||
{
|
||||
// remember about stock IDs
|
||||
return false;
|
||||
wxControl::PalmCreateControl(buttonCtl, parent, id, label, pos, size);
|
||||
return true;
|
||||
}
|
||||
|
||||
wxButton::~wxButton()
|
||||
|
@@ -60,7 +60,7 @@ END_EVENT_TABLE()
|
||||
|
||||
wxControl::~wxControl()
|
||||
{
|
||||
m_isBeingDeleted = TRUE;
|
||||
m_isBeingDeleted = true;
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
@@ -76,34 +76,44 @@ bool wxControl::Create(wxWindow *parent,
|
||||
const wxString& name)
|
||||
{
|
||||
if ( !wxWindow::Create(parent, id, pos, size, style, name) )
|
||||
return FALSE;
|
||||
return false;
|
||||
|
||||
#if wxUSE_VALIDATORS
|
||||
SetValidator(validator);
|
||||
#endif
|
||||
|
||||
return TRUE;
|
||||
return true;
|
||||
}
|
||||
|
||||
bool wxControl::MSWCreateControl(const wxChar *classname,
|
||||
const wxString& label,
|
||||
const wxPoint& pos,
|
||||
const wxSize& size)
|
||||
bool wxControl::PalmCreateControl(ControlStyleType style,
|
||||
wxWindow *parent,
|
||||
wxWindowID id,
|
||||
const wxString& label,
|
||||
const wxPoint& pos,
|
||||
const wxSize& size)
|
||||
{
|
||||
WXDWORD exstyle;
|
||||
WXDWORD msStyle = MSWGetStyle(GetWindowStyle(), &exstyle);
|
||||
FormType* form = FrmGetActiveForm ();
|
||||
m_control = CtlNewControl (
|
||||
(void **)&form,
|
||||
id,
|
||||
style,
|
||||
label.c_str(),
|
||||
pos.x,
|
||||
pos.y,
|
||||
size.x,
|
||||
size.y,
|
||||
boldFont,
|
||||
0,
|
||||
false
|
||||
);
|
||||
|
||||
return MSWCreateControl(classname, msStyle, pos, size, label, exstyle);
|
||||
}
|
||||
if(m_control==NULL)
|
||||
return false;
|
||||
|
||||
bool wxControl::MSWCreateControl(const wxChar *classname,
|
||||
WXDWORD style,
|
||||
const wxPoint& pos,
|
||||
const wxSize& size,
|
||||
const wxString& label,
|
||||
WXDWORD exstyle)
|
||||
{
|
||||
return TRUE;
|
||||
form = FrmGetActiveForm ();
|
||||
m_objectIndex = FrmGetObjectIndex(form, id);
|
||||
Show();
|
||||
return true;
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
@@ -118,16 +128,42 @@ wxBorder wxControl::GetDefaultBorder() const
|
||||
return wxBORDER_SUNKEN;
|
||||
}
|
||||
|
||||
WXDWORD wxControl::MSWGetStyle(long style, WXDWORD *exstyle) const
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
wxSize wxControl::DoGetBestSize() const
|
||||
{
|
||||
return wxSize(16, 16);
|
||||
}
|
||||
|
||||
bool wxControl::Enable(bool enable)
|
||||
{
|
||||
if( m_control == NULL )
|
||||
return false;
|
||||
if( IsEnabled() == enable)
|
||||
return false;
|
||||
CtlSetEnabled( m_control, enable);
|
||||
return true;
|
||||
}
|
||||
|
||||
bool wxControl::IsEnabled() const
|
||||
{
|
||||
if( m_control == NULL )
|
||||
return false;
|
||||
return CtlEnabled(m_control);
|
||||
}
|
||||
|
||||
bool wxControl::IsShown() const
|
||||
{
|
||||
return StatGetAttribute ( statAttrBarVisible , NULL );
|
||||
}
|
||||
|
||||
bool wxControl::Show( bool show )
|
||||
{
|
||||
if(show)
|
||||
FrmShowObject(FrmGetActiveForm(), m_objectIndex);
|
||||
else
|
||||
FrmHideObject(FrmGetActiveForm(), m_objectIndex);
|
||||
return true;
|
||||
}
|
||||
|
||||
/* static */ wxVisualAttributes
|
||||
wxControl::GetClassDefaultAttributes(wxWindowVariant WXUNUSED(variant))
|
||||
{
|
||||
@@ -167,14 +203,6 @@ bool wxControl::ProcessCommand(wxCommandEvent& event)
|
||||
return GetEventHandler()->ProcessEvent(event);
|
||||
}
|
||||
|
||||
#ifdef __WIN95__
|
||||
bool wxControl::MSWOnNotify(int idCtrl,
|
||||
WXLPARAM lParam,
|
||||
WXLPARAM* result)
|
||||
{
|
||||
}
|
||||
#endif // Win95
|
||||
|
||||
void wxControl::OnEraseBackground(wxEraseEvent& event)
|
||||
{
|
||||
}
|
||||
|
@@ -2,10 +2,10 @@
|
||||
// Name: src/palmos/frame.cpp
|
||||
// Purpose: wxFrame
|
||||
// Author: William Osborne - minimal working wxPalmOS port
|
||||
// Modified by:
|
||||
// Modified by: Wlodzimierz ABX Skiba - more than minimal functionality
|
||||
// Created: 10/13/04
|
||||
// RCS-ID: $Id$
|
||||
// Copyright: (c) William Osborne
|
||||
// Copyright: (c) William Osborne, Wlodzimierz Skiba
|
||||
// Licence: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -162,7 +162,7 @@ bool wxFrame::Create(wxWindow *parent,
|
||||
long style,
|
||||
const wxString& name)
|
||||
{
|
||||
if ( !wxTopLevelWindow::Create(parent, id, title, pos, size, style, name, this) )
|
||||
if ( !wxTopLevelWindow::Create(parent, id, title, pos, size, style, name) )
|
||||
return false;
|
||||
|
||||
return true;
|
||||
@@ -255,7 +255,7 @@ void wxFrame::OnPaint(wxPaintEvent& event)
|
||||
#endif // wxUSE_STATUSBAR
|
||||
}
|
||||
|
||||
// Pass TRUE to show full screen, FALSE to restore.
|
||||
// Pass true to show full screen, false to restore.
|
||||
bool wxFrame::ShowFullScreen(bool show, long style)
|
||||
{
|
||||
return false;
|
||||
|
@@ -107,7 +107,7 @@ int wxJoystick::GetProductId() const
|
||||
|
||||
wxString wxJoystick::GetProductName() const
|
||||
{
|
||||
return wxString("");
|
||||
return wxEmptyString;
|
||||
}
|
||||
|
||||
int wxJoystick::GetXMin() const
|
||||
|
@@ -150,6 +150,7 @@ wxString wxStatusBarPalm::GetStatusText(int nField) const
|
||||
|
||||
void wxStatusBarPalm::DrawStatusBar()
|
||||
{
|
||||
#if 0
|
||||
int i=0;
|
||||
int leftPos=0;
|
||||
wxArrayInt widthsAbs;
|
||||
@@ -172,6 +173,7 @@ void wxStatusBarPalm::DrawStatusBar()
|
||||
leftPos+=widthsAbs[i]+2;
|
||||
}
|
||||
WinDrawLine(0,160-FntCharHeight()-1,159,160-FntCharHeight()-1);
|
||||
#endif
|
||||
}
|
||||
|
||||
void wxStatusBarPalm::SetStatusBufferText(const wxString& text, int number)
|
||||
@@ -187,7 +189,7 @@ wxString wxStatusBarPalm::GetStatusBufferText(int number)
|
||||
{
|
||||
wxListString *st = GetStatusBufferStack(number);
|
||||
if(st==0)
|
||||
return "";
|
||||
return wxEmptyString;
|
||||
|
||||
wxListString::compatibility_iterator top = st->GetFirst();
|
||||
return(*top->GetData());
|
||||
|
@@ -43,15 +43,6 @@
|
||||
|
||||
#include "wx/display.h"
|
||||
|
||||
#ifndef ICON_BIG
|
||||
#define ICON_BIG 1
|
||||
#endif
|
||||
|
||||
#ifndef ICON_SMALL
|
||||
#define ICON_SMALL 0
|
||||
#endif
|
||||
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// globals
|
||||
// ----------------------------------------------------------------------------
|
||||
@@ -60,7 +51,7 @@
|
||||
extern const wxChar *wxCanvasClassName;
|
||||
|
||||
// Pointer to the currently active frame for the form event handler.
|
||||
wxFrame* ActiveParentFrame;
|
||||
wxTopLevelWindowPalm* ActiveParentFrame;
|
||||
|
||||
// ============================================================================
|
||||
// wxTopLevelWindowPalm implementation
|
||||
@@ -88,21 +79,6 @@ WXHWND wxTopLevelWindowPalm::PalmGetParent() const
|
||||
return NULL;
|
||||
}
|
||||
|
||||
bool wxTopLevelWindowPalm::CreateDialog(const void *dlgTemplate,
|
||||
const wxString& title,
|
||||
const wxPoint& pos,
|
||||
const wxSize& size)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
bool wxTopLevelWindowPalm::CreateFrame(const wxString& title,
|
||||
const wxPoint& pos,
|
||||
const wxSize& size)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
bool wxTopLevelWindowPalm::Create(wxWindow *parent,
|
||||
wxWindowID id,
|
||||
const wxString& title,
|
||||
@@ -111,6 +87,10 @@ bool wxTopLevelWindowPalm::Create(wxWindow *parent,
|
||||
long style,
|
||||
const wxString& name)
|
||||
{
|
||||
// this is a check for limitation mentioned before FrameFormHandleEvent() code
|
||||
if(wxTopLevelWindows.GetCount()>0)
|
||||
return false;
|
||||
|
||||
ActiveParentFrame=NULL;
|
||||
|
||||
wxTopLevelWindows.Append(this);
|
||||
@@ -120,54 +100,37 @@ bool wxTopLevelWindowPalm::Create(wxWindow *parent,
|
||||
|
||||
m_windowId = id == wxID_ANY ? NewControlId() : id;
|
||||
|
||||
wxCoord x = ( ( pos.x == wxDefaultCoord ) ? 0 : pos.x ) ;
|
||||
wxCoord y = ( ( pos.y == wxDefaultCoord ) ? 0 : pos.y ) ;
|
||||
wxCoord w = ( ( size.x == wxDefaultCoord ) ? 160 : size.x ) ;
|
||||
wxCoord h = ( ( size.y == wxDefaultCoord ) ? 160 : size.y ) ;
|
||||
WinConstraintsType constraints;
|
||||
memset(&constraints, 0, sizeof(WinConstraintsType));
|
||||
constraints.x_pos = ( pos.x == wxDefaultCoord ) ? winUndefConstraint : pos.x;
|
||||
constraints.y_pos = ( pos.y == wxDefaultCoord ) ? winUndefConstraint : pos.y;
|
||||
constraints.x_min = winUndefConstraint;
|
||||
constraints.x_max = winMaxConstraint;
|
||||
constraints.x_pref = ( size.x == wxDefaultCoord ) ? winUndefConstraint : size.x;
|
||||
constraints.y_min = winUndefConstraint;
|
||||
constraints.y_max = winMaxConstraint;
|
||||
constraints.y_pref = ( size.y == wxDefaultCoord ) ? winUndefConstraint : size.y;
|
||||
|
||||
FrameForm = FrmNewForm( m_windowId,
|
||||
title,
|
||||
x, y,
|
||||
w, h,
|
||||
false,
|
||||
0,
|
||||
NULL,
|
||||
0,
|
||||
NULL,
|
||||
0);
|
||||
if(FrameForm==0)
|
||||
return false;
|
||||
FrameForm = FrmNewFormWithConstraints(
|
||||
m_windowId,
|
||||
title.c_str(),
|
||||
winFlagBackBuffer,
|
||||
&constraints,
|
||||
0,
|
||||
NULL,
|
||||
0,
|
||||
NULL,
|
||||
0
|
||||
);
|
||||
|
||||
FrmSetEventHandler(FrameForm,FrameFormHandleEvent);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool wxTopLevelWindowPalm::Create(wxWindow *parent,
|
||||
wxWindowID id,
|
||||
const wxString& title,
|
||||
const wxPoint& pos,
|
||||
const wxSize& size,
|
||||
long style,
|
||||
const wxString& name,
|
||||
wxFrame* PFrame)
|
||||
{
|
||||
wxTopLevelWindows.Append(this);
|
||||
|
||||
if ( parent )
|
||||
parent->AddChild(this);
|
||||
|
||||
m_windowId = id == -1 ? NewControlId() : id;
|
||||
|
||||
FrameForm=FrmNewForm(m_windowId,title,0,0,160,160,false,0,NULL,0,NULL,0);
|
||||
if(FrameForm==0)
|
||||
if(FrameForm==NULL)
|
||||
return false;
|
||||
|
||||
FrmSetEventHandler(FrameForm,FrameFormHandleEvent);
|
||||
|
||||
FrmSetActiveForm(FrameForm);
|
||||
|
||||
ActiveParentFrame=PFrame;
|
||||
ActiveParentFrame=this;
|
||||
|
||||
return true;
|
||||
}
|
||||
@@ -280,21 +243,22 @@ void wxTopLevelWindowPalm::OnActivate(wxActivateEvent& event)
|
||||
*/
|
||||
static Boolean FrameFormHandleEvent(EventType* pEvent)
|
||||
{
|
||||
wxFrame* frame = wxDynamicCast(ActiveParentFrame,wxFrame);
|
||||
Boolean fHandled = false;
|
||||
FormType* pForm;
|
||||
WinHandle hWindow;
|
||||
int ItemID=0;
|
||||
FormType* pForm;
|
||||
WinHandle hWindow;
|
||||
int ItemID=0;
|
||||
|
||||
switch (pEvent->eType) {
|
||||
case ctlSelectEvent:
|
||||
break;
|
||||
#if wxUSE_MENUS_NATIVE
|
||||
case menuOpenEvent:
|
||||
fHandled=ActiveParentFrame->HandleMenuOpen();
|
||||
fHandled = frame->HandleMenuOpen();
|
||||
break;
|
||||
case menuEvent:
|
||||
ItemID=pEvent->data.menu.itemID;
|
||||
fHandled=ActiveParentFrame->HandleMenuSelect(ItemID);
|
||||
ItemID = pEvent->data.menu.itemID;
|
||||
fHandled = frame->HandleMenuSelect(ItemID);
|
||||
break;
|
||||
#endif
|
||||
default:
|
||||
|
@@ -334,7 +334,7 @@ void wxWindowPalm::SetTitle( const wxString& title)
|
||||
|
||||
wxString wxWindowPalm::GetTitle() const
|
||||
{
|
||||
return wxString("");
|
||||
return wxEmptyString;
|
||||
}
|
||||
|
||||
void wxWindowPalm::DoCaptureMouse()
|
||||
@@ -1096,21 +1096,6 @@ extern wxWindow *wxGetWindowFromHWND(WXHWND hWnd)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
#if !defined(__WXMICROWIN__) && !defined(__WXWINCE__)
|
||||
|
||||
void wxSetKeyboardHook(bool doIt)
|
||||
{
|
||||
}
|
||||
|
||||
#endif // !__WXMICROWIN__
|
||||
|
||||
#ifdef __WXDEBUG__
|
||||
const char *wxGetMessageName(int message)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
#endif //__WXDEBUG__
|
||||
|
||||
// Find the wxWindow at the current mouse position, returning the mouse
|
||||
// position.
|
||||
wxWindow* wxFindWindowAtPointer(wxPoint& pt)
|
||||
|
Reference in New Issue
Block a user