38 wxWindowID
id, const wxString& caption, const wxPoint& pos, const wxSize& size )
41 Create( parent,
id, caption, pos, size, style );
51 m_structureSet.clear();
58 if ( m_structureSet.size() )
59 m_listbox->SetSelection( 0,
true );
63 a2dCanvasObjectsDialog::a2dCanvasObjectsDialog( wxWindow* parent,
a2dCanvasObjectList* total,
bool modal,
long style,
64 wxWindowID
id,
const wxString& caption,
const wxPoint& pos,
const wxSize& size )
67 Create( parent,
id, caption, pos, size, style );
85 m_listbox->SetSelection( 0,
true );
96 SetExtraStyle( GetExtraStyle() | wxWS_EX_BLOCK_EVENTS );
97 wxDialog::Create( parent,
id, caption, pos, size, style );
101 wxBoxSizer* itemBoxSizer2 =
new wxBoxSizer( wxVERTICAL );
102 itemDialog1->SetSizer( itemBoxSizer2 );
104 m_numberObjects =
new wxStaticText( itemDialog1, STRUCT_ID_STATIC, _(
"Number of objects:" ), wxDefaultPosition, wxDefaultSize, 0 );
105 m_numberObjects->SetHelpText( _(
"Displays number of objects in list" ) );
107 m_numberObjects->SetToolTip( _(
"Displays number of objects in list" ) );
108 itemBoxSizer2->Add( m_numberObjects, 0, wxALIGN_CENTER_HORIZONTAL | wxALL , 5 );
110 wxBoxSizer* itemBoxSizer4 =
new wxBoxSizer( wxHORIZONTAL );
111 itemBoxSizer2->Add( itemBoxSizer4, 1, wxGROW | wxALL, 1 );
113 wxString* m_listboxStrings = NULL;
114 m_listbox =
new wxListBox( itemDialog1, STRUCT_ID_LISTBOX, wxDefaultPosition, wxDefaultSize, 0, m_listboxStrings, wxLB_SINGLE | wxLB_NEEDED_SB );
115 m_listbox->SetHelpText( _(
"list of objects to choose from, Double click to choose." ) );
117 m_listbox->SetToolTip( _(
"list of objects to choose from, Double click to choose." ) );
118 itemBoxSizer4->Add( m_listbox, 1, wxGROW | wxALL, 1 );
120 wxBoxSizer* itemBoxSizer6 =
new wxBoxSizer( wxHORIZONTAL );
121 itemBoxSizer2->Add( itemBoxSizer6, 0, wxGROW | wxALL, 1 );
125 m_hide =
new wxButton( itemDialog1, STRUCT_ID_HIDE, _(
"Ok" ), wxDefaultPosition, wxDefaultSize, 0 );
126 m_Apply =
new wxButton( itemDialog1, STRUCT_ID_APPLY, _(
"Cancel" ), wxDefaultPosition, wxDefaultSize, 0 );
130 m_hide =
new wxButton( itemDialog1, STRUCT_ID_HIDE, _(
"Hide" ), wxDefaultPosition, wxDefaultSize, 0 );
131 m_Apply =
new wxButton( itemDialog1, STRUCT_ID_APPLY, _(
"Apply" ), wxDefaultPosition, wxDefaultSize, 0 );
134 m_hide->SetHelpText( _(
"Hide this dialog" ) );
136 m_hide->SetToolTip( _(
"Hide this dialog" ) );
137 itemBoxSizer6->Add( m_hide, 0, wxALIGN_CENTER_VERTICAL | wxALL, 1 );
139 m_Apply->SetHelpText( _(
"Set this object as top in canvas" ) );
141 m_Apply->SetToolTip( _(
"Set this object as top in canvas" ) );
142 itemBoxSizer6->Add( m_Apply, 0, wxALIGN_CENTER_VERTICAL | wxALL, 1 );
144 GetSizer()->Fit(
this );
145 GetSizer()->SetSizeHints(
this );
150 a2dCanvasObjectsDialog::~a2dCanvasObjectsDialog()
167 for( a2dCanvasObjectList::iterator iter = objects->begin(); iter != objects->end(); ++iter )
179 m_listbox->Append( obj->
GetName() + wxT(
"=>top" ) );
182 m_listbox->Append( obj->
GetName() );
185 wxString mess = wxT(
"" );
186 mess.Printf( _(
"Number of structures: %ld" ),
m_structureSet.size() - 1 );
187 m_numberObjects->SetLabel( mess );
191 m_listbox->SetSelection( 0,
true );
199 if ( drawing->
GetDrawingId() == a2dDrawing::sm_cameleonrefs )
221 if ( obj->GetHighLight() )
223 m_listbox->Append( obj->
GetName() + wxT(
"=>top" ) );
226 m_listbox->Append( obj->
GetName() );
234 collector.SetSkipNotRenderedInDrawing(
true );
245 m_listbox->Append( obj->
GetName() + wxT(
"=>top" ) );
248 m_listbox->Append( obj->
GetName() );
252 wxString mess = wxT(
"" );
253 mess.Printf( _(
"Number of structures: %ld" ),
m_structureSet.size() - 1 );
254 m_numberObjects->SetLabel( mess );
258 m_listbox->SetSelection( 0,
true );
262 void a2dCanvasObjectsDialog::InitCameleons(
a2dDrawing* drawing,
const wxString& appearanceClassName )
286 if ( obj->GetHighLight() )
288 m_listbox->Append( obj->
GetName() + wxT(
"=>top" ) );
291 m_listbox->Append( obj->
GetName() );
294 wxString mess = wxT(
"" );
295 mess.Printf( _(
"Number of structures: %ld" ),
m_structureSet.size() - 1 );
296 m_numberObjects->SetLabel( mess );
300 m_listbox->SetSelection( 0,
true );
319 SetReturnCode( wxID_OK );
328 EndModal( wxID_CANCEL );
338 void a2dCanvasObjectsDialog::CmApply()
341 buf = m_listbox->GetStringSelection();
345 wxString name = obj->
GetName();
346 if ( !name.Cmp( buf ) )
351 else if ( name + wxT(
"=>top" ) == buf )
357 if ( m_drawing->
GetDrawingId() == a2dDrawing::sm_cameleonrefs )
384 SetReturnCode( wxID_OK );
448 wxWindowID
id, const wxString& caption, const wxPoint& pos, const wxSize& size )
450 Create( parent,
id, caption, pos, size, style );
453 m_structureSet.clear();
460 if ( m_structureSet.size() )
461 m_listbox->SetSelection( 0,
true );
465 a2dCanvasObjectsChooseDialog::a2dCanvasObjectsChooseDialog( wxWindow* parent,
a2dCanvasObjectList* total,
const wxString& appearancename,
long style,
466 wxWindowID
id,
const wxString& caption,
const wxPoint& pos,
const wxSize& size )
468 Create( parent,
id, caption, pos, size, style );
473 InitCameleons( total, appearancename );
479 m_listbox->SetSelection( 0,
true );
483 a2dCanvasObjectsChooseDialog::a2dCanvasObjectsChooseDialog( wxWindow* parent,
a2dCanvasObjectList* total,
long style,
484 wxWindowID
id,
const wxString& caption,
const wxPoint& pos,
const wxSize& size )
486 Create( parent,
id, caption, pos, size, style );
497 m_listbox->SetSelection( 0,
true );
508 SetExtraStyle( GetExtraStyle() | wxWS_EX_BLOCK_EVENTS );
509 wxDialog::Create( parent,
id, caption, pos, size, style );
513 wxBoxSizer* itemBoxSizer2 =
new wxBoxSizer( wxVERTICAL );
514 itemDialog1->SetSizer( itemBoxSizer2 );
516 m_numberObjects =
new wxStaticText( itemDialog1, CHOOSE_ID_STATIC, _(
"Number of objects:" ), wxDefaultPosition, wxDefaultSize, 0 );
517 m_numberObjects->SetHelpText( _(
"Displays number of objects in list" ) );
519 m_numberObjects->SetToolTip( _(
"Displays number of objects in list" ) );
520 itemBoxSizer2->Add( m_numberObjects, 0, wxALIGN_CENTER_HORIZONTAL | wxALL, 5 );
522 wxBoxSizer* itemBoxSizer4 =
new wxBoxSizer( wxHORIZONTAL );
523 itemBoxSizer2->Add( itemBoxSizer4, 1, wxGROW | wxALL, 1 );
525 wxString* m_listboxStrings = NULL;
526 m_listbox =
new wxListBox( itemDialog1, CHOOSE_ID_LISTBOX, wxDefaultPosition, wxDefaultSize, 0, m_listboxStrings, wxLB_SINGLE | wxLB_NEEDED_SB );
527 m_listbox->SetHelpText( _(
"list of objects to choose from, Double click to choose." ) );
529 m_listbox->SetToolTip( _(
"list of objects to choose from, Double click to choose." ) );
530 itemBoxSizer4->Add( m_listbox, 1, wxGROW | wxALL, 1 );
532 wxBoxSizer* itemBoxSizer6 =
new wxBoxSizer( wxHORIZONTAL );
533 itemBoxSizer2->Add( itemBoxSizer6, 0, wxGROW | wxALL, 1 );
535 m_hide =
new wxButton( itemDialog1, CHOOSE_ID_HIDE, _(
"Ok" ), wxDefaultPosition, wxDefaultSize, 0 );
536 m_Apply =
new wxButton( itemDialog1, CHOOSE_ID_APPLY, _(
"Cancel" ), wxDefaultPosition, wxDefaultSize, 0 );
538 m_hide->SetHelpText( _(
"Hide this dialog" ) );
540 m_hide->SetToolTip( _(
"Hide this dialog" ) );
541 itemBoxSizer6->Add( m_hide, 0, wxALIGN_CENTER_VERTICAL | wxALL, 1 );
543 m_Apply->SetHelpText( _(
"Set this object as top in canvas" ) );
545 m_Apply->SetToolTip( _(
"Set this object as top in canvas" ) );
546 itemBoxSizer6->Add( m_Apply, 0, wxALIGN_CENTER_VERTICAL | wxALL, 1 );
554 a2dCanvasObjectsChooseDialog::~a2dCanvasObjectsChooseDialog()
558 void a2dCanvasObjectsChooseDialog::InitCameleons(
a2dCanvasObjectList* total,
const wxString& appearanceClassName )
562 a2dCanvasObjectList::iterator rootchild = total->begin();
563 while ( rootchild != total->end() )
568 if ( appearanceClassName.IsEmpty() )
590 if ( obj->GetHighLight() )
592 m_listbox->Append( obj->
GetName() + wxT(
"=>top" ) );
595 m_listbox->Append( obj->
GetName() );
598 wxString mess = wxT(
"" );
599 mess.Printf( _(
"Number of structures: %ld" ),
m_structureSet.size() - 1 );
600 m_numberObjects->SetLabel( mess );
604 m_listbox->SetSelection( 0,
true );
613 for( a2dCanvasObjectList::iterator iter = objects->begin(); iter != objects->end(); ++iter )
615 a2dCanvasObjectList::value_type obj = *iter;
626 m_listbox->Append( obj->
GetName() + wxT(
"=>top" ) );
629 m_listbox->Append( obj->
GetName() );
632 wxString mess = wxT(
"" );
633 mess.Printf( _(
"Number of structures: %ld" ),
m_structureSet.size() - 1 );
634 m_numberObjects->SetLabel( mess );
638 m_listbox->SetSelection( 0,
true );
646 if ( drawing->
GetDrawingId() == a2dDrawing::sm_cameleonrefs )
668 if ( obj->GetHighLight() )
670 m_listbox->Append( obj->
GetName() + wxT(
"=>top" ) );
673 m_listbox->Append( obj->
GetName() );
681 collector.SetSkipNotRenderedInDrawing(
true );
692 m_listbox->Append( obj->
GetName() + wxT(
"=>top" ) );
695 m_listbox->Append( obj->
GetName() );
699 wxString mess = wxT(
"" );
700 mess.Printf( _(
"Number of structures: %ld" ),
m_structureSet.size() - 1 );
701 m_numberObjects->SetLabel( mess );
705 m_listbox->SetSelection( 0,
true );
722 EndModal( wxID_CANCEL );
730 void a2dCanvasObjectsChooseDialog::CmApply()
733 buf = m_listbox->GetStringSelection();
737 wxString name = obj->
GetName();
738 if ( !name.Cmp( buf ) )
743 else if ( name + wxT(
"=>top" ) == buf )
762 SetReturnCode( wxID_OK );
767 const int BRUSH_BUTTON_OK = wxID_HIGHEST + 5801 ;
768 const int BRUSH_BUTTON_CANCEL = wxID_HIGHEST + 5802 ;
777 wxDialog( parent, -1, _T( "choose style" ), wxDefaultPosition, wxDefaultSize, ( wxCAPTION ), _T( "style dialog" ) )
783 _T(
"Transparent (no fill)" ),
785 _T(
"Backward diagonal hatch" ),
786 _T(
"Cross-diagonal hatch" ),
787 _T(
"Forward diagonal hatch" ),
789 _T(
"Horizontal hatch" ),
790 _T(
"Vertical hatch" ),
792 _T(
"wxSTIPPLE_MASK_OPAQUE" ),
793 _T(
"wxSTIPPLE_MASK_OPAQUE_TRANSPARENT" ),
794 _T(
"wxGRADIENT_FILL_XY_LINEAR" ),
795 _T(
"wxGRADIENT_FILL_XY_RADIAL" ),
796 _T(
"wxGRADIENT_FILL_XY_DROP" )
799 m_choice =
new wxChoice(
this, -1, wxDefaultPosition, wxDefaultSize, 14, choices );
800 m_choice->SetSelection( 1 );
801 m_button1 =
new wxButton(
this, BRUSH_BUTTON_OK, _T(
"Ok" ), wxDefaultPosition, wxSize( 55, 20 ) );
802 m_button2 =
new wxButton(
this, BRUSH_BUTTON_CANCEL, _T(
"Cancel" ), wxDefaultPosition, wxSize( 55, 20 ) );
804 wxBoxSizer* sizer =
new wxBoxSizer( wxVERTICAL );
805 sizer->Add( m_choice, 1, wxEXPAND | wxALL, 1 );
807 wxBoxSizer* sizerb =
new wxBoxSizer( wxHORIZONTAL );
808 sizerb->Add( m_button1, 0, wxALL, 1 );
809 sizerb->Add( m_button2, 0, wxALL, 1 );
811 sizer->Add( sizerb, 0, wxALIGN_CENTER );
813 SetAutoLayout(
true );
815 sizer->SetSizeHints(
this );
824 void CanvasFillDialog::CmCancel( wxCommandEvent& )
826 EndModal( wxID_CANCEL );
829 void CanvasFillDialog::CmOk( wxCommandEvent& )
831 switch( m_choice->GetSelection() )
866 void CanvasFillDialog::OnCloseWindow( wxCloseEvent& WXUNUSED( event ) )
868 EndModal( wxID_CANCEL );
871 const int PEN_BUTTON_OK = wxID_HIGHEST + 5901 ;
872 const int PEN_BUTTON_CANCEL = wxID_HIGHEST + 5902 ;
875 EVT_BUTTON ( PEN_BUTTON_OK,
PenDialog::CmOk )
876 EVT_BUTTON ( PEN_BUTTON_CANCEL ,
PenDialog::CmCancel )
881 wxDialog( parent, -1, _T( "choose style" ), wxDefaultPosition, wxDefaultSize, ( wxDEFAULT_DIALOG_STYLE ), _T( "style dialog" ) )
887 _T(
"Solid style." ),
888 _T(
"No pen is used." ),
889 _T(
"Dotted style." ),
890 _T(
"Long dashed style." ),
891 _T(
"Short dashed style." ),
892 _T(
"Dot and dash style." ),
893 _T(
"Use the stipple bitmap." ),
894 _T(
"Backward diagonal hatch." ),
895 _T(
"Cross-diagonal hatch." ),
896 _T(
"Forward diagonal hatch." ),
897 _T(
"Cross hatch." ),
898 _T(
"Horizontal hatch." ),
899 _T(
"Vertical hatch." )
902 m_choice =
new wxChoice(
this, -1, wxDefaultPosition, wxDefaultSize, 13, choices );
903 m_choice->SetSelection( 1 );
904 m_button1 =
new wxButton(
this, PEN_BUTTON_OK, _T(
"Ok" ), wxDefaultPosition, wxSize( 55, 20 ) );
905 m_button2 =
new wxButton(
this, PEN_BUTTON_CANCEL, _T(
"Cancel" ), wxDefaultPosition, wxSize( 55, 20 ) );
907 wxBoxSizer* sizer =
new wxBoxSizer( wxVERTICAL );
908 sizer->Add( m_choice, 1, wxEXPAND | wxALL, 1 );
910 wxBoxSizer* sizerb =
new wxBoxSizer( wxHORIZONTAL );
911 sizerb->Add( m_button1, 0, wxALL, 1 );
912 sizerb->Add( m_button2, 0, wxALL, 1 );
914 sizer->Add( sizerb, 0, wxALIGN_CENTER );
916 SetAutoLayout(
true );
918 sizer->SetSizeHints(
this );
926 void PenDialog::CmCancel( wxCommandEvent& )
928 EndModal( wxID_CANCEL );
931 void PenDialog::CmOk( wxCommandEvent& )
933 switch( m_choice->GetSelection() )
964 void PenDialog::OnCloseWindow( wxCloseEvent& WXUNUSED( event ) )
966 EndModal( wxID_CANCEL );
970 const int LOGICALFUNCTION_BUTTON_OK = wxID_HIGHEST + 5801 ;
971 const int LOGICALFUNCTION_BUTTON_CANCEL = wxID_HIGHEST + 5802 ;
975 EVT_BUTTON ( LOGICALFUNCTION_BUTTON_CANCEL ,
LogicalFunction::CmCancel )
980 wxDialog( parent, -1, _T( "choose style" ), wxDefaultPosition, wxDefaultSize, ( wxDEFAULT_DIALOG_STYLE ), _T( "style dialog" ) )
989 _T(
"wxOR_REVERSE" ),
990 _T(
"wxAND_REVERSE" ),
993 _T(
"wxAND_INVERT" ),
997 _T(
"wxSRC_INVERT" ),
1004 m_choice =
new wxChoice(
this, -1, wxDefaultPosition, wxDefaultSize, 16, choices );
1005 m_choice->SetSelection( 1 );
1006 m_button1 =
new wxButton(
this, LOGICALFUNCTION_BUTTON_OK, _T(
"Ok" ), wxDefaultPosition, wxSize( 55, 20 ) );
1007 m_button2 =
new wxButton(
this, LOGICALFUNCTION_BUTTON_CANCEL, _T(
"Cancel" ), wxDefaultPosition, wxSize( 55, 20 ) );
1009 wxBoxSizer* sizer =
new wxBoxSizer( wxVERTICAL );
1010 sizer->Add( m_choice, 1, wxEXPAND | wxALL, 1 );
1012 wxBoxSizer* sizerb =
new wxBoxSizer( wxHORIZONTAL );
1013 sizerb->Add( m_button1, 0, wxALL, 1 );
1014 sizerb->Add( m_button2, 0, wxALL, 1 );
1016 sizer->Add( sizerb, 0, wxALIGN_CENTER );
1018 SetAutoLayout(
true );
1020 sizer->SetSizeHints(
this );
1028 void LogicalFunction::CmCancel( wxCommandEvent& )
1030 EndModal( wxID_CANCEL );
1033 void LogicalFunction::CmOk( wxCommandEvent& )
1035 m_function = m_choice->GetSelection();
1036 switch( m_choice->GetSelection() )
1038 case 0: m_function=wxCLEAR;
1040 case 1: m_function=wxXOR;
1042 case 2: m_function=wxINVERT;
1044 case 3: m_function=wxOR_REVERSE;
1046 case 4: m_function=wxAND_REVERSE;
1048 case 5: m_function=wxCOPY;
1050 case 6: m_function=wxAND;
1052 case 7: m_function=wxAND_INVERT;
1054 case 8: m_function=wxNO_OP;
1056 case 9: m_function=wxNOR;
1058 case 10: m_function=wxEQUIV;
1060 case 11: m_function=wxSRC_INVERT;
1062 case 12: m_function=wxOR_INVERT;
1064 case 13: m_function=wxNAND;
1066 case 14: m_function=wxOR;
1068 case 15: m_function=wxSET;
1070 default: m_function=wxCOPY;
1072 EndModal( wxID_OK );
1075 void LogicalFunction::OnCloseWindow( wxCloseEvent& WXUNUSED( event ) )
1077 EndModal( wxID_CANCEL );
1082 #define PAT_COLLUMNS 6
1084 #define PAT_ROWS_VIS 6
1086 #define PD_PANEL1_X 0
1087 #define PD_PANEL1_Y 0
1088 #define PD_PANEL1_W (PAT_COLLUMNS*40 + 20)
1089 #define PD_PANEL1_H (PAT_ROWS_VIS*40 )
1091 #define PD_BUTTON_W 32
1092 #define PD_BUTTON_H 32
1095 EVT_CUSTOM_RANGE( wxEVT_COMMAND_BUTTON_CLICKED, 800, 800 + NR_PATTERNS,
PatternDialog::Cm_P_BitB )
1106 wxDialog( parent, -1, title, wxPoint( 0, 0 ), wxSize( PD_PANEL1_W, PD_PANEL1_H ), style, name )
1112 m_panel1 =
new wxPanel(
this, -1, wxPoint( PD_PANEL1_X, PD_PANEL1_Y ), wxSize( PD_PANEL1_W, PD_PANEL1_H ) );
1113 m_scroll =
new wxScrolledWindow( m_panel1, -1, wxPoint( PD_PANEL1_X, PD_PANEL1_Y ), wxSize( PD_PANEL1_W, PD_PANEL1_H ), wxVSCROLL, _T(
"scrolledWindow" ) );
1114 m_scroll->SetScrollbars( 40, 40, 6, 12 );
1117 for (
int i = 0; i < NR_PATTERNS; i++ )
1119 wxMemoryDC dcmemtemp2;
1120 wxColour white( _T(
"WHITE" ) );
1121 wxColour black( _T(
"BLACK" ) );
1123 wxBitmap* help =
new wxBitmap( 32, 32, -1 );
1125 dcmemtemp2.SelectObject( *help );
1126 wxBrush brushbitm( *fills->GetPattern( i ) );
1127 dcmemtemp2.SetBrush( brushbitm );
1131 dcmemtemp2.SetTextForeground( white );
1132 dcmemtemp2.SetTextBackground( black );
1133 dcmemtemp2.DrawRectangle( 0, 0, 32, 32 );
1134 dcmemtemp2.SelectObject( wxNullBitmap );
1135 m_patternbut[i] =
new wxBitmapButton( m_scroll, 800 + i, *help,
1136 wxPoint( ( ( i % PAT_COLLUMNS ) * 40 ), ( ( i / PAT_ROWS ) * 40 ) ) );
1144 PatternDialog::~PatternDialog()
1148 wxColour* PatternDialog::ltowxc(
long colour )
1150 unsigned char red, green, blue;
1152 blue = colour / 65536;
1153 green = ( colour % 65536 ) / 256;
1156 return new wxColour( red, green, blue );
1169 void PatternDialog::OnActivate( wxActivateEvent& WXUNUSED( event ) )
1174 FillPatterns::FillPatterns()
1177 for (
int i = 0; i < NR_PATTERNS; i++ )
1179 file.Printf( wxT(
"pat%-2.2d.bmp" ), i + 1 );
1186 if ( ! image.LoadFile( file, wxBITMAP_TYPE_BMP ) )
1189 m_fillbitmaps[i] =
new wxBitmap( image );
1193 wxColour white( wxT(
"WHITE" ) );
1194 wxColour black( wxT(
"BLACK" ) );
1196 wxMask* monochrome_mask =
new wxMask( *m_fillbitmaps[i], black );
1197 m_fillbitmaps[i]->SetMask( monochrome_mask );
1202 FillPatterns::~FillPatterns()
1204 for (
int i = 0; i < NR_PATTERNS; i++ )
1205 delete m_fillbitmaps[i];
1208 wxBitmap* FillPatterns::GetPattern(
short patternnr )
1210 return m_fillbitmaps[patternnr];
Display Part of a a2dDrawing, in which a2dCanvasObjects are shown.
bool Create(wxWindow *parent, wxWindowID id=SYMBOL_A2DCHOOSE_IDNAME, const wxString &caption=SYMBOL_A2DCHOOSE_TITLE, const wxPoint &pos=SYMBOL_A2DCHOOSE_POSITION, const wxSize &size=SYMBOL_A2DCHOOSE_SIZE, long style=SYMBOL_A2DCHOOSE_STYLE)
Creation.
#define wxDynamicCast(obj, className)
Define wxDynamicCast so that it will give a compiler error for unrelated types.
diagram is an appearance for a2dCameleon
a2dCanvasObject * GetCanvasObject()
Pointer to object selected.
virtual wxString GetName() const
Returns the name of this object, if no name is given the internal id will be returned.
a2dDrawingId GetDrawingId()
set special id to differentiate drawings
wxString FindValidPath(const wxString &filename, bool reportError=true)
Find the first full path for which the file exists.
a2dCanvasObject * GetCanvasObject()
Pointer to object selected.
a2dCommand * GetCommand()
the command ( if there was one ) that did it.
a2dCanvasObject * GetRootObject() const
get the root object, which holds the objects in the document
#define EVT_DO(func)
event sent from a2DocumentCommandProcessor when a command is initially done
Base class for adding to the list of appearances in a a2dCameleon.
const a2dError a2dError_FileCouldNotOpen
a2dGlobal * a2dGlobals
global a2dCanvasGlobal to have easy access to global settings
a2dPathList & GetIconPathList()
Path for Icons and small bitmaps.
object to show several appearance views on what it contains
a2dCanvasObject is the base class for Canvas Objects.
static bool ShowToolTips()
Should we show tooltips?
static const a2dCommandId Id
Print the current document or view.
virtual a2dObject * GetRefObject() const
when a2dProperty, return its value else assert
a2dCanvasObjectList * GetChildObjectList()
get the list where the child objects are stored in.
a2dDrawingPart * GetActiveDrawingPart()
return the currently/last active drawing part.
void OnComEvent(a2dComEvent &event)
document changed
void OnStructIdApplyClick(wxCommandEvent &event)
wxEVT_COMMAND_BUTTON_CLICKED event handler for CHOOSE_ID_APPLY
void SetWithChilds(bool check)
if set, objects must have childs
void Init(a2dCanvasObjectList *objects)
take over object to show from objects
void OnStructIdListboxDoubleClicked(wxCommandEvent &event)
wxEVT_COMMAND_LISTBOX_DOUBLECLICKED event handler for STRUCT_ID_LISTBOX
void Init(a2dCanvasObjectList *objects)
take over object to show from objects
static const a2dSignal sig_changedShowObject
a2dCanvasObject * m_object
Pointer to the choosen object.
#define EVT_COM_EVENT(func)
static wxEvtHandler for communication event
const a2dCommandId * GetCommandId()
a specific id for this command.
#define wxStaticCast(obj, className)
The wxWindows 2.4.2 wxStaticCast is buggy. It evaluates its argument twice.
a2dCanvasObject * GetShowObject() const
return pointer of then currently shown object on the drawer.
a2dCanvasObject * m_object
Pointer to the choosen object.
a2dCameleon * GetCameleon()
get referenced a2dCameleon
A2DGENERALDLLEXP a2dSmrtPtr< a2dGeneralGlobal > a2dGeneralGlobals
a global pointer to get to global instance of important classes.
void OnCloseWindow(wxCloseEvent &event)
wxEVT_CLOSE_WINDOW event handler for ID_DIALOG
int m_choosen
the choosen pattern.
Tappear * GetAppearance(bool autoCreate=false)
Get a specific a2dAppear derived class instance from here.
collect a2dCanvasObject's in a hierarchy of a a2dCanvasDocument
static bool ShowToolTips()
Should we show tooltips?
virtual bool Submit(a2dCommand *command, bool storeIt=true)
next to the base class submit, it sets a2DocumentCommandProcessor for a2dCommand
bool Create(wxWindow *parent, wxWindowID id=SYMBOL_A2DCANVASOBJECTSDIALOG_IDNAME, const wxString &caption=SYMBOL_A2DCANVASOBJECTSDIALOG_TITLE, const wxPoint &pos=SYMBOL_A2DCANVASOBJECTSDIALOG_POSITION, const wxSize &size=SYMBOL_A2DCANVASOBJECTSDIALOG_SIZE, long style=SYMBOL_A2DCANVASOBJECTSDIALOG_STYLE)
Creation.
to choose the way drawing is done ( not yet implemented ).
void OnStructIdApplyClick(wxCommandEvent &event)
wxEVT_COMMAND_BUTTON_CLICKED event handler for STRUCT_ID_APPLY
a2dCanvasObjectsSet m_structureSet
Pointer to object list.
for choosing a a2dCanvasObject from a list.
bool NameSorter(const a2dCanvasObjectPtr &x, const a2dCanvasObjectPtr &y)
used to canvas object on name
void Cm_P_BitB(wxEvent &event)
Get chosen pattern.
a2dCommandProcessor * GetCommandProcessor() const
Returns a pointer to the command processor associated with this document.
a2dCanvasObjectsSet m_found
objects found
a2dCanvasCommandProcessor * GetCanvasCommandProcessor()
get a pointer to the command processor
void OnCloseWindow(wxCloseEvent &event)
wxEVT_CLOSE_WINDOW event handler for ID_DIALOG
Event sent to a2dCommandProcessor.
void OnStructIdListboxSelected(wxCommandEvent &event)
wxEVT_COMMAND_LISTBOX_SELECTED event handler for STRUCT_ID_LISTBOX
pen dialog fro choosing a stroke.
a2dDrawing * GetDrawing() const
get drawing via top object
void OnStructIdHideClick(wxCommandEvent &event)
wxEVT_COMMAND_BUTTON_CLICKED event handler for STRUCT_ID_HIDE
a2dCanvasGlobal * a2dCanvasGlobals
global a2dCanvasGlobal to have easy access to global settings
all headers of the canvas module
void OnCloseWindow(wxCloseEvent &event)
Close window if EXIT-button is pressed.
void OnStructIdListboxDoubleClicked(wxCommandEvent &event)
wxEVT_COMMAND_LISTBOX_DOUBLECLICKED event handler for CHOOSE_ID_LISTBOX
void OnStructIdHideClick(wxCommandEvent &event)
wxEVT_COMMAND_BUTTON_CLICKED event handler for CHOOSE_ID_HIDE
void OnStructIdListboxSelected(wxCommandEvent &event)
wxEVT_COMMAND_LISTBOX_SELECTED event handler for CHOOSE_ID_LISTBOX
a2dAppear * GetAppearanceByClassName(const wxString &appearranceClassName) const
get appearance by its Classname
Contain one drawing as hierarchical tree of a2dCanvasObject's.
a2dCanvasObjectsSet m_structureSet
Pointer to object list.