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

Method HelpPanel

src/gui/HelpPanel.cpp:263–316  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

261END_EVENT_TABLE()
262
263HelpPanel::HelpPanel(MyFrame* parent, wxWindowID id)
264 : wxPanel(parent,id), frame(parent)
265{
266 html = new HtmlView(this, frame, wxID_ANY);
267
268 html->SetFontSizes(helpfontsize);
269
270 wxBoxSizer* vbox = new wxBoxSizer(wxVERTICAL);
271 wxBoxSizer* hbox = new wxBoxSizer(wxHORIZONTAL);
272
273 // add buttons at top of html window
274 backbutt = new wxButton(this, ID::BackButton, _("<"), wxDefaultPosition, wxDefaultSize, wxBU_EXACTFIT);
275 forwbutt = new wxButton(this, ID::ForwardButton, _(">"), wxDefaultPosition, wxDefaultSize, wxBU_EXACTFIT);
276 contbutt = new wxButton(this, ID::ContentsButton, _("Contents"));
277 smallerbutt = new wxButton(this, ID::SmallerButton, _("-"), wxDefaultPosition, wxDefaultSize, wxBU_EXACTFIT);
278 biggerbutt = new wxButton(this, ID::BiggerButton, _("+"), wxDefaultPosition, wxDefaultSize, wxBU_EXACTFIT);
279
280 #ifdef __WXMAC__
281 // nicer to use smaller buttons -- also do for Win/Linux???
282 backbutt->SetWindowVariant(wxWINDOW_VARIANT_SMALL);
283 forwbutt->SetWindowVariant(wxWINDOW_VARIANT_SMALL);
284 contbutt->SetWindowVariant(wxWINDOW_VARIANT_SMALL);
285 smallerbutt->SetWindowVariant(wxWINDOW_VARIANT_SMALL);
286 biggerbutt->SetWindowVariant(wxWINDOW_VARIANT_SMALL);
287 #endif
288
289 hbox->Add(backbutt, 0, wxLEFT | wxTOP | wxBOTTOM | wxALIGN_LEFT, 10);
290 hbox->Add(forwbutt, 0, wxTOP | wxBOTTOM | wxALIGN_LEFT, 10);
291 hbox->Add(contbutt, 0, wxLEFT | wxTOP | wxBOTTOM | wxALIGN_LEFT, 10);
292 hbox->Add(smallerbutt, 0, wxLEFT | wxTOP | wxBOTTOM | wxALIGN_LEFT, 10);
293 hbox->Add(biggerbutt, 0, wxRIGHT | wxTOP | wxBOTTOM | wxALIGN_LEFT, 10);
294
295 status = new wxStaticText(this, wxID_STATIC, wxEmptyString);
296 #ifdef __WXMAC__
297 status->SetWindowVariant(wxWINDOW_VARIANT_SMALL);
298 #endif
299 wxBoxSizer* statbox = new wxBoxSizer(wxHORIZONTAL);
300 statbox->Add(status);
301 hbox->Add(statbox, 0, wxLEFT | wxALIGN_CENTER_VERTICAL, 10);
302
303 hbox->AddStretchSpacer(1);
304 vbox->Add(hbox, 0, wxALL | wxEXPAND | wxALIGN_TOP, 0);
305 vbox->Add(html, 1, wxEXPAND | wxALIGN_TOP, 0);
306 SetSizer(vbox);
307
308 // prevent HtmlView::OnSize calling LoadPage twice
309 html->canreload = false;
310 ShowHelp(helphome);
311 html->canreload = true;
312
313 // install event handlers to detect keyboard shortcuts when html window has focus
314 html->Connect(wxEVT_KEY_DOWN, wxKeyEventHandler(MyFrame::OnKeyDown), NULL, frame);
315 html->Connect(wxEVT_CHAR, wxKeyEventHandler(MyFrame::OnChar), NULL, frame);
316}
317
318// -----------------------------------------------------------------------------
319

Callers

nothing calls this directly

Calls 2

SetFontSizesMethod · 0.80
AddMethod · 0.80

Tested by

no test coverage detected