KiCad PCB EDA Suite
PROPERTIES_FRAME Class Reference

PROPERTIES_FRAME display properties of the current item. More...

#include <properties_frame.h>

Inheritance diagram for PROPERTIES_FRAME:
PANEL_PROPERTIES_BASE

Public Member Functions

 PROPERTIES_FRAME (PL_EDITOR_FRAME *aParent)
 
 ~PROPERTIES_FRAME ()
 
void OnPageChanged (wxNotebookEvent &event) override
 
void OnAcceptPrms (wxCommandEvent &event) override
 
void OnSetDefaultValues (wxCommandEvent &event) override
 
void onScintillaCharAdded (wxStyledTextEvent &aEvent)
 
void onHelp (wxCommandEvent &aEvent) override
 
void CopyPrmsFromGeneralToPanel ()
 
bool CopyPrmsFromPanelToGeneral ()
 
void CopyPrmsFromItemToPanel (DS_DATA_ITEM *aItem)
 
bool CopyPrmsFromPanelToItem (DS_DATA_ITEM *aItem)
 
wxSize GetMinSize () const override
 

Protected Attributes

wxNotebook * m_notebook
 
wxScrolledWindow * m_swItemProperties
 
wxBoxSizer * m_SizerItemProperties
 
wxStaticText * m_staticTextType
 
wxButton * m_buttonHelp
 
wxChoice * m_choicePageOpt
 
wxBoxSizer * m_SizerTextOptions
 
wxStyledTextCtrl * m_stcText
 
wxStaticText * m_staticTextHjust
 
wxChoice * m_choiceHjustify
 
wxCheckBox * m_checkBoxBold
 
wxStaticText * m_staticTextVjust
 
wxChoice * m_choiceVjustify
 
wxCheckBox * m_checkBoxItalic
 
wxStaticText * m_staticTextTsizeX
 
wxTextCtrl * m_textCtrlTextSizeX
 
wxStaticText * m_TextTextSizeXUnits
 
wxStaticText * m_staticTextTsizeY
 
wxTextCtrl * m_textCtrlTextSizeY
 
wxStaticText * m_TextTextSizeYUnits
 
wxStaticText * m_staticTextConstraintX
 
wxTextCtrl * m_textCtrlConstraintX
 
wxStaticText * m_TextConstraintXUnits
 
wxStaticText * m_staticTextConstraintY
 
wxTextCtrl * m_textCtrlConstraintY
 
wxStaticText * m_TextConstraintYUnits
 
wxStaticText * m_staticTextSizeInfo
 
wxStaticText * m_staticTextComment
 
wxTextCtrl * m_textCtrlComment
 
wxStaticBoxSizer * sbSizerPos
 
wxStaticText * m_staticTextPosX
 
wxTextCtrl * m_textCtrlPosX
 
wxStaticText * m_TextPosXUnits
 
wxStaticText * m_staticTextPosY
 
wxTextCtrl * m_textCtrlPosY
 
wxStaticText * m_TextPosYUnits
 
wxStaticText * m_staticTextOrgPos
 
wxComboBox * m_comboBoxCornerPos
 
wxStaticBoxSizer * m_sbSizerEndPosition
 
wxStaticText * m_staticTextEndX
 
wxTextCtrl * m_textCtrlEndX
 
wxStaticText * m_TextEndXUnits
 
wxStaticText * m_staticTextEndY
 
wxTextCtrl * m_textCtrlEndY
 
wxStaticText * m_TextEndYUnits
 
wxStaticText * m_staticTextOrgEnd
 
wxComboBox * m_comboBoxCornerEnd
 
wxStaticText * m_staticTextThickness
 
wxTextCtrl * m_textCtrlThickness
 
wxStaticText * m_TextLineThicknessUnits
 
wxStaticText * m_staticTextRot
 
wxTextCtrl * m_textCtrlRotation
 
wxStaticText * m_staticTextBitmapDPI
 
wxTextCtrl * m_textCtrlBitmapDPI
 
wxStaticText * m_staticTextRepeatCnt
 
wxTextCtrl * m_textCtrlRepeatCount
 
wxStaticText * m_staticTextInclabel
 
wxTextCtrl * m_textCtrlTextIncrement
 
wxStaticText * m_staticTextStepX
 
wxTextCtrl * m_textCtrlStepX
 
wxStaticText * m_TextStepXUnits
 
wxStaticText * m_staticTextStepY
 
wxTextCtrl * m_textCtrlStepY
 
wxStaticText * m_TextStepYUnits
 
wxButton * m_buttonOK
 
wxScrolledWindow * m_swGeneralOpts
 
wxStaticText * m_staticTextDefTsX
 
wxTextCtrl * m_textCtrlDefaultTextSizeX
 
wxStaticText * m_TextDefaultTextSizeXUnits
 
wxStaticText * m_staticTextDefTsY
 
wxTextCtrl * m_textCtrlDefaultTextSizeY
 
wxStaticText * m_TextDefaultTextSizeYUnits
 
wxStaticText * m_staticTextDefLineW
 
wxTextCtrl * m_textCtrlDefaultLineWidth
 
wxStaticText * m_TextDefaultLineWidthUnits
 
wxStaticText * m_staticTextDefTextThickness
 
wxTextCtrl * m_textCtrlDefaultTextThickness
 
wxStaticText * m_TextDefaultTextThicknessUnits
 
wxButton * m_buttonDefault
 
wxStaticText * m_staticTextLeftMargin
 
wxTextCtrl * m_textCtrlLeftMargin
 
wxStaticText * m_TextLeftMarginUnits
 
wxStaticText * m_staticTextDefRightMargin
 
wxTextCtrl * m_textCtrlRightMargin
 
wxStaticText * m_TextRightMarginUnits
 
wxStaticText * m_staticTextTopMargin
 
wxTextCtrl * m_textCtrlTopMargin
 
wxStaticText * m_TextTopMarginUnits
 
wxStaticText * m_staticTextBottomMargin
 
wxTextCtrl * m_textCtrlBottomMargin
 
wxStaticText * m_TextBottomMarginUnits
 
wxButton * m_buttonGeneralOptsOK
 

Private Attributes

PL_EDITOR_FRAMEm_parent
 
SCINTILLA_TRICKSm_scintillaTricks
 
UNIT_BINDER m_textCtrlTextSizeXBinder
 
UNIT_BINDER m_textCtrlTextSizeYBinder
 
UNIT_BINDER m_textCtrlConstraintXBinder
 
UNIT_BINDER m_textCtrlConstraintYBinder
 
UNIT_BINDER m_textCtrlPosXBinder
 
UNIT_BINDER m_textCtrlPosYBinder
 
UNIT_BINDER m_textCtrlEndXBinder
 
UNIT_BINDER m_textCtrlEndYBinder
 
UNIT_BINDER m_textCtrlStepXBinder
 
UNIT_BINDER m_textCtrlStepYBinder
 
UNIT_BINDER m_textCtrlDefaultTextSizeXBinder
 
UNIT_BINDER m_textCtrlDefaultTextSizeYBinder
 
UNIT_BINDER m_textCtrlDefaultLineWidthBinder
 
UNIT_BINDER m_textCtrlDefaultTextThicknessBinder
 
UNIT_BINDER m_textCtrlLeftMarginBinder
 
UNIT_BINDER m_textCtrlRightMarginBinder
 
UNIT_BINDER m_textCtrlTopMarginBinder
 
UNIT_BINDER m_textCtrlBottomMarginBinder
 
UNIT_BINDER m_textCtrlThicknessBinder
 

Detailed Description

PROPERTIES_FRAME display properties of the current item.

Definition at line 43 of file properties_frame.h.

Constructor & Destructor Documentation

◆ PROPERTIES_FRAME()

PROPERTIES_FRAME::PROPERTIES_FRAME ( PL_EDITOR_FRAME aParent)

Definition at line 41 of file properties_frame.cpp.

