diff --git a/common/dialogs/dialog_page_settings.cpp b/common/dialogs/dialog_page_settings.cpp
index d17b8cc3f8..a80ae93d1d 100644
--- a/common/dialogs/dialog_page_settings.cpp
+++ b/common/dialogs/dialog_page_settings.cpp
@@ -33,8 +33,8 @@
 #include <tool/actions.h>
 #include <tool/tool_manager.h>
 #include <wildcards_and_files_ext.h>
-#include <ws_data_model.h>
-#include <ws_painter.h>
+#include <page_layout/ws_data_model.h>
+#include <page_layout/ws_painter.h>
 #include <wx/valgen.h>
 #include <wx/tokenzr.h>
 
diff --git a/common/eda_draw_frame.cpp b/common/eda_draw_frame.cpp
index 1f937bf7d8..f25cc9a65c 100644
--- a/common/eda_draw_frame.cpp
+++ b/common/eda_draw_frame.cpp
@@ -51,7 +51,7 @@
 #include <tool/zoom_menu.h>
 #include <trace_helpers.h>
 #include <view/view.h>
-#include <ws_draw_item.h>
+#include <page_layout/ws_draw_item.h>
 #include <wx/snglinst.h>
 #include <dialogs/dialog_grid_settings.h>
 
diff --git a/common/page_layout/page_layout_default_description.cpp b/common/page_layout/page_layout_default_description.cpp
index 2169cfc9a6..dd73769f0c 100644
--- a/common/page_layout/page_layout_default_description.cpp
+++ b/common/page_layout/page_layout_default_description.cpp
@@ -115,7 +115,7 @@
  *
  */
 
-#include <ws_painter.h>
+#include <page_layout/ws_painter.h>
 
 // height of the band reference grid  2.0 mm
 // worksheet frame reference text size 1.3 mm
diff --git a/common/page_layout/page_layout_reader.cpp b/common/page_layout/page_layout_reader.cpp
index 9a83643878..626ca14c96 100644
--- a/common/page_layout/page_layout_reader.cpp
+++ b/common/page_layout/page_layout_reader.cpp
@@ -30,10 +30,10 @@
  */
 
 #include <base_struct.h>
-#include <ws_painter.h>
-#include <ws_draw_item.h>
-#include <ws_data_item.h>
-#include <ws_data_model.h>
+#include <page_layout/ws_data_item.h>
+#include <page_layout/ws_data_model.h>
+#include <page_layout/ws_draw_item.h>
+#include <page_layout/ws_painter.h>
 #include <page_layout/page_layout_reader_lexer.h>
 
 #include <wx/file.h>
diff --git a/common/page_layout/ws_data_item.cpp b/common/page_layout/ws_data_item.cpp
index db8bc5621f..fa08f8a83b 100644
--- a/common/page_layout/ws_data_item.cpp
+++ b/common/page_layout/ws_data_item.cpp
@@ -53,11 +53,11 @@
 #include <eda_rect.h>
 #include <math/util.h>      // for KiROUND
 #include <view/view.h>
-#include <ws_painter.h>
 #include <title_block.h>
-#include <ws_draw_item.h>
-#include <ws_data_model.h>
-#include <ws_data_item.h>
+#include <page_layout/ws_data_model.h>
+#include <page_layout/ws_data_item.h>
+#include <page_layout/ws_draw_item.h>
+#include <page_layout/ws_painter.h>
 
 using KIGFX::COLOR4D;
 
diff --git a/common/page_layout/ws_data_model.cpp b/common/page_layout/ws_data_model.cpp
index 9eeb37480a..896e3c3266 100644
--- a/common/page_layout/ws_data_model.cpp
+++ b/common/page_layout/ws_data_model.cpp
@@ -45,11 +45,11 @@
  */
 
 #include <kiface_i.h>
-#include <ws_painter.h>
 #include <title_block.h>
-#include <ws_draw_item.h>
-#include <ws_data_item.h>
-#include <ws_data_model.h>
+#include <page_layout/ws_data_item.h>
+#include <page_layout/ws_data_model.h>
+#include <page_layout/ws_draw_item.h>
+#include <page_layout/ws_painter.h>
 
 
 // The layout shape used in the application
diff --git a/common/page_layout/ws_data_model_io.cpp b/common/page_layout/ws_data_model_io.cpp
index 7728f68462..5d4d5e58f2 100644
--- a/common/page_layout/ws_data_model_io.cpp
+++ b/common/page_layout/ws_data_model_io.cpp
@@ -31,10 +31,10 @@
  */
 
 #include <base_struct.h>
