/* Copyright (C) 2019-2020, Dirk Krause SPDX-License-Identifier: BSD-3-Clause */ /* WARNING: This file was generated by the dkct program (see http://dktools.sourceforge.net/ for details). Changes you make here will be lost if dkct is run again! You should modify the original source and run dkct on it. Original source: WxdkdrawDlgLineCap.wxc */ /** @file WxdkdrawDlgLineCap.cpp The WxdkdrawDlgLineCap module. */ #line 146 "WxdkdrawDlgLineCap.wxc" #ifndef WXDKDRAWDLGLINECAP_H_INCLUDED #include "WxdkdrawDlgLineCap.h" #endif #line 153 "WxdkdrawDlgLineCap.wxc" /** Assign functions to events. */ #if wxCHECK_VERSION(3,0,0) wxBEGIN_EVENT_TABLE(WxdkdrawDlgLineCap,wxDialog) #else BEGIN_EVENT_TABLE(WxdkdrawDlgLineCap,wxDialog) #endif EVT_BUTTON(\ WxdkdrawDlgLineCap::WXD_ID_LC_BUTTED,\ WxdkdrawDlgLineCap::OnLineCap\ ) EVT_BUTTON(\ WxdkdrawDlgLineCap::WXD_ID_LC_ROUNDED,\ WxdkdrawDlgLineCap::OnLineCap\ ) EVT_BUTTON(\ WxdkdrawDlgLineCap::WXD_ID_LC_PROJECTING,\ WxdkdrawDlgLineCap::OnLineCap\ ) EVT_BUTTON(\ wxID_CANCEL,\ WxdkdrawDlgLineCap::OnCancel\ ) #if wxCHECK_VERSION(3,0,0) wxEND_EVENT_TABLE() #else END_EVENT_TABLE() #endif #line 188 "WxdkdrawDlgLineCap.wxc" WxdkdrawDlgLineCap::WxdkdrawDlgLineCap( WxdkdrawFrame *pParent, Wxd_object_t *pObject, wxChar const * const *pTexts, const char ** const *pImages, bool bDrwElem ) : wxDialog( pParent, wxID_ANY, pTexts[245], wxDefaultPosition, wxDefaultSize, ( (wxDEFAULT_DIALOG_STYLE) & (~(wxRESIZE_BORDER)) & (~(wxCLOSE_BOX)) & (~(wxSYSTEM_MENU)) ) ) { m_pParent = pParent; m_pObject = pObject; m_bDrwElem = bDrwElem; m_uLineCapOriginal = pObject->cs; if (WXD_LC_PROJECTING < m_uLineCapOriginal) { m_uLineCapOriginal = WXD_LC_PROJECTING; } m_uLineCapCurrent = m_uLineCapOriginal; dkctGUILayoutOK = false; sizerHorizontal = NULL; sizerVertical = NULL; sizerButtons = NULL; buttonCancel = NULL; buttonButted = NULL; buttonRounded = NULL; buttonProjecting = NULL; sizerHorizontal = new wxBoxSizer( wxHORIZONTAL ); if(!(sizerHorizontal)) { goto dkctGUILayoutFinished; } sizerHorizontal->Add(10, 10, 0); sizerVertical = new wxBoxSizer( wxVERTICAL ); if(!(sizerVertical)) { goto dkctGUILayoutFinished; } sizerVertical->Add(10, 10, 0); sizerButtons = new wxBoxSizer( wxHORIZONTAL ); if(!(sizerButtons)) { goto dkctGUILayoutFinished; } buttonButted = new wxBitmapButton( this, WXD_ID_LC_BUTTED, pImages[0] ); if(!(buttonButted)) { goto dkctGUILayoutFinished; } buttonButted->SetToolTip(pTexts[246]); sizerButtons->Add( buttonButted, 0, wxALIGN_CENTER_VERTICAL ); sizerButtons->Add(10, 10, 0); buttonRounded = new wxBitmapButton( this, WXD_ID_LC_ROUNDED, pImages[1] ); if(!(buttonRounded)) { goto dkctGUILayoutFinished; } buttonRounded->SetToolTip(pTexts[247]); sizerButtons->Add( buttonRounded, 0, wxALIGN_CENTER_VERTICAL ); sizerButtons->Add(10, 10, 0); buttonProjecting = new wxBitmapButton( this, WXD_ID_LC_PROJECTING, pImages[2] ); if(!(buttonProjecting)) { goto dkctGUILayoutFinished; } buttonProjecting->SetToolTip(pTexts[248]); sizerButtons->Add( buttonProjecting, 0, wxALIGN_CENTER_VERTICAL ); sizerVertical->Add( sizerButtons, 0, wxALIGN_CENTER_HORIZONTAL ); sizerVertical->Add(10, 10, 0); buttonCancel = new wxButton( this, wxID_CANCEL, pTexts[249] ); if(!(buttonCancel)) { goto dkctGUILayoutFinished; } buttonCancel->SetToolTip(pTexts[250]); sizerVertical->Add( buttonCancel, 0, wxALIGN_CENTER_HORIZONTAL ); sizerVertical->Add(10, 10, 0); sizerHorizontal->Add( sizerVertical ); sizerHorizontal->Add(10, 10, 0); SetSizer(sizerHorizontal); dkctGUILayoutOK = true; dkctGUILayoutFinished: if(dkctGUILayoutOK) { sizerHorizontal->Fit(this); sizerHorizontal->SetSizeHints(this); } #line 214 "WxdkdrawDlgLineCap.wxc" if (dkctGUILayoutOK) { wxSize minsize = GetMinSize(); SetMaxSize(minsize); } } #line 223 "WxdkdrawDlgLineCap.wxc" void WxdkdrawDlgLineCap::OnLineCap(wxCommandEvent & event) { bool bDoRefresh = false; switch (event.GetId()) { case WXD_ID_LC_ROUNDED : { m_uLineCapCurrent = WXD_LC_ROUNDED; } break; case WXD_ID_LC_PROJECTING : { m_uLineCapCurrent = WXD_LC_PROJECTING; } break; default : { m_uLineCapCurrent = WXD_LC_BUTTED; } break; } if ((m_bDrwElem) && (m_uLineCapCurrent != m_uLineCapOriginal)) { bDoRefresh = true; } m_pObject->cs = m_uLineCapCurrent; if (bDoRefresh) { m_pParent->RequireRedraw(WXD_REFRESH_DRAWING); } if(IsModal()) { EndModal(wxID_OK); } else { SetReturnCode(wxID_OK); Show(false); } } void WxdkdrawDlgLineCap::OnCancel(wxCommandEvent & WXUNUSED(event)) { if(IsModal()) { EndModal(wxID_CANCEL); } else { SetReturnCode(wxID_CANCEL); Show(false); } } /* vim: set ai sw=4 ts=4 : */