41  :
42  PANEL_PROPERTIES_BASE( aParent ),
43  m_scintillaTricks( nullptr ),
77 {
78  m_parent = aParent;
79 
80  m_stcText->SetUseVerticalScrollBar( false );
81  m_stcText->SetUseHorizontalScrollBar( false );
82  m_stcText->SetEOLMode( wxSTC_EOL_LF ); // Always use LF as eol char, regardless the platform
83  m_scintillaTricks = new SCINTILLA_TRICKS( m_stcText, wxT( "{}" ), false );
84 
85  m_staticTextSizeInfo->SetFont( KIUI::GetInfoFont( this ).Italic() );
86 
87  m_buttonOK->SetDefault();
88 
89  // ensure sizers are up to date
90  // (fix an issue on GTK but should not create issues on other platforms):
91  m_swItemProperties->Fit();
92  m_swGeneralOpts->Fit();
93 
94  m_stcText->Bind( wxEVT_STC_CHARADDED, &PROPERTIES_FRAME::onScintillaCharAdded, this );
95 }
UNIT_BINDER m_textCtrlConstraintXBinder
wxStaticText * m_staticTextDefTextThickness
wxStaticText * m_staticTextThickness
wxTextCtrl * m_textCtrlDefaultTextThickness
wxStaticText * m_staticTextTsizeY
UNIT_BINDER m_textCtrlStepXBinder
wxScrolledWindow * m_swItemProperties
UNIT_BINDER m_textCtrlTopMarginBinder
Add cut/copy/paste, dark theme, autocomplete and brace highlighting to a wxStyleTextCtrl instance.
wxStaticText * m_TextConstraintXUnits
UNIT_BINDER m_textCtrlBottomMarginBinder
UNIT_BINDER m_textCtrlEndXBinder
wxFont GetInfoFont(wxWindow *aWindow)
Definition: ui_common.cpp:144
UNIT_BINDER m_textCtrlPosYBinder
UNIT_BINDER m_textCtrlRightMarginBinder
wxStaticText * m_staticTextBottomMargin
wxStaticText * m_TextDefaultLineWidthUnits
wxStaticText * m_TextTopMarginUnits
wxStaticText * m_TextBottomMarginUnits
wxTextCtrl * m_textCtrlDefaultLineWidth
wxStaticText * m_staticTextDefRightMargin
wxStaticText * m_TextLineThicknessUnits
UNIT_BINDER m_textCtrlDefaultTextSizeXBinder
wxStaticText * m_TextTextSizeYUnits
wxStaticText * m_staticTextTsizeX
wxTextCtrl * m_textCtrlDefaultTextSizeY
wxStaticText * m_TextDefaultTextThicknessUnits
UNIT_BINDER m_textCtrlEndYBinder
wxStaticText * m_TextConstraintYUnits
wxStyledTextCtrl * m_stcText
wxStaticText * m_staticTextLeftMargin
UNIT_BINDER m_textCtrlDefaultTextThicknessBinder
wxStaticText * m_TextDefaultTextSizeXUnits
wxStaticText * m_TextLeftMarginUnits
wxStaticText * m_TextRightMarginUnits
PANEL_PROPERTIES_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(-1,-1), long style=wxTAB_TRAVERSAL, const wxString &name=wxEmptyString)
void onScintillaCharAdded(wxStyledTextEvent &aEvent)
UNIT_BINDER m_textCtrlConstraintYBinder
UNIT_BINDER m_textCtrlStepYBinder
UNIT_BINDER m_textCtrlThicknessBinder
UNIT_BINDER m_textCtrlDefaultTextSizeYBinder
SCINTILLA_TRICKS * m_scintillaTricks
UNIT_BINDER m_textCtrlPosXBinder
UNIT_BINDER m_textCtrlDefaultLineWidthBinder
wxStaticText * m_staticTextTopMargin
UNIT_BINDER m_textCtrlTextSizeYBinder
wxStaticText * m_TextDefaultTextSizeYUnits
PL_EDITOR_FRAME * m_parent
UNIT_BINDER m_textCtrlLeftMarginBinder
wxScrolledWindow * m_swGeneralOpts
wxStaticText * m_staticTextSizeInfo
UNIT_BINDER m_textCtrlTextSizeXBinder
wxStaticText * m_staticTextConstraintY
wxStaticText * m_staticTextConstraintX
wxStaticText * m_staticTextDefLineW
wxStaticText * m_TextTextSizeXUnits
wxTextCtrl * m_textCtrlDefaultTextSizeX

References KIUI::GetInfoFont(), PANEL_PROPERTIES_BASE::m_buttonOK, m_parent, m_scintillaTricks, PANEL_PROPERTIES_BASE::m_staticTextSizeInfo, PANEL_PROPERTIES_BASE::m_stcText, PANEL_PROPERTIES_BASE::m_swGeneralOpts, PANEL_PROPERTIES_BASE::m_swItemProperties, and onScintillaCharAdded().

◆ ~PROPERTIES_FRAME()

PROPERTIES_FRAME::~PROPERTIES_FRAME ( )

Definition at line 98 of file properties_frame.cpp.

99 {
100  delete m_scintillaTricks;
101 }
SCINTILLA_TRICKS * m_scintillaTricks

References m_scintillaTricks.

Member Function Documentation

◆ CopyPrmsFromGeneralToPanel()

void PROPERTIES_FRAME::CopyPrmsFromGeneralToPanel ( )

Definition at line 121 of file properties_frame.cpp.

122 {
124 
125  // Set default parameters
128 
131 
134 
137 
139  model.GetLeftMargin() ) );
141  model.GetRightMargin() ) );
143  model.GetTopMargin() ) );
145  model.GetBottomMargin() ) );
146 }
Handle the graphic items list to draw/plot the frame and title block.
Definition: ds_data_model.h:38
double GetRightMargin()
Definition: ds_data_model.h:66
UNIT_BINDER m_textCtrlTopMarginBinder
UNIT_BINDER m_textCtrlBottomMarginBinder
double m_DefaultLineWidth
double GetTopMargin()
Definition: ds_data_model.h:69
UNIT_BINDER m_textCtrlRightMarginBinder
double GetLeftMargin()
Definition: ds_data_model.h:63
UNIT_BINDER m_textCtrlDefaultTextSizeXBinder
double m_DefaultTextThickness
static DS_DATA_MODEL & GetTheInstance()
static function: returns the instance of DS_DATA_MODEL used in the application
DSIZE m_DefaultTextSize
UNIT_BINDER m_textCtrlDefaultTextThicknessBinder
double GetBottomMargin()
Definition: ds_data_model.h:72
UNIT_BINDER m_textCtrlDefaultTextSizeYBinder
UNIT_BINDER m_textCtrlDefaultLineWidthBinder
UNIT_BINDER m_textCtrlLeftMarginBinder
virtual void SetDoubleValue(double aValue)
Set new value (in Internal Units) for the text field, taking care of units conversion.
double From_User_Unit(EDA_UNITS aUnits, double aValue)
Return in internal units the value "val" given in a real unit such as "in", "mm" or "deg".
Definition: base_units.cpp:282

References From_User_Unit(), DS_DATA_MODEL::GetBottomMargin(), DS_DATA_MODEL::GetLeftMargin(), DS_DATA_MODEL::GetRightMargin(), DS_DATA_MODEL::GetTheInstance(), DS_DATA_MODEL::GetTopMargin(), DS_DATA_MODEL::m_DefaultLineWidth, DS_DATA_MODEL::m_DefaultTextSize, DS_DATA_MODEL::m_DefaultTextThickness, m_textCtrlBottomMarginBinder, m_textCtrlDefaultLineWidthBinder, m_textCtrlDefaultTextSizeXBinder, m_textCtrlDefaultTextSizeYBinder, m_textCtrlDefaultTextThicknessBinder, m_textCtrlLeftMarginBinder, m_textCtrlRightMarginBinder, m_textCtrlTopMarginBinder, MILLIMETRES, UNIT_BINDER::SetDoubleValue(), VECTOR2< T >::x, and VECTOR2< T >::y.

Referenced by PL_EDITOR_FRAME::HardRedraw(), OnAcceptPrms(), PL_EDITOR_FRAME::OnNewDrawingSheet(), OnSetDefaultValues(), and PL_EDITOR_CONTROL::UpdateMessagePanel().

◆ CopyPrmsFromItemToPanel()

void PROPERTIES_FRAME::CopyPrmsFromItemToPanel ( DS_DATA_ITEM aItem)

Definition at line 181 of file properties_frame.cpp.

