Converted PNS Length Tuning dialog to use TransferData{From,To}Window()
Fixes: lp:1783694 * https://bugs.launchpad.net/kicad/+bug/1783694
This commit is contained in:
parent
1e43773a95
commit
dbf4bcdbb7
|
@ -1,7 +1,7 @@
|
||||||
/*
|
/*
|
||||||
* KiRouter - a push-and-(sometimes-)shove PCB router
|
* KiRouter - a push-and-(sometimes-)shove PCB router
|
||||||
*
|
*
|
||||||
* Copyright (C) 2014-2015 CERN
|
* Copyright (C) 2014-2018 CERN
|
||||||
* Copyright (C) 2016 KiCad Developers, see AUTHORS.txt for contributors.
|
* Copyright (C) 2016 KiCad Developers, see AUTHORS.txt for contributors.
|
||||||
* Author: Tomasz Wlostowski <tomasz.wlostowski@cern.ch>
|
* Author: Tomasz Wlostowski <tomasz.wlostowski@cern.ch>
|
||||||
*
|
*
|
||||||
|
@ -29,6 +29,8 @@
|
||||||
#include <bitmaps.h>
|
#include <bitmaps.h>
|
||||||
#include <draw_frame.h>
|
#include <draw_frame.h>
|
||||||
|
|
||||||
|
// TODO validators
|
||||||
|
|
||||||
DIALOG_PNS_LENGTH_TUNING_SETTINGS::DIALOG_PNS_LENGTH_TUNING_SETTINGS( EDA_DRAW_FRAME* aParent,
|
DIALOG_PNS_LENGTH_TUNING_SETTINGS::DIALOG_PNS_LENGTH_TUNING_SETTINGS( EDA_DRAW_FRAME* aParent,
|
||||||
PNS::MEANDER_SETTINGS& aSettings, PNS::ROUTER_MODE aMode )
|
PNS::MEANDER_SETTINGS& aSettings, PNS::ROUTER_MODE aMode )
|
||||||
:
|
:
|
||||||
|
@ -40,7 +42,21 @@ DIALOG_PNS_LENGTH_TUNING_SETTINGS::DIALOG_PNS_LENGTH_TUNING_SETTINGS( EDA_DRAW_F
|
||||||
m_settings( aSettings ),
|
m_settings( aSettings ),
|
||||||
m_mode( aMode )
|
m_mode( aMode )
|
||||||
{
|
{
|
||||||
if( aMode == PNS::PNS_MODE_TUNE_DIFF_PAIR )
|
m_stdButtonsOK->SetDefault();
|
||||||
|
m_targetLengthText->SetSelection( -1, -1 );
|
||||||
|
m_targetLengthText->SetFocus();
|
||||||
|
|
||||||
|
GetSizer()->SetSizeHints(this);
|
||||||
|
Centre();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool DIALOG_PNS_LENGTH_TUNING_SETTINGS::TransferDataToWindow()
|
||||||
|
{
|
||||||
|
if( !wxDialog::TransferDataToWindow() )
|
||||||
|
return false;
|
||||||
|
|
||||||
|
if( m_mode == PNS::PNS_MODE_TUNE_DIFF_PAIR )
|
||||||
{
|
{
|
||||||
// TODO: fix diff-pair meandering so we can use non-100% radii
|
// TODO: fix diff-pair meandering so we can use non-100% radii
|
||||||
m_radiusText->SetValue( wxT( "100" ) );
|
m_radiusText->SetValue( wxT( "100" ) );
|
||||||
|
@ -53,12 +69,10 @@ DIALOG_PNS_LENGTH_TUNING_SETTINGS::DIALOG_PNS_LENGTH_TUNING_SETTINGS( EDA_DRAW_F
|
||||||
|
|
||||||
m_minAmpl.SetValue( m_settings.m_minAmplitude );
|
m_minAmpl.SetValue( m_settings.m_minAmplitude );
|
||||||
m_maxAmpl.SetValue( m_settings.m_maxAmplitude );
|
m_maxAmpl.SetValue( m_settings.m_maxAmplitude );
|
||||||
|
|
||||||
m_spacing.SetValue( m_settings.m_spacing );
|
m_spacing.SetValue( m_settings.m_spacing );
|
||||||
|
|
||||||
m_miterStyle->SetSelection( m_settings.m_cornerStyle == PNS::MEANDER_STYLE_ROUND ? 1 : 0 );
|
m_miterStyle->SetSelection( m_settings.m_cornerStyle == PNS::MEANDER_STYLE_ROUND ? 1 : 0 );
|
||||||
|
|
||||||
switch( aMode )
|
switch( m_mode )
|
||||||
{
|
{
|
||||||
case PNS::PNS_MODE_TUNE_SINGLE:
|
case PNS::PNS_MODE_TUNE_SINGLE:
|
||||||
SetTitle( _( "Single Track Length Tuning" ) );
|
SetTitle( _( "Single Track Length Tuning" ) );
|
||||||
|
@ -83,22 +97,19 @@ DIALOG_PNS_LENGTH_TUNING_SETTINGS::DIALOG_PNS_LENGTH_TUNING_SETTINGS( EDA_DRAW_F
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
m_stdButtonsOK->SetDefault();
|
return true;
|
||||||
m_targetLengthText->SetSelection( -1, -1 );
|
|
||||||
m_targetLengthText->SetFocus();
|
|
||||||
|
|
||||||
GetSizer()->SetSizeHints(this);
|
|
||||||
Centre();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void DIALOG_PNS_LENGTH_TUNING_SETTINGS::OnOkClick( wxCommandEvent& aEvent )
|
bool DIALOG_PNS_LENGTH_TUNING_SETTINGS::TransferDataFromWindow()
|
||||||
{
|
{
|
||||||
|
if( !wxDialog::TransferDataToWindow() )
|
||||||
|
return false;
|
||||||
|
|
||||||
// fixme: use validators and TransferDataFromWindow
|
// fixme: use validators and TransferDataFromWindow
|
||||||
m_settings.m_minAmplitude = m_minAmpl.GetValue();
|
m_settings.m_minAmplitude = m_minAmpl.GetValue();
|
||||||
m_settings.m_maxAmplitude = m_maxAmpl.GetValue();
|
m_settings.m_maxAmplitude = m_maxAmpl.GetValue();
|
||||||
m_settings.m_spacing = m_spacing.GetValue();
|
m_settings.m_spacing = m_spacing.GetValue();
|
||||||
|
|
||||||
m_settings.m_cornerRadiusPercentage = wxAtoi( m_radiusText->GetValue() );
|
m_settings.m_cornerRadiusPercentage = wxAtoi( m_radiusText->GetValue() );
|
||||||
|
|
||||||
if( m_mode == PNS::PNS_MODE_TUNE_DIFF_PAIR_SKEW )
|
if( m_mode == PNS::PNS_MODE_TUNE_DIFF_PAIR_SKEW )
|
||||||
|
@ -112,5 +123,5 @@ void DIALOG_PNS_LENGTH_TUNING_SETTINGS::OnOkClick( wxCommandEvent& aEvent )
|
||||||
m_settings.m_cornerStyle = m_miterStyle->GetSelection() ?
|
m_settings.m_cornerStyle = m_miterStyle->GetSelection() ?
|
||||||
PNS::MEANDER_STYLE_ROUND : PNS::MEANDER_STYLE_CHAMFER;
|
PNS::MEANDER_STYLE_ROUND : PNS::MEANDER_STYLE_CHAMFER;
|
||||||
|
|
||||||
EndModal( wxID_OK );
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
/*
|
/*
|
||||||
* KiRouter - a push-and-(sometimes-)shove PCB router
|
* KiRouter - a push-and-(sometimes-)shove PCB router
|
||||||
*
|
*
|
||||||
* Copyright (C) 2014 CERN
|
* Copyright (C) 2014-2018 CERN
|
||||||
* Copyright (C) 2016 KiCad Developers, see AUTHORS.txt for contributors.
|
* Copyright (C) 2016 KiCad Developers, see AUTHORS.txt for contributors.
|
||||||
* Author: Maciej Suminski <maciej.suminski@cern.ch>
|
* Author: Maciej Suminski <maciej.suminski@cern.ch>
|
||||||
*
|
*
|
||||||
|
@ -43,9 +43,10 @@ class DIALOG_PNS_LENGTH_TUNING_SETTINGS : public DIALOG_PNS_LENGTH_TUNING_SETTIN
|
||||||
public:
|
public:
|
||||||
DIALOG_PNS_LENGTH_TUNING_SETTINGS( EDA_DRAW_FRAME* aParent, PNS::MEANDER_SETTINGS& aSettings, PNS::ROUTER_MODE aMode );
|
DIALOG_PNS_LENGTH_TUNING_SETTINGS( EDA_DRAW_FRAME* aParent, PNS::MEANDER_SETTINGS& aSettings, PNS::ROUTER_MODE aMode );
|
||||||
|
|
||||||
virtual void OnOkClick( wxCommandEvent& aEvent ) override;
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
bool TransferDataToWindow() override;
|
||||||
|
bool TransferDataFromWindow() override;
|
||||||
|
|
||||||
UNIT_BINDER m_minAmpl;
|
UNIT_BINDER m_minAmpl;
|
||||||
UNIT_BINDER m_maxAmpl;
|
UNIT_BINDER m_maxAmpl;
|
||||||
UNIT_BINDER m_spacing;
|
UNIT_BINDER m_spacing;
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
// C++ code generated with wxFormBuilder (version Dec 30 2017)
|
// C++ code generated with wxFormBuilder (version Oct 17 2016)
|
||||||
// http://www.wxformbuilder.org/
|
// http://www.wxformbuilder.org/
|
||||||
//
|
//
|
||||||
// PLEASE DO *NOT* EDIT THIS FILE!
|
// PLEASE DO "NOT" EDIT THIS FILE!
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
#include "widgets/text_ctrl_eval.h"
|
#include "widgets/text_ctrl_eval.h"
|
||||||
|
@ -170,15 +170,8 @@ DIALOG_PNS_LENGTH_TUNING_SETTINGS_BASE::DIALOG_PNS_LENGTH_TUNING_SETTINGS_BASE(
|
||||||
|
|
||||||
this->SetSizer( bMainSizer );
|
this->SetSizer( bMainSizer );
|
||||||
this->Layout();
|
this->Layout();
|
||||||
bMainSizer->Fit( this );
|
|
||||||
|
|
||||||
// Connect Events
|
|
||||||
m_stdButtonsOK->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PNS_LENGTH_TUNING_SETTINGS_BASE::OnOkClick ), NULL, this );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
DIALOG_PNS_LENGTH_TUNING_SETTINGS_BASE::~DIALOG_PNS_LENGTH_TUNING_SETTINGS_BASE()
|
DIALOG_PNS_LENGTH_TUNING_SETTINGS_BASE::~DIALOG_PNS_LENGTH_TUNING_SETTINGS_BASE()
|
||||||
{
|
{
|
||||||
// Disconnect Events
|
|
||||||
m_stdButtonsOK->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PNS_LENGTH_TUNING_SETTINGS_BASE::OnOkClick ), NULL, this );
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -44,7 +44,7 @@
|
||||||
<property name="minimum_size">-1,-1</property>
|
<property name="minimum_size">-1,-1</property>
|
||||||
<property name="name">DIALOG_PNS_LENGTH_TUNING_SETTINGS_BASE</property>
|
<property name="name">DIALOG_PNS_LENGTH_TUNING_SETTINGS_BASE</property>
|
||||||
<property name="pos"></property>
|
<property name="pos"></property>
|
||||||
<property name="size">-1,-1</property>
|
<property name="size">324,547</property>
|
||||||
<property name="style">wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER</property>
|
<property name="style">wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER</property>
|
||||||
<property name="subclass">DIALOG_SHIM; dialog_shim.h</property>
|
<property name="subclass">DIALOG_SHIM; dialog_shim.h</property>
|
||||||
<property name="title">Trace Length Tuning</property>
|
<property name="title">Trace Length Tuning</property>
|
||||||
|
@ -2270,7 +2270,7 @@
|
||||||
<event name="OnContextHelpButtonClick"></event>
|
<event name="OnContextHelpButtonClick"></event>
|
||||||
<event name="OnHelpButtonClick"></event>
|
<event name="OnHelpButtonClick"></event>
|
||||||
<event name="OnNoButtonClick"></event>
|
<event name="OnNoButtonClick"></event>
|
||||||
<event name="OnOKButtonClick">OnOkClick</event>
|
<event name="OnOKButtonClick"></event>
|
||||||
<event name="OnSaveButtonClick"></event>
|
<event name="OnSaveButtonClick"></event>
|
||||||
<event name="OnYesButtonClick"></event>
|
<event name="OnYesButtonClick"></event>
|
||||||
</object>
|
</object>
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
// C++ code generated with wxFormBuilder (version Dec 30 2017)
|
// C++ code generated with wxFormBuilder (version Oct 17 2016)
|
||||||
// http://www.wxformbuilder.org/
|
// http://www.wxformbuilder.org/
|
||||||
//
|
//
|
||||||
// PLEASE DO *NOT* EDIT THIS FILE!
|
// PLEASE DO "NOT" EDIT THIS FILE!
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
#ifndef __DIALOG_PNS_LENGTH_TUNING_SETTINGS_BASE_H__
|
#ifndef __DIALOG_PNS_LENGTH_TUNING_SETTINGS_BASE_H__
|
||||||
|
@ -11,6 +11,7 @@
|
||||||
#include <wx/artprov.h>
|
#include <wx/artprov.h>
|
||||||
#include <wx/xrc/xmlres.h>
|
#include <wx/xrc/xmlres.h>
|
||||||
#include <wx/intl.h>
|
#include <wx/intl.h>
|
||||||
|
class DIALOG_SHIM;
|
||||||
class TEXT_CTRL_EVAL;
|
class TEXT_CTRL_EVAL;
|
||||||
|
|
||||||
#include "dialog_shim.h"
|
#include "dialog_shim.h"
|
||||||
|
@ -70,13 +71,9 @@ class DIALOG_PNS_LENGTH_TUNING_SETTINGS_BASE : public DIALOG_SHIM
|
||||||
wxButton* m_stdButtonsOK;
|
wxButton* m_stdButtonsOK;
|
||||||
wxButton* m_stdButtonsCancel;
|
wxButton* m_stdButtonsCancel;
|
||||||
|
|
||||||
// Virtual event handlers, overide them in your derived class
|
|
||||||
virtual void OnOkClick( wxCommandEvent& event ) { event.Skip(); }
|
|
||||||
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
DIALOG_PNS_LENGTH_TUNING_SETTINGS_BASE( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Trace Length Tuning"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
|
DIALOG_PNS_LENGTH_TUNING_SETTINGS_BASE( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Trace Length Tuning"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 324,547 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
|
||||||
~DIALOG_PNS_LENGTH_TUNING_SETTINGS_BASE();
|
~DIALOG_PNS_LENGTH_TUNING_SETTINGS_BASE();
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in New Issue