// headers
// ----------------------------------------------------------------------------
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
- #pragma implementation "button.h"
-#endif
-
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#include "wx/dcscreen.h"
#include "wx/frame.h"
#include "wx/dialog.h"
- #include "wx/stockitem.h"
#endif
+#include "wx/stockitem.h"
+
+#include <Control.h>
+#include <Form.h>
+
// ----------------------------------------------------------------------------
// macros
// ----------------------------------------------------------------------------
wxPoint palmPos(pos);
if((palmPos.x==wxDefaultCoord)||(palmPos.y==wxDefaultCoord))
{
- wxSize parentSize(parent->GetSize());
+ wxSize parentSize(parent->GetClientSize());
wxWindow* parentTLW = parent;
while ( parentTLW && !parentTLW->IsTopLevel() )
{
if(wxDynamicCast(parentTLW, wxFrame)!=NULL)
{
if(palmPos.x==wxDefaultCoord)
- palmPos.x = 1;
+ palmPos.x = 0;
if(palmPos.y==wxDefaultCoord)
palmPos.y = parentSize.y-palmSize.y;
}
else if(wxDynamicCast(parentTLW, wxDialog)!=NULL)
{
if(palmPos.x==wxDefaultCoord)
- palmPos.x = 5;
+ palmPos.x = 4;
if(palmPos.y==wxDefaultCoord)
palmPos.y = parentSize.y-palmSize.y-5;
}
// take the stock label
wxString palmLabel = label;
if( palmLabel.empty() && wxIsStockID(id) )
- palmLabel = wxGetStockLabel(id);
+ palmLabel = wxGetStockLabel(id, false);
+
+ if(!wxControl::Create(parent, id, palmPos, palmSize, style, validator, name))
+ return false;
- wxControl::PalmCreateControl(buttonCtl, parent, id, palmLabel, palmPos, palmSize);
- return true;
+ return wxControl::PalmCreateControl(buttonCtl, palmLabel, palmPos, palmSize);
}
wxButton::~wxButton()
void wxButton::SetDefault()
{
- FormType* form = GetParentForm();
+ FormType* form = (FormType* )GetParentForm();
if(form==NULL)
return;
FrmSetDefaultButtonID(form,GetId());
bool wxButton::SendClickEvent()
{
- return false;
+ wxCommandEvent event(wxEVT_COMMAND_BUTTON_CLICKED, GetId());
+ event.SetEventObject(this);
+ return ProcessCommand(event);
}
void wxButton::Command(wxCommandEvent &event)
{
+ ProcessCommand(event);
}
#endif // wxUSE_BUTTON