7
mirror of https://gitlab.com/kicad/code/kicad.git synced 2025-04-02 00:26:45 +00:00
Go to file
John Beard 636c6c4efb Eeschema/pcbnew: fix pasted image saving
The m_imageData buffer in the BITMAP_BASE is an
internal implementation - the public API to persist the
data to a stream appears to be SaveImageData - so use that,
which hides the implementation (and generates the image data
"live" when needed).

Remove the public access to the m_imageData buffer as it isn't
needed for public use, and also is misleading.

Also break out the formatting of the data into KICAD_FORMAT,
as it's currently replicated in eeschema/pcb/pagelayout
formatting code.

Fixes: https://gitlab.com/kicad/code/kicad/-/issues/19772
2025-01-31 23:01:07 +08:00
.githooks Fix pre-commit symlink 2023-05-12 16:10:18 +03:00
.github Update GitHub funding link 2023-10-18 09:40:34 -07:00
.gitlab Turn KICAD_USE_CMAKE_FINDPROTOBUF on for old containers 2025-01-19 23:58:07 -05:00
3d-viewer Update new bitmaps 2025-01-29 09:33:31 -06:00
api API: Add selection handling 2025-01-21 19:53:03 -05:00
bitmap2component Handle paste special case when converting bitmap 2025-01-19 17:46:54 -08:00
cmake Disable C4746 2025-01-31 03:48:29 -05:00
common Eeschema/pcbnew: fix pasted image saving 2025-01-31 23:01:07 +08:00
cvpcb Remove dead code. 2025-01-29 20:54:33 +00:00
demos Fix class-d simulation demo 2025-01-11 20:55:14 +00:00
doxygen Turn KICAD_USE_CMAKE_FINDPROTOBUF on for old containers 2025-01-19 23:58:07 -05:00
eeschema Eeschema/pcbnew: fix pasted image saving 2025-01-31 23:01:07 +08:00
gerbview Gerber export to pcb: handle rect aperture to draw lines on non copper layers 2025-01-09 11:02:15 +01:00
include Eeschema/pcbnew: fix pasted image saving 2025-01-31 23:01:07 +08:00
kicad Add "source" field for jobsets to discern SCH & PCB jobs 2025-01-31 08:16:26 -05:00
libs Kimath: don't access aActual unless set 2025-01-24 20:26:31 +08:00
pagelayout_editor Show UUIDs in msg panel with an advanced config 2025-01-07 20:01:44 +08:00
pcb_calculator Revert "Move GL Context into Singleton class" 2025-01-03 21:22:37 -08:00
pcbnew Eeschema/pcbnew: fix pasted image saving 2025-01-31 23:01:07 +08:00
plugins Revise Copyright statement to align with TLF 2025-01-01 14:12:04 -08:00
qa Eeschema/pcbnew: fix pasted image saving 2025-01-31 23:01:07 +08:00
resources Update grid icons 2025-01-31 08:44:23 -06:00
scripting Use PYTHON_MANAGER to launch actions and capture trace output 2025-01-11 11:47:08 -05:00
signing New macOS installation scripts 2023-09-19 17:23:30 -04:00
thirdparty Utilize libpopcnt 2025-01-29 08:18:46 -06:00
tools Revise Copyright statement to align with TLF 2025-01-01 14:12:04 -08:00
translation Update translations 2025-01-29 19:59:04 +03:00
utils Revise Copyright statement to align with TLF 2025-01-01 14:12:04 -08:00
_clang-format Clang format: remove BreakConstructorInitializersBeforeComma 2025-01-08 20:23:31 +08:00
.clang-format Update {fmt} to 11.0.2 2024-09-21 17:44:10 -04:00
.clang-tidy Add more checks in .clang-tidy 2021-12-01 00:47:22 +01:00
.gitattributes Force script line endings 2024-01-16 16:03:43 -05:00
.gitignore .gitignore: add demo lock files 2024-09-28 22:45:01 +01:00
.gitlab-ci.yml Unify location for defining default Fedora image 2024-09-11 13:43:06 +01:00
AUTHORS.txt Revise Copyright statement to align with TLF 2025-01-01 14:12:04 -08:00
CMakeLists.txt Add Zc:inline for msvc 2025-01-22 20:23:32 -05:00
CMakePresets.json.sample CMakePresets.json.sample: Prefer RelWithDebInfo for x64-Release 2024-03-29 09:59:46 +08:00
CMakeSettings.json.sample Update CMakeSettings.json.sample 2024-02-02 20:19:13 +00:00
code-of-conduct.md Add Code of Conduct 2020-03-26 11:10:34 -05:00
CONTRIBUTING.md CONTRIBUTING.md: minor cleanup 2022-10-12 20:56:21 +02:00
INSTALL.txt Bump to requiring wxWidgets 3.2.0 2023-03-05 21:07:57 -05:00
LICENSE Set project license file to GPLv3 for GitLab 2020-07-05 08:56:17 -07:00
LICENSE.3-CLAUSE-BSD ADDED: Read IBIS files 2022-06-09 18:30:51 +00:00
LICENSE.APACHE-2.0 Add support for using a SpaceMouse to pan & zoom in the schematic editor. 2022-03-31 19:03:41 +00:00
LICENSE.BOOSTv1_0 Cleanup licensing 2019-02-11 08:35:23 -08:00
LICENSE.CC0 Add information about CC0 license 2022-10-18 06:16:50 +02:00
LICENSE.CC-BY-SA-4.0 Adding license text for CC-BY-SA-4.0 for completeness 2019-03-27 14:47:35 -04:00
LICENSE.GPLv3 Update license to AGPL due to TTL license. 2018-10-22 12:28:48 -04:00
LICENSE.ISC Cleanup licensing 2019-02-11 08:35:23 -08:00
LICENSE.MIT Adding MIT license 2019-06-09 08:43:43 -07:00
LICENSE.README Update license readme list 2023-10-27 23:58:29 +01:00
README.md Fix bad links on README file 2023-02-23 23:40:28 +00:00
uncrustify.cfg Fix source comment / documentation typos 2021-06-09 19:32:58 +00:00
vcpkg-configuration.json Bump vcpkg mainline 2025-01-26 20:55:46 -05:00
vcpkg.json Bump vcpkg for wxpython ducktape 2025-01-26 20:55:46 -05:00

