Ticket #16768: wxt16768.cpp

File wxt16768.cpp, 1.8 KB (added by ravenspoint, 6 years ago)

minimal complete program showing problem

Line 
1
2
3#include <wx/propgrid/propgrid.h>
4
5#include <wx/app.h>
6#include <wx/frame.h>
7#include <wx/stattext.h>
8
9class wxt16768App : public wxApp
10{
11    public:
12        virtual bool OnInit();
13};
14
15
16IMPLEMENT_APP(wxt16768App);
17
18class wxt16768_frame: public wxFrame
19{
20    public:
21        wxt16768_frame(wxFrame *frame, const wxString& title);
22
23};
24
25wxt16768_frame::wxt16768_frame(wxFrame *frame, const wxString& title)
26    : wxFrame(frame, -1, title)
27{
28
29// Create prop grid with three items
30    wxPropertyGrid * pg = new wxPropertyGrid( this, -1, wxPoint( 5,5), wxSize(300,70) );
31    pg->Append(  new wxStringProperty( "A", wxPG_LABEL, "av") ) ;
32    pg->Append(  new wxStringProperty( "B", wxPG_LABEL, "bv") ) ;
33    pg->Append(  new wxStringProperty( "C", wxPG_LABEL, "cv") ) ;
34
35// iterate over items
36    wxString msg1;
37    wxPropertyGridIterator it;
38    for ( it = pg->GetIterator( ); !it.AtEnd();      it-- )
39    {
40        // add item label and value to string
41        wxPGProperty* p = *it;
42        msg1 += p->GetLabel() + " : " + p->GetValueAsString() + "\n";
43    }
44
45    wxString msg2;
46    for ( it = pg->GetIterator(wxPG_ITERATE_DEFAULT, wxBOTTOM ); !it.AtEnd();      it-- )
47    {
48        // add item label and value to string
49        wxPGProperty* p = *it;
50        msg2 += p->GetLabel(   ) + " : " + p->GetValueAsString() + "\n";
51    }
52
53    new wxStaticText( this,-1, msg1 + " ( default ) ",
54                      wxPoint( 5,100), wxSize(-1,-1));
55    new wxStaticText( this,-1, msg2 + " ( bottom ) ",
56                      wxPoint( 200,100), wxSize(-1,-1));
57
58}
59
60bool wxt16768App::OnInit()
61{
62    wxt16768_frame* frame = new wxt16768_frame(0L, _("wxWidgets Application Template"));
63    frame->SetIcon(wxICON(aaaa)); // To Set App Icon
64    frame->Show();
65
66    return true;
67}
68