182 {
183  if( !aItem )
184  {
185  m_SizerItemProperties->Show( false );
186  return;
187  }
188 
189  wxString msg;
190 
191  // Set parameters common to all DS_DATA_ITEM types
192  m_staticTextType->SetLabel( aItem->GetClassName() );
193  m_textCtrlComment->SetValue( aItem->m_Info );
194 
195  switch( aItem->GetPage1Option() )
196  {
197  default:
198  case ALL_PAGES: m_choicePageOpt->SetSelection( 0 ); break;
199  case FIRST_PAGE_ONLY: m_choicePageOpt->SetSelection( 1 ); break;
200  case SUBSEQUENT_PAGES: m_choicePageOpt->SetSelection( 2 ); break;
201  }
202 
203  // Position/ start point
206 
209 
210  switch( aItem->m_Pos.m_Anchor )
211  {
212  case RB_CORNER: m_comboBoxCornerPos->SetSelection( 2 ); break;
213  case RT_CORNER: m_comboBoxCornerPos->SetSelection( 0 ); break;
214  case LB_CORNER: m_comboBoxCornerPos->SetSelection( 3 ); break;
215  case LT_CORNER: m_comboBoxCornerPos->SetSelection( 1 ); break;
216  }
217 
218  // End point
223 
224  switch( aItem->m_End.m_Anchor )
225  {
226  case RB_CORNER: m_comboBoxCornerEnd->SetSelection( 2 ); break;
227  case RT_CORNER: m_comboBoxCornerEnd->SetSelection( 0 ); break;
228  case LB_CORNER: m_comboBoxCornerEnd->SetSelection( 3 ); break;
229  case LT_CORNER: m_comboBoxCornerEnd->SetSelection( 1 ); break;
230  }
231 
234 
235  // Now, set prms more specific to DS_DATA_ITEM types
236  // For a given type, disable widgets which are not relevant,
237  // and be sure widgets which are relevant are enabled
238  if( aItem->GetType() == DS_DATA_ITEM::DS_TEXT )
239  {
240  DS_DATA_ITEM_TEXT* item = static_cast<DS_DATA_ITEM_TEXT*>( aItem );
241  item->m_FullText = item->m_TextBase;
242 
243  // Replace our '\' 'n' sequence by the EOL char
244  item->ReplaceAntiSlashSequence();
245  m_stcText->SetValue( item->m_FullText );
246 
247  msg.Printf( wxT("%d"), item->m_IncrementLabel );
248  m_textCtrlTextIncrement->SetValue( msg );
249 
250  // Rotation (poly and text)
251  msg.Printf( wxT("%.3f"), item->m_Orient );
252  m_textCtrlRotation->SetValue( msg );
253 
254  // Constraints:
259 
260  // Font Options
261  m_checkBoxBold->SetValue( item->m_Bold );
262  m_checkBoxItalic->SetValue( item->m_Italic );
263 
264  switch( item->m_Hjustify )
265  {
266  case GR_TEXT_HJUSTIFY_LEFT: m_choiceHjustify->SetSelection( 0 ); break;
267  case GR_TEXT_HJUSTIFY_CENTER: m_choiceHjustify->SetSelection( 1 ); break;
268  case GR_TEXT_HJUSTIFY_RIGHT: m_choiceHjustify->SetSelection( 2 ); break;
269  }
270 
271  switch( item->m_Vjustify )
272  {
273  case GR_TEXT_VJUSTIFY_TOP: m_choiceVjustify->SetSelection( 0 ); break;
274  case GR_TEXT_VJUSTIFY_CENTER: m_choiceVjustify->SetSelection( 1 ); break;
275  case GR_TEXT_VJUSTIFY_BOTTOM: m_choiceVjustify->SetSelection( 2 ); break;
276  }
277 
278  // Text size
283  }
284 
285  if( aItem->GetType() == DS_DATA_ITEM::DS_POLYPOLYGON )
286  {
287  DS_DATA_ITEM_POLYGONS* item = static_cast<DS_DATA_ITEM_POLYGONS*>( aItem );
288 
289  // Rotation (poly and text)
290  msg.Printf( wxT("%.3f"), item->m_Orient );
291  m_textCtrlRotation->SetValue( msg );
292  }
293 
294  if( aItem->GetType() == DS_DATA_ITEM::DS_BITMAP )
295  {
296  DS_DATA_ITEM_BITMAP* item = static_cast<DS_DATA_ITEM_BITMAP*>( aItem );
297 
298  // select definition in PPI
299  msg.Printf( wxT("%d"), item->GetPPI() );
300  m_textCtrlBitmapDPI->SetValue( msg );
301  }
302 
303  m_SizerItemProperties->Show( true );
304 
305  m_SizerTextOptions->Show( aItem->GetType() == DS_DATA_ITEM::DS_TEXT );
306  m_buttonHelp->Show( aItem->GetType() == DS_DATA_ITEM::DS_TEXT );
307 
309  || aItem->GetType() == DS_DATA_ITEM::DS_RECT );
310 
312 
313  if( aItem->GetType() == DS_DATA_ITEM::DS_TEXT
314  || aItem->GetType() == DS_DATA_ITEM::DS_POLYPOLYGON )
315  {
316  m_staticTextRot->Show( true );
317  m_textCtrlRotation->Show( true );
318  }
319  else
320  {
321  m_staticTextRot->Show( false );
322  m_textCtrlRotation->Show( false );
323  }
324 
327 
330 
331  // Repeat parameters
332  msg.Printf( wxT("%d"), aItem->m_RepeatCount );
333  m_textCtrlRepeatCount->SetValue( msg );
334 
337 
340 
341  // The number of widgets was modified, so recalculate sizers
342  m_swItemProperties->Layout();
343 #ifdef __WXGTK__
344  // This call is mandatory on wxGTK to initialize the right virtual size and therefore
345  // scrollbars, but for some reason, create issues on Windows (incorrect display
346  // until the frame is resized). Joys of multiplatform dev.
347  m_swItemProperties->Fit();
348 #endif
349 
350  // send a size event to be sure scrollbars will be added/removed as needed
351  m_swItemProperties->PostSizeEvent();
352  m_swItemProperties->Refresh();
353 }
wxString m_Info
Definition: ds_data_item.h:199
UNIT_BINDER m_textCtrlConstraintXBinder
UNIT_BINDER m_textCtrlStepXBinder
wxScrolledWindow * m_swItemProperties
EDA_TEXT_VJUSTIFY_T m_Vjustify
Definition: ds_data_item.h:339
wxStaticText * m_staticTextInclabel
UNIT_BINDER m_textCtrlEndXBinder
wxStaticText * m_staticTextBitmapDPI
UNIT_BINDER m_textCtrlPosYBinder
POINT_COORD m_End
Definition: ds_data_item.h:201
EDA_TEXT_HJUSTIFY_T m_Hjustify
Definition: ds_data_item.h:338
DPOINT m_IncrementVector
Definition: ds_data_item.h:204
double m_LineWidth
Definition: ds_data_item.h:202
UNIT_BINDER m_textCtrlEndYBinder
void Show(bool aShow, bool aResize=false)
Show/hide the label, widget and units label.
wxStyledTextCtrl * m_stcText
DS_ITEM_TYPE GetType() const
Definition: ds_data_item.h:128
const wxString GetClassName() const
DPOINT m_Pos
Definition: ds_data_item.h:80
int m_IncrementLabel
Definition: ds_data_item.h:205
UNIT_BINDER m_textCtrlConstraintYBinder
UNIT_BINDER m_textCtrlStepYBinder
UNIT_BINDER m_textCtrlThicknessBinder
wxStaticBoxSizer * m_sbSizerEndPosition
UNIT_BINDER m_textCtrlPosXBinder
POINT_COORD m_Pos
Definition: ds_data_item.h:200
bool ReplaceAntiSlashSequence()
Replace the '\''n' sequence by EOL and the sequence '\''\' by only one '\' inside m_FullText.
UNIT_BINDER m_textCtrlTextSizeYBinder
UNIT_BINDER m_textCtrlTextSizeXBinder
virtual void SetDoubleValue(double aValue)
Set new value (in Internal Units) for the text field, taking care of units conversion.
double From_User_Unit(EDA_UNITS aUnits, double aValue)
Return in internal units the value "val" given in a real unit such as "in", "mm" or "deg".
Definition: base_units.cpp:282
PAGE_OPTION GetPage1Option() const
Definition: ds_data_item.h:133