-#include <ws_painter.h>
-#include <ws_draw_item.h>
-#include <ws_data_item.h>
-#include <ws_data_model.h>
+#include <page_layout/ws_painter.h>
+#include <page_layout/ws_draw_item.h>
+#include <page_layout/ws_data_item.h>
+#include <page_layout/ws_data_model.h>
 #include <math/vector2d.h>
 #include <page_layout/page_layout_reader_lexer.h>
 #include <convert_to_biu.h>
diff --git a/common/page_layout/ws_draw_item.cpp b/common/page_layout/ws_draw_item.cpp
index b2c4505979..2e4bceeaf9 100644
--- a/common/page_layout/ws_draw_item.cpp
+++ b/common/page_layout/ws_draw_item.cpp
@@ -50,9 +50,9 @@
 
 #include <eda_rect.h>
 #include <eda_draw_frame.h>
-#include <ws_draw_item.h>
-#include <ws_data_item.h>
-#include <ws_data_model.h>
+#include <page_layout/ws_draw_item.h>
+#include <page_layout/ws_data_item.h>
+#include <page_layout/ws_data_model.h>
 #include <base_units.h>
 #include <page_info.h>
 #include <layers_id_colors_and_visibility.h>
diff --git a/common/page_layout/ws_painter.cpp b/common/page_layout/ws_painter.cpp
index 16f6c15f9e..6e2397f523 100644
--- a/common/page_layout/ws_painter.cpp
+++ b/common/page_layout/ws_painter.cpp
@@ -29,11 +29,11 @@
 #include <title_block.h>
 #include <build_version.h>
 #include <settings/color_settings.h>
-#include <ws_draw_item.h>
+#include <page_layout/ws_draw_item.h>
 #include <gal/graphics_abstraction_layer.h>
 
-#include <ws_painter.h>
-#include <ws_data_item.h>
+#include <page_layout/ws_painter.h>
+#include <page_layout/ws_data_item.h>
 
 using namespace KIGFX;
 
diff --git a/common/page_layout/ws_proxy_undo_item.cpp b/common/page_layout/ws_proxy_undo_item.cpp
index 70abb964df..b9ef6abf78 100644
--- a/common/page_layout/ws_proxy_undo_item.cpp
+++ b/common/page_layout/ws_proxy_undo_item.cpp
@@ -21,9 +21,9 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
  */
 
-#include <ws_proxy_undo_item.h>
-#include <ws_data_item.h>
-#include <ws_data_model.h>
+#include <page_layout/ws_proxy_undo_item.h>
+#include <page_layout/ws_data_item.h>
+#include <page_layout/ws_data_model.h>
 #include <view/view.h>
 #include <eda_draw_frame.h>
 #include <macros.h>
diff --git a/common/page_layout/ws_proxy_view_item.cpp b/common/page_layout/ws_proxy_view_item.cpp
index 934c74d16e..03ae992393 100644
--- a/common/page_layout/ws_proxy_view_item.cpp
+++ b/common/page_layout/ws_proxy_view_item.cpp
@@ -22,13 +22,13 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
  */
 
-#include <ws_proxy_view_item.h>
-#include <ws_draw_item.h>
-#include <ws_data_item.h>
 #include <layers_id_colors_and_visibility.h>
 #include <page_info.h>
+#include <page_layout/ws_proxy_view_item.h>
+#include <page_layout/ws_draw_item.h>
+#include <page_layout/ws_data_item.h>
+#include <page_layout/ws_painter.h>
 #include <view/view.h>
-#include <ws_painter.h>
 
 using namespace KIGFX;
 
diff --git a/common/plotters/common_plot_functions.cpp b/common/plotters/common_plot_functions.cpp
index 8c781fb0e3..167e53270f 100644
--- a/common/plotters/common_plot_functions.cpp
+++ b/common/plotters/common_plot_functions.cpp
@@ -24,10 +24,10 @@
 
 #include <base_struct.h>
 #include <plotters_specific.h>
-#include <ws_painter.h>
+#include <page_layout/ws_data_item.h>
+#include <page_layout/ws_draw_item.h>
+#include <page_layout/ws_painter.h>
 #include <title_block.h>
-#include "ws_draw_item.h"
-#include "ws_data_item.h"
 #include <wx/filename.h>
 
 
diff --git a/eeschema/dialogs/dialog_plot_schematic.cpp b/eeschema/dialogs/dialog_plot_schematic.cpp
index be86030def..ef94d25ba5 100644
--- a/eeschema/dialogs/dialog_plot_schematic.cpp
+++ b/eeschema/dialogs/dialog_plot_schematic.cpp
@@ -30,7 +30,7 @@
 #include <kiface_i.h>
 #include <pgm_base.h>
 #include <settings/settings_manager.h>
