516 : wxPanel(parent)
517{
518 SetBackgroundColour(*wxWHITE);
519 SetBackgroundStyle(wxBG_STYLE_PAINT);
521
522 const int horizontal_margin = FromDIP(12);
523
524 auto sizer = new wxBoxSizer(wxVERTICAL);
525
528
529 m_btn =
new wxBitmapButton(
this, wxID_ANY,
icon_enabled, wxDefaultPosition, wxDefaultSize, wxNO_BORDER);
530 m_btn->SetBackgroundStyle(wxBG_STYLE_PAINT);
531
532 auto icon_sizer = new wxBoxSizer(wxVERTICAL);
533 icon_sizer->Add(
m_btn , 0, wxLEFT, horizontal_margin);
534
538
539 auto label_sizer = new wxBoxSizer(wxVERTICAL);
540 label_sizer->Add(
m_label, 0, wxLEFT, horizontal_margin);
541
544 label_sizer->AddSpacer(FromDIP(2));
545 label_sizer->Add(
m_disable_tip, 0, wxLEFT, horizontal_margin);
546
547 sizer->AddSpacer(FromDIP(15));
548 sizer->Add(icon_sizer, 0, wxEXPAND);
549 sizer->AddSpacer(FromDIP(10));
550 sizer->Add(label_sizer, 0, wxEXPAND);
551 sizer->AddSpacer(FromDIP(6));
552
553 auto detail_sizer = new wxBoxSizer(wxHORIZONTAL);
558
559 detail_sizer->AddStretchSpacer();
560 detail_sizer->Add(
m_detail, 0, wxALIGN_CENTER | wxLEFT | wxRIGHT, horizontal_margin);
561 detail_sizer->AddStretchSpacer();
562
563 sizer->Add(detail_sizer, 0, wxEXPAND);
564 sizer->AddSpacer(FromDIP(10));
565
566 SetSizer(sizer);
567 Layout();
568 Fit();
569
570 GUI::wxGetApp().UpdateDarkUIWin(this);
571
572 auto forward_click_to_parent = [
this](
wxMouseEvent &event) {
573 wxCommandEvent click_event(wxEVT_LEFT_DOWN, GetId());
574 click_event.SetEventObject(this);
575 this->ProcessEvent(click_event);
576 };
577
578 m_btn->Bind(wxEVT_LEFT_DOWN, forward_click_to_parent);
579 m_label->Bind(wxEVT_LEFT_DOWN, forward_click_to_parent);
580 m_detail->Bind(wxEVT_LEFT_DOWN, forward_click_to_parent);
581
585}
#define _L(s)
Definition OBJ.cpp:34
class WXDLLIMPEXP_FWD_CORE wxStaticText
Definition ProgressDialog.hpp:30
static wxFont Head_14
Definition Label.hpp:45
static wxFont Body_12
Definition Label.hpp:55
void OnEnterWindow(wxMouseEvent &event)
Definition FilamentMapPanel.cpp:643
wxBitmap icon_enabled
Definition FilamentMapPanel.hpp:91
void OnLeaveWindow(wxMouseEvent &evnet)
Definition FilamentMapPanel.cpp:653
Label * m_detail
Definition FilamentMapPanel.hpp:97
wxStaticText * m_label
Definition FilamentMapPanel.hpp:95
Label * m_disable_tip
Definition FilamentMapPanel.hpp:96
void OnPaint(wxPaintEvent &event)
Definition FilamentMapPanel.cpp:587
bool m_hover
Definition FilamentMapPanel.hpp:100
wxBitmapButton * m_btn
Definition FilamentMapPanel.hpp:94
wxBitmap icon_disabled
Definition FilamentMapPanel.hpp:92
wxMouseEvent
Definition CameraPopup.cpp:47
static const wxColour TextNormalGreyColor
Definition FilamentMapPanel.cpp:41
static const wxColour TextNormalBlackColor
Definition FilamentMapPanel.cpp:40
wxBitmap create_scaled_bitmap(const std::string &bmp_name_in, wxWindow *win, const int px_cnt, const bool grayscale, const std::string &new_color, const bool menu_bitmap, const bool resize, const bool bitmap2, const std::vector< std::string > &array_new_color)
Definition wxExtensions.cpp:448