Use parents client size and origin in placement of controls.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31914 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Włodzimierz Skiba
2005-02-11 06:56:47 +00:00
parent 6bee5ffba4
commit be4e4e27aa
4 changed files with 45 additions and 16 deletions

View File

@@ -117,15 +117,23 @@ bool wxControl::PalmCreateControl(ControlStyleType style,
if(form==NULL)
return false;
wxCoord x = pos.x == wxDefaultCoord ? 0 : pos.x,
y = pos.y == wxDefaultCoord ? 0 : pos.y,
w = size.x == wxDefaultCoord ? 1 : size.x,
h = size.y == wxDefaultCoord ? 1 : size.y;
AdjustForParentClientOrigin(x, y);
ControlType *control = CtlNewControl(
(void **)&form,
GetId(),
style,
wxEmptyString,
( pos.x == wxDefaultCoord ) ? winUndefConstraint : pos.x,
( pos.y == wxDefaultCoord ) ? winUndefConstraint : pos.y,
( size.x == wxDefaultCoord ) ? winUndefConstraint : size.x,
( size.y == wxDefaultCoord ) ? winUndefConstraint : size.y,
x,
y,
w,
h,
stdFont,
groupID,
true
@@ -136,6 +144,7 @@ bool wxControl::PalmCreateControl(ControlStyleType style,
m_palmControl = true;
SetInitialBestSize(size);
SetLabel(label);
Show();
return true;
@@ -154,13 +163,20 @@ bool wxControl::PalmCreateField(const wxString& label,
m_label = label;
wxCoord x = pos.x == wxDefaultCoord ? 0 : pos.x,
y = pos.y == wxDefaultCoord ? 0 : pos.y,
w = size.x == wxDefaultCoord ? 1 : size.x,
h = size.y == wxDefaultCoord ? 1 : size.y;
AdjustForParentClientOrigin(x, y);
FieldType *field = FldNewField(
(void **)&form,
GetId(),
( pos.x == wxDefaultCoord ) ? winUndefConstraint : pos.x,
( pos.y == wxDefaultCoord ) ? winUndefConstraint : pos.y,
( size.x == wxDefaultCoord ) ? winUndefConstraint : size.x,
( size.y == wxDefaultCoord ) ? winUndefConstraint : size.y,
x,
y,
w,
h,
stdFont,
10,
editable,
@@ -178,8 +194,9 @@ bool wxControl::PalmCreateField(const wxString& label,
m_palmField = true;
Show();
SetInitialBestSize(size);
SetLabel(label);
Show();
return true;
}