Loading change_log.txt +11 −0 Original line number Original line Diff line number Diff line Loading @@ -5,6 +5,17 @@ Started 2007-June-11 Please add newer entries at the top, list the date and your name with Please add newer entries at the top, list the date and your name with email address. email address. 2008-Apr-14 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr> ================================================================================ +eeschema More code cleaning and Files cleaning and reorganization. change DrawSheetLabelStruct class name to a better name: Hierarchical_PIN_Sheet_Struct For simple Hierarchies, files are now compatables with old eescheam versions In complex hierarchies, multiples parts per packages have still problems, but i hope to solve that soon (in fact all the last changes were made for that) 2008-Apr-14 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr> 2008-Apr-14 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr> ================================================================================ ================================================================================ +eeschema +eeschema Loading common/base_screen.cpp +1 −1 Original line number Original line Diff line number Diff line Loading @@ -569,7 +569,7 @@ EDA_BaseStruct* BASE_SCREEN::GetItemFromRedoList() */ */ void BASE_SCREEN::Show( int nestLevel, std::ostream& os ) void BASE_SCREEN::Show( int nestLevel, std::ostream& os ) { { EDA_BaseStruct* item = EEDrawList; EDA_BaseStruct* item = (EDA_BaseStruct*) EEDrawList; // @todo : use SCH_ITEM as type for item // for now, make it look like XML, expand on this later. // for now, make it look like XML, expand on this later. NestedSpace( nestLevel, os ) << '<' << GetClass().Lower().mb_str() << NestedSpace( nestLevel, os ) << '<' << GetClass().Lower().mb_str() << Loading common/class_drawpickedstruct.cpp +16 −0 Original line number Original line Diff line number Diff line Loading @@ -6,6 +6,22 @@ #include "common.h" #include "common.h" #include "sch_item_struct.h" #include "sch_item_struct.h" /* Constructor and destructor for SCH_ITEM */ /* They are not inline because this creates problems with gcc at linking time * in debug mode */ SCH_ITEM::SCH_ITEM( EDA_BaseStruct* aParent, KICAD_T aType ) : EDA_BaseStruct( aParent, aType ) { m_Layer = 0; } SCH_ITEM::~SCH_ITEM() { } /**************************/ /**************************/ /* class DrawPickedStruct */ /* class DrawPickedStruct */ /**************************/ /**************************/ Loading eeschema/CMakeLists.txt +2 −3 Original line number Original line Diff line number Diff line Loading @@ -13,10 +13,11 @@ set(EESCHEMA_SRCS busentry.cpp busentry.cpp bus-wire-junction.cpp bus-wire-junction.cpp class_drawsheet.cpp class_drawsheet.cpp class_hierarchical_PIN_sheet.cpp class_screen.cpp class_screen.cpp class_text-label.cpp class_text-label.cpp class_schematic_items.cpp cleanup.cpp cleanup.cpp cmpclass.cpp component_class.cpp component_class.cpp controle.cpp controle.cpp cross-probing.cpp cross-probing.cpp Loading @@ -34,7 +35,6 @@ set(EESCHEMA_SRCS dialog_erc.cpp dialog_erc.cpp # dialog_find.cpp # dialog_find.cpp dialog_options.cpp dialog_options.cpp # divers.cpp edit_component_in_lib.cpp edit_component_in_lib.cpp edit_component_in_schematic.cpp edit_component_in_schematic.cpp edit_label.cpp edit_label.cpp Loading @@ -43,7 +43,6 @@ set(EESCHEMA_SRCS eelayer.cpp eelayer.cpp eelibs_draw_components.cpp eelibs_draw_components.cpp eelibs_read_libraryfiles.cpp eelibs_read_libraryfiles.cpp eeload.cpp eeredraw.cpp eeredraw.cpp eeschema.cpp eeschema.cpp eestring.cpp eestring.cpp Loading eeschema/block.cpp +17 −17 Original line number Original line Diff line number Diff line Loading @@ -607,7 +607,7 @@ void MirrorOneStruct( SCH_ITEM * DrawStruct, wxPoint& Center ) DrawBusEntryStruct* DrawRaccord; DrawBusEntryStruct* DrawRaccord; SCH_COMPONENT* DrawLibItem; SCH_COMPONENT* DrawLibItem; DrawSheetStruct* DrawSheet; DrawSheetStruct* DrawSheet; DrawSheetLabelStruct* DrawSheetLabel; Hierarchical_PIN_Sheet_Struct* DrawSheetLabel; DrawMarkerStruct* DrawMarker; DrawMarkerStruct* DrawMarker; DrawNoConnectStruct* DrawNoConnect; DrawNoConnectStruct* DrawNoConnect; SCH_TEXT* DrawText; SCH_TEXT* DrawText; Loading Loading @@ -728,13 +728,13 @@ void MirrorOneStruct( SCH_ITEM * DrawStruct, wxPoint& Center ) { { MirrorYPoint( DrawSheetLabel->m_Pos, Center ); MirrorYPoint( DrawSheetLabel->m_Pos, Center ); DrawSheetLabel->m_Edge = DrawSheetLabel->m_Edge ? 0 : 1; DrawSheetLabel->m_Edge = DrawSheetLabel->m_Edge ? 0 : 1; DrawSheetLabel = (DrawSheetLabelStruct*) DrawSheetLabel->Pnext; DrawSheetLabel = (Hierarchical_PIN_Sheet_Struct*) DrawSheetLabel->Pnext; } } break; break; case DRAW_SHEETLABEL_STRUCT_TYPE: case DRAW_HIERARCHICAL_PIN_SHEET_STRUCT_TYPE: DrawSheetLabel = (DrawSheetLabelStruct*) DrawStruct; DrawSheetLabel = (Hierarchical_PIN_Sheet_Struct*) DrawStruct; MirrorYPoint( DrawSheetLabel->m_Pos, Center ); MirrorYPoint( DrawSheetLabel->m_Pos, Center ); break; break; Loading Loading @@ -876,7 +876,7 @@ static SCH_ITEM * CopyStruct( WinEDA_DrawPanel* panel, wxDC* DC, BASE_SCREEN* sc case TYPE_SCH_LABEL: case TYPE_SCH_LABEL: case TYPE_SCH_GLOBALLABEL: case TYPE_SCH_GLOBALLABEL: case TYPE_SCH_HIERLABEL: case TYPE_SCH_HIERLABEL: case DRAW_SHEETLABEL_STRUCT_TYPE: case DRAW_HIERARCHICAL_PIN_SHEET_STRUCT_TYPE: case DRAW_PICK_ITEM_STRUCT_TYPE: case DRAW_PICK_ITEM_STRUCT_TYPE: case DRAW_MARKER_STRUCT_TYPE: case DRAW_MARKER_STRUCT_TYPE: case DRAW_NOCONNECT_STRUCT_TYPE: case DRAW_NOCONNECT_STRUCT_TYPE: Loading Loading @@ -929,12 +929,12 @@ void DeleteStruct( WinEDA_DrawPanel* panel, wxDC* DC, SCH_ITEM * DrawStruct ) if( !DrawStruct ) if( !DrawStruct ) return; return; if( DrawStruct->Type() == DRAW_SHEETLABEL_STRUCT_TYPE ) if( DrawStruct->Type() == DRAW_HIERARCHICAL_PIN_SHEET_STRUCT_TYPE ) { { /* Cette stucture est rattachee a une feuille, et n'est pas /* Cette stucture est rattachee a une feuille, et n'est pas * accessible par la liste globale directement */ * accessible par la liste globale directement */ frame->SaveCopyInUndoList( (SCH_ITEM*) ( (DrawSheetLabelStruct*) DrawStruct )->m_Parent, IS_CHANGED ); frame->SaveCopyInUndoList( (SCH_ITEM*) ( (Hierarchical_PIN_Sheet_Struct*) DrawStruct )->m_Parent, IS_CHANGED ); frame->DeleteSheetLabel( DC, (DrawSheetLabelStruct*) DrawStruct ); frame->DeleteSheetLabel( DC, (Hierarchical_PIN_Sheet_Struct*) DrawStruct ); return; return; } } Loading Loading @@ -1127,7 +1127,7 @@ bool PlaceStruct( BASE_SCREEN* screen, SCH_ITEM * DrawStruct ) case TYPE_SCH_HIERLABEL: case TYPE_SCH_HIERLABEL: case TYPE_SCH_COMPONENT: case TYPE_SCH_COMPONENT: case DRAW_SHEET_STRUCT_TYPE: case DRAW_SHEET_STRUCT_TYPE: case DRAW_SHEETLABEL_STRUCT_TYPE: case DRAW_HIERARCHICAL_PIN_SHEET_STRUCT_TYPE: case DRAW_MARKER_STRUCT_TYPE: case DRAW_MARKER_STRUCT_TYPE: case DRAW_NOCONNECT_STRUCT_TYPE: case DRAW_NOCONNECT_STRUCT_TYPE: MoveOneStruct( DrawStruct, move_vector ); MoveOneStruct( DrawStruct, move_vector ); Loading Loading @@ -1162,7 +1162,7 @@ void MoveOneStruct( SCH_ITEM * DrawStruct, const wxPoint& move_vector ) DrawBusEntryStruct* DrawRaccord; DrawBusEntryStruct* DrawRaccord; SCH_COMPONENT* DrawLibItem; SCH_COMPONENT* DrawLibItem; DrawSheetStruct* DrawSheet; DrawSheetStruct* DrawSheet; DrawSheetLabelStruct* DrawSheetLabel; Hierarchical_PIN_Sheet_Struct* DrawSheetLabel; DrawMarkerStruct* DrawMarker; DrawMarkerStruct* DrawMarker; DrawNoConnectStruct* DrawNoConnect; DrawNoConnectStruct* DrawNoConnect; Loading Loading @@ -1255,8 +1255,8 @@ void MoveOneStruct( SCH_ITEM * DrawStruct, const wxPoint& move_vector ) break; break; case DRAW_SHEETLABEL_STRUCT_TYPE: case DRAW_HIERARCHICAL_PIN_SHEET_STRUCT_TYPE: DrawSheetLabel = (DrawSheetLabelStruct*) DrawStruct; DrawSheetLabel = (Hierarchical_PIN_Sheet_Struct*) DrawStruct; DrawSheetLabel->m_Pos += move_vector; DrawSheetLabel->m_Pos += move_vector; break; break; Loading Loading @@ -1356,7 +1356,7 @@ SCH_ITEM * DuplicateStruct( SCH_ITEM * DrawStruct ) break; break; } } case DRAW_SHEETLABEL_STRUCT_TYPE: case DRAW_HIERARCHICAL_PIN_SHEET_STRUCT_TYPE: case DRAW_PART_TEXT_STRUCT_TYPE: case DRAW_PART_TEXT_STRUCT_TYPE: case SCREEN_STRUCT_TYPE: case SCREEN_STRUCT_TYPE: default: default: Loading Loading @@ -1467,12 +1467,12 @@ static void CollectStructsToDrag( SCH_SCREEN* screen ) if( Struct->Type() == DRAW_SHEET_STRUCT_TYPE ) if( Struct->Type() == DRAW_SHEET_STRUCT_TYPE ) { { DrawSheetLabelStruct* SLabel = ( (DrawSheetStruct*) Struct )->m_Label; Hierarchical_PIN_Sheet_Struct* SLabel = ( (DrawSheetStruct*) Struct )->m_Label; while( SLabel ) while( SLabel ) { { if( SLabel->Type() == DRAW_SHEETLABEL_STRUCT_TYPE ) if( SLabel->Type() == DRAW_HIERARCHICAL_PIN_SHEET_STRUCT_TYPE ) AddPickedItem( screen, SLabel->m_Pos ); AddPickedItem( screen, SLabel->m_Pos ); SLabel = (DrawSheetLabelStruct*) SLabel->Pnext; SLabel = (Hierarchical_PIN_Sheet_Struct*) SLabel->Pnext; } } } } Loading Loading @@ -1611,7 +1611,7 @@ static void AddPickedItem( SCH_SCREEN* screen, wxPoint position ) case DRAW_SHEET_STRUCT_TYPE: case DRAW_SHEET_STRUCT_TYPE: break; break; case DRAW_SHEETLABEL_STRUCT_TYPE: case DRAW_HIERARCHICAL_PIN_SHEET_STRUCT_TYPE: break; break; case DRAW_PICK_ITEM_STRUCT_TYPE: case DRAW_PICK_ITEM_STRUCT_TYPE: Loading Loading
change_log.txt +11 −0 Original line number Original line Diff line number Diff line Loading @@ -5,6 +5,17 @@ Started 2007-June-11 Please add newer entries at the top, list the date and your name with Please add newer entries at the top, list the date and your name with email address. email address. 2008-Apr-14 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr> ================================================================================ +eeschema More code cleaning and Files cleaning and reorganization. change DrawSheetLabelStruct class name to a better name: Hierarchical_PIN_Sheet_Struct For simple Hierarchies, files are now compatables with old eescheam versions In complex hierarchies, multiples parts per packages have still problems, but i hope to solve that soon (in fact all the last changes were made for that) 2008-Apr-14 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr> 2008-Apr-14 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr> ================================================================================ ================================================================================ +eeschema +eeschema Loading
common/base_screen.cpp +1 −1 Original line number Original line Diff line number Diff line Loading @@ -569,7 +569,7 @@ EDA_BaseStruct* BASE_SCREEN::GetItemFromRedoList() */ */ void BASE_SCREEN::Show( int nestLevel, std::ostream& os ) void BASE_SCREEN::Show( int nestLevel, std::ostream& os ) { { EDA_BaseStruct* item = EEDrawList; EDA_BaseStruct* item = (EDA_BaseStruct*) EEDrawList; // @todo : use SCH_ITEM as type for item // for now, make it look like XML, expand on this later. // for now, make it look like XML, expand on this later. NestedSpace( nestLevel, os ) << '<' << GetClass().Lower().mb_str() << NestedSpace( nestLevel, os ) << '<' << GetClass().Lower().mb_str() << Loading
common/class_drawpickedstruct.cpp +16 −0 Original line number Original line Diff line number Diff line Loading @@ -6,6 +6,22 @@ #include "common.h" #include "common.h" #include "sch_item_struct.h" #include "sch_item_struct.h" /* Constructor and destructor for SCH_ITEM */ /* They are not inline because this creates problems with gcc at linking time * in debug mode */ SCH_ITEM::SCH_ITEM( EDA_BaseStruct* aParent, KICAD_T aType ) : EDA_BaseStruct( aParent, aType ) { m_Layer = 0; } SCH_ITEM::~SCH_ITEM() { } /**************************/ /**************************/ /* class DrawPickedStruct */ /* class DrawPickedStruct */ /**************************/ /**************************/ Loading
eeschema/CMakeLists.txt +2 −3 Original line number Original line Diff line number Diff line Loading @@ -13,10 +13,11 @@ set(EESCHEMA_SRCS busentry.cpp busentry.cpp bus-wire-junction.cpp bus-wire-junction.cpp class_drawsheet.cpp class_drawsheet.cpp class_hierarchical_PIN_sheet.cpp class_screen.cpp class_screen.cpp class_text-label.cpp class_text-label.cpp class_schematic_items.cpp cleanup.cpp cleanup.cpp cmpclass.cpp component_class.cpp component_class.cpp controle.cpp controle.cpp cross-probing.cpp cross-probing.cpp Loading @@ -34,7 +35,6 @@ set(EESCHEMA_SRCS dialog_erc.cpp dialog_erc.cpp # dialog_find.cpp # dialog_find.cpp dialog_options.cpp dialog_options.cpp # divers.cpp edit_component_in_lib.cpp edit_component_in_lib.cpp edit_component_in_schematic.cpp edit_component_in_schematic.cpp edit_label.cpp edit_label.cpp Loading @@ -43,7 +43,6 @@ set(EESCHEMA_SRCS eelayer.cpp eelayer.cpp eelibs_draw_components.cpp eelibs_draw_components.cpp eelibs_read_libraryfiles.cpp eelibs_read_libraryfiles.cpp eeload.cpp eeredraw.cpp eeredraw.cpp eeschema.cpp eeschema.cpp eestring.cpp eestring.cpp Loading
eeschema/block.cpp +17 −17 Original line number Original line Diff line number Diff line Loading @@ -607,7 +607,7 @@ void MirrorOneStruct( SCH_ITEM * DrawStruct, wxPoint& Center ) DrawBusEntryStruct* DrawRaccord; DrawBusEntryStruct* DrawRaccord; SCH_COMPONENT* DrawLibItem; SCH_COMPONENT* DrawLibItem; DrawSheetStruct* DrawSheet; DrawSheetStruct* DrawSheet; DrawSheetLabelStruct* DrawSheetLabel; Hierarchical_PIN_Sheet_Struct* DrawSheetLabel; DrawMarkerStruct* DrawMarker; DrawMarkerStruct* DrawMarker; DrawNoConnectStruct* DrawNoConnect; DrawNoConnectStruct* DrawNoConnect; SCH_TEXT* DrawText; SCH_TEXT* DrawText; Loading Loading @@ -728,13 +728,13 @@ void MirrorOneStruct( SCH_ITEM * DrawStruct, wxPoint& Center ) { { MirrorYPoint( DrawSheetLabel->m_Pos, Center ); MirrorYPoint( DrawSheetLabel->m_Pos, Center ); DrawSheetLabel->m_Edge = DrawSheetLabel->m_Edge ? 0 : 1; DrawSheetLabel->m_Edge = DrawSheetLabel->m_Edge ? 0 : 1; DrawSheetLabel = (DrawSheetLabelStruct*) DrawSheetLabel->Pnext; DrawSheetLabel = (Hierarchical_PIN_Sheet_Struct*) DrawSheetLabel->Pnext; } } break; break; case DRAW_SHEETLABEL_STRUCT_TYPE: case DRAW_HIERARCHICAL_PIN_SHEET_STRUCT_TYPE: DrawSheetLabel = (DrawSheetLabelStruct*) DrawStruct; DrawSheetLabel = (Hierarchical_PIN_Sheet_Struct*) DrawStruct; MirrorYPoint( DrawSheetLabel->m_Pos, Center ); MirrorYPoint( DrawSheetLabel->m_Pos, Center ); break; break; Loading Loading @@ -876,7 +876,7 @@ static SCH_ITEM * CopyStruct( WinEDA_DrawPanel* panel, wxDC* DC, BASE_SCREEN* sc case TYPE_SCH_LABEL: case TYPE_SCH_LABEL: case TYPE_SCH_GLOBALLABEL: case TYPE_SCH_GLOBALLABEL: case TYPE_SCH_HIERLABEL: case TYPE_SCH_HIERLABEL: case DRAW_SHEETLABEL_STRUCT_TYPE: case DRAW_HIERARCHICAL_PIN_SHEET_STRUCT_TYPE: case DRAW_PICK_ITEM_STRUCT_TYPE: case DRAW_PICK_ITEM_STRUCT_TYPE: case DRAW_MARKER_STRUCT_TYPE: case DRAW_MARKER_STRUCT_TYPE: case DRAW_NOCONNECT_STRUCT_TYPE: case DRAW_NOCONNECT_STRUCT_TYPE: Loading Loading @@ -929,12 +929,12 @@ void DeleteStruct( WinEDA_DrawPanel* panel, wxDC* DC, SCH_ITEM * DrawStruct ) if( !DrawStruct ) if( !DrawStruct ) return; return; if( DrawStruct->Type() == DRAW_SHEETLABEL_STRUCT_TYPE ) if( DrawStruct->Type() == DRAW_HIERARCHICAL_PIN_SHEET_STRUCT_TYPE ) { { /* Cette stucture est rattachee a une feuille, et n'est pas /* Cette stucture est rattachee a une feuille, et n'est pas * accessible par la liste globale directement */ * accessible par la liste globale directement */ frame->SaveCopyInUndoList( (SCH_ITEM*) ( (DrawSheetLabelStruct*) DrawStruct )->m_Parent, IS_CHANGED ); frame->SaveCopyInUndoList( (SCH_ITEM*) ( (Hierarchical_PIN_Sheet_Struct*) DrawStruct )->m_Parent, IS_CHANGED ); frame->DeleteSheetLabel( DC, (DrawSheetLabelStruct*) DrawStruct ); frame->DeleteSheetLabel( DC, (Hierarchical_PIN_Sheet_Struct*) DrawStruct ); return; return; } } Loading Loading @@ -1127,7 +1127,7 @@ bool PlaceStruct( BASE_SCREEN* screen, SCH_ITEM * DrawStruct ) case TYPE_SCH_HIERLABEL: case TYPE_SCH_HIERLABEL: case TYPE_SCH_COMPONENT: case TYPE_SCH_COMPONENT: case DRAW_SHEET_STRUCT_TYPE: case DRAW_SHEET_STRUCT_TYPE: case DRAW_SHEETLABEL_STRUCT_TYPE: case DRAW_HIERARCHICAL_PIN_SHEET_STRUCT_TYPE: case DRAW_MARKER_STRUCT_TYPE: case DRAW_MARKER_STRUCT_TYPE: case DRAW_NOCONNECT_STRUCT_TYPE: case DRAW_NOCONNECT_STRUCT_TYPE: MoveOneStruct( DrawStruct, move_vector ); MoveOneStruct( DrawStruct, move_vector ); Loading Loading @@ -1162,7 +1162,7 @@ void MoveOneStruct( SCH_ITEM * DrawStruct, const wxPoint& move_vector ) DrawBusEntryStruct* DrawRaccord; DrawBusEntryStruct* DrawRaccord; SCH_COMPONENT* DrawLibItem; SCH_COMPONENT* DrawLibItem; DrawSheetStruct* DrawSheet; DrawSheetStruct* DrawSheet; DrawSheetLabelStruct* DrawSheetLabel; Hierarchical_PIN_Sheet_Struct* DrawSheetLabel; DrawMarkerStruct* DrawMarker; DrawMarkerStruct* DrawMarker; DrawNoConnectStruct* DrawNoConnect; DrawNoConnectStruct* DrawNoConnect; Loading Loading @@ -1255,8 +1255,8 @@ void MoveOneStruct( SCH_ITEM * DrawStruct, const wxPoint& move_vector ) break; break; case DRAW_SHEETLABEL_STRUCT_TYPE: case DRAW_HIERARCHICAL_PIN_SHEET_STRUCT_TYPE: DrawSheetLabel = (DrawSheetLabelStruct*) DrawStruct; DrawSheetLabel = (Hierarchical_PIN_Sheet_Struct*) DrawStruct; DrawSheetLabel->m_Pos += move_vector; DrawSheetLabel->m_Pos += move_vector; break; break; Loading Loading @@ -1356,7 +1356,7 @@ SCH_ITEM * DuplicateStruct( SCH_ITEM * DrawStruct ) break; break; } } case DRAW_SHEETLABEL_STRUCT_TYPE: case DRAW_HIERARCHICAL_PIN_SHEET_STRUCT_TYPE: case DRAW_PART_TEXT_STRUCT_TYPE: case DRAW_PART_TEXT_STRUCT_TYPE: case SCREEN_STRUCT_TYPE: case SCREEN_STRUCT_TYPE: default: default: Loading Loading @@ -1467,12 +1467,12 @@ static void CollectStructsToDrag( SCH_SCREEN* screen ) if( Struct->Type() == DRAW_SHEET_STRUCT_TYPE ) if( Struct->Type() == DRAW_SHEET_STRUCT_TYPE ) { { DrawSheetLabelStruct* SLabel = ( (DrawSheetStruct*) Struct )->m_Label; Hierarchical_PIN_Sheet_Struct* SLabel = ( (DrawSheetStruct*) Struct )->m_Label; while( SLabel ) while( SLabel ) { { if( SLabel->Type() == DRAW_SHEETLABEL_STRUCT_TYPE ) if( SLabel->Type() == DRAW_HIERARCHICAL_PIN_SHEET_STRUCT_TYPE ) AddPickedItem( screen, SLabel->m_Pos ); AddPickedItem( screen, SLabel->m_Pos ); SLabel = (DrawSheetLabelStruct*) SLabel->Pnext; SLabel = (Hierarchical_PIN_Sheet_Struct*) SLabel->Pnext; } } } } Loading Loading @@ -1611,7 +1611,7 @@ static void AddPickedItem( SCH_SCREEN* screen, wxPoint position ) case DRAW_SHEET_STRUCT_TYPE: case DRAW_SHEET_STRUCT_TYPE: break; break; case DRAW_SHEETLABEL_STRUCT_TYPE: case DRAW_HIERARCHICAL_PIN_SHEET_STRUCT_TYPE: break; break; case DRAW_PICK_ITEM_STRUCT_TYPE: case DRAW_PICK_ITEM_STRUCT_TYPE: Loading