-#include <ws_painter.h>
+#include <page_layout/ws_painter.h>
 #include <sch_painter.h>
 #include <schematic.h>
 
diff --git a/eeschema/dialogs/panel_eeschema_color_settings.cpp b/eeschema/dialogs/panel_eeschema_color_settings.cpp
index 0714ab3c9d..31e1ef41d8 100644
--- a/eeschema/dialogs/panel_eeschema_color_settings.cpp
+++ b/eeschema/dialogs/panel_eeschema_color_settings.cpp
@@ -41,7 +41,7 @@
 #include <settings/settings_manager.h>
 #include <title_block.h>
 #include <view/view.h>
-#include <ws_proxy_view_item.h>
+#include <page_layout/ws_proxy_view_item.h>
 #include <sch_base_frame.h>
 #include <widgets/color_swatch.h>
 
diff --git a/eeschema/eeschema_config.cpp b/eeschema/eeschema_config.cpp
index 31603f0fe0..33cca87890 100644
--- a/eeschema/eeschema_config.cpp
+++ b/eeschema/eeschema_config.cpp
@@ -47,7 +47,7 @@
 #include <symbol_lib_table.h>
 #include <widgets/paged_dialog.h>
 #include <wildcards_and_files_ext.h>
-#include <ws_data_model.h>
+#include <page_layout/ws_data_model.h>
 
 
 #define FieldNameTemplatesKey         wxT( "FieldNameTemplates" )
diff --git a/eeschema/erc.cpp b/eeschema/erc.cpp
index f8a583d01f..b63eb6dcc8 100644
--- a/eeschema/erc.cpp
+++ b/eeschema/erc.cpp
@@ -37,8 +37,8 @@
 #include <sch_reference_list.h>
 #include <sch_sheet.h>
 #include <schematic.h>
-#include <ws_draw_item.h>
-#include <ws_proxy_view_item.h>
+#include <page_layout/ws_draw_item.h>
+#include <page_layout/ws_proxy_view_item.h>
 #include <wx/ffile.h>
 
 
diff --git a/eeschema/files-io.cpp b/eeschema/files-io.cpp
index b0693899ce..5e5cd5c700 100644
--- a/eeschema/files-io.cpp
+++ b/eeschema/files-io.cpp
@@ -56,7 +56,7 @@
 #include <trace_helpers.h>
 #include <widgets/infobar.h>
 #include <wildcards_and_files_ext.h>