KiCad README

For specific documentation about building KiCad, policies and guidelines, and source code documentation see the Developer Documentation website.

You may also take a look into the Wiki, the contribution guide.

For general information about KiCad and information about contributing to the documentation and libraries, see our Website and our Forum.

Build state

KiCad uses a host of CI resources.

GitLab CI pipeline status can be viewed for Linux and Windows builds of the latest commits.

Release status

latest released version(s) Release status

Files

  • AUTHORS.txt - The authors, contributors, document writers and translators list
  • CMakeLists.txt - Main CMAKE build tool script
  • copyright.h - A very short copy of the GNU General Public License to be included in new source files
  • Doxyfile - Doxygen config file for KiCad
  • INSTALL.txt - The release (binary) installation instructions
  • uncrustify.cfg - Uncrustify config file for uncrustify sources formatting tool
  • _clang-format - clang config file for clang-format sources formatting tool

Subdirectories

  • 3d-viewer - Sourcecode of the 3D viewer
  • bitmap2component - Sourcecode of the bitmap to PCB artwork converter
  • cmake - Modules for the CMAKE build tool
  • common - Sourcecode of the common library
  • cvpcb - Sourcecode of the CvPCB tool
  • demos - Some demo examples
  • doxygen - Configuration for generating pretty doxygen manual of the codebase
  • eeschema - Sourcecode of the schematic editor
  • gerbview - Sourcecode of the gerber viewer
  • include - Interfaces to the common library
  • kicad - Sourcecode of the project manager
  • libs - Sourcecode of KiCad utilities (geometry and others)
  • pagelayout_editor - Sourcecode of the pagelayout editor
  • patches - Collection of patches for external dependencies
  • pcbnew - Sourcecode of the printed circuit board editor
  • plugins - Sourcecode for the 3D viewer plugins
  • qa - Unit testing framework for KiCad
  • resources - Packaging resources such as bitmaps and operating system specific files
  • scripting - Python integration for KiCad
  • thirdparty - Sourcecode of external libraries used in KiCad but not written by the KiCad team
  • tools - Helpers for developing, testing and building
  • translation - Translation data files (managed through Weblate for most languages)
  • utils - Small utils for KiCad, e.g. IDF, STEP, and OGL tools and converters