References ALL_PAGES, DS_DATA_ITEM::DS_BITMAP, DS_DATA_ITEM::DS_POLYPOLYGON, DS_DATA_ITEM::DS_RECT, DS_DATA_ITEM::DS_SEGMENT, DS_DATA_ITEM::DS_TEXT, FIRST_PAGE_ONLY, From_User_Unit(), DS_DATA_ITEM::GetClassName(), DS_DATA_ITEM::GetPage1Option(), DS_DATA_ITEM_BITMAP::GetPPI(), DS_DATA_ITEM::GetType(), GR_TEXT_HJUSTIFY_CENTER, GR_TEXT_HJUSTIFY_LEFT, GR_TEXT_HJUSTIFY_RIGHT, GR_TEXT_VJUSTIFY_BOTTOM, GR_TEXT_VJUSTIFY_CENTER, GR_TEXT_VJUSTIFY_TOP, LB_CORNER, LT_CORNER, POINT_COORD::m_Anchor, DS_DATA_ITEM_TEXT::m_Bold, DS_DATA_ITEM_TEXT::m_BoundingBoxSize, PANEL_PROPERTIES_BASE::m_buttonHelp, PANEL_PROPERTIES_BASE::m_checkBoxBold, PANEL_PROPERTIES_BASE::m_checkBoxItalic, PANEL_PROPERTIES_BASE::m_choiceHjustify, PANEL_PROPERTIES_BASE::m_choicePageOpt, PANEL_PROPERTIES_BASE::m_choiceVjustify, PANEL_PROPERTIES_BASE::m_comboBoxCornerEnd, PANEL_PROPERTIES_BASE::m_comboBoxCornerPos, DS_DATA_ITEM::m_End, DS_DATA_ITEM_TEXT::m_FullText, DS_DATA_ITEM_TEXT::m_Hjustify, DS_DATA_ITEM::m_IncrementLabel, DS_DATA_ITEM::m_IncrementVector, DS_DATA_ITEM::m_Info, DS_DATA_ITEM_TEXT::m_Italic, DS_DATA_ITEM::m_LineWidth, DS_DATA_ITEM_POLYGONS::m_Orient, DS_DATA_ITEM_TEXT::m_Orient, POINT_COORD::m_Pos, DS_DATA_ITEM::m_Pos, DS_DATA_ITEM::m_RepeatCount, PANEL_PROPERTIES_BASE::m_sbSizerEndPosition, PANEL_PROPERTIES_BASE::m_SizerItemProperties, PANEL_PROPERTIES_BASE::m_SizerTextOptions, PANEL_PROPERTIES_BASE::m_staticTextBitmapDPI, PANEL_PROPERTIES_BASE::m_staticTextInclabel, PANEL_PROPERTIES_BASE::m_staticTextRot, PANEL_PROPERTIES_BASE::m_staticTextType, PANEL_PROPERTIES_BASE::m_stcText, PANEL_PROPERTIES_BASE::m_swItemProperties, DS_DATA_ITEM_TEXT::m_TextBase, PANEL_PROPERTIES_BASE::m_textCtrlBitmapDPI, PANEL_PROPERTIES_BASE::m_textCtrlComment, m_textCtrlConstraintXBinder, m_textCtrlConstraintYBinder, m_textCtrlEndXBinder, m_textCtrlEndYBinder, m_textCtrlPosXBinder, m_textCtrlPosYBinder, PANEL_PROPERTIES_BASE::m_textCtrlRepeatCount, PANEL_PROPERTIES_BASE::m_textCtrlRotation, m_textCtrlStepXBinder, m_textCtrlStepYBinder, PANEL_PROPERTIES_BASE::m_textCtrlTextIncrement, m_textCtrlTextSizeXBinder, m_textCtrlTextSizeYBinder, m_textCtrlThicknessBinder, DS_DATA_ITEM_TEXT::m_TextSize, DS_DATA_ITEM_TEXT::m_Vjustify, MILLIMETRES, RB_CORNER, DS_DATA_ITEM_TEXT::ReplaceAntiSlashSequence(), RT_CORNER, UNIT_BINDER::SetDoubleValue(), UNIT_BINDER::Show(), SUBSEQUENT_PAGES, VECTOR2< T >::x, and VECTOR2< T >::y.

Referenced by PL_EDITOR_FRAME::HardRedraw(), OnAcceptPrms(), DIALOG_INSPECTOR::onCellClicked(), PL_EDITOR_FRAME::OnNewDrawingSheet(), PL_POINT_EDITOR::updateItem(), and PL_EDITOR_CONTROL::UpdateMessagePanel().

◆ CopyPrmsFromPanelToGeneral()

bool PROPERTIES_FRAME::CopyPrmsFromPanelToGeneral ( )

Definition at line 149 of file properties_frame.cpp.

