├── git ├── master' ├── ggeasy ├── module.h ├── myapp.ico ├── res │ ├── 256.png │ ├── tool │ │ ├── drill.png │ │ ├── endmill.png │ │ └── engraving.png │ └── icons │ │ ├── ggeasy-dark │ │ ├── actions │ │ │ ├── 16 │ │ │ │ ├── draw-rectangle.svg │ │ │ │ ├── acrobat.svg │ │ │ │ ├── application-exit.svg │ │ │ │ ├── dialog-layers.svg │ │ │ │ ├── layer-visible-on.svg │ │ │ │ ├── edit-delete.svg │ │ │ │ ├── edit-copy.svg │ │ │ │ ├── list-add.svg │ │ │ │ ├── project-open.svg │ │ │ │ ├── drill.svg │ │ │ │ ├── edit-paste.svg │ │ │ │ ├── draw-line.svg │ │ │ │ ├── endmill.svg │ │ │ │ ├── document-print.svg │ │ │ │ ├── draw-ellipse.svg │ │ │ │ ├── edit-select-all-layers.svg │ │ │ │ ├── zoom-original.svg │ │ │ │ ├── laser.svg │ │ │ │ ├── edit-select-all.svg │ │ │ │ ├── folder.svg │ │ │ │ ├── tools-wizard.svg │ │ │ │ ├── document-close.svg │ │ │ │ ├── document-open.svg │ │ │ │ ├── zoom-fit-best.svg │ │ │ │ ├── document-save.svg │ │ │ │ ├── view-form.svg │ │ │ │ ├── zoom-out.svg │ │ │ │ ├── zoom-in.svg │ │ │ │ ├── document-save-as.svg │ │ │ │ ├── view-form-action.svg │ │ │ │ ├── document-export.svg │ │ │ │ ├── draw-text.svg │ │ │ │ ├── window-close.svg │ │ │ │ ├── document-save-all.svg │ │ │ │ ├── list-remove.svg │ │ │ │ ├── draw-ellipse-whole.svg │ │ │ │ ├── zoom-to-selected.svg │ │ │ │ ├── voronoi-path.svg │ │ │ │ ├── project-development-new-template.svg │ │ │ │ ├── drill-path.svg │ │ │ │ ├── document-edit.svg │ │ │ │ ├── engraving.svg │ │ │ │ ├── draw-ellipse-arc.svg │ │ │ │ ├── node.svg │ │ │ │ ├── crosshairs.svg │ │ │ │ ├── configure-shortcuts.svg │ │ │ │ ├── dialog-ok-apply.svg │ │ │ │ ├── profile-path.svg │ │ │ │ ├── draw-ellipse-segment.svg │ │ │ │ ├── thermal-path.svg │ │ │ │ ├── path-exclusion.svg │ │ │ │ ├── folder-sync.svg │ │ │ │ ├── pocket-path.svg │ │ │ │ ├── dialog-cancel.svg │ │ │ │ ├── edit-cut.svg │ │ │ │ └── hint.svg │ │ │ ├── 22 │ │ │ │ ├── list-add.svg │ │ │ │ ├── layer-visible-on.svg │ │ │ │ ├── application-exit.svg │ │ │ │ ├── edit-delete.svg │ │ │ │ ├── edit-copy.svg │ │ │ │ ├── edit-paste.svg │ │ │ │ ├── drill.svg │ │ │ │ ├── endmill.svg │ │ │ │ ├── zoom-original.svg │ │ │ │ ├── document-open.svg │ │ │ │ ├── document-print.svg │ │ │ │ ├── draw-line.svg │ │ │ │ ├── laser.svg │ │ │ │ ├── zoom-fit-best.svg │ │ │ │ ├── draw-text.svg │ │ │ │ ├── acrobat.svg │ │ │ │ ├── edit-select-all.svg │ │ │ │ ├── zoom-out.svg │ │ │ │ ├── document-export.svg │ │ │ │ ├── folder.svg │ │ │ │ ├── zoom-in.svg │ │ │ │ ├── document-save.svg │ │ │ │ ├── draw-ellipse.svg │ │ │ │ ├── document-close.svg │ │ │ │ ├── draw-rectangle.svg │ │ │ │ ├── project-development-new-template.svg │ │ │ │ ├── document-edit.svg │ │ │ │ ├── view-form.svg │ │ │ │ ├── document-save-all.svg │ │ │ │ ├── view-form-action.svg │ │ │ │ ├── engraving.svg │ │ │ │ ├── pocket-path.svg │ │ │ │ ├── window-close.svg │ │ │ │ ├── raster-path.svg │ │ │ │ ├── node.svg │ │ │ │ ├── document-save-as.svg │ │ │ │ ├── profile-path.svg │ │ │ │ ├── draw-ellipse-arc.svg │ │ │ │ ├── drill-path.svg │ │ │ │ ├── tools-wizard.svg │ │ │ │ ├── configure-shortcuts.svg │ │ │ │ ├── dialog-ok-apply.svg │ │ │ │ ├── thermal-path.svg │ │ │ │ ├── list-remove.svg │ │ │ │ ├── path-exclusion.svg │ │ │ │ ├── crosshatch-path.svg │ │ │ │ ├── voronoi-path.svg │ │ │ │ ├── folder-sync.svg │ │ │ │ ├── edit-cut.svg │ │ │ │ └── crosshairs.svg │ │ │ └── 24 │ │ │ │ ├── list-add.svg │ │ │ │ ├── layer-visible-on.svg │ │ │ │ ├── application-exit.svg │ │ │ │ ├── drill.svg │ │ │ │ ├── edit-delete.svg │ │ │ │ ├── edit-copy.svg │ │ │ │ ├── endmill.svg │ │ │ │ ├── edit-paste.svg │ │ │ │ ├── draw-text.svg │ │ │ │ ├── document-open.svg │ │ │ │ ├── draw-line.svg │ │ │ │ ├── document-print.svg │ │ │ │ ├── acrobat.svg │ │ │ │ ├── edit-select-all.svg │ │ │ │ ├── zoom-original.svg │ │ │ │ ├── document-export.svg │ │ │ │ ├── draw-rectangle.svg │ │ │ │ ├── document-save.svg │ │ │ │ ├── draw-ellipse.svg │ │ │ │ ├── document-close.svg │ │ │ │ ├── window-close.svg │ │ │ │ ├── zoom-fit-best.svg │ │ │ │ ├── zoom-out.svg │ │ │ │ ├── project-development-new-template.svg │ │ │ │ ├── zoom-to-selected.svg │ │ │ │ ├── view-form.svg │ │ │ │ ├── document-edit.svg │ │ │ │ ├── draw-ellipse-arc.svg │ │ │ │ ├── engraving.svg │ │ │ │ ├── document-save-all.svg │ │ │ │ ├── view-form-action.svg │ │ │ │ ├── pocket-path.svg │ │ │ │ ├── raster-path.svg │ │ │ │ ├── zoom-in.svg │ │ │ │ ├── profile-path.svg │ │ │ │ ├── drill-path.svg │ │ │ │ ├── tools-wizard.svg │ │ │ │ ├── configure-shortcuts.svg │ │ │ │ ├── voronoi-path.svg │ │ │ │ ├── crosshatch-path.svg │ │ │ │ ├── document-save-as.svg │ │ │ │ ├── dialog-ok-apply.svg │ │ │ │ ├── list-remove.svg │ │ │ │ ├── thermal-path.svg │ │ │ │ ├── folder-sync.svg │ │ │ │ ├── edit-cut.svg │ │ │ │ └── hint.svg │ │ └── toolpath │ │ │ └── pock_rast_conv.svg │ │ └── ggeasy-light │ │ ├── actions │ │ ├── 16 │ │ │ ├── draw-rectangle.svg │ │ │ ├── application-exit.svg │ │ │ ├── dialog-layers.svg │ │ │ ├── acrobat.svg │ │ │ ├── layer-visible-on.svg │ │ │ ├── edit-delete.svg │ │ │ ├── edit-copy.svg │ │ │ ├── list-add.svg │ │ │ ├── project-open.svg │ │ │ ├── drill.svg │ │ │ ├── edit-paste.svg │ │ │ ├── draw-line.svg │ │ │ ├── endmill.svg │ │ │ ├── document-print.svg │ │ │ ├── draw-ellipse.svg │ │ │ ├── zoom-original.svg │ │ │ ├── edit-select-all-layers.svg │ │ │ ├── laser.svg │ │ │ ├── edit-select-all.svg │ │ │ ├── folder.svg │ │ │ ├── tools-wizard.svg │ │ │ ├── document-close.svg │ │ │ ├── document-open.svg │ │ │ ├── zoom-fit-best.svg │ │ │ ├── document-save.svg │ │ │ ├── view-form.svg │ │ │ ├── zoom-in.svg │ │ │ ├── zoom-out.svg │ │ │ ├── document-save-as.svg │ │ │ ├── document-export.svg │ │ │ ├── view-form-action.svg │ │ │ ├── draw-text.svg │ │ │ ├── window-close.svg │ │ │ ├── document-save-all.svg │ │ │ ├── list-remove.svg │ │ │ ├── draw-ellipse-whole.svg │ │ │ ├── zoom-to-selected.svg │ │ │ ├── voronoi-path.svg │ │ │ ├── project-development-new-template.svg │ │ │ ├── drill-path.svg │ │ │ ├── document-edit.svg │ │ │ ├── engraving.svg │ │ │ ├── draw-ellipse-arc.svg │ │ │ ├── node.svg │ │ │ ├── crosshairs.svg │ │ │ ├── configure-shortcuts.svg │ │ │ ├── dialog-ok-apply.svg │ │ │ ├── profile-path.svg │ │ │ ├── draw-ellipse-segment.svg │ │ │ ├── thermal-path.svg │ │ │ ├── path-exclusion.svg │ │ │ ├── folder-sync.svg │ │ │ ├── pocket-path.svg │ │ │ ├── dialog-cancel.svg │ │ │ ├── edit-cut.svg │ │ │ └── hint.svg │ │ ├── 22 │ │ │ ├── list-add.svg │ │ │ ├── layer-visible-on.svg │ │ │ ├── application-exit.svg │ │ │ ├── edit-delete.svg │ │ │ ├── edit-copy.svg │ │ │ ├── edit-paste.svg │ │ │ ├── drill.svg │ │ │ ├── endmill.svg │ │ │ ├── zoom-original.svg │ │ │ ├── document-open.svg │ │ │ ├── document-print.svg │ │ │ ├── draw-line.svg │ │ │ ├── laser.svg │ │ │ ├── zoom-fit-best.svg │ │ │ ├── draw-text.svg │ │ │ ├── acrobat.svg │ │ │ ├── edit-select-all.svg │ │ │ ├── zoom-out.svg │ │ │ ├── document-export.svg │ │ │ ├── folder.svg │ │ │ ├── zoom-in.svg │ │ │ ├── document-save.svg │ │ │ ├── document-close.svg │ │ │ ├── draw-ellipse.svg │ │ │ ├── draw-rectangle.svg │ │ │ ├── project-development-new-template.svg │ │ │ ├── document-edit.svg │ │ │ ├── document-save-all.svg │ │ │ ├── view-form.svg │ │ │ ├── view-form-action.svg │ │ │ ├── engraving.svg │ │ │ ├── pocket-path.svg │ │ │ ├── window-close.svg │ │ │ ├── node.svg │ │ │ ├── raster-path.svg │ │ │ ├── document-save-as.svg │ │ │ ├── profile-path.svg │ │ │ ├── draw-ellipse-arc.svg │ │ │ ├── drill-path.svg │ │ │ ├── tools-wizard.svg │ │ │ ├── configure-shortcuts.svg │ │ │ ├── dialog-ok-apply.svg │ │ │ ├── thermal-path.svg │ │ │ ├── list-remove.svg │ │ │ ├── path-exclusion.svg │ │ │ ├── crosshatch-path.svg │ │ │ ├── voronoi-path.svg │ │ │ ├── folder-sync.svg │ │ │ ├── edit-cut.svg │ │ │ └── crosshairs.svg │ │ └── 24 │ │ │ ├── list-add.svg │ │ │ ├── layer-visible-on.svg │ │ │ ├── application-exit.svg │ │ │ ├── drill.svg │ │ │ ├── edit-delete.svg │ │ │ ├── edit-copy.svg │ │ │ ├── endmill.svg │ │ │ ├── edit-paste.svg │ │ │ ├── draw-text.svg │ │ │ ├── document-open.svg │ │ │ ├── draw-line.svg │ │ │ ├── document-print.svg │ │ │ ├── acrobat.svg │ │ │ ├── edit-select-all.svg │ │ │ ├── zoom-original.svg │ │ │ ├── document-export.svg │ │ │ ├── draw-rectangle.svg │ │ │ ├── document-save.svg │ │ │ ├── draw-ellipse.svg │ │ │ ├── document-close.svg │ │ │ ├── window-close.svg │ │ │ ├── zoom-out.svg │ │ │ ├── project-development-new-template.svg │ │ │ ├── zoom-fit-best.svg │ │ │ ├── zoom-to-selected.svg │ │ │ ├── view-form.svg │ │ │ ├── document-edit.svg │ │ │ ├── draw-ellipse-arc.svg │ │ │ ├── engraving.svg │ │ │ ├── document-save-all.svg │ │ │ ├── view-form-action.svg │ │ │ ├── pocket-path.svg │ │ │ ├── raster-path.svg │ │ │ ├── zoom-in.svg │ │ │ ├── profile-path.svg │ │ │ ├── drill-path.svg │ │ │ ├── tools-wizard.svg │ │ │ ├── configure-shortcuts.svg │ │ │ ├── crosshatch-path.svg │ │ │ ├── voronoi-path.svg │ │ │ ├── document-save-as.svg │ │ │ ├── dialog-ok-apply.svg │ │ │ ├── list-remove.svg │ │ │ ├── thermal-path.svg │ │ │ ├── folder-sync.svg │ │ │ ├── edit-cut.svg │ │ │ └── hint.svg │ │ └── toolpath │ │ └── pock_rast_conv.svg ├── config.h └── pathgroupnode.cpp ├── _config.yml ├── Window.PNG ├── icon.docx ├── msvc_make.bat ├── Capture.PNG ├── plugins ├── file │ ├── TopoR │ │ ├── XmlSerializer │ │ │ └── tablemodel.cpp │ │ ├── TopoR │ │ │ ├── TopoR_PCB_File.cpp │ │ │ ├── Settings.cpp │ │ │ ├── DialogSettings.cpp │ │ │ ├── DisplayControl.cpp │ │ │ ├── TextStyles.cpp │ │ │ ├── NetList.cpp │ │ │ ├── Groups.cpp │ │ │ └── Layers.cpp │ │ ├── description.json │ │ └── topor_settingstab.h │ ├── gerber │ │ ├── res.qrc │ │ └── description.json │ ├── dxf │ │ ├── description.json │ │ ├── entities │ │ │ ├── dxf_seqend.h │ │ │ ├── dxf_seqend.cpp │ │ │ ├── dxf_ray.cpp │ │ │ ├── dxf_sun.cpp │ │ │ ├── dxf_body.cpp │ │ │ └── dxf_mesh.cpp │ │ └── dxf_settingstab.h │ ├── excellon │ │ ├── description.json │ │ └── ex_settingstab.h │ ├── file_plugins_en.ts │ ├── file_plugins_ru.ts │ ├── abstract_file.cpp │ └── file │ │ └── file_settingstab.h ├── shape │ ├── shhandler.zip │ ├── text │ │ └── description.json │ ├── circle │ │ ├── description.json │ │ └── shcircle_ru.ts │ ├── polyline │ │ ├── description.json │ │ └── shpolyline_ru.ts │ ├── rectangle │ │ ├── description.json │ │ └── shrectangle_ru.ts │ ├── circlearc │ │ ├── description.json │ │ └── shcirclearc_ru.ts │ └── shheaders.h ├── gcode │ ├── thread │ │ ├── 4293855125.pdf │ │ ├── Calc3_files │ │ │ └── calc3.png │ │ ├── Calc4_files │ │ │ └── calc4.png │ │ ├── Calc5_files │ │ │ └── calc5.png │ │ └── ExtendedThreadDataChart.jpg │ ├── drill │ │ └── description.json │ ├── profile │ │ └── description.json │ ├── thermal │ │ └── description.json │ ├── voroni │ │ └── description.json │ ├── hatching │ │ └── description.json │ ├── pocketoffset │ │ └── description.json │ └── pocketraster │ │ └── description.json ├── description.json.in └── CMakeLists.txt ├── static_libs ├── common │ ├── qt.h │ ├── qt_pch.h │ ├── doublespinbox │ │ └── main.cpp │ ├── plugindata.h │ └── ctre.cppm ├── syntax_highlighters │ └── qsyntaxhighlighter-chaiscript │ │ └── readme.md ├── tooldatabase │ └── tool_pch.h ├── clipper │ └── CMakeLists.txt ├── filetree │ └── CMakeLists.txt ├── gi │ └── CMakeLists.txt └── CMakeLists.txt ├── qt_pch.h ├── icons └── colors.txt ├── third_party └── ctre-build │ ├── ctre-config.cmake.in │ ├── CTestTestfile.cmake │ └── ctre-config.cmake ├── .gitmodules ├── GTE_Win └── GlobalExportFunctions.def ├── endmill.svg ├── clang-format.bat ├── clang-format.sh ├── pvs_headers.sh ├── .github └── FUNDING.yml ├── ToolTest ├── main.cpp └── .gitignore ├── README.md └── CMakePresets.json__ /git: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /master': -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/module.h: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /_config.yml: -------------------------------------------------------------------------------- 1 | theme: jekyll-theme-architect 2 | -------------------------------------------------------------------------------- /Window.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XRay3D/GERBER_X3/HEAD/Window.PNG -------------------------------------------------------------------------------- /icon.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XRay3D/GERBER_X3/HEAD/icon.docx -------------------------------------------------------------------------------- /msvc_make.bat: -------------------------------------------------------------------------------- 1 | chcp 65001 2 | "C:\Qt\Tools\QtCreator\bin\jom.exe" %* 3 | -------------------------------------------------------------------------------- /Capture.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XRay3D/GERBER_X3/HEAD/Capture.PNG -------------------------------------------------------------------------------- /ggeasy/myapp.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XRay3D/GERBER_X3/HEAD/ggeasy/myapp.ico -------------------------------------------------------------------------------- /ggeasy/res/256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XRay3D/GERBER_X3/HEAD/ggeasy/res/256.png -------------------------------------------------------------------------------- /plugins/file/TopoR/XmlSerializer/tablemodel.cpp: -------------------------------------------------------------------------------- 1 | #include "tablemodel.h" 2 | 3 | 4 | -------------------------------------------------------------------------------- /static_libs/common/qt.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include 4 | #include 5 | -------------------------------------------------------------------------------- /qt_pch.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include 4 | #include 5 | #include 6 | -------------------------------------------------------------------------------- /ggeasy/res/tool/drill.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XRay3D/GERBER_X3/HEAD/ggeasy/res/tool/drill.png -------------------------------------------------------------------------------- /ggeasy/res/tool/endmill.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XRay3D/GERBER_X3/HEAD/ggeasy/res/tool/endmill.png -------------------------------------------------------------------------------- /plugins/file/TopoR/TopoR/TopoR_PCB_File.cpp: -------------------------------------------------------------------------------- 1 | #include "TopoR_PCB_File.h" 2 | namespace TopoR { 3 | } 4 | -------------------------------------------------------------------------------- /plugins/shape/shhandler.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XRay3D/GERBER_X3/HEAD/plugins/shape/shhandler.zip -------------------------------------------------------------------------------- /ggeasy/res/tool/engraving.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XRay3D/GERBER_X3/HEAD/ggeasy/res/tool/engraving.png -------------------------------------------------------------------------------- /static_libs/common/qt_pch.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include 4 | #include 5 | #include 6 | -------------------------------------------------------------------------------- /plugins/file/TopoR/TopoR/Settings.cpp: -------------------------------------------------------------------------------- 1 | #include "Settings.h" 2 | namespace TopoR { 3 | 4 | } // namespace TopoR 5 | -------------------------------------------------------------------------------- /plugins/gcode/thread/4293855125.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XRay3D/GERBER_X3/HEAD/plugins/gcode/thread/4293855125.pdf -------------------------------------------------------------------------------- /static_libs/syntax_highlighters/qsyntaxhighlighter-chaiscript/readme.md: -------------------------------------------------------------------------------- 1 | Basic QSyntaxHighlighter support for ChaiScript 2 | -------------------------------------------------------------------------------- /icons/colors.txt: -------------------------------------------------------------------------------- 1 | red da4453ff 2 | gray dark 4d4d4dff 3 | gray dark c0c0c0ff 4 | gray light 4d4d4d80 5 | blue 3daee9ff 6 | -------------------------------------------------------------------------------- /plugins/file/TopoR/TopoR/DialogSettings.cpp: -------------------------------------------------------------------------------- 1 | #include "DialogSettings.h" 2 | namespace TopoR { 3 | 4 | } // namespace TopoR 5 | -------------------------------------------------------------------------------- /plugins/file/TopoR/TopoR/DisplayControl.cpp: -------------------------------------------------------------------------------- 1 | #include "DisplayControl.h" 2 | namespace TopoR { 3 | 4 | } // namespace TopoR 5 | -------------------------------------------------------------------------------- /plugins/file/gerber/res.qrc: -------------------------------------------------------------------------------- 1 | 2 | 3 | gerber.json 4 | 5 | 6 | -------------------------------------------------------------------------------- /plugins/gcode/thread/Calc3_files/calc3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XRay3D/GERBER_X3/HEAD/plugins/gcode/thread/Calc3_files/calc3.png -------------------------------------------------------------------------------- /plugins/gcode/thread/Calc4_files/calc4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XRay3D/GERBER_X3/HEAD/plugins/gcode/thread/Calc4_files/calc4.png -------------------------------------------------------------------------------- /plugins/gcode/thread/Calc5_files/calc5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XRay3D/GERBER_X3/HEAD/plugins/gcode/thread/Calc5_files/calc5.png -------------------------------------------------------------------------------- /third_party/ctre-build/ctre-config.cmake.in: -------------------------------------------------------------------------------- 1 | @PACKAGE_INIT@ 2 | include("${CMAKE_CURRENT_LIST_DIR}/@PROJECT_NAME@-targets.cmake") 3 | -------------------------------------------------------------------------------- /ggeasy/config.h: -------------------------------------------------------------------------------- 1 | #define PROGNAME "GGEasy" 2 | #define PROGVERSION "0.9.0" 3 | #define PROGCAPTION "GGEasy v" 4 | #define SOFTDEVELOPER "X-Ray" 5 | -------------------------------------------------------------------------------- /plugins/gcode/thread/ExtendedThreadDataChart.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/XRay3D/GERBER_X3/HEAD/plugins/gcode/thread/ExtendedThreadDataChart.jpg -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "third_party/clipper2"] 2 | path = third_party/clipper2 3 | url = https://github.com/AngusJohnson/Clipper2.git 4 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/list-add.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/list-add.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/shape/text/description.json: -------------------------------------------------------------------------------- 1 | { 2 | "Name" : "Text", 3 | "Version" : "0.9.1.3", 4 | "VendorAuthor" : "X-Ray aka Bakiev Damir", 5 | "Info" : "Text" 6 | } 7 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/draw-rectangle.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/draw-rectangle.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/list-add.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/list-add.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/gcode/drill/description.json: -------------------------------------------------------------------------------- 1 | { 2 | "Name" : "Drill", 3 | "Version" : "0.9.1.0", 4 | "VendorAuthor" : "X-Ray aka Bakiev Damir", 5 | "Info" : "Drill" 6 | } 7 | -------------------------------------------------------------------------------- /plugins/file/dxf/description.json: -------------------------------------------------------------------------------- 1 | { 2 | "Name" : "DXF", 3 | "Version" : "0.9.1.2", 4 | "VendorAuthor" : "X-Ray aka Bakiev Damir", 5 | "Info" : "Opening DXF Files" 6 | } 7 | -------------------------------------------------------------------------------- /plugins/gcode/profile/description.json: -------------------------------------------------------------------------------- 1 | { 2 | "Name" : "Profile", 3 | "Version" : "0.9.1.0", 4 | "VendorAuthor" : "X-Ray aka Bakiev Damir", 5 | "Info" : "Profile" 6 | } 7 | -------------------------------------------------------------------------------- /plugins/gcode/thermal/description.json: -------------------------------------------------------------------------------- 1 | { 2 | "Name" : "Thermal", 3 | "Version" : "0.9.1.0", 4 | "VendorAuthor" : "X-Ray aka Bakiev Damir", 5 | "Info" : "Thermal" 6 | } 7 | -------------------------------------------------------------------------------- /plugins/gcode/voroni/description.json: -------------------------------------------------------------------------------- 1 | { 2 | "Name" : "Voronoi", 3 | "Version" : "0.9.1.0", 4 | "VendorAuthor" : "X-Ray aka Bakiev Damir", 5 | "Info" : "Voronoi" 6 | } 7 | -------------------------------------------------------------------------------- /plugins/shape/circle/description.json: -------------------------------------------------------------------------------- 1 | { 2 | "Name" : "Circle", 3 | "Version" : "0.9.1.3", 4 | "VendorAuthor" : "X-Ray aka Bakiev Damir", 5 | "Info" : "Circle" 6 | } 7 | -------------------------------------------------------------------------------- /plugins/shape/polyline/description.json: -------------------------------------------------------------------------------- 1 | { 2 | "Name" : "Poly Line", 3 | "Version" : "0.9.1.3", 4 | "VendorAuthor" : "X-Ray aka Bakiev Damir", 5 | "Info" : "Poly Line" 6 | } 7 | -------------------------------------------------------------------------------- /plugins/shape/rectangle/description.json: -------------------------------------------------------------------------------- 1 | { 2 | "Name" : "Rectangle", 3 | "Version" : "0.9.1.3", 4 | "VendorAuthor" : "X-Ray aka Bakiev Damir", 5 | "Info" : "Rectangle" 6 | } 7 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/acrobat.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/application-exit.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/dialog-layers.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/application-exit.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/dialog-layers.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/file/TopoR/description.json: -------------------------------------------------------------------------------- 1 | { 2 | "Name" : "TopoR", 3 | "Version" : "0.9.1.1", 4 | "VendorAuthor" : "X-Ray aka Bakiev Damir", 5 | "Info" : "Opening TopoR files" 6 | } 7 | -------------------------------------------------------------------------------- /plugins/gcode/hatching/description.json: -------------------------------------------------------------------------------- 1 | { 2 | "Name" : "Crosshatch", 3 | "Version" : "0.9.1.0", 4 | "VendorAuthor" : "X-Ray aka Bakiev Damir", 5 | "Info" : "Crosshatch" 6 | } 7 | -------------------------------------------------------------------------------- /plugins/shape/circlearc/description.json: -------------------------------------------------------------------------------- 1 | { 2 | "Name" : "Circle Arc", 3 | "Version" : "0.9.1.3", 4 | "VendorAuthor" : "X-Ray aka Bakiev Damir", 5 | "Info" : "Circle Arc" 6 | } 7 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/layer-visible-on.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/layer-visible-on.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/layer-visible-on.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/acrobat.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/layer-visible-on.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/layer-visible-on.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/layer-visible-on.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/edit-delete.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/edit-delete.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/gcode/pocketoffset/description.json: -------------------------------------------------------------------------------- 1 | { 2 | "Name" : "Pocket Offset", 3 | "Version" : "0.9.1.0", 4 | "VendorAuthor" : "X-Ray aka Bakiev Damir", 5 | "Info" : "Pocket Offset" 6 | } 7 | -------------------------------------------------------------------------------- /plugins/gcode/pocketraster/description.json: -------------------------------------------------------------------------------- 1 | { 2 | "Name" : "Pocket Raster", 3 | "Version" : "0.9.1.0", 4 | "VendorAuthor" : "X-Ray aka Bakiev Damir", 5 | "Info" : "Pocket Raster" 6 | } 7 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/application-exit.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/application-exit.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/description.json.in: -------------------------------------------------------------------------------- 1 | { 2 | "Name" : "@PLUG_NAME@", 3 | "Version" : "@CMAKE_PROJECT_VERSION@.@PLUG_LOCAL_VERSION@", 4 | "VendorAuthor" : "@PLUG_AUTHOR@", 5 | "Info" : "@PLUG_INFO@" 6 | } 7 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/edit-copy.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/edit-delete.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/file/excellon/description.json: -------------------------------------------------------------------------------- 1 | { 2 | "Name" : "Excellon", 3 | "Version" : "0.9.1.3", 4 | "VendorAuthor" : "X-Ray aka Bakiev Damir", 5 | "Info" : "Opening drill files like Excellon" 6 | } 7 | -------------------------------------------------------------------------------- /GTE_Win/GlobalExportFunctions.def: -------------------------------------------------------------------------------- 1 | LIBRARY "GerberThumbnailExtension" 2 | EXPORTS 3 | DllGetClassObject PRIVATE 4 | DllCanUnloadNow PRIVATE 5 | DllRegisterServer PRIVATE 6 | DllUnregisterServer PRIVATE -------------------------------------------------------------------------------- /endmill.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/edit-copy.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/edit-delete.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/list-add.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/project-open.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/list-add.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/project-open.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/drill.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/edit-copy.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/drill.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/edit-copy.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/edit-paste.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/edit-paste.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/application-exit.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/edit-paste.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/edit-paste.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/application-exit.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/drill.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/drill.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/edit-delete.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/drill.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/drill.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/edit-delete.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/draw-line.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/draw-line.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/endmill.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/edit-copy.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/endmill.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/endmill.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/edit-copy.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/endmill.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/endmill.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/zoom-original.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/endmill.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/zoom-original.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/file/gerber/description.json: -------------------------------------------------------------------------------- 1 | { 2 | "Name" : "Gerber X3", 3 | "Version" : "0.9.1.3", 4 | "VendorAuthor" : "X-Ray aka Bakiev Damir", 5 | "Info" : "Opening GerberX3 files, with support for all kinds of aperture macros and components." 6 | } 7 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/document-print.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/document-open.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/edit-paste.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/document-print.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/document-open.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/edit-paste.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/draw-ellipse.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/draw-ellipse.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/edit-select-all-layers.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/zoom-original.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/zoom-original.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/document-print.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/edit-select-all-layers.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/document-print.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/laser.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/laser.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/edit-select-all.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/draw-line.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/draw-text.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/edit-select-all.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/draw-line.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/draw-text.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/laser.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/document-open.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/laser.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/document-open.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/folder.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/tools-wizard.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/draw-line.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/draw-line.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /static_libs/tooldatabase/tool_pch.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "tool.h" 4 | #include "tool_database.h" 5 | #include "tool_editdialog.h" 6 | #include "tool_editform.h" 7 | #include "tool_item.h" 8 | #include "tool_model.h" 9 | #include "tool_selectorform.h" 10 | #include "tool_treeview.h" 11 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/folder.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/tools-wizard.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/document-close.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/document-open.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/zoom-fit-best.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/document-print.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/document-close.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/document-open.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/zoom-fit-best.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/document-print.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/zoom-fit-best.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/draw-text.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/draw-text.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/acrobat.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/edit-select-all.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/acrobat.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/edit-select-all.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/zoom-fit-best.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/acrobat.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/edit-select-all.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/acrobat.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/edit-select-all.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/document-save.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/view-form.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/zoom-out.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/document-save.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/zoom-out.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/view-form.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/zoom-out.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/document-export.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/document-export.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/zoom-in.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/zoom-in.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/zoom-out.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /clang-format.bat: -------------------------------------------------------------------------------- 1 | set CLANG_FORMAT="C:\Qt\Tools\QtCreator\bin\clang\bin\clang-format.exe" 2 | set CODE_STYLE=%CD%\code_style.txt 3 | 4 | for %%P in (GGEasy GTE_Win plugins static_libs) do ( 5 | cd %%P 6 | for /R %%S in (*.cpp *.c *.hpp *.h) do ( 7 | %CLANG_FORMAT% -i --style="file:%CODE_STYLE%" %%S 8 | ) 9 | cd .. 10 | ) 11 | REM pause 12 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/folder.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/folder.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/document-save-as.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/view-form-action.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/zoom-original.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/document-save-as.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/zoom-original.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/document-export.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/zoom-in.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/document-export.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/view-form-action.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/zoom-in.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/document-export.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/document-export.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/draw-text.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/draw-text.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/window-close.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/window-close.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /third_party/ctre-build/CTestTestfile.cmake: -------------------------------------------------------------------------------- 1 | # CMake generated Testfile for 2 | # Source directory: /home/x-ray/projects/qt/GERBER_X3/third_party/ctre-src 3 | # Build directory: /home/x-ray/projects/qt/GERBER_X3/third_party/ctre-build 4 | # 5 | # This file includes the relevant testing commands required for 6 | # testing this directory and lists subdirectories to be tested as well. 7 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/document-save.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/document-save.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/document-save-all.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/draw-ellipse.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/draw-rectangle.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/draw-rectangle.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /clang-format.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | pathSelect=$(pwd) 3 | 4 | codeStyle=$pathSelect/code_style.txt 5 | 6 | for folder in GGEasy GTE_Win plugins static_libs; do 7 | for ext in h hpp c cpp ino; do 8 | for pathFile in $(find $pathSelect/$folder -type f -name "*.$ext"); do 9 | clang-format -i --verbose --style="file:$codeStyle" $pathFile 10 | done 11 | done 12 | done 13 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/document-close.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/document-save-all.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/document-close.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/draw-ellipse.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/list-remove.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/draw-rectangle.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/list-remove.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/draw-rectangle.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/shape/circlearc/shcirclearc_ru.ts: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | QObject 6 | 7 | 8 | Arc 9 | Дуга 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /plugins/shape/circle/shcircle_ru.ts: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | QObject 6 | 7 | 8 | Circle 9 | Окружность 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /plugins/shape/polyline/shpolyline_ru.ts: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | QObject 6 | 7 | 8 | Line 9 | Ломаная 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/draw-ellipse-whole.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/zoom-to-selected.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/document-save.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/draw-ellipse-whole.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/zoom-to-selected.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/document-save.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/draw-ellipse.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/draw-ellipse.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/voronoi-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/document-close.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/document-close.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/file/TopoR/TopoR/TextStyles.cpp: -------------------------------------------------------------------------------- 1 | #include "TextStyles.h" 2 | 3 | #if TEXTSTYLES 4 | 5 | namespace TopoR { 6 | 7 | const TextStyles::TextStyle* TextStyles::getTextStyle(const QString& name) const { 8 | for(auto&& textStyle: textStyles) 9 | if(name == textStyle.name) 10 | return &textStyle; 11 | return {}; 12 | } 13 | 14 | 15 | } // namespace TopoR 16 | 17 | #endif 18 | -------------------------------------------------------------------------------- /plugins/file/dxf/entities/dxf_seqend.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "dxf_entity.h" 4 | 5 | namespace Dxf { 6 | 7 | class SeqEnd final : public Entity { 8 | public: 9 | SeqEnd(SectionParser* sp); 10 | // Entity interface 11 | public: 12 | void parse(CodeData& code) override; 13 | Type type() const override { return SEQEND; }; 14 | DxfGo toGo() const override; 15 | }; 16 | 17 | } // namespace Dxf 18 | -------------------------------------------------------------------------------- /plugins/shape/rectangle/shrectangle_ru.ts: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | QObject 6 | 7 | 8 | Rectangle 9 | Прямоугольник 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/voronoi-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /static_libs/common/doublespinbox/main.cpp: -------------------------------------------------------------------------------- 1 | #include "doublespinbox.h" 2 | 3 | #include 4 | 5 | int main(int argc, char* argv[]) { 6 | QApplication a(argc, argv); 7 | QFont f; 8 | f.setPixelSize(100); 9 | a.setFont(f); 10 | DoubleSpinBox w; 11 | w.resize(500, 100); 12 | w.setRange(-1000'000, +1000'000); 13 | w.setSuffix(" mm"); 14 | w.show(); 15 | return a.exec(); 16 | } 17 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/window-close.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/window-close.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /static_libs/common/plugindata.h: -------------------------------------------------------------------------------- 1 | #include "app.h" 2 | #include 3 | 4 | #pragma once 5 | 6 | class PluginData { 7 | 8 | public: 9 | PluginData() { App app; } 10 | const QJsonObject& info() const { return info_; } 11 | void setInfo(const QJsonObject& info) { info_ = info; } 12 | 13 | QString name() const { return info_["Name"].toString(); } 14 | 15 | protected: 16 | QJsonObject info_; 17 | }; 18 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/zoom-fit-best.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/zoom-out.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/zoom-out.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/project-development-new-template.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/project-development-new-template.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/project-development-new-template.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/project-development-new-template.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/zoom-fit-best.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/document-edit.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/zoom-to-selected.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/document-edit.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/zoom-to-selected.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/project-development-new-template.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/view-form.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/view-form.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/project-development-new-template.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/document-save-all.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/document-save-all.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/view-form.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/view-form.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/drill-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/drill-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/document-edit.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/draw-ellipse-arc.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/engraving.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/document-edit.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/draw-ellipse-arc.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/document-edit.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/document-edit.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/engraving.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/document-save-all.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/document-save-all.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/view-form-action.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/view-form-action.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/view-form-action.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/view-form-action.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/engraving.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/engraving.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/pocket-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/pocket-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/pocket-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/engraving.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/window-close.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/engraving.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/window-close.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/pocket-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/file/dxf/entities/dxf_seqend.cpp: -------------------------------------------------------------------------------- 1 | #include "dxf_seqend.h" 2 | 3 | namespace Dxf { 4 | SeqEnd::SeqEnd(SectionParser* sp) 5 | : Entity{sp} { 6 | } 7 | 8 | void SeqEnd::parse(CodeData& code) { 9 | do { 10 | data.push_back(code); 11 | switch(code.code()) { 12 | default: 13 | Entity::parse(code); 14 | } 15 | code = sp->nextCode(); 16 | } while(code.code() != 0); 17 | } 18 | 19 | DxfGo SeqEnd::toGo() const { 20 | return {}; 21 | } 22 | 23 | } // namespace Dxf 24 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/raster-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/node.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/raster-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/zoom-in.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/node.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/raster-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/raster-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/zoom-in.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/document-save-as.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/profile-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/document-save-as.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/profile-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /third_party/ctre-build/ctre-config.cmake: -------------------------------------------------------------------------------- 1 | 2 | ####### Expanded from @PACKAGE_INIT@ by configure_package_config_file() ####### 3 | ####### Any changes to this file will be overwritten by the next CMake run #### 4 | ####### The input file was ctre-config.cmake.in ######## 5 | 6 | get_filename_component(PACKAGE_PREFIX_DIR "${CMAKE_CURRENT_LIST_DIR}/../../../" ABSOLUTE) 7 | 8 | #################################################################################### 9 | include("${CMAKE_CURRENT_LIST_DIR}/ctre-targets.cmake") 10 | 11 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/draw-ellipse-arc.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/node.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/draw-ellipse-arc.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/draw-ellipse-arc.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/node.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/draw-ellipse-arc.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/profile-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/profile-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/drill-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/tools-wizard.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/drill-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/tools-wizard.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/drill-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/tools-wizard.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/drill-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/tools-wizard.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/pathgroupnode.cpp: -------------------------------------------------------------------------------- 1 | 2 | #include "pathgroupnode.h" 3 | 4 | PathGroupNode::PathGroupNode() 5 | : FileTree::Node{FileTree::PathGroup} { 6 | } 7 | 8 | bool PathGroupNode::setData(const QModelIndex& /*index*/, const QVariant& /*value*/, int /*role*/) { 9 | return {}; 10 | } 11 | 12 | Qt::ItemFlags PathGroupNode::flags(const QModelIndex& /*index*/) const { 13 | return {}; 14 | } 15 | 16 | QVariant PathGroupNode::data(const QModelIndex& /*index*/, int /*role*/) const { 17 | return {}; 18 | } 19 | 20 | void PathGroupNode::menu(QMenu& /*menu*/, FileTree::View* /*tv*/) { 21 | } 22 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/crosshairs.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/crosshairs.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/configure-shortcuts.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/configure-shortcuts.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /pvs_headers.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | pathSelect=$(pwd) 3 | 4 | clear 5 | 6 | if [ "$#" -ne 1 ]; then 7 | for file in $(find $pathSelect -type f -name "*.cpp"); do 8 | echo $file 9 | sed -i '/\/\/.*PVS-Studio.*/d' "$file" & 10 | done 11 | else 12 | for file in $(find $pathSelect -type f -name "*.cpp"); do 13 | echo $file 14 | sed -i -e "1i\// This is a personal academic project. Dear PVS-Studio, please check it." \ 15 | -e "1i\// PVS-Studio Static Code Analyzer for C, C++, C#, and Java: https://pvs-studio.com" "$file" & 16 | done 17 | fi 18 | 19 | 20 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/configure-shortcuts.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/configure-shortcuts.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/configure-shortcuts.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/dialog-ok-apply.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 13 | 14 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/configure-shortcuts.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/dialog-ok-apply.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 13 | 14 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/profile-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/profile-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/file/TopoR/TopoR/NetList.cpp: -------------------------------------------------------------------------------- 1 | #include "NetList.h" 2 | #include "Commons.h" 3 | 4 | #if NetList 5 | 6 | namespace TopoR { 7 | 8 | void NetList::Rename_compName(const QString& oldname, const QString& newname) { 9 | auto filter = [&oldname](auto&& b) { 10 | return std::visit([&oldname](auto& ref) { return ref.compName == oldname; }, b); 11 | }; 12 | for (Net& a: Nets) 13 | for (auto&& b: a.refs | std::ranges::views::filter(filter)) 14 | std::visit([&](auto& ref) { ref.compName = newname; }, b); 15 | } 16 | 17 | 18 | } // namespace TopoR 19 | 20 | #endif 21 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/voronoi-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/crosshatch-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/voronoi-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/crosshatch-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/dialog-ok-apply.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 14 | 15 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/dialog-ok-apply.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 14 | 15 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/draw-ellipse-segment.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/document-save-as.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/draw-ellipse-segment.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/document-save-as.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/dialog-ok-apply.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 13 | 14 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/dialog-ok-apply.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 13 | 14 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/thermal-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/thermal-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/list-remove.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/list-remove.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/list-remove.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/list-remove.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/file/dxf/dxf_settingstab.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "dxf_types.h" 4 | 5 | #include "abstract_fileplugin.h" 6 | #include 7 | 8 | class QCheckBox; 9 | class QFontComboBox; 10 | 11 | namespace Dxf { 12 | 13 | class SettingsTab : public AbstractFileSettings, Settings { 14 | QCheckBox* chbxBoldFont; 15 | QCheckBox* chbxItalicFont; 16 | QCheckBox* chbxOverrideFonts; 17 | QFontComboBox* fcbxDxfDefaultFont; 18 | 19 | public: 20 | SettingsTab(QWidget* parent = nullptr); 21 | virtual ~SettingsTab() override; 22 | virtual void readSettings(MySettings& settings) override; 23 | virtual void writeSettings(MySettings& settings) override; 24 | }; 25 | 26 | } // namespace Dxf 27 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/thermal-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/thermal-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /static_libs/clipper/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | #[[ 2 | Author : Damir Bakiev 3 | Version : na 4 | Date : ХХ ХХХ 2025 5 | Website : na 6 | Copyright : Damir Bakiev 2016-2025 7 | License : 8 | Use, modification & distribution is subject to Boost Software License Ver 1. 9 | http://www.boost.org/LICENSE_1_0.txt 10 | ]] 11 | cmake_minimum_required(VERSION 3.30.0 FATAL_ERROR) 12 | 13 | project(clipper LANGUAGES CXX) 14 | 15 | file(GLOB HEADERS *.h) 16 | file(GLOB SOURCES *.cpp) 17 | 18 | add_library(clipper STATIC ${HEADERS} ${SOURCES}) 19 | # add_library(clipper) target_sources(clipper PUBLIC FILE_SET CXX_MODULES FILES 20 | # ${SOURCES}) 21 | 22 | target_link_libraries(clipper PUBLIC Clipper2Z Qt6::Widgets) 23 | -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: [ 13 | 'https://boosty.to/x-ray_3d' 14 | ] 15 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/path-exclusion.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/path-exclusion.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ToolTest/main.cpp: -------------------------------------------------------------------------------- 1 | #include "app.h" 2 | #include "tool_database.h" 3 | 4 | #include 5 | #include 6 | #include 7 | 8 | int main(int argc, char* argv[]) { 9 | QApplication a(argc, argv); 10 | 11 | QApplication::setApplicationName("GGEasy"); 12 | // QApplication::setOrganizationName(VER_COMPANYNAME_STR); 13 | // QApplication::setApplicationVersion(VER_PRODUCTVERSION_STR); 14 | 15 | [[maybe_unused]] App appSingleton; 16 | App::settingsPath() = QStandardPaths::standardLocations(QStandardPaths::AppDataLocation).front(); 17 | 18 | ToolDatabase w; 19 | w.show(); 20 | 21 | emit w.findChild("pbNew")->clicked(); 22 | 23 | return a.exec(); 24 | } 25 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/crosshatch-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/path-exclusion.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/path-exclusion.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/thermal-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/thermal-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/file/TopoR/TopoR/Groups.cpp: -------------------------------------------------------------------------------- 1 | #include "Groups.h" 2 | #include "Commons.h" 3 | 4 | #if GROUPS 5 | 6 | namespace TopoR { 7 | QString Groups::LayerGroup::ToString() { 8 | return name; 9 | } 10 | void Groups::Rename_compName(const QString& /*oldname*/, const QString& /*newname*/) { 11 | /* for(auto a: (_CompGroups.empty() ? nullptr : CompGroups.Where([&](std::any aa) { 12 | return aa::_CompRefs != nullptr; 13 | }))) 14 | for(auto b: a::_CompRefs::OfType().Where([&](std::any bb) { 15 | return bb.value()._ReferenceName == oldname; 16 | })) 17 | b->_ReferenceName = newname;*/ 18 | } 19 | 20 | } // namespace TopoR 21 | 22 | #endif 23 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/crosshatch-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/voronoi-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/voronoi-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/folder-sync.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/folder-sync.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /static_libs/filetree/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | #[[ 2 | Author : Damir Bakiev 3 | Version : na 4 | Date : ХХ ХХХ 2025 5 | Website : na 6 | Copyright : Damir Bakiev 2016-2025 7 | License : 8 | Use, modification & distribution is subject to Boost Software License Ver 1. 9 | http://www.boost.org/LICENSE_1_0.txt 10 | ]] 11 | cmake_minimum_required(VERSION 3.30.0 FATAL_ERROR) 12 | 13 | project(filetree LANGUAGES CXX) 14 | 15 | file(GLOB HEADERS *.h) 16 | file(GLOB SOURCES *.cpp) 17 | 18 | add_library(${PROJECT_NAME} STATIC ${HEADERS} ${SOURCES}) 19 | 20 | # target_precompile_headers(${PROJECT_NAME} PUBLIC ${HEADERS}) 21 | 22 | target_link_libraries(${PROJECT_NAME} PRIVATE gi Qt6::Widgets) 23 | 24 | # target_compile_definitions(filetree PRIVATE FILETREE_LIBRARY) 25 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/folder-sync.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/folder-sync.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/folder-sync.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/folder-sync.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/file/TopoR/TopoR/Layers.cpp: -------------------------------------------------------------------------------- 1 | #include "Layers.h" 2 | 3 | #if LAYERS 4 | /***************************************************************** 5 | * Здесь находятся функции для работы с элементами класса Layer. * 6 | * Они не являются частью формата TopoR PCB. * 7 | * ***************************************************************/ 8 | namespace TopoR { 9 | 10 | bool Layers::LayerStackUpContains(LayerRef lref) const { 11 | return std::ranges::find(StackUpLayers, lref.name, &Layer::name) != StackUpLayers.cend(); 12 | } 13 | 14 | bool Layers::LayerUnStackContain(LayerRef lref) const { 15 | return std::ranges::find(UnStackLayers, lref.name, &Layer::name) != UnStackLayers.cend(); 16 | } 17 | 18 | 19 | } // namespace TopoR 20 | 21 | #endif 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # GGEasy 2 | V0.8.0 3 | 4 | Программа для подготовки Г-кода из файлов Gerber (RS-274X Revision 2020.09) для фрезеровки плат на ЧПУ. 5 | Частичная поддержка файлов DXF. 6 | 7 | Форумы по программе: 8 | * [cnc-club.ru](https://www.cnc-club.ru/forum/viewtopic.php?f=155&t=22277) 9 | * [cnc3018.ru](https://cnc3018.ru/threads/ggeasy-grber2gcode-frezerovka-pechatnyx-plat-na-chpu-zasvetka-lazerom-izuchaem-delimsja-opytom-i-dostizhenijami.2231/) 10 | 11 | Program for preparing G-code from Gerber (RS-274X Revision 2020.09) files for CNC milling. 12 | Partial support for DXF files. 13 | 14 | ![Window](Window.PNG) 15 | 16 | * Windows: [x86](https://github.com/XRay3D/GERBER_X2/releases) 17 | * Windows: [amd64](https://github.com/XRay3D/GERBER_X2/releases) 18 | 19 | Поддержать автора https://boosty.to/x-ray_3d 20 | -------------------------------------------------------------------------------- /static_libs/gi/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | #[[ 2 | Author : Damir Bakiev 3 | Version : na 4 | Date : ХХ ХХХ 2025 5 | Website : na 6 | Copyright : Damir Bakiev 2016-2025 7 | License : 8 | Use, modification & distribution is subject to Boost Software License Ver 1. 9 | http://www.boost.org/LICENSE_1_0.txt 10 | ]] 11 | cmake_minimum_required(VERSION 3.30.0 FATAL_ERROR) 12 | 13 | project(gi LANGUAGES CXX) 14 | 15 | file(GLOB HEADERS *.h) 16 | file(GLOB SOURCES *.cpp) 17 | 18 | add_library(${PROJECT_NAME} STATIC ${HEADERS} ${SOURCES}) 19 | 20 | # target_precompile_headers(${PROJECT_NAME} PUBLIC ${HEADERS}) 21 | 22 | target_link_libraries(${PROJECT_NAME} PRIVATE gcode clipper 23 | Qt6::Widgets) 24 | 25 | # target_compile_definitions(gi PRIVATE GI_LIBRARY) 26 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/pocket-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/pocket-path.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/file/file_plugins_en.ts: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | FilePlugin 6 | 7 | 8 | &Close All Files 9 | 10 | 11 | 12 | 13 | Really? 14 | 15 | 16 | 17 | 18 | QObject 19 | 20 | 21 | Preparing: 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /plugins/file/file_plugins_ru.ts: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | FilePlugin 6 | 7 | 8 | &Close All Files 9 | 10 | 11 | 12 | 13 | Really? 14 | 15 | 16 | 17 | 18 | QObject 19 | 20 | 21 | Preparing: 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/dialog-cancel.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 13 | 14 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/dialog-cancel.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 13 | 14 | -------------------------------------------------------------------------------- /static_libs/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | #[[ 2 | Author : Damir Bakiev 3 | Version : na 4 | Date : ХХ ХХХ 2025 5 | Website : na 6 | Copyright : Damir Bakiev 2016-2025 7 | License : 8 | Use, modification & distribution is subject to Boost Software License Ver 1. 9 | http://www.boost.org/LICENSE_1_0.txt 10 | ]] 11 | cmake_minimum_required(VERSION 3.30.0 FATAL_ERROR) 12 | 13 | # static lib 14 | add_subdirectory(clipper) 15 | add_subdirectory(filetree) 16 | add_subdirectory(gi) 17 | add_subdirectory(graphicsview) 18 | add_subdirectory(common) 19 | add_subdirectory(tooldatabase) 20 | -------------------------------------------------------------------------------- /CMakePresets.json__: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "configurePresets": [ 4 | { 5 | "name": "HabrPresetName", 6 | "displayName": "GoodPreset", 7 | "generator": "Ninja", 8 | "binaryDir": "${sourceDir}/../build", 9 | "cacheVariables": { 10 | "CMAKE_BUILD_TYPE": ["Debug", "Release"] 11 | }, 12 | "environment": { 13 | "PATH": "/home/user/Qt/5.15.2/gcc_64/lib/cmake/Qt5", 14 | "PATH_": "/home/user/Qt/6.6.0/gcc_64/lib/cmake/Qt6" 15 | } 16 | } 17 | ], 18 | "buildPresets": [ 19 | { 20 | "name": "debug", 21 | "displayName": "Ninja Debug", 22 | "configurePreset": "HabrPresetName", 23 | "configuration": "Debug" 24 | } , 25 | { 26 | "name": "release", 27 | "displayName": "Ninja Release", 28 | "configurePreset": "HabrPresetName", 29 | "configuration": "Release" 30 | } 31 | ] 32 | } 33 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/edit-cut.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/edit-cut.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/file/abstract_file.cpp: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * Author : Damir Bakiev * 3 | * Version : na * 4 | * Date : XXXXX XX, 2025 * 5 | * Website : na * 6 | * Copyright : Damir Bakiev 2016-2025 * 7 | * License : * 8 | * Use, modification & distribution is subject to Boost Software License Ver 1. * 9 | * http://www.boost.org/LICENSE_1_0.txt * 10 | ********************************************************************************/ 11 | #include "abstract_file.h" 12 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/22/crosshairs.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/22/crosshairs.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/shape/shheaders.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * Author : Damir Bakiev * 3 | * Version : na * 4 | * Date : XXXXX XX, 2025 * 5 | * Website : na * 6 | * Copyright : Damir Bakiev 2016-2025 * 7 | * License : * 8 | * Use, modification & distribution is subject to Boost Software License Ver 1. * 9 | * http://www.boost.org/LICENSE_1_0.txt * 10 | ********************************************************************************/ 11 | #pragma once 12 | 13 | #include "shape.h" 14 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/edit-cut.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/edit-cut.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/edit-cut.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/edit-cut.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /static_libs/common/ctre.cppm: -------------------------------------------------------------------------------- 1 | module; 2 | 3 | #ifdef _MSVC_LANG 4 | #pragma warning(disable : 5202) 5 | #endif 6 | 7 | // import std; 8 | #include 9 | #include 10 | #include 11 | #include 12 | #include 13 | // #include 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | #include 22 | #include 23 | #include 24 | 25 | export module ctre; 26 | 27 | #define CTRE_IN_A_MODULE 28 | #define CTLL_IN_A_MODULE 29 | #define UNICODE_DB_IN_A_MODULE 30 | 31 | using std::int16_t; 32 | using std::int32_t; 33 | using std::int64_t; 34 | using std::int8_t; 35 | using std::size_t; 36 | using std::uint16_t; 37 | using std::uint32_t; 38 | using std::uint64_t; 39 | using std::uint8_t; 40 | 41 | // #include "unicode-db.hpp" 42 | #include "ctre.hpp" 43 | -------------------------------------------------------------------------------- /plugins/file/TopoR/topor_settingstab.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "topor_plugin.h" 4 | #include "topor_types.h" 5 | #include 6 | 7 | namespace TopoR { 8 | 9 | class ExSettingsTab : public AbstractFileSettings, Settings { 10 | friend class ExcellonDialog; 11 | 12 | DoubleSpinBox* dsbxX; 13 | DoubleSpinBox* dsbxY; 14 | QRadioButton* rbInches; 15 | QRadioButton* rbLeading; 16 | QRadioButton* rbMillimeters; 17 | QRadioButton* rbTrailing; 18 | QSpinBox* sbxDecimal; 19 | QSpinBox* sbxInteger; 20 | 21 | QLineEdit* leParseDecimalAndInteger; 22 | QLineEdit* leParseUnit; 23 | QLineEdit* leParseZero; 24 | 25 | public: 26 | ExSettingsTab(QWidget* parent = nullptr); 27 | 28 | virtual ~ExSettingsTab() override; 29 | 30 | virtual void readSettings(MySettings& settings) override; 31 | 32 | virtual void writeSettings(MySettings& settings) override; 33 | }; 34 | 35 | } // namespace TopoR 36 | -------------------------------------------------------------------------------- /plugins/file/excellon/ex_settingstab.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "abstract_fileplugin.h" 4 | #include "ex_types.h" 5 | #include 6 | 7 | namespace Excellon { 8 | 9 | class ExSettingsTab : public AbstractFileSettings, Settings { 10 | friend class ExcellonDialog; 11 | 12 | DoubleSpinBox* dsbxX; 13 | DoubleSpinBox* dsbxY; 14 | QRadioButton* rbInches; 15 | QRadioButton* rbLeading; 16 | QRadioButton* rbMillimeters; 17 | QRadioButton* rbTrailing; 18 | QSpinBox* sbxDecimal; 19 | QSpinBox* sbxInteger; 20 | 21 | QLineEdit* leParseDecimalAndInteger; 22 | QLineEdit* leParseUnit; 23 | QLineEdit* leParseZero; 24 | 25 | public: 26 | ExSettingsTab(QWidget* parent = nullptr); 27 | 28 | virtual ~ExSettingsTab() override; 29 | 30 | virtual void readSettings(MySettings& settings) override; 31 | 32 | virtual void writeSettings(MySettings& settings) override; 33 | }; 34 | 35 | } // namespace Excellon 36 | -------------------------------------------------------------------------------- /plugins/file/file/file_settingstab.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "abstract_fileplugin.h" 4 | #include "file_types.h" 5 | #include 6 | 7 | namespace TmpFile { 8 | 9 | class ExSettingsTab : public AbstractFileSettings, Settings { 10 | friend class ExcellonDialog; 11 | 12 | DoubleSpinBox* dsbxX; 13 | DoubleSpinBox* dsbxY; 14 | QRadioButton* rbInches; 15 | QRadioButton* rbLeading; 16 | QRadioButton* rbMillimeters; 17 | QRadioButton* rbTrailing; 18 | QSpinBox* sbxDecimal; 19 | QSpinBox* sbxInteger; 20 | 21 | QLineEdit* leParseDecimalAndInteger; 22 | QLineEdit* leParseUnit; 23 | QLineEdit* leParseZero; 24 | 25 | public: 26 | ExSettingsTab(QWidget* parent = nullptr); 27 | 28 | virtual ~ExSettingsTab() override; 29 | 30 | virtual void readSettings(MySettings& settings) override; 31 | 32 | virtual void writeSettings(MySettings& settings) override; 33 | }; 34 | 35 | } // namespace TmpFile 36 | -------------------------------------------------------------------------------- /plugins/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | #[[ 2 | Author : Damir Bakiev 3 | Version : na 4 | Date : ХХ ХХХ 2025 5 | Website : na 6 | Copyright : Damir Bakiev 2016-2025 7 | License : 8 | Use, modification & distribution is subject to Boost Software License Ver 1. 9 | http://www.boost.org/LICENSE_1_0.txt 10 | ]] 11 | cmake_minimum_required(VERSION 3.30.0 FATAL_ERROR) 12 | 13 | # plugins shape 14 | set(Enable_Circle ON) 15 | set(Enable_Circlearc ON) 16 | set(Enable_Polyline ON) 17 | set(Enable_Rectangle ON) 18 | set(Enable_Text ON) 19 | add_subdirectory(shape) 20 | 21 | # plugins file 22 | set(Enable_Gerber ON) 23 | set(Enable_Dxf ON) 24 | set(Enable_Excellon ON) 25 | # set(Enable_TopoR ON) 26 | add_subdirectory(file) 27 | 28 | # plugins gcode 29 | set(Enable_Pocketoffset ON) 30 | set(Enable_Profile ON) 31 | set(Enable_Drill ON) 32 | set(Enable_Hatching ON) 33 | set(Enable_Pocketraster ON) 34 | set(Enable_Thermal ON) 35 | set(Enable_Voroni ON) 36 | add_subdirectory(gcode) 37 | -------------------------------------------------------------------------------- /ToolTest/.gitignore: -------------------------------------------------------------------------------- 1 | # This file is used to ignore files which are generated 2 | # ---------------------------------------------------------------------------- 3 | !core/ 4 | *.*# 5 | *.app 6 | *.debug 7 | *.o 8 | *.obj 9 | *.orig 10 | *.prl 11 | *.qm 12 | *.rc 13 | *.rej 14 | *.res 15 | *.so 16 | *.so.* 17 | *_pch.h.cpp 18 | *_resource.rc 19 | *~ 20 | .#* 21 | .DS_Store 22 | .directory 23 | /.qmake.cache 24 | /.qmake.stash 25 | Makefile* 26 | Thumbs.db 27 | core 28 | moc_*.cpp 29 | qrc_*.cpp 30 | tags 31 | ui_*.h *.a *.autosave *.core *.moc 32 | # qtcreator generated files *.pro.user* CMakeLists.txt.user* 33 | # xemacs temporary files *.flc 34 | # Vim temporary files .*.swp 35 | # Visual Studio generated files *.ib_pdb_index *.idb *.ilk *.pdb *.sln *.suo *.vcproj *vcproj.*.*.user *.ncb *.sdf *.opensdf *.vcxproj *vcxproj.* 36 | # MinGW generated files *.Debug *.Release # Python byte code *.pyc # Binaries # -------- *.dll *.exe 37 | 38 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/16/hint.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/16/hint.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/file/dxf/entities/dxf_ray.cpp: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Author : Damir Bakiev * 3 | * Version : na * 4 | * Date : XXXXX XX, 2025 * 5 | * Website : na * 6 | * Copyright : Damir Bakiev 2016-2025 * 7 | * License : * 8 | * Use, modification & distribution is subject to Boost Software License Ver 1. * 9 | * http://www.boost.org/LICENSE_1_0.txt * 10 | *******************************************************************************/ 11 | #include "dxf_ray.h" 12 | namespace Dxf { 13 | Ray::Ray(SectionParser* sp) 14 | : Entity{sp} { 15 | } 16 | } // namespace Dxf 17 | -------------------------------------------------------------------------------- /plugins/file/dxf/entities/dxf_sun.cpp: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Author : Damir Bakiev * 3 | * Version : na * 4 | * Date : XXXXX XX, 2025 * 5 | * Website : na * 6 | * Copyright : Damir Bakiev 2016-2025 * 7 | * License : * 8 | * Use, modification & distribution is subject to Boost Software License Ver 1. * 9 | * http://www.boost.org/LICENSE_1_0.txt * 10 | *******************************************************************************/ 11 | #include "dxf_sun.h" 12 | namespace Dxf { 13 | Sun::Sun(SectionParser* sp) 14 | : Entity{sp} { 15 | } 16 | } // namespace Dxf 17 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/actions/24/hint.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-dark/toolpath/pock_rast_conv.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/actions/24/hint.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ggeasy/res/icons/ggeasy-light/toolpath/pock_rast_conv.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /plugins/file/dxf/entities/dxf_body.cpp: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Author : Damir Bakiev * 3 | * Version : na * 4 | * Date : XXXXX XX, 2025 * 5 | * Website : na * 6 | * Copyright : Damir Bakiev 2016-2025 * 7 | * License : * 8 | * Use, modification & distribution is subject to Boost Software License Ver 1. * 9 | * http://www.boost.org/LICENSE_1_0.txt * 10 | *******************************************************************************/ 11 | #include "dxf_body.h" 12 | namespace Dxf { 13 | Body::Body(SectionParser* sp) 14 | : Entity{sp} { 15 | } 16 | } // namespace Dxf 17 | -------------------------------------------------------------------------------- /plugins/file/dxf/entities/dxf_mesh.cpp: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Author : Damir Bakiev * 3 | * Version : na * 4 | * Date : XXXXX XX, 2025 * 5 | * Website : na * 6 | * Copyright : Damir Bakiev 2016-2025 * 7 | * License : * 8 | * Use, modification & distribution is subject to Boost Software License Ver 1. * 9 | * http://www.boost.org/LICENSE_1_0.txt * 10 | *******************************************************************************/ 11 | #include "dxf_mesh.h" 12 | namespace Dxf { 13 | Mesh::Mesh(SectionParser* sp) 14 | : Entity{sp} { 15 | } 16 | } // namespace Dxf 17 | --------------------------------------------------------------------------------