-#include <ws_data_model.h>
+#include <page_layout/ws_data_model.h>
 
 bool SCH_EDIT_FRAME::SaveEEFile( SCH_SHEET* aSheet, bool aSaveUnderNewName )
 {
diff --git a/eeschema/sch_edit_frame.cpp b/eeschema/sch_edit_frame.cpp
index 00022b371b..b2c256e5a4 100644
--- a/eeschema/sch_edit_frame.cpp
+++ b/eeschema/sch_edit_frame.cpp
@@ -76,7 +76,7 @@
 #include <wildcards_and_files_ext.h>
 #include <wx/cmdline.h>
 #include <gal/graphics_abstraction_layer.h>
-#include <ws_proxy_view_item.h>
+#include <page_layout/ws_proxy_view_item.h>
 
 // non-member so it can be moved easily, and kept REALLY private.
 // Do NOT Clear() in here.
diff --git a/eeschema/sch_plugins/eagle/sch_eagle_plugin.cpp b/eeschema/sch_plugins/eagle/sch_eagle_plugin.cpp
index f6386b54af..46047b163b 100644
--- a/eeschema/sch_plugins/eagle/sch_eagle_plugin.cpp
+++ b/eeschema/sch_plugins/eagle/sch_eagle_plugin.cpp
@@ -61,7 +61,7 @@
 #include <symbol_lib_table.h>
 #include <template_fieldnames.h>
 #include <wildcards_and_files_ext.h>
-#include <ws_draw_item.h>
+#include <page_layout/ws_draw_item.h>
 
 
 // Eagle schematic axes are aligned with x increasing left to right and Y increasing bottom to top
diff --git a/eeschema/sch_preview_panel.cpp b/eeschema/sch_preview_panel.cpp
index 8af42dfbdb..10e2f93407 100644
--- a/eeschema/sch_preview_panel.cpp
+++ b/eeschema/sch_preview_panel.cpp
@@ -23,7 +23,7 @@
 
 
 #include <view/wx_view_controls.h>
-#include <ws_proxy_view_item.h>
+#include <page_layout/ws_proxy_view_item.h>
 
 #include <gal/graphics_abstraction_layer.h>
 
diff --git a/eeschema/sch_view.cpp b/eeschema/sch_view.cpp
index bc5f9e30c3..cd86029dd2 100644
--- a/eeschema/sch_view.cpp
+++ b/eeschema/sch_view.cpp
@@ -31,7 +31,7 @@
 #include <view/view_group.h>
 #include <view/view_rtree.h>
 #include <view/wx_view_controls.h>
-#include <ws_proxy_view_item.h>
+#include <page_layout/ws_proxy_view_item.h>
 #include <layers_id_colors_and_visibility.h>
 #include <sch_screen.h>
 #include <schematic.h>
diff --git a/eeschema/schematic_undo_redo.cpp b/eeschema/schematic_undo_redo.cpp
index 2ded0c18db..ce4dda7152 100644
--- a/eeschema/schematic_undo_redo.cpp
+++ b/eeschema/schematic_undo_redo.cpp
@@ -29,7 +29,7 @@
 #include <sch_line.h>
 #include <sch_bitmap.h>
 #include <tools/ee_selection_tool.h>
-#include <ws_proxy_undo_item.h>
+#include <page_layout/ws_proxy_undo_item.h>
 #include <tool/actions.h>
 
 /* Functions to undo and redo edit commands.
diff --git a/eeschema/tools/sch_edit_tool.cpp b/eeschema/tools/sch_edit_tool.cpp
index dad83eef0a..17a3bb344f 100644
--- a/eeschema/tools/sch_edit_tool.cpp
+++ b/eeschema/tools/sch_edit_tool.cpp
@@ -46,7 +46,7 @@
 #include <sch_junction.h>
 #include <sch_edit_frame.h>
 #include <schematic.h>
-#include <ws_proxy_view_item.h>
+#include <page_layout/ws_proxy_view_item.h>
 #include <eeschema_id.h>
 #include <status_popup.h>
 #include <wx/gdicmn.h>
diff --git a/eeschema/tools/sch_editor_control.cpp b/eeschema/tools/sch_editor_control.cpp
index cf4c9d4bec..c5d4765820 100644
--- a/eeschema/tools/sch_editor_control.cpp
+++ b/eeschema/tools/sch_editor_control.cpp
@@ -55,7 +55,7 @@
 #include <tools/ee_selection.h>
 #include <tools/ee_selection_tool.h>
 #include <tools/sch_editor_control.h>
-#include <ws_proxy_undo_item.h>
+#include <page_layout/ws_proxy_undo_item.h>
 #include <dialog_update_from_pcb.h>
 #include <dialog_helpers.h>
 
diff --git a/gerbview/gerbview_draw_panel_gal.cpp b/gerbview/gerbview_draw_panel_gal.cpp
index 76204bf910..4f90d5156f 100644
--- a/gerbview/gerbview_draw_panel_gal.cpp
+++ b/gerbview/gerbview_draw_panel_gal.cpp
@@ -21,7 +21,7 @@
 #include <view/view.h>
 #include <view/wx_view_controls.h>
 #include <gerbview_painter.h>
-#include <ws_proxy_view_item.h>
+#include <page_layout/ws_proxy_view_item.h>
 
 #include <gerbview_frame.h>
 #include <gbr_display_options.h>
diff --git a/gerbview/gerbview_draw_panel_gal.h b/gerbview/gerbview_draw_panel_gal.h
index e66b955ef2..ca6d0ecc9e 100644
--- a/gerbview/gerbview_draw_panel_gal.h
+++ b/gerbview/gerbview_draw_panel_gal.h
@@ -21,7 +21,7 @@
 #define GERBVIEW_DRAW_PANEL_GAL_H_
 
 #include <class_draw_panel_gal.h>
-#include <ws_proxy_view_item.h>
+#include <page_layout/ws_proxy_view_item.h>
 
 namespace KIGFX
 {
diff --git a/include/ws_data_item.h b/include/page_layout/ws_data_item.h
similarity index 99%
rename from include/ws_data_item.h
rename to include/page_layout/ws_data_item.h
index 1fab284b89..223c6ae4dd 100644
--- a/include/ws_data_item.h
+++ b/include/page_layout/ws_data_item.h
@@ -33,7 +33,7 @@
 #include <math/vector2d.h>
 #include <eda_text.h>
 #include <bitmap_base.h>
-#include "ws_draw_item.h"
+#include "page_layout/ws_draw_item.h"
 
 class WS_DRAW_ITEM_TEXT;            // Forward declaration
 
diff --git a/include/ws_data_model.h b/include/page_layout/ws_data_model.h
similarity index 100%
rename from include/ws_data_model.h
rename to include/page_layout/ws_data_model.h
diff --git a/include/ws_draw_item.h b/include/page_layout/ws_draw_item.h
similarity index 100%
rename from include/ws_draw_item.h
rename to include/page_layout/ws_draw_item.h
diff --git a/include/ws_painter.h b/include/page_layout/ws_painter.h
similarity index 99%
rename from include/ws_painter.h
rename to include/page_layout/ws_painter.h
index f9d45ff015..b94eaa7cb2 100644
--- a/include/ws_painter.h
+++ b/include/page_layout/ws_painter.h
@@ -29,7 +29,7 @@
 #include <gal/color4d.h>
 #include <painter.h>
 #include <page_info.h>
-#include <ws_draw_item.h>
+#include <page_layout/ws_draw_item.h>
 
 // Forward declarations:
 class EDA_RECT;
diff --git a/include/ws_proxy_undo_item.h b/include/page_layout/ws_proxy_undo_item.h
similarity index 100%
rename from include/ws_proxy_undo_item.h
rename to include/page_layout/ws_proxy_undo_item.h
diff --git a/include/ws_proxy_view_item.h b/include/page_layout/ws_proxy_view_item.h
similarity index 100%
rename from include/ws_proxy_view_item.h
rename to include/page_layout/ws_proxy_view_item.h
diff --git a/pagelayout_editor/design_inspector.cpp b/pagelayout_editor/design_inspector.cpp
index 28839e0581..43e02b2679 100644
--- a/pagelayout_editor/design_inspector.cpp
+++ b/pagelayout_editor/design_inspector.cpp
@@ -25,9 +25,9 @@
 #include <wx/imaglist.h>
 #include <wx/wupdlock.h>
 
-#include <ws_draw_item.h>
-#include <ws_data_item.h>
-#include <ws_data_model.h>
+#include <page_layout/ws_draw_item.h>
+#include <page_layout/ws_data_item.h>
+#include <page_layout/ws_data_model.h>
 #include <tool/tool_manager.h>
 
 #include "dialogs/dialog_design_inspector_base.h"
diff --git a/pagelayout_editor/dialogs/dialog_new_dataitem.cpp b/pagelayout_editor/dialogs/dialog_new_dataitem.cpp
index ac926472da..06f86477aa 100644
--- a/pagelayout_editor/dialogs/dialog_new_dataitem.cpp
+++ b/pagelayout_editor/dialogs/dialog_new_dataitem.cpp
@@ -22,7 +22,7 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
  */
 
-#include <ws_data_item.h>
+#include <page_layout/ws_data_item.h>
 
 #include "dialog_new_dataitem_base.h"
 #include "pl_editor_frame.h"
diff --git a/pagelayout_editor/dialogs/dialogs_for_printing.cpp b/pagelayout_editor/dialogs/dialogs_for_printing.cpp
index 5a183d6949..9fcb5660a3 100644
--- a/pagelayout_editor/dialogs/dialogs_for_printing.cpp
+++ b/pagelayout_editor/dialogs/dialogs_for_printing.cpp
@@ -28,10 +28,10 @@
 
 #include <base_units.h>
 #include <dialog_helpers.h>
-#include <ws_draw_item.h>
-#include <ws_data_item.h>
-#include <ws_data_model.h>
-#include <ws_painter.h>
+#include <page_layout/ws_draw_item.h>
+#include <page_layout/ws_data_item.h>
+#include <page_layout/ws_data_model.h>
+#include <page_layout/ws_painter.h>
 #include <dialog_page_settings.h>
 
 #include "invoke_pl_editor_dialog.h"
diff --git a/pagelayout_editor/files.cpp b/pagelayout_editor/files.cpp
index cbc11004f2..ae2e1a6875 100644
--- a/pagelayout_editor/files.cpp
+++ b/pagelayout_editor/files.cpp
@@ -26,7 +26,7 @@
 
 #include <confirm.h>
 #include <gestfich.h>
-#include <ws_data_model.h>
+#include <page_layout/ws_data_model.h>
 #include <widgets/infobar.h>
 #include <wildcards_and_files_ext.h>
 
diff --git a/pagelayout_editor/pl_draw_panel_gal.cpp b/pagelayout_editor/pl_draw_panel_gal.cpp
index f03b1f1ab3..4b8ae85217 100644
--- a/pagelayout_editor/pl_draw_panel_gal.cpp
+++ b/pagelayout_editor/pl_draw_panel_gal.cpp
@@ -23,10 +23,10 @@
 #include <view/view.h>
 #include <tool/tool_manager.h>
 #include <view/wx_view_controls.h>
-#include <ws_proxy_view_item.h>
-#include <ws_data_item.h>
-#include <ws_data_model.h>
-#include <ws_painter.h>
+#include <page_layout/ws_proxy_view_item.h>
+#include <page_layout/ws_data_item.h>
+#include <page_layout/ws_data_model.h>
+#include <page_layout/ws_painter.h>
 #include <pgm_base.h>
 #include <kiway.h>
 #include <settings/settings_manager.h>
diff --git a/pagelayout_editor/pl_editor_frame.cpp b/pagelayout_editor/pl_editor_frame.cpp
index 82c86bba37..c0628ee60b 100644
--- a/pagelayout_editor/pl_editor_frame.cpp
+++ b/pagelayout_editor/pl_editor_frame.cpp
@@ -27,8 +27,8 @@
 #include <pgm_base.h>
 #include <msgpanel.h>
 #include <bitmaps.h>
-#include <ws_data_item.h>
-#include <ws_data_model.h>
+#include <page_layout/ws_data_item.h>
+#include <page_layout/ws_data_model.h>
 #include <widgets/paged_dialog.h>
 #include <panel_gal_display_options.h>
 #include <panel_hotkeys_editor.h>
diff --git a/pagelayout_editor/pl_editor_layout.h b/pagelayout_editor/pl_editor_layout.h
index c87544fce5..e11737c070 100644
--- a/pagelayout_editor/pl_editor_layout.h
+++ b/pagelayout_editor/pl_editor_layout.h
@@ -30,7 +30,7 @@
 
 #include <page_info.h>
 #include <title_block.h>
-#include <ws_draw_item.h>
+#include <page_layout/ws_draw_item.h>
 
 
 /**
diff --git a/pagelayout_editor/pl_editor_undo_redo.cpp b/pagelayout_editor/pl_editor_undo_redo.cpp
index 439101e199..3483f310da 100644
--- a/pagelayout_editor/pl_editor_undo_redo.cpp
+++ b/pagelayout_editor/pl_editor_undo_redo.cpp
@@ -23,8 +23,8 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
  */
 
-#include <ws_data_model.h>
-#include <ws_proxy_undo_item.h>
+#include <page_layout/ws_data_model.h>
+#include <page_layout/ws_proxy_undo_item.h>
 #include <tool/tool_manager.h>
 #include <tool/actions.h>
 
diff --git a/pagelayout_editor/properties_frame.cpp b/pagelayout_editor/properties_frame.cpp
index a89d95d037..b6115d9642 100644
--- a/pagelayout_editor/properties_frame.cpp
+++ b/pagelayout_editor/properties_frame.cpp
@@ -26,9 +26,9 @@
 #include <project.h>
 #include <scintilla_tricks.h>
 #include <tool/tool_manager.h>
-#include <ws_draw_item.h>
-#include <ws_data_item.h>
-#include <ws_data_model.h>
+#include <page_layout/ws_draw_item.h>
+#include <page_layout/ws_data_item.h>
+#include <page_layout/ws_data_model.h>
 #include <view/view.h>
 
 #include "properties_frame.h"
diff --git a/pagelayout_editor/tools/pl_actions.cpp b/pagelayout_editor/tools/pl_actions.cpp
index a1d8468243..4803e1ff9c 100644
--- a/pagelayout_editor/tools/pl_actions.cpp
+++ b/pagelayout_editor/tools/pl_actions.cpp
@@ -24,7 +24,7 @@
 
 #include <tool/tool_action.h>
 #include <bitmaps.h>
-#include <ws_data_item.h>
+#include <page_layout/ws_data_item.h>
 
 #include "tools/pl_actions.h"
 
diff --git a/pagelayout_editor/tools/pl_drawing_tools.cpp b/pagelayout_editor/tools/pl_drawing_tools.cpp
index 94ffa0828f..7ee4f43063 100644
--- a/pagelayout_editor/tools/pl_drawing_tools.cpp
+++ b/pagelayout_editor/tools/pl_drawing_tools.cpp
@@ -29,8 +29,8 @@
 #include <view/view.h>
 #include <tool/tool_manager.h>
 #include <bitmaps.h>
-#include <ws_draw_item.h>
-#include <ws_data_item.h>
+#include <page_layout/ws_draw_item.h>
+#include <page_layout/ws_data_item.h>
 
 #include "invoke_pl_editor_dialog.h"
 #include "pl_editor_frame.h"
diff --git a/pagelayout_editor/tools/pl_edit_tool.cpp b/pagelayout_editor/tools/pl_edit_tool.cpp
index a72a3ec583..f13b5549ca 100644
--- a/pagelayout_editor/tools/pl_edit_tool.cpp
+++ b/pagelayout_editor/tools/pl_edit_tool.cpp
@@ -24,9 +24,9 @@
 
 #include <tool/tool_manager.h>
 #include <tool/picker_tool.h>
-#include <ws_data_item.h>
-#include <ws_data_model.h>
-#include <ws_draw_item.h>
+#include <page_layout/ws_data_item.h>
+#include <page_layout/ws_data_model.h>
+#include <page_layout/ws_draw_item.h>
 #include <bitmaps.h>
 #include <confirm.h>
 #include <base_struct.h>
diff --git a/pagelayout_editor/tools/pl_editor_control.cpp b/pagelayout_editor/tools/pl_editor_control.cpp
index 5389c98547..8f1a1b454e 100644
--- a/pagelayout_editor/tools/pl_editor_control.cpp
+++ b/pagelayout_editor/tools/pl_editor_control.cpp
@@ -25,11 +25,11 @@
 #include <kiway.h>
 #include <view/view.h>
 #include <tool/tool_manager.h>
-#include <ws_painter.h>
 #include <confirm.h>
 #include <bitmaps.h>
 #include <dialog_page_settings.h>
-#include <ws_data_model.h>
+#include <page_layout/ws_data_model.h>
+#include <page_layout/ws_painter.h>
 
 #include "pl_editor_frame.h"
 #include "pl_editor_id.h"
diff --git a/pagelayout_editor/tools/pl_point_editor.cpp b/pagelayout_editor/tools/pl_point_editor.cpp
index edd7b984ce..e62443b12b 100644
--- a/pagelayout_editor/tools/pl_point_editor.cpp
+++ b/pagelayout_editor/tools/pl_point_editor.cpp
@@ -34,7 +34,7 @@ using namespace std::placeholders;
 
 #include <bitmaps.h>
 #include <status_popup.h>
-#include <ws_draw_item.h>
+#include <page_layout/ws_draw_item.h>
 #include <widgets/progress_reporter.h>
 
 #include "pl_editor_frame.h"
diff --git a/pagelayout_editor/tools/pl_selection_tool.cpp b/pagelayout_editor/tools/pl_selection_tool.cpp
index 9363c629bd..efe7cf7243 100644
--- a/pagelayout_editor/tools/pl_selection_tool.cpp
+++ b/pagelayout_editor/tools/pl_selection_tool.cpp
@@ -30,9 +30,9 @@
 #include <tool/tool_event.h>
 #include <tool/tool_manager.h>
 #include <tool/selection.h>
-#include <ws_data_item.h>
-#include <ws_data_model.h>
-#include <ws_draw_item.h>
+#include <page_layout/ws_data_item.h>
+#include <page_layout/ws_data_model.h>
+#include <page_layout/ws_draw_item.h>
 #include <collector.h>
 #include <math/util.h>      // for KiROUND
 
diff --git a/pcbnew/class_board.cpp b/pcbnew/class_board.cpp
index 7498a97937..282a60c1ab 100644
--- a/pcbnew/class_board.cpp
+++ b/pcbnew/class_board.cpp
@@ -29,7 +29,7 @@
 #include <iterator>
 #include <pcb_base_frame.h>
 #include <reporter.h>
-#include <ws_proxy_view_item.h>
+#include <page_layout/ws_proxy_view_item.h>
 #include <board_commit.h>
 #include <class_board.h>
 #include <class_module.h>
diff --git a/pcbnew/dialogs/panel_pcbnew_color_settings.cpp b/pcbnew/dialogs/panel_pcbnew_color_settings.cpp
index 30b3edd928..cb13366ee4 100644
--- a/pcbnew/dialogs/panel_pcbnew_color_settings.cpp
+++ b/pcbnew/dialogs/panel_pcbnew_color_settings.cpp
@@ -30,7 +30,7 @@
 #include <settings/settings_manager.h>
 #include <footprint_preview_panel.h>
 #include <widgets/appearance_controls.h>
-#include <ws_proxy_view_item.h>
+#include <page_layout/ws_proxy_view_item.h>
 #include <pcb_painter.h>
 #include <class_track.h>
 #include <plugins/kicad/kicad_plugin.h>
diff --git a/pcbnew/drc/drc_test_provider_misc.cpp b/pcbnew/drc/drc_test_provider_misc.cpp
index 8679797792..6e1cea54b6 100644
--- a/pcbnew/drc/drc_test_provider_misc.cpp
+++ b/pcbnew/drc/drc_test_provider_misc.cpp
@@ -26,8 +26,8 @@
 #include <drc/drc_rule.h>
 #include <drc/drc_test_provider.h>
 
-#include <ws_draw_item.h>
-#include <ws_proxy_view_item.h>
+#include <page_layout/ws_draw_item.h>
+#include <page_layout/ws_proxy_view_item.h>
 
 /*
     Miscellaneous tests:
diff --git a/pcbnew/pcb_draw_panel_gal.cpp b/pcbnew/pcb_draw_panel_gal.cpp
index af78696750..49b2fb7687 100644
--- a/pcbnew/pcb_draw_panel_gal.cpp
+++ b/pcbnew/pcb_draw_panel_gal.cpp
@@ -26,7 +26,7 @@
 #include <pcb_view.h>
 #include <view/wx_view_controls.h>
 #include <pcb_painter.h>
-#include <ws_proxy_view_item.h>
+#include <page_layout/ws_proxy_view_item.h>
 #include <connectivity/connectivity_data.h>
 
 #include <class_board.h>
diff --git a/pcbnew/pcb_edit_frame.cpp b/pcbnew/pcb_edit_frame.cpp
index 13efe23d28..55d0f898e9 100644
--- a/pcbnew/pcb_edit_frame.cpp
+++ b/pcbnew/pcb_edit_frame.cpp
@@ -40,7 +40,7 @@
 #include <invoke_pcb_dialog.h>
 #include <class_board.h>
 #include <class_module.h>
-#include <ws_proxy_view_item.h>
+#include <page_layout/ws_proxy_view_item.h>
 #include <connectivity/connectivity_data.h>
 #include <wildcards_and_files_ext.h>
 #include <pcb_draw_panel_gal.h>
diff --git a/pcbnew/pcbnew_config.cpp b/pcbnew/pcbnew_config.cpp
index f84439d85a..2e730bc38e 100644
--- a/pcbnew/pcbnew_config.cpp
+++ b/pcbnew/pcbnew_config.cpp
@@ -33,7 +33,7 @@
 #include <panel_pcbnew_display_origin.h>
 #include <tool/tool_manager.h>
 #include <tools/selection_tool.h>
-#include <ws_data_model.h>
+#include <page_layout/ws_data_model.h>
 #include <pcbplot.h>
 #include <pcb_painter.h>
 #include <invoke_pcb_dialog.h>
diff --git a/pcbnew/tools/edit_tool.cpp b/pcbnew/tools/edit_tool.cpp
index 01a138ed21..a3487e51a2 100644
--- a/pcbnew/tools/edit_tool.cpp
+++ b/pcbnew/tools/edit_tool.cpp
@@ -30,7 +30,7 @@
 #include <fp_shape.h>
 #include <collectors.h>
 #include <pcb_edit_frame.h>
-#include <ws_proxy_view_item.h>
+#include <page_layout/ws_proxy_view_item.h>
 #include <kiway.h>
 #include <array_creator.h>
 #include <pcbnew_settings.h>
diff --git a/pcbnew/tools/pcb_editor_control.cpp b/pcbnew/tools/pcb_editor_control.cpp
index 514a9e6aad..262e6dd9fd 100644
--- a/pcbnew/tools/pcb_editor_control.cpp
+++ b/pcbnew/tools/pcb_editor_control.cpp
@@ -61,7 +61,7 @@
 #include <view/view_controls.h>
 #include <view/view_group.h>
 #include <wildcards_and_files_ext.h>
-#include <ws_proxy_undo_item.h>
+#include <page_layout/ws_proxy_undo_item.h>
 #include <footprint_edit_frame.h>
 
 using namespace std::placeholders;
@@ -784,9 +784,9 @@ int PCB_EDITOR_CONTROL::PlaceModule( const TOOL_EVENT& aEvent )
     else if( aEvent.HasPosition() )
         m_toolMgr->RunAction( PCB_ACTIONS::cursorClick );
 
-    auto setCursor = 
-            [&]() 
-            { 
+    auto setCursor =
+            [&]()
+            {
                 m_frame->GetCanvas()->SetCurrentCursor( KICURSOR::PENCIL );
             };
 
@@ -1007,9 +1007,9 @@ int PCB_EDITOR_CONTROL::PlaceTarget( const TOOL_EVENT& aEvent )
     m_frame->PushTool( tool );
     Activate();
 
-    auto setCursor = 
-            [&]() 
-            { 
+    auto setCursor =
+            [&]()
+            {
                 m_frame->GetCanvas()->SetCurrentCursor( KICURSOR::ARROW );
             };
 
diff --git a/pcbnew/undo_redo.cpp b/pcbnew/undo_redo.cpp
index 0606897dcb..86216b43cb 100644
--- a/pcbnew/undo_redo.cpp
+++ b/pcbnew/undo_redo.cpp
@@ -42,7 +42,7 @@ using namespace std::placeholders;
 #include <tools/selection_tool.h>
 #include <tools/pcbnew_control.h>
 #include <tools/pcb_editor_control.h>
-#include <ws_proxy_undo_item.h>
+#include <page_layout/ws_proxy_undo_item.h>
 
 /* Functions to undo and redo edit commands.
  *  commands to undo are stored in CurrentScreen->m_UndoList