150 {
152 
153  // Import default parameters from widgets
154  model.m_DefaultLineWidth =
156 
157  model.m_DefaultTextSize.x =
159  model.m_DefaultTextSize.y =
161 
162  model.m_DefaultTextThickness =
164 
165  // Get page margins values
166  model.SetRightMargin(
168  model.SetBottomMargin(
170 
171  // coordinates of the left top corner are the left and top margins
172  model.SetLeftMargin(
174  model.SetTopMargin(
176 
177  return true;
178 }
Handle the graphic items list to draw/plot the frame and title block.
Definition: ds_data_model.h:38
UNIT_BINDER m_textCtrlTopMarginBinder
UNIT_BINDER m_textCtrlBottomMarginBinder
void SetBottomMargin(double aMargin)
Definition: ds_data_model.h:73
double m_DefaultLineWidth
UNIT_BINDER m_textCtrlRightMarginBinder
void SetLeftMargin(double aMargin)
Definition: ds_data_model.h:64
void SetRightMargin(double aMargin)
Definition: ds_data_model.h:67
UNIT_BINDER m_textCtrlDefaultTextSizeXBinder
double m_DefaultTextThickness
static DS_DATA_MODEL & GetTheInstance()
static function: returns the instance of DS_DATA_MODEL used in the application
DSIZE m_DefaultTextSize
UNIT_BINDER m_textCtrlDefaultTextThicknessBinder
void SetTopMargin(double aMargin)
Definition: ds_data_model.h:70
UNIT_BINDER m_textCtrlDefaultTextSizeYBinder
UNIT_BINDER m_textCtrlDefaultLineWidthBinder
double To_User_Unit(EDA_UNITS aUnit, double aValue)
Function To_User_Unit convert aValue in internal units to the appropriate user units defined by aUnit...
Definition: base_units.cpp:68
virtual long long int GetValue()
Return the current value in Internal Units.
UNIT_BINDER m_textCtrlLeftMarginBinder

References DS_DATA_MODEL::GetTheInstance(), UNIT_BINDER::GetValue(), DS_DATA_MODEL::m_DefaultLineWidth, DS_DATA_MODEL::m_DefaultTextSize, DS_DATA_MODEL::m_DefaultTextThickness, m_textCtrlBottomMarginBinder, m_textCtrlDefaultLineWidthBinder, m_textCtrlDefaultTextSizeXBinder, m_textCtrlDefaultTextSizeYBinder, m_textCtrlDefaultTextThicknessBinder, m_textCtrlLeftMarginBinder, m_textCtrlRightMarginBinder, m_textCtrlTopMarginBinder, MILLIMETRES, DS_DATA_MODEL::SetBottomMargin(), DS_DATA_MODEL::SetLeftMargin(), DS_DATA_MODEL::SetRightMargin(), DS_DATA_MODEL::SetTopMargin(), To_User_Unit(), VECTOR2< T >::x, and VECTOR2< T >::y.

Referenced by OnAcceptPrms().

◆ CopyPrmsFromPanelToItem()

bool PROPERTIES_FRAME::CopyPrmsFromPanelToItem ( DS_DATA_ITEM aItem)

Definition at line 405 of file properties_frame.cpp.

406 {
407  if( aItem == nullptr )
408  return false;
409 
410  wxString msg;
411 
412  // Import common parameters:
413  aItem->m_Info = m_textCtrlComment->GetValue();
414 
415  switch( m_choicePageOpt->GetSelection() )
416  {
417  default:
418  case 0: aItem->SetPage1Option( ALL_PAGES ); break;
419  case 1: aItem->SetPage1Option( FIRST_PAGE_ONLY ); break;
420  case 2: aItem->SetPage1Option( SUBSEQUENT_PAGES ); break;
421  }
422 
423  // Import thickness
426 
427  // Import Start point
430 
431  switch( m_comboBoxCornerPos->GetSelection() )
432  {
433  case 2: aItem->m_Pos.m_Anchor = RB_CORNER; break;
434  case 0: aItem->m_Pos.m_Anchor = RT_CORNER; break;
435  case 3: aItem->m_Pos.m_Anchor = LB_CORNER; break;
436  case 1: aItem->m_Pos.m_Anchor = LT_CORNER; break;
437  }
438 
439  // Import End point
442 
443  switch( m_comboBoxCornerEnd->GetSelection() )
444  {
445  case 2: aItem->m_End.m_Anchor = RB_CORNER; break;
446  case 0: aItem->m_End.m_Anchor = RT_CORNER; break;
447  case 3: aItem->m_End.m_Anchor = LB_CORNER; break;
448  case 1: aItem->m_End.m_Anchor = LT_CORNER; break;
449  }
450 
451  // Import Repeat prms
452  long itmp;
453  msg = m_textCtrlRepeatCount->GetValue();
454  msg.ToLong( &itmp );
455  aItem->m_RepeatCount = itmp;
456 
461 
462  if( aItem->GetType() == DS_DATA_ITEM::DS_TEXT )
463  {
464  DS_DATA_ITEM_TEXT* item = static_cast<DS_DATA_ITEM_TEXT*>( aItem );
465 
466  item->m_TextBase = m_stcText->GetValue();
467 
468  msg = m_textCtrlTextIncrement->GetValue();
469  msg.ToLong( &itmp );
470  item->m_IncrementLabel = itmp;
471 
472  item->m_Bold = m_checkBoxBold->IsChecked();
473  item->m_Italic = m_checkBoxItalic->IsChecked();
474 
475  switch( m_choiceHjustify->GetSelection() )
476  {
477  case 0: item->m_Hjustify = GR_TEXT_HJUSTIFY_LEFT; break;
478  case 1: item->m_Hjustify = GR_TEXT_HJUSTIFY_CENTER; break;
479  case 2: item->m_Hjustify = GR_TEXT_HJUSTIFY_RIGHT; break;
480  }
481 
482  switch( m_choiceVjustify->GetSelection() )
483  {
484  case 0: item->m_Vjustify = GR_TEXT_VJUSTIFY_TOP; break;
485  case 1: item->m_Vjustify = GR_TEXT_VJUSTIFY_CENTER; break;
486  case 2: item->m_Vjustify = GR_TEXT_VJUSTIFY_BOTTOM; break;
487  }
488 
489  msg = m_textCtrlRotation->GetValue();
491 
492  // Import text size
493  item->m_TextSize.x =
495  item->m_TextSize.y =
497 
498  // Import constraints:
499  item->m_BoundingBoxSize.x =
501  item->m_BoundingBoxSize.y =
503  }
504 
505  if( aItem->GetType() == DS_DATA_ITEM::DS_POLYPOLYGON )
506  {
507  DS_DATA_ITEM_POLYGONS* item = static_cast<DS_DATA_ITEM_POLYGONS*>( aItem );
508 
509  msg = m_textCtrlRotation->GetValue();
511  }
512 
513  if( aItem->GetType() == DS_DATA_ITEM::DS_BITMAP )
514  {
515  DS_DATA_ITEM_BITMAP* item = static_cast<DS_DATA_ITEM_BITMAP*>( aItem );
516  long value;
517 
518  msg = m_textCtrlBitmapDPI->GetValue();
519 
520  if( msg.ToLong( &value ) )
521  item->SetPPI( (int)value );
522  }
523 
524  return true;
525 }
wxString m_Info
Definition: ds_data_item.h:199
UNIT_BINDER m_textCtrlConstraintXBinder
UNIT_BINDER m_textCtrlStepXBinder
EDA_TEXT_VJUSTIFY_T m_Vjustify
Definition: ds_data_item.h:339
UNIT_BINDER m_textCtrlEndXBinder
UNIT_BINDER m_textCtrlPosYBinder
POINT_COORD m_End
Definition: ds_data_item.h:201
EDA_TEXT_HJUSTIFY_T m_Hjustify
Definition: ds_data_item.h:338
DPOINT m_IncrementVector
Definition: ds_data_item.h:204
double m_LineWidth
Definition: ds_data_item.h:202
UNIT_BINDER m_textCtrlEndYBinder
wxStyledTextCtrl * m_stcText
DS_ITEM_TYPE GetType() const
Definition: ds_data_item.h:128
DPOINT m_Pos
Definition: ds_data_item.h:80
int m_IncrementLabel
Definition: ds_data_item.h:205
UNIT_BINDER m_textCtrlConstraintYBinder
void SetPPI(int aBitmapPPI)
UNIT_BINDER m_textCtrlStepYBinder
UNIT_BINDER m_textCtrlThicknessBinder
UNIT_BINDER m_textCtrlPosXBinder
void SetPage1Option(PAGE_OPTION aChoice)
Definition: ds_data_item.h:134
double To_User_Unit(EDA_UNITS aUnit, double aValue)
Function To_User_Unit convert aValue in internal units to the appropriate user units defined by aUnit...
Definition: base_units.cpp:68
POINT_COORD m_Pos
Definition: ds_data_item.h:200
UNIT_BINDER m_textCtrlTextSizeYBinder
virtual long long int GetValue()
Return the current value in Internal Units.
UNIT_BINDER m_textCtrlTextSizeXBinder
double DoubleValueFromString(EDA_UNITS aUnits, const wxString &aTextValue, EDA_DATA_TYPE aType)
Function DoubleValueFromString converts aTextValue to a double.
Definition: base_units.cpp:307

References ALL_PAGES, DoubleValueFromString(), DS_DATA_ITEM::DS_BITMAP, DS_DATA_ITEM::DS_POLYPOLYGON, DS_DATA_ITEM::DS_TEXT, FIRST_PAGE_ONLY, DS_DATA_ITEM::GetType(), UNIT_BINDER::GetValue(), GR_TEXT_HJUSTIFY_CENTER, GR_TEXT_HJUSTIFY_LEFT, GR_TEXT_HJUSTIFY_RIGHT, GR_TEXT_VJUSTIFY_BOTTOM, GR_TEXT_VJUSTIFY_CENTER, GR_TEXT_VJUSTIFY_TOP, LB_CORNER, LT_CORNER, POINT_COORD::m_Anchor, DS_DATA_ITEM_TEXT::m_Bold, DS_DATA_ITEM_TEXT::m_BoundingBoxSize, PANEL_PROPERTIES_BASE::m_checkBoxBold, PANEL_PROPERTIES_BASE::m_checkBoxItalic, PANEL_PROPERTIES_BASE::m_choiceHjustify, PANEL_PROPERTIES_BASE::m_choicePageOpt, PANEL_PROPERTIES_BASE::m_choiceVjustify, PANEL_PROPERTIES_BASE::m_comboBoxCornerEnd, PANEL_PROPERTIES_BASE::m_comboBoxCornerPos, DS_DATA_ITEM::m_End, DS_DATA_ITEM_TEXT::m_Hjustify, DS_DATA_ITEM::m_IncrementLabel, DS_DATA_ITEM::m_IncrementVector, DS_DATA_ITEM::m_Info, DS_DATA_ITEM_TEXT::m_Italic, DS_DATA_ITEM::m_LineWidth, DS_DATA_ITEM_POLYGONS::m_Orient, DS_DATA_ITEM_TEXT::m_Orient, POINT_COORD::m_Pos, DS_DATA_ITEM::m_Pos, DS_DATA_ITEM::m_RepeatCount, PANEL_PROPERTIES_BASE::m_stcText, DS_DATA_ITEM_TEXT::m_TextBase, PANEL_PROPERTIES_BASE::m_textCtrlBitmapDPI, PANEL_PROPERTIES_BASE::m_textCtrlComment, m_textCtrlConstraintXBinder, m_textCtrlConstraintYBinder, m_textCtrlEndXBinder, m_textCtrlEndYBinder, m_textCtrlPosXBinder, m_textCtrlPosYBinder, PANEL_PROPERTIES_BASE::m_textCtrlRepeatCount, PANEL_PROPERTIES_BASE::m_textCtrlRotation, m_textCtrlStepXBinder, m_textCtrlStepYBinder, PANEL_PROPERTIES_BASE::m_textCtrlTextIncrement, m_textCtrlTextSizeXBinder, m_textCtrlTextSizeYBinder, m_textCtrlThicknessBinder, DS_DATA_ITEM_TEXT::m_TextSize, DS_DATA_ITEM_TEXT::m_Vjustify, MILLIMETRES, RB_CORNER, RT_CORNER, DS_DATA_ITEM::SetPage1Option(), DS_DATA_ITEM_BITMAP::SetPPI(), SUBSEQUENT_PAGES, To_User_Unit(), UNSCALED, VECTOR2< T >::x, and VECTOR2< T >::y.

Referenced by OnAcceptPrms().

◆ GetMinSize()

wxSize PROPERTIES_FRAME::GetMinSize ( ) const
override

Definition at line 115 of file properties_frame.cpp.

116 {
117  return wxSize( 150, -1 );
118 }

◆ OnAcceptPrms()

void PROPERTIES_FRAME::OnAcceptPrms ( wxCommandEvent &  event)
overridevirtual

Reimplemented from PANEL_PROPERTIES_BASE.

Definition at line 356 of file properties_frame.cpp.

357 {
359  PL_SELECTION& selection = selTool->GetSelection();
360 
362 
363  DS_DRAW_ITEM_BASE* drawItem = (DS_DRAW_ITEM_BASE*) selection.Front();
364 
365  if( drawItem )
366  {
367  DS_DATA_ITEM* dataItem = drawItem->GetPeer();
368  CopyPrmsFromPanelToItem( dataItem );
369 
370  // Be sure what is displayed is what is set for item
371  // (mainly, texts can be modified if they contain "\n")
372  CopyPrmsFromItemToPanel( dataItem );
373  m_parent->GetCanvas()->GetView()->Update( drawItem );
374  }
375 
377 
378  // Refresh values, exactly as they are converted, to avoid any mistake
380 
381  m_parent->OnModify();
382 
383  // Rebuild the draw list with the new parameters
385  m_parent->GetCanvas()->Refresh();
386 }
PL_DRAW_PANEL_GAL * GetCanvas() const override
Return a pointer to GAL-based canvas of given EDA draw frame.
void DisplayDrawingSheet()
Build and update the list of WS_DRAW_ITEM_xxx showing the frame layout.
PL_SELECTION & GetSelection()
Return the set of currently selected items.
void OnModify()
Must be called after a change in order to set the "modify" flag.
Base class to handle basic graphic items.
Definition: ds_draw_item.h:58
virtual KIGFX::VIEW * GetView() const
Return a pointer to the #VIEW instance used in the panel.
DS_DATA_ITEM * GetPeer() const
Definition: ds_draw_item.h:63
bool CopyPrmsFromPanelToItem(DS_DATA_ITEM *aItem)
Drawing sheet structure type definitions.
Definition: ds_data_item.h:95
virtual void Refresh(bool aEraseBackground=true, const wxRect *aRect=nullptr) override
Update the board display after modifying it by a python script (note: it is automatically called by a...
PL_EDITOR_FRAME * m_parent
void SaveCopyInUndoList()
Save a copy of the description (in a S expr string) for Undo/redo commands.
void CopyPrmsFromItemToPanel(DS_DATA_ITEM *aItem)
TOOL_MANAGER * GetToolManager() const
Return the MVC controller.
Definition: tools_holder.h:54
virtual void Update(const VIEW_ITEM *aItem, int aUpdateFlags) const
For dynamic VIEWs, inform the associated VIEW that the graphical representation of this item has chan...
Definition: view.cpp:1570

References CopyPrmsFromGeneralToPanel(), CopyPrmsFromItemToPanel(), CopyPrmsFromPanelToGeneral(), CopyPrmsFromPanelToItem(), PL_DRAW_PANEL_GAL::DisplayDrawingSheet(), PL_EDITOR_FRAME::GetCanvas(), DS_DRAW_ITEM_BASE::GetPeer(), PL_SELECTION_TOOL::GetSelection(), TOOL_MANAGER::GetTool(), TOOLS_HOLDER::GetToolManager(), EDA_DRAW_PANEL_GAL::GetView(), m_parent, PL_EDITOR_FRAME::OnModify(), EDA_DRAW_PANEL_GAL::Refresh(), PL_EDITOR_FRAME::SaveCopyInUndoList(), and KIGFX::VIEW::Update().

◆ onHelp()

void PROPERTIES_FRAME::onHelp ( wxCommandEvent &  aEvent)
overridevirtual

Reimplemented from PANEL_PROPERTIES_BASE.

Definition at line 552 of file properties_frame.cpp.

553 {
554  // Show the system variables for worksheet text:
555  HTML_MESSAGE_BOX dlg( this, _( "Predefined Keywords" ) );
556  wxString message;
557 
558  message << _( "Texts can include keywords." ) << "<br>";
559  message << _( "Keyword notation is ${keyword}" ) << "<br>";
560  message << _( "Each keyword is replaced by its value" ) << "<br><br>";
561  message << _( "These build-in keywords are always available:" ) << "<br><br>";
562  dlg.AddHTML_Text( message );
563 
564  message = "KICAD_VERSION\n";
565  message << "# " << _( "(sheet number)" ) << "\n";
566  message << "## " << _( "(sheet count)" ) << "\n";
567  message << "COMMENT1 thru COMMENT9\n";
568  message << "COMPANY\n";
569  message << "FILENAME\n";
570  message << "ISSUE_DATE\n";
571  message << "LAYER\n";
572  message << "PAPER " << _( "(paper size)" ) << "\n";
573  message << "REVISION\n";
574  message << "SHEETNAME\n";
575  message << "TITLE\n";
576 
577  dlg.ListSet( message );
578  dlg.ShowModal();
579 }
#define _(s)

References _, HTML_MESSAGE_BOX::AddHTML_Text(), and HTML_MESSAGE_BOX::ListSet().

◆ OnPageChanged()

void PROPERTIES_FRAME::OnPageChanged ( wxNotebookEvent &  event)
overridevirtual

Reimplemented from PANEL_PROPERTIES_BASE.

Definition at line 104 of file properties_frame.cpp.

105 {
106  if( event.GetSelection() == 0 )
107  m_buttonOK->SetDefault();
108  else
109  m_buttonGeneralOptsOK->SetDefault();
110 
111  event.Skip();
112 }

References PANEL_PROPERTIES_BASE::m_buttonGeneralOptsOK, and PANEL_PROPERTIES_BASE::m_buttonOK.

◆ onScintillaCharAdded()

void PROPERTIES_FRAME::onScintillaCharAdded ( wxStyledTextEvent &  aEvent)

Definition at line 528 of file properties_frame.cpp.

529 {
530  wxArrayString autocompleteTokens;
531  int pos = m_stcText->GetCurrentPos();
532  int start = m_stcText->WordStartPosition( pos, true );
533  wxString partial;
534 
535  if( start >= 2
536  && m_stcText->GetCharAt( start-2 ) == '$'
537  && m_stcText->GetCharAt( start-1 ) == '{' )
538  {
539  DS_DRAW_ITEM_LIST::GetTextVars( &autocompleteTokens );
540 
541  partial = m_stcText->GetTextRange( start, pos );
542 
543  for( std::pair<wxString, wxString> entry : m_parent->Prj().GetTextVars() )
544  autocompleteTokens.push_back( entry.first );
545  }
546 
547  m_scintillaTricks->DoAutocomplete( partial, autocompleteTokens );
548  m_stcText->SetFocus();
549 }
virtual std::map< wxString, wxString > & GetTextVars() const
Definition: project.cpp:78
void DoAutocomplete(const wxString &aPartial, const wxArrayString &aTokens)
wxStyledTextCtrl * m_stcText
static void GetTextVars(wxArrayString *aVars)
Definition: ds_painter.cpp:89
PROJECT & Prj() const
Return a reference to the PROJECT associated with this KIWAY.
SCINTILLA_TRICKS * m_scintillaTricks
PL_EDITOR_FRAME * m_parent

References SCINTILLA_TRICKS::DoAutocomplete(), PROJECT::GetTextVars(), DS_DRAW_ITEM_LIST::GetTextVars(), m_parent, m_scintillaTricks, PANEL_PROPERTIES_BASE::m_stcText, and KIWAY_HOLDER::Prj().

Referenced by PROPERTIES_FRAME().

◆ OnSetDefaultValues()

void PROPERTIES_FRAME::OnSetDefaultValues ( wxCommandEvent &  event)
overridevirtual

Reimplemented from PANEL_PROPERTIES_BASE.

Definition at line 389 of file properties_frame.cpp.

390 {
392 
394  model.m_DefaultLineWidth = 0.15;
395  model.m_DefaultTextThickness = 0.15;
396 
398 
399  // Rebuild the draw list with the new parameters
401  m_parent->GetCanvas()->Refresh();
402 }
Handle the graphic items list to draw/plot the frame and title block.
Definition: ds_data_model.h:38
PL_DRAW_PANEL_GAL * GetCanvas() const override
Return a pointer to GAL-based canvas of given EDA draw frame.
DPOINT DSIZE
Definition: vector2d.h:646
double m_DefaultLineWidth
#define TB_DEFAULT_TEXTSIZE
Definition: ds_data_item.h:35
void DisplayDrawingSheet()
Build and update the list of WS_DRAW_ITEM_xxx showing the frame layout.
double m_DefaultTextThickness
static DS_DATA_MODEL & GetTheInstance()
static function: returns the instance of DS_DATA_MODEL used in the application
DSIZE m_DefaultTextSize
virtual void Refresh(bool aEraseBackground=true, const wxRect *aRect=nullptr) override
Update the board display after modifying it by a python script (note: it is automatically called by a...
PL_EDITOR_FRAME * m_parent

References CopyPrmsFromGeneralToPanel(), PL_DRAW_PANEL_GAL::DisplayDrawingSheet(), PL_EDITOR_FRAME::GetCanvas(), DS_DATA_MODEL::GetTheInstance(), DS_DATA_MODEL::m_DefaultLineWidth, DS_DATA_MODEL::m_DefaultTextSize, DS_DATA_MODEL::m_DefaultTextThickness, m_parent, EDA_DRAW_PANEL_GAL::Refresh(), and TB_DEFAULT_TEXTSIZE.

Member Data Documentation

◆ m_buttonDefault

wxButton* PANEL_PROPERTIES_BASE::m_buttonDefault
protectedinherited

◆ m_buttonGeneralOptsOK

wxButton* PANEL_PROPERTIES_BASE::m_buttonGeneralOptsOK
protectedinherited

◆ m_buttonHelp

wxButton* PANEL_PROPERTIES_BASE::m_buttonHelp
protectedinherited

◆ m_buttonOK

wxButton* PANEL_PROPERTIES_BASE::m_buttonOK
protectedinherited

◆ m_checkBoxBold

wxCheckBox* PANEL_PROPERTIES_BASE::m_checkBoxBold
protectedinherited

◆ m_checkBoxItalic

wxCheckBox* PANEL_PROPERTIES_BASE::m_checkBoxItalic
protectedinherited

◆ m_choiceHjustify

wxChoice* PANEL_PROPERTIES_BASE::m_choiceHjustify
protectedinherited

◆ m_choicePageOpt

wxChoice* PANEL_PROPERTIES_BASE::m_choicePageOpt
protectedinherited

◆ m_choiceVjustify

wxChoice* PANEL_PROPERTIES_BASE::m_choiceVjustify
protectedinherited

◆ m_comboBoxCornerEnd

wxComboBox* PANEL_PROPERTIES_BASE::m_comboBoxCornerEnd
protectedinherited

◆ m_comboBoxCornerPos

wxComboBox* PANEL_PROPERTIES_BASE::m_comboBoxCornerPos
protectedinherited

◆ m_notebook

wxNotebook* PANEL_PROPERTIES_BASE::m_notebook
protectedinherited

◆ m_parent

PL_EDITOR_FRAME* PROPERTIES_FRAME::m_parent
private

◆ m_sbSizerEndPosition

wxStaticBoxSizer* PANEL_PROPERTIES_BASE::m_sbSizerEndPosition
protectedinherited

◆ m_scintillaTricks

SCINTILLA_TRICKS* PROPERTIES_FRAME::m_scintillaTricks
private

Definition at line 46 of file properties_frame.h.

Referenced by onScintillaCharAdded(), PROPERTIES_FRAME(), and ~PROPERTIES_FRAME().

◆ m_SizerItemProperties

wxBoxSizer* PANEL_PROPERTIES_BASE::m_SizerItemProperties
protectedinherited

◆ m_SizerTextOptions

wxBoxSizer* PANEL_PROPERTIES_BASE::m_SizerTextOptions
protectedinherited

◆ m_staticTextBitmapDPI

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextBitmapDPI
protectedinherited

◆ m_staticTextBottomMargin

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextBottomMargin
protectedinherited

◆ m_staticTextComment

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextComment
protectedinherited

◆ m_staticTextConstraintX

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextConstraintX
protectedinherited

◆ m_staticTextConstraintY

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextConstraintY
protectedinherited

◆ m_staticTextDefLineW

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextDefLineW
protectedinherited

◆ m_staticTextDefRightMargin

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextDefRightMargin
protectedinherited

◆ m_staticTextDefTextThickness

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextDefTextThickness
protectedinherited

◆ m_staticTextDefTsX

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextDefTsX
protectedinherited

◆ m_staticTextDefTsY

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextDefTsY
protectedinherited

◆ m_staticTextEndX

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextEndX
protectedinherited

◆ m_staticTextEndY

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextEndY
protectedinherited

◆ m_staticTextHjust

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextHjust
protectedinherited

◆ m_staticTextInclabel

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextInclabel
protectedinherited

◆ m_staticTextLeftMargin

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextLeftMargin
protectedinherited

◆ m_staticTextOrgEnd

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextOrgEnd
protectedinherited

◆ m_staticTextOrgPos

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextOrgPos
protectedinherited

◆ m_staticTextPosX

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextPosX
protectedinherited

◆ m_staticTextPosY

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextPosY
protectedinherited

◆ m_staticTextRepeatCnt

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextRepeatCnt
protectedinherited

◆ m_staticTextRot

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextRot
protectedinherited

◆ m_staticTextSizeInfo

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextSizeInfo
protectedinherited

◆ m_staticTextStepX

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextStepX
protectedinherited

◆ m_staticTextStepY

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextStepY
protectedinherited

◆ m_staticTextThickness

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextThickness
protectedinherited

◆ m_staticTextTopMargin

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextTopMargin
protectedinherited

◆ m_staticTextTsizeX

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextTsizeX
protectedinherited

◆ m_staticTextTsizeY

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextTsizeY
protectedinherited

◆ m_staticTextType

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextType
protectedinherited

◆ m_staticTextVjust

wxStaticText* PANEL_PROPERTIES_BASE::m_staticTextVjust
protectedinherited

◆ m_stcText

wxStyledTextCtrl* PANEL_PROPERTIES_BASE::m_stcText
protectedinherited

◆ m_swGeneralOpts

wxScrolledWindow* PANEL_PROPERTIES_BASE::m_swGeneralOpts
protectedinherited

◆ m_swItemProperties

wxScrolledWindow* PANEL_PROPERTIES_BASE::m_swItemProperties
protectedinherited

◆ m_TextBottomMarginUnits

wxStaticText* PANEL_PROPERTIES_BASE::m_TextBottomMarginUnits
protectedinherited

◆ m_TextConstraintXUnits

wxStaticText* PANEL_PROPERTIES_BASE::m_TextConstraintXUnits
protectedinherited

◆ m_TextConstraintYUnits

wxStaticText* PANEL_PROPERTIES_BASE::m_TextConstraintYUnits
protectedinherited

◆ m_textCtrlBitmapDPI

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlBitmapDPI
protectedinherited

◆ m_textCtrlBottomMargin

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlBottomMargin
protectedinherited

◆ m_textCtrlBottomMarginBinder

UNIT_BINDER PROPERTIES_FRAME::m_textCtrlBottomMarginBinder
private

Definition at line 73 of file properties_frame.h.

Referenced by CopyPrmsFromGeneralToPanel(), and CopyPrmsFromPanelToGeneral().

◆ m_textCtrlComment

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlComment
protectedinherited

◆ m_textCtrlConstraintX

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlConstraintX
protectedinherited

◆ m_textCtrlConstraintXBinder

UNIT_BINDER PROPERTIES_FRAME::m_textCtrlConstraintXBinder
private

Definition at line 51 of file properties_frame.h.

Referenced by CopyPrmsFromItemToPanel(), and CopyPrmsFromPanelToItem().

◆ m_textCtrlConstraintY

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlConstraintY
protectedinherited

◆ m_textCtrlConstraintYBinder

UNIT_BINDER PROPERTIES_FRAME::m_textCtrlConstraintYBinder
private

Definition at line 52 of file properties_frame.h.

Referenced by CopyPrmsFromItemToPanel(), and CopyPrmsFromPanelToItem().

◆ m_textCtrlDefaultLineWidth

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlDefaultLineWidth
protectedinherited

◆ m_textCtrlDefaultLineWidthBinder

UNIT_BINDER PROPERTIES_FRAME::m_textCtrlDefaultLineWidthBinder
private

Definition at line 66 of file properties_frame.h.

Referenced by CopyPrmsFromGeneralToPanel(), and CopyPrmsFromPanelToGeneral().

◆ m_textCtrlDefaultTextSizeX

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlDefaultTextSizeX
protectedinherited

◆ m_textCtrlDefaultTextSizeXBinder

UNIT_BINDER PROPERTIES_FRAME::m_textCtrlDefaultTextSizeXBinder
private

Definition at line 63 of file properties_frame.h.

Referenced by CopyPrmsFromGeneralToPanel(), and CopyPrmsFromPanelToGeneral().

◆ m_textCtrlDefaultTextSizeY

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlDefaultTextSizeY
protectedinherited

◆ m_textCtrlDefaultTextSizeYBinder

UNIT_BINDER PROPERTIES_FRAME::m_textCtrlDefaultTextSizeYBinder
private

Definition at line 64 of file properties_frame.h.

Referenced by CopyPrmsFromGeneralToPanel(), and CopyPrmsFromPanelToGeneral().

◆ m_textCtrlDefaultTextThickness

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlDefaultTextThickness
protectedinherited

◆ m_textCtrlDefaultTextThicknessBinder

UNIT_BINDER PROPERTIES_FRAME::m_textCtrlDefaultTextThicknessBinder
private

Definition at line 67 of file properties_frame.h.

Referenced by CopyPrmsFromGeneralToPanel(), and CopyPrmsFromPanelToGeneral().

◆ m_textCtrlEndX

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlEndX
protectedinherited

◆ m_textCtrlEndXBinder

UNIT_BINDER PROPERTIES_FRAME::m_textCtrlEndXBinder
private

Definition at line 57 of file properties_frame.h.

Referenced by CopyPrmsFromItemToPanel(), and CopyPrmsFromPanelToItem().

◆ m_textCtrlEndY

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlEndY
protectedinherited

◆ m_textCtrlEndYBinder

UNIT_BINDER PROPERTIES_FRAME::m_textCtrlEndYBinder
private

Definition at line 58 of file properties_frame.h.

Referenced by CopyPrmsFromItemToPanel(), and CopyPrmsFromPanelToItem().

◆ m_textCtrlLeftMargin

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlLeftMargin
protectedinherited

◆ m_textCtrlLeftMarginBinder

UNIT_BINDER PROPERTIES_FRAME::m_textCtrlLeftMarginBinder
private

Definition at line 69 of file properties_frame.h.

Referenced by CopyPrmsFromGeneralToPanel(), and CopyPrmsFromPanelToGeneral().

◆ m_textCtrlPosX

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlPosX
protectedinherited

◆ m_textCtrlPosXBinder

UNIT_BINDER PROPERTIES_FRAME::m_textCtrlPosXBinder
private

Definition at line 54 of file properties_frame.h.

Referenced by CopyPrmsFromItemToPanel(), and CopyPrmsFromPanelToItem().

◆ m_textCtrlPosY

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlPosY
protectedinherited

◆ m_textCtrlPosYBinder

UNIT_BINDER PROPERTIES_FRAME::m_textCtrlPosYBinder
private

Definition at line 55 of file properties_frame.h.

Referenced by CopyPrmsFromItemToPanel(), and CopyPrmsFromPanelToItem().

◆ m_textCtrlRepeatCount

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlRepeatCount
protectedinherited

◆ m_textCtrlRightMargin

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlRightMargin
protectedinherited

◆ m_textCtrlRightMarginBinder

UNIT_BINDER PROPERTIES_FRAME::m_textCtrlRightMarginBinder
private

Definition at line 70 of file properties_frame.h.

Referenced by CopyPrmsFromGeneralToPanel(), and CopyPrmsFromPanelToGeneral().

◆ m_textCtrlRotation

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlRotation
protectedinherited

◆ m_textCtrlStepX

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlStepX
protectedinherited

◆ m_textCtrlStepXBinder

UNIT_BINDER PROPERTIES_FRAME::m_textCtrlStepXBinder
private

Definition at line 60 of file properties_frame.h.

Referenced by CopyPrmsFromItemToPanel(), and CopyPrmsFromPanelToItem().

◆ m_textCtrlStepY

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlStepY
protectedinherited

◆ m_textCtrlStepYBinder

UNIT_BINDER PROPERTIES_FRAME::m_textCtrlStepYBinder
private

Definition at line 61 of file properties_frame.h.

Referenced by CopyPrmsFromItemToPanel(), and CopyPrmsFromPanelToItem().

◆ m_textCtrlTextIncrement

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlTextIncrement
protectedinherited

◆ m_textCtrlTextSizeX

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlTextSizeX
protectedinherited

◆ m_textCtrlTextSizeXBinder

UNIT_BINDER PROPERTIES_FRAME::m_textCtrlTextSizeXBinder
private

Definition at line 48 of file properties_frame.h.

Referenced by CopyPrmsFromItemToPanel(), and CopyPrmsFromPanelToItem().

◆ m_textCtrlTextSizeY

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlTextSizeY
protectedinherited

◆ m_textCtrlTextSizeYBinder

UNIT_BINDER PROPERTIES_FRAME::m_textCtrlTextSizeYBinder
private

Definition at line 49 of file properties_frame.h.

Referenced by CopyPrmsFromItemToPanel(), and CopyPrmsFromPanelToItem().

◆ m_textCtrlThickness

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlThickness
protectedinherited

◆ m_textCtrlThicknessBinder

UNIT_BINDER PROPERTIES_FRAME::m_textCtrlThicknessBinder
private

Definition at line 75 of file properties_frame.h.

Referenced by CopyPrmsFromItemToPanel(), and CopyPrmsFromPanelToItem().

◆ m_textCtrlTopMargin

wxTextCtrl* PANEL_PROPERTIES_BASE::m_textCtrlTopMargin
protectedinherited

◆ m_textCtrlTopMarginBinder

UNIT_BINDER PROPERTIES_FRAME::m_textCtrlTopMarginBinder
private

Definition at line 72 of file properties_frame.h.

Referenced by CopyPrmsFromGeneralToPanel(), and CopyPrmsFromPanelToGeneral().

◆ m_TextDefaultLineWidthUnits

wxStaticText* PANEL_PROPERTIES_BASE::m_TextDefaultLineWidthUnits
protectedinherited

◆ m_TextDefaultTextSizeXUnits

wxStaticText* PANEL_PROPERTIES_BASE::m_TextDefaultTextSizeXUnits
protectedinherited

◆ m_TextDefaultTextSizeYUnits

wxStaticText* PANEL_PROPERTIES_BASE::m_TextDefaultTextSizeYUnits
protectedinherited

◆ m_TextDefaultTextThicknessUnits

wxStaticText* PANEL_PROPERTIES_BASE::m_TextDefaultTextThicknessUnits
protectedinherited

◆ m_TextEndXUnits

wxStaticText* PANEL_PROPERTIES_BASE::m_TextEndXUnits
protectedinherited

◆ m_TextEndYUnits

wxStaticText* PANEL_PROPERTIES_BASE::m_TextEndYUnits
protectedinherited

◆ m_TextLeftMarginUnits

wxStaticText* PANEL_PROPERTIES_BASE::m_TextLeftMarginUnits
protectedinherited

◆ m_TextLineThicknessUnits

wxStaticText* PANEL_PROPERTIES_BASE::m_TextLineThicknessUnits
protectedinherited

◆ m_TextPosXUnits

wxStaticText* PANEL_PROPERTIES_BASE::m_TextPosXUnits
protectedinherited

◆ m_TextPosYUnits

wxStaticText* PANEL_PROPERTIES_BASE::m_TextPosYUnits
protectedinherited

◆ m_TextRightMarginUnits

wxStaticText* PANEL_PROPERTIES_BASE::m_TextRightMarginUnits
protectedinherited

◆ m_TextStepXUnits

wxStaticText* PANEL_PROPERTIES_BASE::m_TextStepXUnits
protectedinherited

◆ m_TextStepYUnits

wxStaticText* PANEL_PROPERTIES_BASE::m_TextStepYUnits
protectedinherited

◆ m_TextTextSizeXUnits

wxStaticText* PANEL_PROPERTIES_BASE::m_TextTextSizeXUnits
protectedinherited

◆ m_TextTextSizeYUnits

wxStaticText* PANEL_PROPERTIES_BASE::m_TextTextSizeYUnits
protectedinherited

◆ m_TextTopMarginUnits

wxStaticText* PANEL_PROPERTIES_BASE::m_TextTopMarginUnits
protectedinherited

◆ sbSizerPos

wxStaticBoxSizer* PANEL_PROPERTIES_BASE::sbSizerPos
protectedinherited

The documentation for this class was generated from the following files: