Ian McInerney
bcb93e9aa7
Modernize setting of compiler definitions in CMake
...
add_compile_definitions was added in 3.12, and our minimum is now
greater than that.
2023-02-22 01:44:06 +00:00
Marek Roszko
aacc9746e3
Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere
2023-02-18 22:57:18 -05:00
Paweł Płóciennik
614755f24e
Dialogs autocompletion with backspace support.
2023-02-16 23:28:27 +00:00
jean-pierre charras
5da5ccc4bf
pagelayout_editor: fix some minor issues:
...
- text color not always stored in file
- Indicator for changes in main title not updated after save.
2023-02-09 14:16:26 +01:00
Wayne Stambaugh
3b722de637
Code cleaning.
2023-02-08 08:26:54 -05:00
jean-pierre charras
ddd4178c62
PL editor: Add ( missing in commit 0d903d43
) test for invalid parameter.
2023-02-08 08:38:31 +01:00
jean-pierre charras
d2ce3ce381
pagelayout_editor: display a '*' in title frame if there are changes.
2023-02-07 17:35:10 +01:00
jean-pierre charras
0d903d43a0
pagelayout editor: Add tests for invalid parameters.
...
Invalid parameters are repeat count < 1, size < 0 and default size < 0.01 mm
2023-02-07 12:53:34 +01:00
jean-pierre charras
6b5eeeb861
Preferences dialog: try to reduce its width, in non English languages.
...
Remove some useless spacers, and do not force some widgets to have a to
large size (by removing empty areas).
Work in progress: one panel is still too big.
2023-02-04 14:36:14 +01:00
Jeff Young
f399dc0c3a
Nullptr safety. (Sentry KICAD-4F)
2023-01-18 01:16:57 +00:00
Marek Roszko
ac94995f70
Some more wxS
2023-01-16 19:07:50 -05:00
Jeff Young
30c9deb9d5
Flat(er) look for paged dialogs.
2023-01-11 01:11:25 +00:00
Wayne Stambaugh
f28ea5e784
Remove standard dialog button static line separators.
...
For the sake of consistency across all dialogs and window that behave
like dialogs, remove the static line that separates the main part of
the dialog from the standard buttons. This only applies to windows
that have the standard button on the bottom of the frame.
This covers the 3D viewer, CvPcb, common, GerbView and KiCad dialogs.
2023-01-08 13:15:33 -05:00
Gary Kim
8e8a3c7bdc
Do not translate name in version info
...
Leave the application name in version info untranslated when
viewed, copied, or used in a bug report.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13298
2022-12-31 20:28:45 -05:00
Jeff Young
4c63b4e061
Class name <-> file name sync.
2022-12-29 18:05:57 +00:00
jean-pierre charras
157b93c4ae
Gerbview and Pl_editor: fix missing transfer from preference dialog to Gal options.
...
Some settings (cursor shape, grid options) were not taken in account after
closing the preferences dialog.
2022-12-29 17:34:03 +01:00
Jon Evans
5abf73e3c9
Never call ReCreateMenuBar inside a menu event handler
...
As of wxWidgets 3.2, the wxWidgets event handler runs code after the
the client event handler that depends on the menu still existing.
Because there are potentially many paths to call ReCreateMenuBar from
within a menu event handler, let's just wrap this action in a CallAfter
to make sure it happens after the wx handler call completes.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13149
2022-12-16 16:37:51 -05:00
Alexander Dewing
02325130fa
Initial arm64 work
2022-12-09 23:48:31 +00:00
Mike Williams
0e75bf02fa
Selection: refactor modifier checking
2022-12-08 14:12:12 -05:00
Jeff Young
13f5c78e89
More tightening of group parent lifecycles.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12908
2022-11-16 00:42:38 +00:00
jean-pierre charras
9501f4303d
Rename CreateWindow to CreateKiWindow to avoid a collision name with a windows header
...
No code change, but it fix an issue specific to msys2 that bother me when
trying to fix issues with wx 3.0.x version
2022-11-08 12:31:07 +01:00
Sylwester Kocjan
a234d5a2c8
common,eeschema,pcbnew: path cleanup
2022-11-02 13:29:52 +00:00
jean-pierre charras
7895b47030
pl_editor: fix a crash when trying to delete an item during its creation.
...
Fixes #12717
https://gitlab.com/kicad/code/kicad/issues/12717
2022-10-22 18:30:30 +02:00
Jeff Young
7ffdfb1067
Clear Scintilla undo history after setting initial text.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12650
2022-10-14 22:01:20 +01:00
Marek Roszko
d6f8ca9a2e
Patch out the install for argparse
2022-10-12 23:17:05 -04:00
Jeff Young
3221877fe8
Push autosave-require down in to EDA_BASE_FRAME.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11790
2022-10-10 14:03:52 +01:00
Mark Roszko
fb8a4c10f7
Shove kicad2step into pcbnew itself with a new cli
2022-10-04 01:53:37 +00:00
jean-pierre charras
7584ccc758
Fix duplicate variable member m_userUnits, creating issues depending on
...
the way it was acceded (by name or by accessor).
2022-09-26 19:47:28 +02:00
Jeff Young
7f34586c7e
Allow text variable resolution through properties in drawing sheet text.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12473
2022-09-20 15:28:05 +01:00
Jeff Young
30a4d3d2de
Coverity fixes.
2022-09-20 00:19:15 +01:00
Mike Williams
9304607624
TOOL_EVENT: make command string non-optional
...
We're getting segfaults in places where this isn't checked. Also, add
some asserts so we can catch bad tool push/pop.
Removes all uses of GetCommandStr() and makes it private.
2022-09-19 10:23:09 -04:00
Jeff Young
45d6b4a9fc
Readability improvements.
2022-09-19 11:18:20 +01:00
Marek Roszko
66e8931405
Remove IU_PER_MM thats standalone
2022-09-16 21:09:27 -04:00
Marek Roszko
61e11d6896
Strip out Mils2Iu
2022-09-16 21:09:27 -04:00
Marek Roszko
e6ed275c25
Repoint IU_PER_MILS
2022-09-16 21:09:26 -04:00
Marek Roszko
a8613ee80f
Combine Iu2Millimeter & remove PcbMm2iu
2022-09-16 21:09:26 -04:00
Mark Roszko
b00178adb3
Nuke base_units from orbit
2022-09-16 04:38:10 +00:00
lulu731
0180bcf90a
ADDED: Implement Drag and Drop
...
dropping files to Kicad manager :
*.kicad_pro, *.pro -> open project;
gerber and job files -> open in Gerbview editor;
Eagle and Cadstar files -> open project.
dropping file to schematic editor -> append schematic;
dropping library file to Symbol editor -> add library;
dropping board file to PCB editor -> append board;
dropping library or footprint file to Footprint editor -> add library or import footprint;
dropping ZIP file or gerber files to Gerbview editor -> open files;
dropping sheet file to Drawing Sheet editor -> open sheet.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11638
2022-09-14 22:28:09 +00:00
Jeff Young
5d468ca759
Use MESSAGE_TYPE::OUTDATED_SAVE for read-only infobar messages as well.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12252
2022-09-10 21:27:10 +01:00
Jeff Young
b4492e0bd2
More EDA_RECE yeetage.
2022-08-31 17:19:50 +01:00
Jeff Young
2dc6300501
Move EDA_ITEM bounding boxes to BOX2I.
2022-08-31 10:16:55 +01:00
Jeff Young
5679b9dbdc
Remove a few EDA_RECT instances.
2022-08-31 01:22:49 +01:00
Jeff Young
0c8787cbb9
Some more wxPoint/EDA_RECT yeeting.
2022-08-31 00:44:33 +01:00
Seth Hillbrand
b736460e71
Move optional access from value() to *operator
...
`value()` throws. Where we check for existence, we don't need to use
the throwing version and should just use the unprotected variant
2022-08-30 13:59:39 -07:00
Marek Roszko
03aa63bd50
Move 5 helpers to EDA_UNIT_UTILS since they aren't iu specific
2022-08-29 20:11:03 -04:00
Marek Roszko
99f8bb3219
panel_gal_display_options can be common
2022-08-29 18:18:38 -04:00
Marek Roszko
f0956e48f2
Make EDA_TEXT common
...
Since EDA_TEXT is a base class, we can just force the child classes to pass the correct iu scaled size
ALLOW_BOLD_THICKNESS removed because it's a pre-custom font holdover
2022-08-29 07:31:03 -04:00
Marek Roszko
9acc5ac7ea
base_screen became free of base_unitry awhile ago
2022-08-27 14:02:51 -04:00
Marek Roszko
bf964d8678
Commonize page_info by simply making the Iu scale a parameter on call.
2022-08-27 13:36:00 -04:00
Seth Hillbrand
f1261e71d4
Replace boost::optional with std::optional
2022-08-25 15:50:47 -07:00
Marek Roszko
fc99b3ba95
Don't link gdiplus everywhere anymore
...
Tested on msys2 which is the only place it would have been buggy
CMake seems to share the gdiplus linkage with the other dependencies automatically now
2022-08-23 23:51:35 -04:00
Jeff Young
aa2ad3b44c
Move KICAD_T[] to std::initializer_list<KICAD_T>.
2022-08-20 10:28:11 +01:00
jean-pierre charras
4d48376eae
Fix some warnings detected by PVS-STUDIO (not used vars)
2022-07-26 16:00:14 +02:00
Jeff Young
57acce9e55
Share more code between selection tools.
2022-07-11 19:04:08 -06:00
Seth Hillbrand
03c279ffd4
ADDED: Threadpool
...
Thread pools are long-lasting executors that have close to zero overhead
when launching new jobs. This is advantageous over creating new threads
as we can use this for threading smalling jobs and smaller quanta. It
also avoids the heuristics needed to determine the optimal number of
threads to spawn
2022-06-24 22:59:24 +00:00
Ian McInerney
b51d8c9825
Introduce new CMake variable to store kiface install location
2022-06-22 23:40:25 +01:00
Jeff Young
52bc2511cd
Add a radioButton mode to IMAGE_BUTTON.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11797
2022-06-12 20:09:46 +01:00
Jeff Young
23fb4c7433
Uniformly use a single facility for location-less prime events.
...
Also implements a uniform mechanism for avoiding auto-scroll after
a prime event or dialog which results in a mouse position at the
edge of the canvas.
Fixes https://gitlab.com/kicad/code/kicad/issues/11057
2022-05-16 23:43:00 +01:00
Jeff Young
f2fc78f380
Don't copy modifiers to prime events.
...
The modifiers go with the hotkey, not with the action.
Fixes https://gitlab.com/kicad/code/kicad/issues/11618
2022-05-16 13:51:40 +01:00
Marek Roszko
f88e0481c8
Change the behavior of ACTION_MENU::Add to require clones if required outside the function
...
This reverts commit 2a5769607f
.
2022-04-11 19:03:01 -04:00
Seth Hillbrand
2a5769607f
Revert "Change the behavior of ACTION_MENU::Add to require clones if required outside the function"
...
This reverts commit 403992a6f4
.
2022-04-11 11:39:03 -07:00
jean-pierre charras
f0f10a43a2
Ensure "Clear Recent Files" menuitem titles are updated after language change.
...
(missing fixes in commit ac8e2d076
)
2022-04-11 18:11:17 +02:00
jean-pierre charras
ac8e2d0768
Ensure "Open Recent" and "Clear files" menu titles are updated after language change.
2022-04-11 11:09:05 +02:00
Marek Roszko
403992a6f4
Change the behavior of ACTION_MENU::Add to require clones if required outside the function
...
Fix https://gitlab.com/kicad/code/kicad/-/issues/10994
2022-04-10 22:38:13 -04:00
Marek Roszko
5bb2cdf73d
Revert "Stop leaking submenu items"
...
This reverts commit 34c70a51ea
.
2022-04-10 22:33:43 -04:00
Marek Roszko
34c70a51ea
Stop leaking submenu items
...
Our menu bar code is interestingly complex. But we were throwing away newly made menu items to the void in the cases of constructed on the fly submenus
2022-04-10 22:04:48 -04:00
Roberto Fernandez Bautista
0015574a60
${SHEETNAME} represents the sheet name + introduce ${SHEETPATH}
...
CHANGED: The text variable ${SHEETNAME} now always represents the name of the
sheet when used anywhere in the schematic editor, including the title block
ADDED: A new text variable ${SHEETPATH} which is replaced with the path to the
current sheet - e.g. "/Sheet 1/Sheet 2".
To ensure backward compatibility, the default drawing sheet now uses
${SHEETPATH}. Custom drawing sheets will need to be manually edited.
2022-04-09 15:45:58 +01:00
Jeff Young
e8a543f1ea
Colors for text in PL_Editor and Eeschema.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/1952
2022-03-31 19:43:56 +01:00
jean-pierre charras
21144481d2
PLOTTER: do not clamp coordinates to an arbitrary value.
...
Previously, coordinates were clamped to +- 60 inches. It makes no sense to
clamp them at plotter level: max cooed depends on the editor (schematic/board...)
Rename MAX_PAGE_SIZE_MILS to MAX_PAGE_SIZE_EESCHEMA_MILS and use it only for Eeschema.
Fixes #11196
https://gitlab.com/kicad/code/kicad/issues/11196
2022-03-22 10:32:36 +01:00
Jeff Young
05bca282f7
Re-entrancy blocker for line/wire/bus tool.
...
Also clear infobar messages after a cancelInteractive.
Fixes https://gitlab.com/kicad/code/kicad/issues/11155
2022-03-17 15:27:33 +00:00
Seth Hillbrand
6934bc124c
Move temp save files to temporary directory
...
Avoid excess writes to the project directory to dodge issues with remote
file systems not fully writing data.
wxRename works across disk boundaries (in theory) and falls back to
wxCopy/wxRemove when it fails
Fixes https://gitlab.com/kicad/code/kicad/issues/10747
2022-03-07 20:13:28 -08:00
jean-pierre charras
a8c29c47cf
pagelayout_editor: minor fix and minor code cleanup
2022-03-03 07:40:08 +01:00
Jeff Young
b55bda8d6f
Font support for drawing sheet editor.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10306
2022-02-28 18:05:26 +00:00
Seth Hillbrand
535ea800c0
Honor modifier keys in diambiguation
...
Needs to be reset for the new action before selecting elements at a
point.
Fixes https://gitlab.com/kicad/code/kicad/issues/9712
(cherry picked from commit a30ad0b54a
)
2022-02-25 16:16:15 -08:00
Seth Hillbrand
faa3829ad4
Add MRU to image placement tools
2022-02-25 13:18:43 -08:00
Seth Hillbrand
098e8f7d9b
Revert "cmake: adding KICAD_MACOSX_APP_BUNDLE option"
...
This reverts commit ea9f960cc1
.
Reverted for updates as this currently breaks kicad-mac-builder
2022-01-31 15:57:56 -08:00
Davide Gerhard
ea9f960cc1
cmake: adding KICAD_MACOSX_APP_BUNDLE option
...
ADDED: with cmake KICAD_MACOSX_APP_BUNDLE option the user can disable
the macOS app bundle creation when compiling on macOS. This permit to
use/install KiCad like any other *nix platform (/usr/bin, /usr/share,
ecc.). By default, cmake build the app bundle.
2022-01-28 15:49:37 -08:00
Jeff Young
fbab335128
Retire DPOINT and DSIZE.
2022-01-20 21:10:04 +00:00
Jeff Young
e61144d45a
Finish with EDA_ANGLE.
2022-01-16 21:15:40 +00:00
Marek Roszko
c4c56de708
Neurotically update position wxPoint usages
2022-01-01 11:55:51 -05:00
Marek Roszko
cadc0639eb
Update BASE_SCREEN to VECTOR2I
2022-01-01 11:30:33 -05:00
Marek Roszko
347e03363a
Convert wxPoint/wxSize starting from EDA_RECT usages
2022-01-01 11:30:33 -05:00
Marek Roszko
3f711b8958
Add win32 VERSION_INFO resource blocks for the DLLs
2021-12-28 23:54:27 -05:00
Jeff Young
86cb57f4a7
Cherry-pick TEXT_ATTRIBUTES and EDA_ANGLE from rockola/kicad-strokefont
2021-12-28 22:15:20 +00:00
Jeff Young
a6dd1bf09b
Implement Reset to Defaults for all preferences panels.
2021-12-24 17:38:39 +00:00
Jeff Young
9ee28ea8f5
Flatten out some more preferences.
2021-12-24 15:43:20 +00:00
Jeff Young
d28714167c
All the preferences, all the time.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7877
Fixes https://gitlab.com/kicad/code/kicad/issues/5153
2021-12-24 13:08:44 +00:00
Jeff Young
73b39e836d
Set modify bit when editing page layout.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9891
2021-12-06 23:08:33 +00:00
jean-pierre charras
054f8ed7bd
pagelayout_editor: fix end of line char in wxStyledTextCtrl (is now always '\n')
...
Fixes #9806
https://gitlab.com/kicad/code/kicad/issues/9806
2021-11-29 10:26:06 +01:00
Jeff Young
696619fdb6
Larger set (and larger default) of grid sizes for drawing sheet editor.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9494
2021-10-30 20:32:23 +01:00
Jeff Young
e4ccff1d93
Fix drawing sheet editor for status bar constraints message
...
Also makes the spacers font-size-relative.
2021-10-30 20:19:08 +01:00
Wayne Stambaugh
0795fcb810
Minor dialog layout fixes.
2021-10-21 08:59:55 -04:00
Seth Hillbrand
9a8d1246cc
We don't keep a CHANGELOG.TXT
...
Direct interested readers to AUTHORS.TXT instead.
2021-10-05 19:46:53 -07:00
Jeff Young
5f5ee7335d
Formatting.
2021-10-01 21:49:14 +01:00
Seth Hillbrand
dd1d36d40a
Fix segfault when check for editing points
...
The point editor is not always available when checking for points. We
need to handle the missing tool without crashing
2021-09-30 17:25:33 -07:00
Jeff Young
df2afd8345
Copy a bunch of bug fixes back from sch_move_tool.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9169
2021-09-29 20:59:31 +01:00
Jeff Young
12b726ba2f
Prevent the point editor from fighting with other tools.
...
1) Don't start a long-click timer when the point editor is active.
2) Don't auto-start a wire when the point editor is active.
Fixes https://gitlab.com/kicad/code/kicad/issues/9270
2021-09-29 19:16:06 +01:00
Mike Williams
d90dc77e00
Selection: Don't drop small moves
...
If we do a real drag, the timer will be cancelled. If we don't, then
the user is still holding the mouse button down and would probably like
to see the menu. Otherwise it appears the action is dropped.
2021-09-27 16:44:32 +00:00
Jeff Young
5f3c67bd2b
Fill in some missing GetMsgPanelItems and make some others consistent.
...
Also expunges a std::vector<MSG_PANEL_ITEM> cover type.
2021-09-27 00:23:40 +01:00
Seth Hillbrand
3da97ed02f
Reword keyword message
2021-09-20 11:57:08 -07:00