X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a286080b4fec557e1fdfb54aaee32a38e8b90629..69358718959f700434643f341bfee8f38b55cbb7:/samples/propgrid/tests.cpp diff --git a/samples/propgrid/tests.cpp b/samples/propgrid/tests.cpp index 19c18728e8..331e7e8a09 100644 --- a/samples/propgrid/tests.cpp +++ b/samples/propgrid/tests.cpp @@ -6,7 +6,7 @@ // Created: 2007-05-16 // RCS-ID: $Id$ // Copyright: (c) Jaakko Salli -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #include "wx/wxprec.h" @@ -106,7 +106,7 @@ public: void FormMain::AddTestProperties( wxPropertyGridPage* pg ) { pg->Append( new MyColourProperty(wxT("CustomColourProperty"), wxPG_LABEL, *wxGREEN) ); - pg->GetProperty(wxT("CustomColourProperty"))->SetFlag(wxPG_PROP_AUTO_UNSPECIFIED); + pg->GetProperty(wxT("CustomColourProperty"))->SetAutoUnspecified(true); pg->SetPropertyEditor( wxT("CustomColourProperty"), wxPGEditor_ComboBox ); pg->SetPropertyHelpString(wxT("CustomColourProperty"), @@ -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,