X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6c78066f22deac771842e2e784772415486329e1..69358718959f700434643f341bfee8f38b55cbb7:/samples/propgrid/tests.cpp diff --git a/samples/propgrid/tests.cpp b/samples/propgrid/tests.cpp index 7d04a32313..331e7e8a09 100644 --- a/samples/propgrid/tests.cpp +++ b/samples/propgrid/tests.cpp @@ -616,6 +616,9 @@ bool FormMain::RunTests( bool fullTest, bool interactive ) dt2.SetYear(dt2.GetYear()-10); #endif + wxColour colWithAlpha(1, 128, 254, 100); + wxString colWithAlphaStr(colWithAlpha.GetAsString(wxC2S_CSS_SYNTAX)); + #define FLAG_TEST_SET1 (wxCAPTION|wxCLOSE_BOX|wxSYSTEM_MENU|wxRESIZE_BORDER) #define FLAG_TEST_SET2 (wxSTAY_ON_TOP|wxCAPTION|wxICONIZE|wxSYSTEM_MENU) @@ -752,6 +755,25 @@ bool FormMain::RunTests( bool fullTest, bool interactive ) wxLogDebug("Did not match: Car.Convertible=%s", pgman->GetPropertyValueAsString("Car.Convertible").c_str()); RT_FAILURE(); } + + // SetPropertyValueString for special cases such as wxColour + pgman->SetPropertyValueString("ColourProperty", "(123,4,255)"); + col << pgman->GetPropertyValue("ColourProperty"); + if ( col != wxColour(123, 4, 255) ) + RT_FAILURE(); + pgman->SetPropertyValueString("ColourProperty", "#FE860B"); + col << pgman->GetPropertyValue("ColourProperty"); + if ( col != wxColour(254, 134, 11) ) + RT_FAILURE(); + + pgman->SetPropertyValueString("ColourPropertyWithAlpha", + "(10, 20, 30, 128)"); + col << pgman->GetPropertyValue("ColourPropertyWithAlpha"); + if ( col != wxColour(10, 20, 30, 128) ) + RT_FAILURE(); + if ( pgman->GetPropertyValueAsString("ColourPropertyWithAlpha") + != "(10,20,30,128)" ) + RT_FAILURE(); } { @@ -868,6 +890,27 @@ bool FormMain::RunTests( bool fullTest, bool interactive ) RT_FAILURE(); } + { + RT_START_TEST(DoubleToString) + + // Locale-specific decimal separator + wxString sep = wxString::Format("%g", 1.1)[1]; + + wxString s; + + if ( wxPropertyGrid::DoubleToString(s, 123.123, 2, true) != + wxString::Format("123%s12", sep.c_str()) ) + RT_FAILURE(); + if ( wxPropertyGrid::DoubleToString(s, -123.123, 4, false) != + wxString::Format("-123%s1230", sep.c_str()) ) + RT_FAILURE(); + if ( wxPropertyGrid::DoubleToString(s, -0.02, 1, false) != + wxString::Format("0%s0", sep) ) + RT_FAILURE(); + if ( wxPropertyGrid::DoubleToString(s, -0.000123, 3, true) != "0" ) + RT_FAILURE(); + } + { wxPropertyGridPage* page1; wxPropertyGridPage* page2; @@ -1030,13 +1073,17 @@ bool FormMain::RunTests( bool fullTest, bool interactive ) wxPGProperty* p; wxPGProperty* origParent = - pgman->GetProperty(wxT("Window Styles"))->GetParent(); + pgman->GetProperty("Window Styles")->GetParent(); - p = pgman->RemoveProperty(wxT("Window Styles")); + // For testing purposes, let's set some custom cell colours + p = pgman->GetProperty("Window Styles"); + p->SetCell(2, wxPGCell("style")); + p = pgman->RemoveProperty("Window Styles"); pgman->Refresh(); pgman->Update(); pgman->AppendIn(origParent, p); + wxASSERT( p->GetCell(2).GetText() == "style"); pgman->Refresh(); pgman->Update(); } @@ -1131,7 +1178,7 @@ bool FormMain::RunTests( bool fullTest, bool interactive ) InitPanel(); const int trySplitterPos = 50; - + int style = wxPG_AUTO_SORT; // wxPG_SPLITTER_AUTO_CENTER; pgman = m_pPropGridManager = new wxPropertyGridManager(m_panel, wxID_ANY,