Dialog Editor bug fixes, several other small ones
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@957 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -960,26 +960,31 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, wxExpr *expr)
|
||||
}
|
||||
controlItem->SetStringValues(stringList);
|
||||
count ++;
|
||||
|
||||
// This is now obsolete: it's in the window style.
|
||||
// Check for wxSINGLE/wxMULTIPLE
|
||||
wxExpr *mult = (wxExpr *) NULL;
|
||||
/*
|
||||
controlItem->SetValue1(wxLB_SINGLE);
|
||||
*/
|
||||
if ((mult = expr->Nth(count)) && ((mult->Type() == PrologString)||(mult->Type() == PrologWord)))
|
||||
{
|
||||
/*
|
||||
wxString m(mult->StringValue());
|
||||
if (m == "wxMULTIPLE")
|
||||
if (m == "wxLB_MULTIPLE")
|
||||
controlItem->SetValue1(wxLB_MULTIPLE);
|
||||
else if (m == "wxEXTENDED")
|
||||
else if (m == "wxLB_EXTENDED")
|
||||
controlItem->SetValue1(wxLB_EXTENDED);
|
||||
*/
|
||||
// Ignore the value
|
||||
count ++;
|
||||
if (expr->Nth(count) && expr->Nth(count)->Type() == PrologList)
|
||||
{
|
||||
// controlItem->SetLabelFont(wxResourceInterpretFontSpec(expr->Nth(count)));
|
||||
}
|
||||
if (expr->Nth(count) && expr->Nth(count)->Type() == PrologList)
|
||||
{
|
||||
// controlItem->SetLabelFont(wxResourceInterpretFontSpec(expr->Nth(count)));
|
||||
count ++;
|
||||
if (expr->Nth(count) && expr->Nth(count)->Type() == PrologList)
|
||||
controlItem->SetFont(wxResourceInterpretFontSpec(expr->Nth(count)));
|
||||
}
|
||||
}
|
||||
if (expr->Nth(count) && expr->Nth(count)->Type() == PrologList)
|
||||
controlItem->SetFont(wxResourceInterpretFontSpec(expr->Nth(count)));
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (controlType == "wxChoice")
|
||||
|
@@ -42,6 +42,8 @@ BEGIN_EVENT_TABLE(wxTextValidator, wxValidator)
|
||||
END_EVENT_TABLE()
|
||||
#endif
|
||||
|
||||
static bool wxIsNumeric(const wxString& val);
|
||||
|
||||
wxTextValidator::wxTextValidator(long style, wxString *val)
|
||||
{
|
||||
m_validatorStyle = style ;
|
||||
@@ -169,7 +171,8 @@ bool wxTextValidator::Validate(wxWindow *parent)
|
||||
wxMessageBox(buf,_("Validation conflict"), wxOK | wxICON_EXCLAMATION, parent);
|
||||
return FALSE;
|
||||
}
|
||||
if ( (m_validatorStyle & wxFILTER_NUMERIC) && !val.IsNumber())
|
||||
if ( (m_validatorStyle & wxFILTER_NUMERIC) && !wxIsNumeric(val))
|
||||
|
||||
{
|
||||
char buf[512];
|
||||
sprintf(buf, _("%s should be numeric."), (const char *)val);
|
||||
@@ -291,4 +294,14 @@ void wxTextValidator::OnChar(wxKeyEvent& event)
|
||||
textCtrl->wxTextCtrl::OnChar(event);
|
||||
}
|
||||
|
||||
static bool wxIsNumeric(const wxString& val)
|
||||
{
|
||||
int i;
|
||||
for ( i = 0; i < (int)val.Length(); i++)
|
||||
{
|
||||
if ((!isdigit(val[i])) && (val[i] != '.'))
|
||||
return FALSE;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
@@ -927,7 +927,7 @@ void wxGenericGrid::AdjustScrollbars(void)
|
||||
int noHorizSteps = 0;
|
||||
int noVertSteps = 0;
|
||||
|
||||
if (m_totalGridWidth <= cw)
|
||||
if (m_totalGridWidth + vertScrollBarWidth <= cw)
|
||||
noHorizSteps = 0;
|
||||
else
|
||||
{
|
||||
@@ -954,7 +954,7 @@ void wxGenericGrid::AdjustScrollbars(void)
|
||||
|
||||
noHorizSteps += nx;
|
||||
}
|
||||
if (m_totalGridHeight <= ch)
|
||||
if (m_totalGridHeight + horizScrollBarHeight <= ch)
|
||||
noVertSteps = 0;
|
||||
else
|
||||
{
|
||||
@@ -981,7 +981,7 @@ void wxGenericGrid::AdjustScrollbars(void)
|
||||
noVertSteps += ny;
|
||||
}
|
||||
|
||||
if (m_totalGridWidth <= cw)
|
||||
if (m_totalGridWidth + vertScrollBarWidth <= cw)
|
||||
{
|
||||
if ( m_hScrollBar )
|
||||
m_hScrollBar->Show(FALSE);
|
||||
@@ -993,7 +993,7 @@ void wxGenericGrid::AdjustScrollbars(void)
|
||||
m_hScrollBar->Show(TRUE);
|
||||
}
|
||||
|
||||
if (m_totalGridHeight <= ch)
|
||||
if (m_totalGridHeight + horizScrollBarHeight <= ch)
|
||||
{
|
||||
if ( m_vScrollBar )
|
||||
m_vScrollBar->Show(FALSE);
|
||||
|
@@ -463,7 +463,11 @@ wxTextCtrl* wxListCtrl::GetEditControl(void) const
|
||||
bool wxListCtrl::GetItem(wxListItem& info) const
|
||||
{
|
||||
LV_ITEM lvItem;
|
||||
#ifdef __MINGW32__
|
||||
memset(&lvItem, 0, sizeof(lvItem));
|
||||
#else
|
||||
ZeroMemory(&lvItem, sizeof(lvItem)); // must set all fields to 0
|
||||
#endif
|
||||
|
||||
lvItem.iItem = info.m_itemId;
|
||||
|
||||
|
@@ -433,6 +433,12 @@ bool wxWindow::Create(wxWindow *parent, wxWindowID id,
|
||||
int width = size.x;
|
||||
int height = size.y;
|
||||
|
||||
// To be consistent with wxGTK
|
||||
if (width == -1)
|
||||
width = 20;
|
||||
if (height == -1)
|
||||
height = 20;
|
||||
|
||||
wxSystemSettings settings;
|
||||
|
||||
m_backgroundColour = settings.GetSystemColour(wxSYS_COLOUR_WINDOW) ; ;
|
||||
|
Reference in New Issue
Block a user