From 2a60327545edf6c6da76aed6247d67be28b910df Mon Sep 17 00:00:00 2001 From: Wayne Stambaugh Date: Tue, 11 Jan 2011 15:34:29 -0500 Subject: [PATCH] Build default change and minor schematic screen object improvements. * Change default build to enable wxDC zooming. * Move sheet label find function into SCH_SCREEN object. * Move draw screen items function into SCH_SCREEN object. * Remove redundant page print method from SCH_EDIT_FRAME. * Add method to hit test for all items in SCH_SCREEN. * Add method for testing if junction is required in SCH_SCREEN. * Fix Doxygen waring in help_common_strings.h --- CMakeLists.txt | 2 +- eeschema/bus-wire-junction.cpp | 4 +- eeschema/dialogs/dialog_SVG_print.cpp | 22 ++-- eeschema/dialogs/dialog_SVG_print.h | 2 +- .../dialogs/dialog_print_using_printer.cpp | 8 +- eeschema/eeredraw.cpp | 49 +------- eeschema/help_common_strings.h | 6 +- eeschema/locate.cpp | 21 ---- eeschema/protos.h | 10 +- eeschema/sch_screen.cpp | 112 ++++++++++++++++-- include/class_sch_screen.h | 97 ++++++++++++--- include/sch_item_struct.h | 3 + include/wxEeschemaStruct.h | 14 --- 13 files changed, 210 insertions(+), 140 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7480afe810..cf2cd95f76 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -22,7 +22,7 @@ option(KICAD_GOST "enable/disable building using GOST notation for multiple gate #for those who bored with uppercase option(KICAD_KEEPCASE "turn-off automatic component name conversion to uppercase if selected") -option(USE_WX_ZOOM "Use wxDC to perform zooming (default OFF). Warning, this is experimental" ) +option(USE_WX_ZOOM "Use wxDC to perform zooming (default ON)." ON) option(USE_WX_GRAPHICS_CONTEXT "Use wxGraphicsContext for rendering (default OFF). Warning, this is experimental") diff --git a/eeschema/bus-wire-junction.cpp b/eeschema/bus-wire-junction.cpp index bf6f5c96d5..160841cf98 100644 --- a/eeschema/bus-wire-junction.cpp +++ b/eeschema/bus-wire-junction.cpp @@ -667,7 +667,7 @@ static bool IsTerminalPoint( SCH_SCREEN* screen, const wxPoint& pos, int layer ) if( item ) return TRUE; - pinsheet = LocateAnyPinSheet( pos, screen->GetDrawItems() ); + pinsheet = screen->GetSheetLabel( pos ); if( pinsheet && IsBusLabel( pinsheet->m_Text ) ) { @@ -715,7 +715,7 @@ static bool IsTerminalPoint( SCH_SCREEN* screen, const wxPoint& pos, int layer ) && ( ( (SCH_GLOBALLABEL*) item )->m_Pos.y == pos.y ) ) return TRUE; - pinsheet = LocateAnyPinSheet( pos, screen->GetDrawItems() ); + pinsheet = screen->GetSheetLabel( pos ); if( pinsheet && !IsBusLabel( pinsheet->m_Text ) ) { diff --git a/eeschema/dialogs/dialog_SVG_print.cpp b/eeschema/dialogs/dialog_SVG_print.cpp index 5b3f72d8fe..f72ec5daf2 100644 --- a/eeschema/dialogs/dialog_SVG_print.cpp +++ b/eeschema/dialogs/dialog_SVG_print.cpp @@ -14,9 +14,7 @@ #include "gestfich.h" #include "class_sch_screen.h" #include "wxEeschemaStruct.h" - #include "dcsvg.h" - #include "general.h" #include "libeditframe.h" #include "sch_sheet_path.h" @@ -136,7 +134,7 @@ void DIALOG_SVG_PRINT::PrintSVGDoc( bool aPrintAll, bool aPrint_Sheet_Ref ) fn = schframe->GetUniqueFilenameForCurrentSheet() + wxT( ".svg" ); - bool success = DrawSVGPage( m_Parent, fn.GetFullPath(), schscreen, + bool success = DrawSVGPage( m_Parent, fn.GetFullPath(), ( SCH_SCREEN* ) schscreen, m_ModeColorOption->GetSelection() == 0 ? false : true, aPrint_Sheet_Ref ); msg = _( "Create file " ) + fn.GetFullPath(); @@ -160,7 +158,7 @@ void DIALOG_SVG_PRINT::PrintSVGDoc( bool aPrintAll, bool aPrint_Sheet_Ref ) fn.SetExt( wxT( "svg" ) ); fn.MakeAbsolute(); - bool success = DrawSVGPage( m_Parent, fn.GetFullPath(), screen, + bool success = DrawSVGPage( m_Parent, fn.GetFullPath(), ( SCH_SCREEN* ) screen, m_ModeColorOption->GetSelection() == 0 ? false : true, aPrint_Sheet_Ref ); msg = _( "Create file " ) + fn.GetFullPath(); @@ -176,11 +174,11 @@ void DIALOG_SVG_PRINT::PrintSVGDoc( bool aPrintAll, bool aPrint_Sheet_Ref ) } -bool DIALOG_SVG_PRINT::DrawSVGPage( WinEDA_DrawFrame* frame, - const wxString& FullFileName, - BASE_SCREEN* screen, - bool aPrintBlackAndWhite, - bool aPrint_Sheet_Ref ) +bool DIALOG_SVG_PRINT::DrawSVGPage( WinEDA_DrawFrame* frame, + const wxString& FullFileName, + SCH_SCREEN* screen, + bool aPrintBlackAndWhite, + bool aPrint_Sheet_Ref ) { int tmpzoom; wxPoint tmp_startvisu; @@ -216,7 +214,11 @@ bool DIALOG_SVG_PRINT::DrawSVGPage( WinEDA_DrawFrame* frame, panel->m_ClipBox.SetHeight( 0x7FFFFF0 ); screen->m_IsPrinting = true; - frame->PrintPage( &dc, aPrint_Sheet_Ref, 1, false ); + screen->Draw( panel, &dc, GR_COPY ); + + if( aPrint_Sheet_Ref ) + frame->TraceWorkSheet( &dc, screen, g_DrawDefaultLineThickness ); + SetLocaleTo_Default(); // revert to the current locale screen->m_IsPrinting = false; panel->m_ClipBox = tmp; diff --git a/eeschema/dialogs/dialog_SVG_print.h b/eeschema/dialogs/dialog_SVG_print.h index 7d39611d23..b8cf34ddee 100644 --- a/eeschema/dialogs/dialog_SVG_print.h +++ b/eeschema/dialogs/dialog_SVG_print.h @@ -32,7 +32,7 @@ private: public: static bool DrawSVGPage( WinEDA_DrawFrame* frame, - const wxString& FullFileName, BASE_SCREEN* screen, + const wxString& FullFileName, SCH_SCREEN* screen, bool aPrintBlackAndWhite = false, bool aPrint_Sheet_Ref = false ); }; diff --git a/eeschema/dialogs/dialog_print_using_printer.cpp b/eeschema/dialogs/dialog_print_using_printer.cpp index 7647a6c9ef..aaaa184c89 100644 --- a/eeschema/dialogs/dialog_print_using_printer.cpp +++ b/eeschema/dialogs/dialog_print_using_printer.cpp @@ -343,7 +343,8 @@ void SCH_PRINTOUT::DrawPage() wxBitmap psuedoBitmap( 1, 1 ); wxMemoryDC memDC; memDC.SelectObject( psuedoBitmap ); - parent->PrintPage( &memDC, true, 0xFFFFFFFF, false ); + ( (SCH_SCREEN*) ActiveScreen )->Draw( panel, &memDC, GR_DEFAULT_DRAWMODE ); + parent->TraceWorkSheet( &memDC, ActiveScreen, g_DrawDefaultLineThickness ); wxLogDebug( wxT( "MinX = %d, MaxX = %d, MinY = %d, MaxY = %d" ), memDC.MinX(), memDC.MaxX(), memDC.MinY(), memDC.MaxY() ); @@ -371,7 +372,10 @@ void SCH_PRINTOUT::DrawPage() ActiveScreen->m_IsPrinting = true; int bg_color = g_DrawBgColor; - parent->PrintPage( dc, printReference, 0xFFFFFFFF, false ); + ( ( SCH_SCREEN* ) ActiveScreen )->Draw( panel, dc, GR_DEFAULT_DRAWMODE ); + + if( printReference ) + parent->TraceWorkSheet( dc, ActiveScreen, g_DrawDefaultLineThickness ); g_DrawBgColor = bg_color; ActiveScreen->m_IsPrinting = false; diff --git a/eeschema/eeredraw.cpp b/eeschema/eeredraw.cpp index 10c53f5a21..d14a60b91d 100644 --- a/eeschema/eeredraw.cpp +++ b/eeschema/eeredraw.cpp @@ -54,7 +54,7 @@ void SCH_EDIT_FRAME::RedrawActiveWindow( wxDC* DC, bool EraseBg ) DrawPanel->DrawBackGround( DC ); - RedrawStructList( DrawPanel, DC, GetScreen()->GetDrawItems(), GR_DEFAULT_DRAWMODE ); + GetScreen()->Draw( DrawPanel, DC, GR_DEFAULT_DRAWMODE ); TraceWorkSheet( DC, GetScreen(), g_DrawDefaultLineThickness ); @@ -98,50 +98,3 @@ void SCH_EDIT_FRAME::RedrawActiveWindow( wxDC* DC, bool EraseBg ) SetTitle( title ); } } - - -/** - * PrintPage - * used to print a page. - * Print the page pointed by ActiveScreen, set by the calling print function - * @param aDC = wxDC given by the calling print function - * @param aPrint_Sheet_Ref = true to print page references - * @param aPrintMask = not used here - * @param aPrintMirrorMode = not used here (Set when printing in mirror mode) - * @param aData = a pointer on an auxiliary data (not used here) - */ -void SCH_EDIT_FRAME::PrintPage( wxDC* aDC, bool aPrint_Sheet_Ref, int aPrintMask, - bool aPrintMirrorMode, void* aData) -{ - wxBeginBusyCursor(); - - RedrawStructList( DrawPanel, aDC, (SCH_ITEM*) ActiveScreen->GetDrawItems(), GR_COPY ); - - if( aPrint_Sheet_Ref ) - TraceWorkSheet( aDC, ActiveScreen, g_DrawDefaultLineThickness ); - - wxEndBusyCursor(); -} - - -/***************************************************************************** -* Routine to redraw list of structs. * -* If the list is of DrawPickStruct types then the picked item are drawn. * -*****************************************************************************/ -void RedrawStructList( WinEDA_DrawPanel* panel, wxDC* DC, - SCH_ITEM* Structlist, int DrawMode, int Color ) -{ - while( Structlist ) - { - if( !(Structlist->m_Flags & IS_MOVED) ) - { -// uncomment line below when there is a virtual -// EDA_ITEM::GetBoundingBox() - // if( panel->m_ClipBox.Intersects( Structs->GetBoundingBox() - // ) ) - Structlist->Draw( panel, DC, wxPoint( 0, 0 ), DrawMode, Color ); - } - - Structlist = Structlist->Next(); - } -} diff --git a/eeschema/help_common_strings.h b/eeschema/help_common_strings.h index 52f1b276f1..dd46b9ff8b 100644 --- a/eeschema/help_common_strings.h +++ b/eeschema/help_common_strings.h @@ -5,11 +5,11 @@ /** * These strings are used in menus and tools, that do the same command - * But they are internatinalized, and therefore must be created + * But they are internationalized, and therefore must be created * at run time, on the fly. * So they cannot be static. * - * Therefore they are defined by #define, used inside menu constructors + * Therefore they are defined by \#define, used inside menu constructors */ // Common to schematic editor and component editor @@ -57,5 +57,3 @@ #define HELP_ADD_BODYCIRCLE _( "Add circles to the component body" ) #define HELP_ADD_BODYARC _( "Add arcs to the component body" ) #define HELP_ADD_BODYPOLYGON _( "Add lines and polygons to the component body" ) - - diff --git a/eeschema/locate.cpp b/eeschema/locate.cpp index 56289dd407..b7cca07d15 100644 --- a/eeschema/locate.cpp +++ b/eeschema/locate.cpp @@ -322,24 +322,3 @@ bool SnapPoint2( const wxPoint& aPosRef, int SearchMask, SCH_ITEM* DrawList ) return FALSE; } - - -SCH_SHEET_PIN* LocateAnyPinSheet( const wxPoint& RefPos, SCH_ITEM* DrawList ) -{ - SCH_ITEM* DrawStruct; - SCH_SHEET_PIN* PinSheet = NULL; - - for( DrawStruct = DrawList; DrawStruct != NULL; DrawStruct = DrawStruct->Next() ) - { - if( DrawStruct->Type() != SCH_SHEET_T ) - continue; - - SCH_SHEET* sheet = (SCH_SHEET*) DrawStruct; - PinSheet = sheet->GetLabel( RefPos ); - - if( PinSheet ) - break; - } - - return PinSheet; -} diff --git a/eeschema/protos.h b/eeschema/protos.h index 6006b36d6a..711cfcd2df 100644 --- a/eeschema/protos.h +++ b/eeschema/protos.h @@ -114,9 +114,7 @@ SCH_COMPONENT* LocateSmallestComponent( SCH_SCREEN* Screen ); * Pointer to the structure if only 1 item is selected. * NULL if no items are selects. */ -SCH_ITEM* PickStruct( const wxPoint& refpos, SCH_SCREEN* screen, int SearchMask ); - -SCH_SHEET_PIN* LocateAnyPinSheet( const wxPoint& RefPos, SCH_ITEM* DrawList ); +SCH_ITEM* PickStruct( const wxPoint& refpos, SCH_SCREEN* screen, int SearchMask ); /***************/ @@ -124,11 +122,7 @@ SCH_SHEET_PIN* LocateAnyPinSheet( const wxPoint& RefPos, SCH_ITEM* DrawList ); /***************/ void DrawDanglingSymbol( WinEDA_DrawPanel* panel, wxDC* DC, const wxPoint& pos, int Color ); void RedrawActiveWindow( WinEDA_DrawPanel* panel, wxDC* DC ); -void RedrawStructList( WinEDA_DrawPanel* panel, - wxDC* DC, - SCH_ITEM* Structs, - int DrawMode, - int Color = -1 ); + /**************/ /* EELAYER.CPP */ diff --git a/eeschema/sch_screen.cpp b/eeschema/sch_screen.cpp index ff144e9edd..d6f73ef378 100644 --- a/eeschema/sch_screen.cpp +++ b/eeschema/sch_screen.cpp @@ -179,17 +179,18 @@ void SCH_SCREEN::AddToDrawList( SCH_ITEM* st ) } -/* Extract the old wires, junctions and buses, an if CreateCopy replace them - * by a copy. Old ones must be put in undo list, and the new ones can be - * modified by clean up safely. - * If an abort command is made, old wires must be put in GetDrawItems(), and - * copies must be deleted. This is because previously stored undo commands - * can handle pointers on wires or bus, and we do not delete wires or bus, - * we must put they in undo list. - * - * Because cleanup delete and/or modify bus and wires, the more easy is to put - * all wires in undo list and use a new copy of wires for cleanup. - */ +int SCH_SCREEN::GetItems( const wxPoint& aPosition, SCH_ITEMS& aItemList ) const +{ + for( SCH_ITEM* item = GetDrawItems(); item != NULL; item = item->Next() ) + { + if( item->HitTest( aPosition ) ) + aItemList.push_back( item ); + } + + return aItemList.size(); +} + + SCH_ITEM* SCH_SCREEN::ExtractWires( bool CreateCopy ) { SCH_ITEM* item, * next_item, * new_item, * List = NULL; @@ -335,6 +336,22 @@ bool SCH_SCREEN::Save( FILE* aFile ) const } +void SCH_SCREEN::Draw( WinEDA_DrawPanel* aCanvas, wxDC* aDC, int aDrawMode, int aColor ) +{ + for( SCH_ITEM* item = GetDrawItems(); item != NULL; item = item->Next() ) + { + if( item->IsMoving() ) + continue; + + // uncomment line below when there is a virtual + // EDA_ITEM::GetBoundingBox() + // if( panel->m_ClipBox.Intersects( Structs->GetBoundingBox() + // ) ) + item->Draw( aCanvas, aDC, wxPoint( 0, 0 ), aDrawMode, aColor ); + } +} + + /** * Function ClearUndoORRedoList * free the undo or redo list from List element @@ -408,6 +425,79 @@ LIB_PIN* SCH_SCREEN::GetPin( const wxPoint& aPosition, SCH_COMPONENT** aComponen } +SCH_SHEET_PIN* SCH_SCREEN::GetSheetLabel( const wxPoint& aPosition ) +{ + SCH_SHEET_PIN* sheetLabel = NULL; + + for( SCH_ITEM* item = GetDrawItems(); item != NULL; item = item->Next() ) + { + if( item->Type() != SCH_SHEET_T ) + continue; + + SCH_SHEET* sheet = (SCH_SHEET*) item; + sheetLabel = sheet->GetLabel( aPosition ); + + if( sheetLabel ) + break; + } + + return sheetLabel; +} + + +bool SCH_SCREEN::IsJunctionNeeded( const wxPoint& aPosition ) const +{ + SCH_ITEMS items; + int wireEndPoints = 0; + + if( GetItems( aPosition, items ) == 0 ) + return false; + + bool isJunctionNeeded = false; + bool isWireMidpoint = false; + + for( size_t i = 0; i < items.size(); i++ ) + { + KICAD_T itemType = items[i].Type(); + + if( itemType == SCH_JUNCTION_T ) + { + isJunctionNeeded = false; + break; + } + else if( itemType == SCH_LINE_T ) + { + SCH_LINE* line = ( SCH_LINE* ) &items[i]; + + if( !line->IsConnectable() ) + continue; + + if( !line->IsEndPoint( aPosition ) ) + isWireMidpoint = true; + else + wireEndPoints += 1; + + if( ( isWireMidpoint && ( wireEndPoints != 0 ) ) || ( wireEndPoints > 2 ) ) + isJunctionNeeded = true; + } + else if( itemType == SCH_COMPONENT_T ) + { + SCH_COMPONENT* component = ( SCH_COMPONENT* ) &items[i]; + + if( !component->IsConnected( aPosition ) ) + continue; + + if( isWireMidpoint || wireEndPoints > 2 ) + isJunctionNeeded = true; + } + } + + items.release(); + + return isJunctionNeeded; +} + + int SCH_SCREEN::CountConnectedItems( const wxPoint& aPos, bool aTestJunctions ) const { SCH_ITEM* item; diff --git a/include/class_sch_screen.h b/include/class_sch_screen.h index 8742eecf1b..31fdbaea36 100644 --- a/include/class_sch_screen.h +++ b/include/class_sch_screen.h @@ -13,6 +13,8 @@ class LIB_PIN; class SCH_COMPONENT; class SCH_SHEET_PATH; +class SCH_SHEET_PIN; + /* Max number of sheets in a hierarchy project: */ #define NB_MAX_SHEET 500 @@ -39,6 +41,11 @@ public: SCH_SCREEN( KICAD_T aType = SCH_SCREEN_T ); ~SCH_SCREEN(); + virtual wxString GetClass() const + { + return wxT( "SCH_SCREEN" ); + } + /** * Function GetDrawItems(). * @@ -65,35 +72,63 @@ public: BASE_SCREEN::SetCurItem( (BASE_SCREEN*) aItem ); } - - virtual wxString GetClass() const - { - return wxT( "SCH_SCREEN" ); - } - /** * Free all the items from the schematic associated with the screen. * * This does not delete any sub hierarchies. */ - void FreeDrawList(); + void FreeDrawList(); - void Place( SCH_EDIT_FRAME* frame, wxDC* DC ) { }; + /** + * Function GetItems + * adds all items found at \a aPosition to \a aItemList. Please note that \a aItemList + * will own the item pointers added to it. Do not allow it to go out of scope without + * first calling the release() method. Otherwise, the pointer will be deleted and + * EESchema will crash. + * @param aPosition The position to test. + * @param aItemList The list to place items into. + * @return The number of items found at \a aPosition. + */ + int GetItems( const wxPoint& aPosition, SCH_ITEMS& aItemList ) const; + + void Place( SCH_EDIT_FRAME* frame, wxDC* DC ) { }; + + /** + * Function Draw + * draws all the items in the screen to \a aCanvas. + * @param aCanvas The canvas item to draw on. + * @param aDC The device context to draw on. + * @param aDrawMode The drawing mode. + * @param aColor The drawing color. + */ + void Draw( WinEDA_DrawPanel* aCanvas, wxDC* aDC, int aDrawMode, int aColor = -1 ); /** * Remove \a aItem from the schematic associated with this screen. * * @param aItem - Item to be removed from schematic. */ - void RemoveFromDrawList( SCH_ITEM* aItem ); + void RemoveFromDrawList( SCH_ITEM* aItem ); - bool CheckIfOnDrawList( SCH_ITEM* st ); + bool CheckIfOnDrawList( SCH_ITEM* st ); - void AddToDrawList( SCH_ITEM* st ); + void AddToDrawList( SCH_ITEM* st ); - bool SchematicCleanUp( wxDC* DC = NULL ); + bool SchematicCleanUp( wxDC* DC = NULL ); - SCH_ITEM* ExtractWires( bool CreateCopy ); + /** + * Function ExtractWires + * extracts the old wires, junctions and buses. If \a aCreateCopy is true, replace + * them with a copy. Old item must be put in undo list, and the new ones can be + * modified by clean up safely. If an abort command is made, old wires must be put + * in GetDrawItems(), and copies must be deleted. This is because previously stored + * undo commands can handle pointers on wires or busses, and we do not delete wires or + * busses, we must put they in undo list. + * + * Because cleanup delete and/or modify bus and wires, the it is easier is to put + * all wires in undo list and use a new copy of wires for cleanup. + */ + SCH_ITEM* ExtractWires( bool aCreateCopy ); /* full undo redo management : */ // use BASE_SCREEN::PushCommandToUndoList( PICKED_ITEMS_LIST* aItem ) @@ -128,6 +163,24 @@ public: int CountConnectedItems( const wxPoint& aPos, bool aTestJunctions ) const; + /** + * Function IsJunctionNeeded + * tests if a junction is required for the items at \a aPosition on the screen. + *

+ * A junction is required at \a aPosition if the following criteria are satisfied: + *

+ *

+ * @param aPosition The position to test. + * @return True if a junction is required at \a aPosition. + */ + bool IsJunctionNeeded( const wxPoint& aPosition ) const; + /** * Function GetPin * test the screen for a component pin item at \a aPosition. @@ -140,17 +193,25 @@ public: LIB_PIN* GetPin( const wxPoint& aPosition, SCH_COMPONENT** aComponent = NULL, bool aEndPointOnly = false ); + /** + * Function GetSheetLabel + * test the screen if \a aPosition is a sheet label object. + * @param aPosition The position to test. + * @return The sheet label object if found otherwise NULL. + */ + SCH_SHEET_PIN* GetSheetLabel( const wxPoint& aPosition ); + /** * Function ClearAnnotation * clears the annotation for the components in \a aSheetPath on the screen. * @param aSheetPath The sheet path of the component annotation to clear. If NULL then - * the entire heirarchy is cleared. + * the entire hierarchy is cleared. */ void ClearAnnotation( SCH_SHEET_PATH* aSheetPath ); /** * Function GetHierarchicalItems - * adds all schematica sheet and component object in the screen to \a aItems. + * adds all schematic sheet and component object in the screen to \a aItems. * @param aItems Hierarchical item list. */ void GetHierarchicalItems( std::vector aItems ); @@ -158,7 +219,7 @@ public: /** * Function SelectBlockItems * creates a list of items found when a block command is initiated. The items selected - * depend on the block commad. If the drag block command is issued, than any items + * depend on the block command. If the drag block command is issued, than any items * connected to items in the block are also selected. */ void SelectBlockItems(); @@ -212,8 +273,8 @@ public: /** * Function ReplaceDuplicateTimeStamps * test all sheet and component objects in the schematic for duplicate time stamps - * an replaces them as neccessary. Time stamps must be unique in order for complex - * hierarcies know which components go to which sheets. + * an replaces them as necessary. Time stamps must be unique in order for complex + * hierarchies know which components go to which sheets. * @return The number of duplicate time stamps replaced. */ int ReplaceDuplicateTimeStamps(); diff --git a/include/sch_item_struct.h b/include/sch_item_struct.h index e13d83c3f6..82865400d8 100644 --- a/include/sch_item_struct.h +++ b/include/sch_item_struct.h @@ -17,6 +17,9 @@ class SCH_EDIT_FRAME; class wxFindReplaceData; +typedef boost::ptr_vector< SCH_ITEM > SCH_ITEMS; + + // Schematic item filter mask for hit test objects in schematic editor. enum SCH_FILTER_T { COMPONENT_T = 0x0001, diff --git a/include/wxEeschemaStruct.h b/include/wxEeschemaStruct.h index 1d03c6213a..06507fae61 100644 --- a/include/wxEeschemaStruct.h +++ b/include/wxEeschemaStruct.h @@ -332,20 +332,6 @@ public: */ void SetSheetNumberAndCount(); - /** - * Function PrintPage - * is used to print a schematic page. - * Print the page pointed by ActiveScreen, set by the calling print function - * @param aDC = wxDC given by the calling print function - * @param aPrint_Sheet_Ref = true to print page references - * @param aPrintMask = not used here - * @param aPrintMirrorMode = not used here (Set when printing in mirror mode) - * @param aData = a pointer on an auxiliary data (not always used, NULL if not used) - */ - virtual void PrintPage( wxDC* aDC, bool aPrint_Sheet_Ref, - int aPrintMask, bool aPrintMirrorMode, - void* aData = NULL ); - /** * Show the print dialog */