MCPcopy Create free account
hub / github.com/GollyGang/ready / XYZIntDialog

Method XYZIntDialog

src/gui/dialogs.cpp:58–120  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

56// =============================================================================
57
58XYZIntDialog::XYZIntDialog(wxWindow* parent, const wxString& title,
59 int inx, int iny, int inz,
60 const wxPoint& pos, const wxSize& size)
61{
62 Create(parent, wxID_ANY, title, pos, size);
63
64 // create the controls
65 wxBoxSizer* vbox = new wxBoxSizer(wxVERTICAL);
66 SetSizer(vbox);
67
68 wxStaticText* promptlabel = new wxStaticText(this, wxID_STATIC, _("Enter new X, Y, Z values:"));
69
70 xbox = new wxTextCtrl(this, wxID_ANY, wxString::Format(wxT("%d"),inx), wxDefaultPosition, wxSize(50,wxDefaultCoord));
71 ybox = new wxTextCtrl(this, wxID_ANY, wxString::Format(wxT("%d"),iny), wxDefaultPosition, wxSize(50,wxDefaultCoord));
72 zbox = new wxTextCtrl(this, wxID_ANY, wxString::Format(wxT("%d"),inz), wxDefaultPosition, wxSize(50,wxDefaultCoord));
73
74 wxBoxSizer* hbox = new wxBoxSizer(wxHORIZONTAL);
75
76 hbox->AddStretchSpacer(1);
77
78 hbox->Add(new wxStaticText(this, wxID_STATIC, wxT("X = ")), 0, wxALIGN_CENTER_VERTICAL, 0);
79 hbox->Add(xbox, 0, wxALIGN_CENTER_VERTICAL, 0);
80
81 hbox->AddStretchSpacer(1);
82
83 hbox->Add(new wxStaticText(this, wxID_STATIC, wxT("Y = ")), 0, wxALIGN_CENTER_VERTICAL, 0);
84 hbox->Add(ybox, 0, wxALIGN_CENTER_VERTICAL, 0);
85
86 hbox->AddStretchSpacer(1);
87
88 hbox->Add(new wxStaticText(this, wxID_STATIC, wxT("Z = ")), 0, wxALIGN_CENTER_VERTICAL, 0);
89 hbox->Add(zbox, 0, wxALIGN_CENTER_VERTICAL, 0);
90
91 hbox->AddStretchSpacer(1);
92
93 wxSizer* stdbutts = CreateButtonSizer(wxOK | wxCANCEL);
94
95 // position the controls
96 wxBoxSizer* buttbox = new wxBoxSizer(wxHORIZONTAL);
97 buttbox->Add(stdbutts, 1, wxGROW | wxRIGHT, STDHGAP);
98 wxSize minsize = buttbox->GetMinSize();
99 if (minsize.GetWidth() < 250) {
100 minsize.SetWidth(250);
101 buttbox->SetMinSize(minsize);
102 }
103
104 vbox->AddSpacer(12);
105 vbox->Add(promptlabel, 0, wxLEFT | wxRIGHT, 10);
106 vbox->AddSpacer(10);
107 vbox->Add(hbox, 0, wxALL | wxEXPAND | wxALIGN_TOP, 0);
108 vbox->AddSpacer(12);
109 vbox->Add(buttbox, 1, wxGROW | wxTOP | wxBOTTOM, 10);
110
111 GetSizer()->Fit(this);
112 GetSizer()->SetSizeHints(this);
113
114 if (pos == wxDefaultPosition) Centre();
115 if (size != wxDefaultSize) SetSize(size);

Callers

nothing calls this directly

Calls 1

AddMethod · 0.80

Tested by

no test coverage detected