16DIALOG_TABLECELL_PROPERTIES_BASE::DIALOG_TABLECELL_PROPERTIES_BASE( wxWindow* parent, wxWindowID 
id, 
const wxString& title, 
const wxPoint& pos, 
const wxSize& size, 
long style ) : 
DIALOG_SHIM( parent, id, title, pos, size, style )
 
   18    this->SetSizeHints( wxDefaultSize, wxDefaultSize );
 
   20    wxBoxSizer* bMainSizer;
 
   21    bMainSizer = 
new wxBoxSizer( wxVERTICAL );
 
   24    m_infoBar->SetShowHideEffects( wxSHOW_EFFECT_NONE, wxSHOW_EFFECT_NONE );
 
   25    m_infoBar->SetEffectDuration( 500 );
 
   28    bMainSizer->Add( m_infoBar, 0, wxEXPAND|wxBOTTOM, 5 );
 
   31    bSizer7 = 
new wxBoxSizer( wxHORIZONTAL );
 
   34    bSizer8 = 
new wxBoxSizer( wxVERTICAL );
 
   36    m_cellTextLabel = 
new wxStaticText( 
this, wxID_ANY, 
_(
"Cell contents:"), wxDefaultPosition, wxDefaultSize, 0 );
 
   37    m_cellTextLabel->Wrap( -1 );
 
   38    bSizer8->Add( m_cellTextLabel, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
 
   40    m_cellTextCtrl = 
new wxStyledTextCtrl( 
this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxBORDER_SUNKEN, wxEmptyString );
 
   41    m_cellTextCtrl->SetUseTabs( 
false );
 
   42    m_cellTextCtrl->SetTabWidth( 4 );
 
   43    m_cellTextCtrl->SetIndent( 4 );
 
   44    m_cellTextCtrl->SetTabIndents( 
false );
 
   45    m_cellTextCtrl->SetBackSpaceUnIndents( 
false );
 
   46    m_cellTextCtrl->SetViewEOL( 
false );
 
   47    m_cellTextCtrl->SetViewWhiteSpace( 
false );
 
   48    m_cellTextCtrl->SetMarginWidth( 2, 0 );
 
   49    m_cellTextCtrl->SetIndentationGuides( 
false );
 
   50    m_cellTextCtrl->SetReadOnly( 
false );
 
   51    m_cellTextCtrl->SetMarginWidth( 1, 0 );
 
   52    m_cellTextCtrl->SetMarginWidth( 0, 0 );
 
   53    m_cellTextCtrl->MarkerDefine( wxSTC_MARKNUM_FOLDER, wxSTC_MARK_BOXPLUS );
 
   54    m_cellTextCtrl->MarkerSetBackground( wxSTC_MARKNUM_FOLDER, wxColour( wxT(
"BLACK") ) );
 
   55    m_cellTextCtrl->MarkerSetForeground( wxSTC_MARKNUM_FOLDER, wxColour( wxT(
"WHITE") ) );
 
   56    m_cellTextCtrl->MarkerDefine( wxSTC_MARKNUM_FOLDEROPEN, wxSTC_MARK_BOXMINUS );
 
   57    m_cellTextCtrl->MarkerSetBackground( wxSTC_MARKNUM_FOLDEROPEN, wxColour( wxT(
"BLACK") ) );
 
   58    m_cellTextCtrl->MarkerSetForeground( wxSTC_MARKNUM_FOLDEROPEN, wxColour( wxT(
"WHITE") ) );
 
   59    m_cellTextCtrl->MarkerDefine( wxSTC_MARKNUM_FOLDERSUB, wxSTC_MARK_EMPTY );
 
   60    m_cellTextCtrl->MarkerDefine( wxSTC_MARKNUM_FOLDEREND, wxSTC_MARK_BOXPLUS );
 
   61    m_cellTextCtrl->MarkerSetBackground( wxSTC_MARKNUM_FOLDEREND, wxColour( wxT(
"BLACK") ) );
 
   62    m_cellTextCtrl->MarkerSetForeground( wxSTC_MARKNUM_FOLDEREND, wxColour( wxT(
"WHITE") ) );
 
   63    m_cellTextCtrl->MarkerDefine( wxSTC_MARKNUM_FOLDEROPENMID, wxSTC_MARK_BOXMINUS );
 
   64    m_cellTextCtrl->MarkerSetBackground( wxSTC_MARKNUM_FOLDEROPENMID, wxColour( wxT(
"BLACK") ) );
 
   65    m_cellTextCtrl->MarkerSetForeground( wxSTC_MARKNUM_FOLDEROPENMID, wxColour( wxT(
"WHITE") ) );
 
   66    m_cellTextCtrl->MarkerDefine( wxSTC_MARKNUM_FOLDERMIDTAIL, wxSTC_MARK_EMPTY );
 
   67    m_cellTextCtrl->MarkerDefine( wxSTC_MARKNUM_FOLDERTAIL, wxSTC_MARK_EMPTY );
 
   68    m_cellTextCtrl->SetSelBackground( 
true, wxSystemSettings::GetColour( wxSYS_COLOUR_HIGHLIGHT ) );
 
   69    m_cellTextCtrl->SetSelForeground( 
true, wxSystemSettings::GetColour( wxSYS_COLOUR_HIGHLIGHTTEXT ) );
 
   70    bSizer8->Add( m_cellTextCtrl, 1, wxEXPAND | wxALL, 2 );
 
   73    bSizer7->Add( bSizer8, 1, wxEXPAND|wxTOP|wxRIGHT, 5 );
 
   76    bSizer9 = 
new wxBoxSizer( wxVERTICAL );
 
   79    bMargins = 
new wxBoxSizer( wxVERTICAL );
 
   81    wxGridBagSizer* gbFontSizer;
 
   82    gbFontSizer = 
new wxGridBagSizer( 3, 5 );
 
   83    gbFontSizer->SetFlexibleDirection( wxBOTH );
 
   84    gbFontSizer->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
 
   85    gbFontSizer->SetEmptyCellSize( wxSize( -1,5 ) );
 
   87    m_fontLabel = 
new wxStaticText( 
this, wxID_ANY, 
_(
"Font:"), wxDefaultPosition, wxDefaultSize, 0 );
 
   88    m_fontLabel->Wrap( -1 );
 
   89    gbFontSizer->Add( m_fontLabel, wxGBPosition( 1, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxLEFT, 1 );
 
   91    wxString m_fontCtrlChoices[] = { 
_(
"KiCad Font") };
 
   92    int m_fontCtrlNChoices = 
sizeof( m_fontCtrlChoices ) / 
sizeof( wxString );
 
   93    m_fontCtrl = 
new FONT_CHOICE( 
this, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_fontCtrlNChoices, m_fontCtrlChoices, 0 );
 
   94    m_fontCtrl->SetSelection( 0 );
 
   95    gbFontSizer->Add( m_fontCtrl, wxGBPosition( 1, 1 ), wxGBSpan( 1, 3 ), wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
 
   98    gbFontSizer->AddGrowableCol( 1 );
 
  100    bMargins->Add( gbFontSizer, 0, wxEXPAND|wxBOTTOM, 5 );
 
  102    wxFlexGridSizer* fgTextStyleSizer;
 
  103    fgTextStyleSizer = 
new wxFlexGridSizer( 0, 2, 5, 5 );
 
  104    fgTextStyleSizer->SetFlexibleDirection( wxBOTH );
 
  105    fgTextStyleSizer->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
 
  107    wxBoxSizer* hAlignButtons;
 
  108    hAlignButtons = 
new wxBoxSizer( wxHORIZONTAL );
 
  110    m_bold = 
new BITMAP_BUTTON( 
this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|wxBORDER_NONE );
 
  111    hAlignButtons->Add( m_bold, 0, wxALIGN_CENTER_VERTICAL, 5 );
 
  113    m_italic = 
new BITMAP_BUTTON( 
this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|wxBORDER_NONE );
 
  114    hAlignButtons->Add( m_italic, 0, wxALIGN_CENTER_VERTICAL, 5 );
 
  116    m_separator0 = 
new BITMAP_BUTTON( 
this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|wxBORDER_NONE );
 
  117    m_separator0->Enable( 
false );
 
  119    hAlignButtons->Add( m_separator0, 0, wxALIGN_CENTER_VERTICAL, 5 );
 
  121    m_hAlignLeft = 
new BITMAP_BUTTON( 
this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|wxBORDER_NONE );
 
  122    m_hAlignLeft->SetToolTip( 
_(
"Align left") );
 
  124    hAlignButtons->Add( m_hAlignLeft, 0, wxALIGN_CENTER_VERTICAL, 5 );
 
  126    m_hAlignCenter = 
new BITMAP_BUTTON( 
this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|wxBORDER_NONE );
 
  127    m_hAlignCenter->SetToolTip( 
_(
"Align horizontal center") );
 
  129    hAlignButtons->Add( m_hAlignCenter, 0, wxALIGN_CENTER_VERTICAL, 5 );
 
  131    m_hAlignRight = 
new BITMAP_BUTTON( 
this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|wxBORDER_NONE );
 
  132    m_hAlignRight->SetToolTip( 
_(
"Align right") );
 
  134    hAlignButtons->Add( m_hAlignRight, 0, wxALIGN_CENTER_VERTICAL, 5 );
 
  136    m_separator1 = 
new BITMAP_BUTTON( 
this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|wxBORDER_NONE );
 
  137    m_separator1->Enable( 
false );
 
  139    hAlignButtons->Add( m_separator1, 0, wxALL, 5 );
 
  141    m_vAlignTop = 
new BITMAP_BUTTON( 
this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|wxBORDER_NONE );
 
  142    m_vAlignTop->SetToolTip( 
_(
"Align top") );
 
  144    hAlignButtons->Add( m_vAlignTop, 0, wxALIGN_CENTER_VERTICAL, 5 );
 
  146    m_vAlignCenter = 
new BITMAP_BUTTON( 
this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|wxBORDER_NONE );
 
  147    m_vAlignCenter->SetToolTip( 
_(
"Align vertical center") );
 
  149    hAlignButtons->Add( m_vAlignCenter, 0, wxALIGN_CENTER_VERTICAL, 5 );
 
  151    m_vAlignBottom = 
new BITMAP_BUTTON( 
this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|wxBORDER_NONE );
 
  152    m_vAlignBottom->SetToolTip( 
_(
"Align bottom") );
 
  154    hAlignButtons->Add( m_vAlignBottom, 0, wxALIGN_CENTER_VERTICAL, 5 );
 
  157    fgTextStyleSizer->Add( hAlignButtons, 0, wxALIGN_CENTER_VERTICAL, 5 );
 
  160    bMargins->Add( fgTextStyleSizer, 1, wxEXPAND, 5 );
 
  162    wxGridBagSizer* gbSizer1;
 
  163    gbSizer1 = 
new wxGridBagSizer( 3, 5 );
 
  164    gbSizer1->SetFlexibleDirection( wxBOTH );
 
  165    gbSizer1->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
 
  166    gbSizer1->SetEmptyCellSize( wxSize( -1,8 ) );
 
  168    m_SizeXLabel = 
new wxStaticText( 
this, wxID_ANY, 
_(
"Text width:"), wxDefaultPosition, wxDefaultSize, 0 );
 
  169    m_SizeXLabel->Wrap( -1 );
 
  170    m_SizeXLabel->SetToolTip( 
_(
"Text width") );
 
  172    gbSizer1->Add( m_SizeXLabel, wxGBPosition( 0, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 4 );
 
  174    m_SizeXCtrl = 
new wxTextCtrl( 
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_PROCESS_ENTER );
 
  175    gbSizer1->Add( m_SizeXCtrl, wxGBPosition( 0, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
 
  177    m_SizeXUnits = 
new wxStaticText( 
this, wxID_ANY, 
_(
"unit"), wxDefaultPosition, wxDefaultSize, 0 );
 
  178    m_SizeXUnits->Wrap( -1 );
 
  179    gbSizer1->Add( m_SizeXUnits, wxGBPosition( 0, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
 
  181    m_SizeYLabel = 
new wxStaticText( 
this, wxID_ANY, 
_(
"Text height:"), wxDefaultPosition, wxDefaultSize, 0 );
 
  182    m_SizeYLabel->Wrap( -1 );
 
  183    m_SizeYLabel->SetToolTip( 
_(
"Text height") );
 
  185    gbSizer1->Add( m_SizeYLabel, wxGBPosition( 1, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 4 );
 
  187    m_SizeYCtrl = 
new wxTextCtrl( 
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_PROCESS_ENTER );
 
  188    gbSizer1->Add( m_SizeYCtrl, wxGBPosition( 1, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
 
  190    m_SizeYUnits = 
new wxStaticText( 
this, wxID_ANY, 
_(
"unit"), wxDefaultPosition, wxDefaultSize, 0 );
 
  191    m_SizeYUnits->Wrap( -1 );
 
  192    gbSizer1->Add( m_SizeYUnits, wxGBPosition( 1, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
 
  194    m_ThicknessLabel = 
new wxStaticText( 
this, wxID_ANY, 
_(
"Thickness:"), wxDefaultPosition, wxDefaultSize, 0 );
 
  195    m_ThicknessLabel->Wrap( -1 );
 
  196    m_ThicknessLabel->SetToolTip( 
_(
"Text thickness") );
 
  198    gbSizer1->Add( m_ThicknessLabel, wxGBPosition( 2, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 4 );
 
  200    m_ThicknessCtrl = 
new wxTextCtrl( 
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_PROCESS_ENTER );
 
  201    gbSizer1->Add( m_ThicknessCtrl, wxGBPosition( 2, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
 
  203    m_ThicknessUnits = 
new wxStaticText( 
this, wxID_ANY, 
_(
"unit"), wxDefaultPosition, wxDefaultSize, 0 );
 
  204    m_ThicknessUnits->Wrap( -1 );
 
  205    gbSizer1->Add( m_ThicknessUnits, wxGBPosition( 2, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
 
  207    m_autoTextThickness = 
new BITMAP_BUTTON( 
this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|wxBORDER_NONE );
 
  208    m_autoTextThickness->SetToolTip( 
_(
"Adjust the text thickness") );
 
  210    gbSizer1->Add( m_autoTextThickness, wxGBPosition( 2, 3 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
 
  213    bMargins->Add( gbSizer1, 0, wxEXPAND|wxTOP, 5 );
 
  216    bMargins->Add( 0, 20, 0, wxEXPAND, 5 );
 
  218    wxGridSizer* gMarginsSizer;
 
  219    gMarginsSizer = 
new wxGridSizer( 0, 3, 4, 2 );
 
  221    wxStaticText* marginsLabel;
 
  222    marginsLabel = 
new wxStaticText( 
this, wxID_ANY, 
_(
"Cell margins:"), wxDefaultPosition, wxDefaultSize, 0 );
 
  223    marginsLabel->Wrap( -1 );
 
  224    gMarginsSizer->Add( marginsLabel, 0, wxALIGN_CENTER_VERTICAL, 5 );
 
  226    m_marginTopCtrl = 
new wxTextCtrl( 
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
 
  227    gMarginsSizer->Add( m_marginTopCtrl, 0, wxALIGN_CENTER_VERTICAL, 5 );
 
  229    m_marginTopUnits = 
new wxStaticText( 
this, wxID_ANY, 
_(
"mm"), wxDefaultPosition, wxDefaultSize, 0 );
 
  230    m_marginTopUnits->Wrap( -1 );
 
  231    gMarginsSizer->Add( m_marginTopUnits, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 2 );
 
  233    m_marginLeftCtrl = 
new wxTextCtrl( 
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
 
  234    gMarginsSizer->Add( m_marginLeftCtrl, 0, wxALIGN_CENTER_VERTICAL, 5 );
 
  237    gMarginsSizer->Add( 0, 0, 1, wxEXPAND, 5 );
 
  239    m_marginRightCtrl = 
new wxTextCtrl( 
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
 
  240    gMarginsSizer->Add( m_marginRightCtrl, 0, wxALIGN_CENTER_VERTICAL, 5 );
 
  243    gMarginsSizer->Add( 0, 0, 1, wxEXPAND, 5 );
 
  245    m_marginBottomCtrl = 
new wxTextCtrl( 
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
 
  246    gMarginsSizer->Add( m_marginBottomCtrl, 0, wxALIGN_CENTER_VERTICAL, 5 );
 
  249    bMargins->Add( gMarginsSizer, 0, wxEXPAND, 5 );
 
  252    bSizer9->Add( bMargins, 1, wxEXPAND|wxALL, 10 );
 
  255    bSizer7->Add( bSizer9, 1, wxEXPAND, 5 );
 
  258    bMainSizer->Add( bSizer7, 1, wxEXPAND|wxLEFT, 5 );
 
  260    wxBoxSizer* bButtons;
 
  261    bButtons = 
new wxBoxSizer( wxHORIZONTAL );
 
  263    m_editTable = 
new wxButton( 
this, wxID_ANY, 
_(
"Edit Table..."), wxDefaultPosition, wxDefaultSize, 0 );
 
  264    m_editTable->SetToolTip( 
_(
"Edit table properties and cell contents") );
 
  266    bButtons->Add( m_editTable, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 10 );
 
  269    bButtons->Add( 0, 0, 1, wxEXPAND, 5 );
 
  271    m_sdbSizer1 = 
new wxStdDialogButtonSizer();
 
  272    m_sdbSizer1OK = 
new wxButton( 
this, wxID_OK );
 
  273    m_sdbSizer1->AddButton( m_sdbSizer1OK );
 
  274    m_sdbSizer1Cancel = 
new wxButton( 
this, wxID_CANCEL );
 
  275    m_sdbSizer1->AddButton( m_sdbSizer1Cancel );
 
  276    m_sdbSizer1->Realize();
 
  278    bButtons->Add( m_sdbSizer1, 0, wxEXPAND|wxALL, 5 );
 
  281    bMainSizer->Add( bButtons, 0, wxEXPAND, 5 );
 
  284    this->SetSizer( bMainSizer );
 
  286    bMainSizer->Fit( 
this );
 
Dialog helper object to sit in the inheritance tree between wxDialog and any class written by wxFormB...
 
virtual void onBoldToggle(wxCommandEvent &event)
 
virtual void onTextSize(wxCommandEvent &event)
 
~DIALOG_TABLECELL_PROPERTIES_BASE()
 
virtual void OnOkClick(wxCommandEvent &event)
 
BITMAP_BUTTON * m_autoTextThickness
 
virtual void onEditTable(wxCommandEvent &event)
 
wxTextCtrl * m_ThicknessCtrl
 
virtual void onThickness(wxCommandEvent &event)
 
virtual void onAutoTextThickness(wxCommandEvent &event)
 
DIALOG_TABLECELL_PROPERTIES_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxString &title=_("Table Cell Properties"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(-1,-1), long style=wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER)
 
A modified version of the wxInfoBar class that allows us to: