diff options
Diffstat (limited to 'support/dktools/WxdkdrawDlgBoxRadius.wxc')
-rw-r--r-- | support/dktools/WxdkdrawDlgBoxRadius.wxc | 367 |
1 files changed, 0 insertions, 367 deletions
diff --git a/support/dktools/WxdkdrawDlgBoxRadius.wxc b/support/dktools/WxdkdrawDlgBoxRadius.wxc deleted file mode 100644 index f10b033b8f..0000000000 --- a/support/dktools/WxdkdrawDlgBoxRadius.wxc +++ /dev/null @@ -1,367 +0,0 @@ -%% options -copyright owner = Dirk Krause -copyright year = 2020-xxxx -SPDX-License-Identifier: BSD-3-Clause - -%% wx-gui - -type = dialog -contents = sizerHorizontal - -[wxBoxSizer sizerHorizontal] -direction = horizontal -contents = $space(10) -contents = sizerVertical -contents = $space(10) - -[wxBoxSizer sizerVertical] -direction = vertical -contents = $space(10) -contents = sizerContents centered-x -contents = $space(10) -contents = sizerButtons centered-x -contents = $space(10) - -[wxGridBagSizer sizerContents] -grid = 5 5 -grow = yes -contents = lRadius 0 0 1 1 left centered-y -contents = tRadius . +1 1 1 left centered-y -contents = tUnit . +1 1 1 left centered-y -contents = slRadius +1 0 1 3 centered-x -growable column = 1 - -[wxStaticText lRadius] -text = pTexts[502] - -[wxStaticText tRadius] -text = sNlWx[7] - -[wxStaticText tUnit] -text = pTexts[szUnitIndex] - -[wxSlider slRadius] -id = WXD_ID_RADIUS -range = 0 10 -value = 0 -direction = horizontal -grow = yes - -[wxStdDialogButtonSizer sizerButtons] -grow = yes -contents = buttonOK -contents = buttonCancel - -[wxButton buttonOK] -id = wxID_OK -text = pTexts[476] -tip = pTexts[478] - -[wxButton buttonCancel] -id = wxID_CANCEL -text = pTexts[477] -tip = pTexts[479] - - -%% header start - -#ifndef WXDKDRAW_H_INCLUDED -#include "wxdkdraw.h" -#endif - -#ifndef WXDKDRAWFRAME_H_INCLUDED -#include "WxdkdrawFrame.h" -#endif - -%% class start - - -/** The box radius dialog lets the user choose the box radius using a slider. -*/ -class WxdkdrawDlgBoxRadius : public wxDialog -{ - private: - - /** Events to process. - */ -#if wxCHECK_VERSION(3,0,0) - wxDECLARE_EVENT_TABLE(); -#else - DECLARE_EVENT_TABLE() -#endif - -%% class end - - protected: - - /** Parent frame. - */ - WxdkdrawFrame *m_pParent; - - /** Drawing control to refresh on changes. - */ - wxControl *m_pControl; - - /** Entire drawing. - */ - Wxd_drawing_t *m_pDrw; - - /** Object to modify. - */ - Wxd_object_t *m_pObject; - - /** Localized text fragments. - */ - wxChar const * const *m_sTexts; - - /** Not localized text fragments. - */ - wxChar const * const *m_sNlWx; - - /** Divisor to calculate inches or cm. - */ - double m_dDivisor; - - /** Original diameter. - */ - uint32_t m_uOriginalRadius; - - /** Step length. - */ - uint32_t m_uStepLength; - - /** Maximum number of steps. - */ - int m_iRangeMax; - - public: - - /** Slider control events. - */ - enum { - WXD_ID_RADIUS = (wxID_HIGHEST + 1) /**< Diameter changed. */ - }; - - /** Constructor. - @param pParent Parent frame (programs main window). - @param pControl Drawing control to refresh on changes. - @param pDrw Drawing. - @param pObject Box object to change radius for. - @param pTexts Localized text fragments. - @param sNlWx Non-localized text fragments. - @param uStepLength Slider step size. - @param iRangeMax Range maximum for slider (minimum is 0). - @param szUnitIndex Unit name index in pTexts. - */ - WxdkdrawDlgBoxRadius( - WxdkdrawFrame *pParent, - wxControl *pControl, - Wxd_drawing_t *pDrw, - Wxd_object_t *pObject, - wxChar const * const *pTexts, - wxChar const * const *sNlWx, - uint32_t uStepLength, - int iRangeMax, - size_t szUnitIndex - ); - - /** OK button handler. - @param event Event to process. - */ - void - OnOK(wxCommandEvent & event); - - /** Cancel button handler. - @param event Event to process. - */ - void - OnCancel(wxCommandEvent & event); - - /** Slider event handler. - @param event Event to process. - */ - void - OnRadius(wxCommandEvent & event); - -}; - - -%% header end - - -%% module start - -#ifndef WXDKDRAWDLGDOTFILLED_H_INCLUDED -#include "WxdkdrawDlgBoxRadius.h" -#endif - - -$!trace-include - - -/** Events to process in this dialog. -*/ -#if wxCHECK_VERSION(3,0,0) -wxBEGIN_EVENT_TABLE(WxdkdrawDlgBoxRadius,wxDialog) -#else -BEGIN_EVENT_TABLE(WxdkdrawDlgBoxRadius,wxDialog) -#endif - EVT_BUTTON(\ - wxID_OK,\ - WxdkdrawDlgBoxRadius::OnOK\ - ) - EVT_BUTTON(\ - wxID_CANCEL,\ - WxdkdrawDlgBoxRadius::OnCancel\ - ) - EVT_SLIDER(\ - WxdkdrawDlgBoxRadius::WXD_ID_RADIUS,\ - WxdkdrawDlgBoxRadius::OnRadius\ - ) -#if wxCHECK_VERSION(3,0,0) -wxEND_EVENT_TABLE() -#else -END_EVENT_TABLE() -#endif - - -%% constructor start - -WxdkdrawDlgBoxRadius::WxdkdrawDlgBoxRadius( - WxdkdrawFrame *pParent, - wxControl *pControl, - Wxd_drawing_t *pDrw, - Wxd_object_t *pObject, - wxChar const * const *pTexts, - wxChar const * const *sNlWx, - uint32_t uStepLength, - int iRangeMax, - size_t szUnitIndex -) : wxDialog( - pParent, wxID_ANY, pTexts[574], - wxDefaultPosition, wxDefaultSize, - ( - (wxDEFAULT_DIALOG_STYLE) - & (~(wxRESIZE_BORDER)) - & (~(wxCLOSE_BOX)) - & (~(wxSYSTEM_MENU)) - ) -) -{ - $? "+ WxdkdrawDlgBoxRadius" - $? ". uStepLength = %lu", (unsigned long)uStepLength - $? ". iRangeMax = %d", iRangeMax - $? ". szUnitIndex = %u", (unsigned)szUnitIndex - m_pParent = pParent; - m_pControl = pControl; - m_pDrw = pDrw; - m_pObject = pObject; - m_sTexts = pTexts; - m_sNlWx = sNlWx; - m_uStepLength = uStepLength; - m_iRangeMax = iRangeMax; - - m_uOriginalRadius = (pObject->det).b.r; - m_dDivisor = ((((size_t)501U) == szUnitIndex) ? (CMWXD) : (RESWXD)); - -%% constructor end - if (dkctGUILayoutOK) { - /* - Fix dialog size - */ - wxSize minsize = GetMinSize(); - SetMaxSize(minsize); - /* - Retrieve object attributes - */ - slRadius->SetRange(0, iRangeMax); - { - wxString s; - s.Printf(wxT("%g"), ((double)m_uOriginalRadius / m_dDivisor)); - tRadius->SetLabel(s); - } - { - int v; - v = (int)(m_uOriginalRadius / uStepLength); - if ( - (m_uOriginalRadius % uStepLength) - >= (uStepLength / (uint32_t)2UL) - ) { - v++; - } - slRadius->SetValue(v); - } - } - $? "- WxdkdrawDlgBoxRadius" -} - - -%% module end - - -void -WxdkdrawDlgBoxRadius::OnOK(wxCommandEvent & WXUNUSED(event)) -{ - if(IsModal()) { - EndModal(wxID_OK); - } - else { - SetReturnCode(wxID_OK); - Show(false); - } -} - - - -void -WxdkdrawDlgBoxRadius::OnCancel(wxCommandEvent & WXUNUSED(event)) -{ - (m_pObject->det).b.r = m_uOriginalRadius; - if(IsModal()) { - EndModal(wxID_CANCEL); - } - else { - SetReturnCode(wxID_CANCEL); - Show(false); - } -} - - - -void -WxdkdrawDlgBoxRadius::OnRadius(wxCommandEvent & WXUNUSED(event)) -{ - dk4_er_t er; - uint32_t r; - int v; - $? "+ OnRadius" - v = slRadius->GetValue(); $? ". v = %d", v - dk4error_init(&er); - r = dk4ma_uint32_t_mul(m_uStepLength, (uint32_t)v, &er); - $? ". r = %lu", (unsigned long)r - if (DK4_E_NONE == er.ec) { - (m_pObject->det).b.r = r; - wxdobj_drw_require_redraw(m_pDrw, WXD_REFRESH_MARKUP); - m_pControl->Refresh(); - m_pParent->Update(); - { - wxString s; - s.Printf(wxT("%g"), ((double)r / m_dDivisor)); - tRadius->SetLabel(s); - } - Refresh(); - Update(); - } - else { - /* ERROR: Overflow */ - wxMessageBox( - m_sTexts[504], m_sTexts[503], (wxOK | wxCENTRE | wxICON_ERROR) - ); - } - $? "- OnRadius" -} - - - -/* vim: set ai sw=4 ts=4 : */ - |