Browse Source
Undo for schematic-wide operations.
Undo for schematic-wide operations.
Editing value/footprint fields of multi-unit components. Find/Change. Annotation. Back annotation. Fixes https://gitlab.com/kicad/code/kicad/issues/2122 Fixes https://gitlab.com/kicad/code/kicad/issues/4869 Fixes https://gitlab.com/kicad/code/kicad/issues/3933 Fixes https://gitlab.com/kicad/code/kicad/issues/4871 Fixes https://gitlab.com/kicad/code/kicad/issues/3899pull/16/head
88 changed files with 767 additions and 880 deletions
-
50common/base_screen.cpp
-
54common/eda_base_frame.cpp
-
4common/eda_draw_frame.cpp
-
31common/undo_redo_container.cpp
-
11cvpcb/display_footprints_frame.cpp
-
64eeschema/annotate.cpp
-
45eeschema/bus-wire-junction.cpp
-
74eeschema/dialogs/dialog_annotate.cpp
-
10eeschema/dialogs/dialog_annotate_base.cpp
-
8eeschema/dialogs/dialog_annotate_base.fbp
-
4eeschema/dialogs/dialog_annotate_base.h
-
32eeschema/dialogs/dialog_edit_component_in_schematic.cpp
-
2eeschema/dialogs/dialog_edit_label.cpp
-
6eeschema/dialogs/dialog_edit_line_style.cpp
-
22eeschema/dialogs/dialog_edit_one_field.cpp
-
5eeschema/dialogs/dialog_edit_sheet_pin.cpp
-
4eeschema/dialogs/dialog_fields_editor_global.cpp
-
2eeschema/dialogs/dialog_global_edit_text_and_graphics.cpp
-
6eeschema/dialogs/dialog_junction_props.cpp
-
2eeschema/dialogs/dialog_sch_sheet_props.cpp
-
2eeschema/dialogs/dialog_symbol_remap.cpp
-
47eeschema/dialogs/dialog_update_fields.cpp
-
13eeschema/dialogs/dialog_update_fields.h
-
5eeschema/files-io.cpp
-
2eeschema/getpart.cpp
-
1eeschema/hierarch.cpp
-
4eeschema/invoke_sch_dialog.h
-
20eeschema/libedit/lib_edit_frame.cpp
-
14eeschema/libedit/lib_edit_frame.h
-
2eeschema/libedit/libedit.cpp
-
34eeschema/libedit/libedit_undo_redo.cpp
-
4eeschema/libedit/menubar_libedit.cpp
-
6eeschema/libedit/toolbars_libedit.cpp
-
4eeschema/menubar.cpp
-
4eeschema/sch_base_frame.h
-
27eeschema/sch_edit_frame.cpp
-
43eeschema/sch_edit_frame.h
-
23eeschema/sch_screen.cpp
-
23eeschema/sch_screen.h
-
53eeschema/schematic_undo_redo.cpp
-
1eeschema/sheet.cpp
-
4eeschema/toolbars_sch_editor.cpp
-
117eeschema/tools/backannotate.cpp
-
7eeschema/tools/backannotate.h
-
13eeschema/tools/ee_tool_base.h
-
12eeschema/tools/sch_drawing_tools.cpp
-
43eeschema/tools/sch_edit_tool.cpp
-
20eeschema/tools/sch_editor_control.cpp
-
23eeschema/tools/sch_line_wire_bus_tool.cpp
-
2eeschema/tools/sch_move_tool.cpp
-
87include/base_screen.h
-
95include/eda_base_frame.h
-
2include/eda_draw_frame.h
-
31include/pcb_screen.h
-
25include/undo_redo_container.h
-
1pagelayout_editor/CMakeLists.txt
-
2pagelayout_editor/dialogs/dialogs_for_printing.cpp
-
4pagelayout_editor/menubar.cpp
-
61pagelayout_editor/pl_editor_frame.cpp
-
15pagelayout_editor/pl_editor_frame.h
-
67pagelayout_editor/pl_editor_screen.cpp
-
53pagelayout_editor/pl_editor_screen.h
-
36pagelayout_editor/pl_editor_undo_redo.cpp
-
4pagelayout_editor/toolbars_pl_editor.cpp
-
2pagelayout_editor/tools/pl_editor_control.cpp
-
10pcbnew/board_commit.cpp
-
4pcbnew/class_board.cpp
-
2pcbnew/dialogs/dialog_global_edit_tracks_and_vias.cpp
-
2pcbnew/edit_track_width.cpp
-
1pcbnew/footprint_edit_frame.cpp
-
2pcbnew/footprint_libraries_utils.cpp
-
4pcbnew/initpcb.cpp
-
4pcbnew/load_select_footprint.cpp
-
4pcbnew/menubar_footprint_editor.cpp
-
4pcbnew/menubar_pcb_editor.cpp
-
5pcbnew/pcb_base_edit_frame.cpp
-
20pcbnew/pcb_base_edit_frame.h
-
1pcbnew/pcb_edit_frame.cpp
-
6pcbnew/pcb_screen.cpp
-
2pcbnew/specctra_import_export/specctra_import.cpp
-
36pcbnew/swig/pcbnew_action_plugins.cpp
-
4pcbnew/toolbars_footprint_editor.cpp
-
4pcbnew/toolbars_pcb_editor.cpp
-
5pcbnew/tools/footprint_editor_tools.cpp
-
2pcbnew/tools/pcb_editor_control.cpp
-
24pcbnew/undo_redo.cpp
-
2pcbnew/zones_functions_for_undo_redo.cpp
-
5qa/qa_utils/mocks.cpp
@ -1,67 +0,0 @@ |
|||
/*
|
|||
* This program source code file is part of KiCad, a free EDA CAD application. |
|||
* |
|||
* Copyright (C) 2013 CERN |
|||
* Copyright (C) 2019 KiCad Developers, see AUTHORS.txt for contributors. |
|||
* @author Jean-Pierre Charras, jp.charras at wanadoo.fr |
|||
* |
|||
* This program is free software; you can redistribute it and/or |
|||
* modify it under the terms of the GNU General Public License |
|||
* as published by the Free Software Foundation; either version 2 |
|||
* of the License, or (at your option) any later version. |
|||
* |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program; if not, you may find one here: |
|||
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
|
|||
* or you may search the http://www.gnu.org website for the version 2 license,
|
|||
* or you may write to the Free Software Foundation, Inc., |
|||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA |
|||
*/ |
|||
|
|||
#include <fctsys.h>
|
|||
#include <pl_editor_screen.h>
|
|||
|
|||
|
|||
PL_EDITOR_SCREEN::PL_EDITOR_SCREEN( const wxSize& aPageSizeIU ) : |
|||
BASE_SCREEN( aPageSizeIU ) |
|||
{ |
|||
// pl_editor uses the same frame position as schematic and board editors
|
|||
m_Center = false; |
|||
|
|||
m_NumberOfScreens = 2; |
|||
} |
|||
|
|||
|
|||
PL_EDITOR_SCREEN::~PL_EDITOR_SCREEN() |
|||
{ |
|||
ClearUndoRedoList(); |
|||
} |
|||
|
|||
|
|||
void PL_EDITOR_SCREEN::ClearUndoORRedoList( UNDO_REDO_CONTAINER& aList, int aItemCount ) |
|||
{ |
|||
if( aItemCount == 0 ) |
|||
return; |
|||
|
|||
unsigned icnt = aList.m_CommandsList.size(); |
|||
|
|||
if( aItemCount > 0 ) |
|||
icnt = aItemCount; |
|||
|
|||
for( unsigned ii = 0; ii < icnt; ii++ ) |
|||
{ |
|||
if( aList.m_CommandsList.size() == 0 ) |
|||
break; |
|||
|
|||
PICKED_ITEMS_LIST* curr_cmd = aList.m_CommandsList[0]; |
|||
aList.m_CommandsList.erase( aList.m_CommandsList.begin() ); |
|||
|
|||
curr_cmd->ClearListAndDeleteItems(); |
|||
delete curr_cmd; // Delete command
|
|||
} |
|||
} |
|||
@ -1,53 +0,0 @@ |
|||
/* |
|||
* This program source code file is part of KiCad, a free EDA CAD application. |
|||
* |
|||
* Copyright (C) 2013 CERN |
|||
* @author Jean-Pierre Charras, jp.charras at wanadoo.fr |
|||
* |
|||
* This program is free software; you can redistribute it and/or |
|||
* modify it under the terms of the GNU General Public License |
|||
* as published by the Free Software Foundation; either version 2 |
|||
* of the License, or (at your option) any later version. |
|||
* |
|||
* This program is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with this program; if not, you may find one here: |
|||
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.html |
|||
* or you may search the http://www.gnu.org website for the version 2 license, |
|||
* or you may write to the Free Software Foundation, Inc., |
|||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA |
|||
*/ |
|||
|
|||
#ifndef CLASS_PL_EDITOR_SCREEN_H_ |
|||
#define CLASS_PL_EDITOR_SCREEN_H_ |
|||
|
|||
|
|||
#include <base_screen.h> |
|||
|
|||
class WS_DATA_ITEM; |
|||
|
|||
|
|||
class PL_EDITOR_SCREEN : public BASE_SCREEN |
|||
{ |
|||
public: |
|||
/** |
|||
* Constructor |
|||
* @param aPageSizeIU is the size of the initial paper page in internal units. |
|||
*/ |
|||
PL_EDITOR_SCREEN( const wxSize& aPageSizeIU ); |
|||
|
|||
~PL_EDITOR_SCREEN(); |
|||
|
|||
/** |
|||
* Function ClearUndoORRedoList |
|||
* virtual pure in BASE_SCREEN, so it must be defined here |
|||
*/ |
|||
void ClearUndoORRedoList( UNDO_REDO_CONTAINER& aList, int aItemCount = -1 ) override; |
|||
}; |
|||
|
|||
|
|||
#endif // CLASS_PL_EDITOR_SCREEN_H_ |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue