107 Commits

Author SHA1 Message Date
lulu731
f4f3638103 Adding drag and drop project file feature.
ADDED Drag and drop of project file from file explorer to Kicad manager window.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/8146
2022-05-12 22:38:45 +00:00
Marek Roszko
8030bf1cc4 Implement use of the kicad nightly icon where needed 2022-01-23 09:21:07 -05:00
Seth Hillbrand
fd9d923bb7 Do not call SafeYield on close
wxSafeYield() is not "safe".  Pending actions may include deletion of
the currently active class.  This will cause crashes when exiting.  If
needed for specific behaviors, we should use wxSafeYieldFor( flag ) with
the appropriate events specified rather than a general yield which can
cause more problems

(cherry picked from commit 9864337914eb7c166c1ff068dbe216301cd6b4ac)
2022-01-06 12:36:51 -08:00
qu1ck
211820a689 Remove KICAD_PCM cmake option 2022-01-03 04:16:42 +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
Seth Hillbrand
a4db439cf8 Move quitting flag to manager quit
The flag is to protect against the frame going out of scope with the
references intact.  This shouldn't be in CloseProject because we close
the project without removing the frame.  Instead, placing it in OnExit
gets set correctly when closing the whole project manager

Fixes https://gitlab.com/kicad/code/kicad/issues/10018
2021-12-17 13:10:27 +00:00
Seth Hillbrand
84cfa052a1 Unify KiCad Manager title bar versions 2021-11-29 16:19:37 -08:00
Jeff Young
ba6ae4fa9b Kicad has many plugins. This one is for the pcb. 2021-11-25 12:56:46 +00:00
Seth Hillbrand
f950d96324 Prevent dereferencing frame on exit
Processing a menu event for quitting results in the frame being
destroyed.  This crashes the program when it tries to access the newly
freed frame to check for autosave data.  We bind the closing flag into
the base program which will be the last item freed on exit to ensure we
can correctly check for data loss

Fixes https://gitlab.com/kicad/code/kicad/issues/8638
2021-11-15 10:07:28 -08:00
Jeff Young
47cb7f53fd Stope event propagation when closing project.
Fixes https://gitlab.com/kicad/code/kicad/issues/8638
2021-11-15 00:13:09 +00:00
Jeff Young
66d9e7073f More discrete borders for Kicad mgr, PCM and appearances panels.
Fixes https://gitlab.com/kicad/code/kicad/issues/9616
2021-11-14 15:01:44 +00:00
Seth Hillbrand
cf6b18ec7e Remove escaped double-quotes
For some reason, escaped double quotes in wxString::Format cause issues
on Mac.  We can replace them with single quotes in most places without
loss of clarity
2021-11-03 17:03:14 -07:00
Jeff Young
23c76cccf3 Give a timeslice to show Save Changes? dialog before things get ugly.
This also moves closing the existing project earlier to improve the
workflow -- so there's a chance that the main fix might not be needed
anymore, but it's still safer to not have a control-flow that crashes
rather than to just not use that control-flow.

Fixes https://gitlab.com/kicad/code/kicad/issues/9200
2021-09-21 11:14:42 +01:00
Jeff Young
6e7ce09572 Use more descriptive terminology for preferred text editor.
Also improves execution to allow the preferred editor to include
parameters, such as "/usr/bin/open -e".

Fixes https://gitlab.com/kicad/code/kicad/issues/9131
2021-09-19 15:17:26 +01:00
Jeff Young
9c78e4cf54 Mac needs different font size handling than MSW & GTK.
Mac already uses diverse font sizes (for instance, smaller fonts for
radio button groups), and the anti-aliasing is a lot better.  The
other platforms need a more limited range of sizes.

Fixes https://gitlab.com/kicad/code/kicad/issues/8608
2021-09-11 23:40:31 +01:00
Jeff Young
fbee62fc15 Tie font size scaling to when automatic icon scaling fails.
It appears that SetSymbolicSize() and ConvertDialogToPixes() fail
under the same circumstances.
2021-09-11 15:29:51 +01:00
Jeff Young
ad59254be8 Another round of font sizing tweaks.
It appears that both strategies in the last commit worked, leaving us
with squared scaling.  The dialog pixel architecture seems safer than
our icon scaling stuff, so this version attempts to use only it.

Also works around a bug where wxELLIPSIZE_MIDDLE doesn't work on Mac.

Fixes https://gitlab.com/kicad/code/kicad/issues/8608

Fixes https://gitlab.com/kicad/code/kicad/issues/8375
2021-09-10 21:46:13 +01:00
jean-pierre charras
749d2d5987 Fix typo in commit cf8618 2021-09-06 18:45:09 +02:00
jean-pierre charras
cf8618a0d5 A very ugly hack to fix an issue on Linux: if the wxbase315u_xml_gcc_custom.so is
used **only** in PCM (in Kicad manager), it is not found in some cases at run time.
So just use it in the main module to avoid a not found issue for the
wxbase315u_xml_gcc_custom shared object when launching Kicad
(the cost is very low)
2021-09-06 17:03:04 +02:00
Jon Evans
ae55db77c5 Allow hiding version from manager title bar with advanced config 2021-07-14 18:24:21 -04:00
Jeff Young
685ee31c35 Workaround a few more OSX printf problems.
Also regularizes the frame title processing.

Also fixes a type where the library name wasn't processed for
variable expansion.

Fixes https://gitlab.com/kicad/code/kicad/issues/7742
2021-06-20 22:48:19 +01:00
Ian McInerney
3ab69939f9 Remove wx.h from many files 2021-06-03 02:19:20 +01:00
Jeff Young
e8102d85dc Shut down fileWatcher more aggresively.
While I haven't been able to reproduce the crash, my theory is that
those that do are running into situations where wxWidgets defers
destructing the window.

Fixes https://gitlab.com/kicad/code/kicad/issues/8458
2021-05-20 16:54:24 +01:00
Wayne Stambaugh
412df9dbbf KiCad: don't set minimum window size after sizer fitting.
The current sizing behavior leaves a lot of padding to the right side
of the window so don't set the minimum window size to the best size
calculated by the sizers.  This will allow the user to resize as desired.
2021-05-20 08:29:24 -04:00
Wayne Stambaugh
1bf5642228 KiCad: fix initial window size on windows platform.
Fixes https://gitlab.com/kicad/code/kicad/issues/8333
2021-05-18 10:40:09 +00:00
Marek Roszko
ce3a84f579 Consolidate wx aui dock art color setting 2021-04-19 21:12:02 -04:00
Ian McInerney
0a0935e0f3 Remove ACTIONS::TranslateLegacyId and TOOL_DISPATCHER::DispatchWxCommand
After commit 9535153f9e there were no more IDs inside the legacy ID
system. Therefore the entire system for dispatching and looking up
the legacy ideas and handling those events can now be removed and
the tool dispatcher simplified (it no longer needs to know about
the ACTIONS class).
2021-03-30 23:20:22 +00:00
jean-pierre charras
3bf5c814e1 Fix missing header on Windows 2021-03-20 19:57:26 +01:00
Jon Evans
298dda8fcd Don't proceed with opening project if players didn't close
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7974
2021-03-20 09:06:38 -04:00
Jon Evans
18037e2f65 Rework bitmap system to load from archived PNGs
Bitmaps are now identified by an enum class instead of by pointers.
Bitmap loading and caching is now handled by a class in common, and
we no longer compile most bitmaps into the binary, so there is no
longer a bitmaps static library.

Instead, bitmaps are archived to a .tar.gz file which is installed
in ${KICAD_DATA}/resources/images.tar.gz

The source PNGs are checked in to Git as the original CPP files were,
so that people can build without the required dependencies to convert
SVGs to PNGs.

Initial support is also added for dark theme icons, although this
is not yet exposed in the GUI.

Stubs are present for multi-resolution image resources, but this is
not fully-baked yet and could use some refinement.
2021-03-11 08:37:35 -05:00
Jeff Young
0d2ee266a1 Make sure auimgr panels can handle dark mode.
Fixes https://gitlab.com/kicad/code/kicad/issues/7560
2021-02-16 21:11:36 +00:00
Jon Evans
32308c7fef Use middle ellipsization for kicad manager status bar 2021-02-14 16:04:36 -05:00
Jeff Young
bbe315bcb8 Add title to project file view and help strings to launcher icons. 2021-02-14 13:28:20 +00:00
Jon Evans
838a70129d Project manager tweaks 2021-02-13 18:58:02 -05:00
Jon Evans
08922e01aa Tweaks to kicad manager layout 2021-02-13 09:53:08 -05:00
Jon Evans
e06aa32780 Launcher tweaks 2021-02-13 08:59:33 -05:00
Jon Evans
1bb3135888 Let's try a new layout for kicad manager 2021-02-12 22:39:37 -05:00
Ian McInerney
c93b012627 Fix writing out of dummy files in the project manager
Fixes https://gitlab.com/kicad/code/kicad/issues/7453
2021-02-07 22:41:21 +00:00
Jeff Young
1394c1f4d4 Retire disabled buttons in favour of info boxes.
Fixes https://gitlab.com/kicad/code/kicad/issues/7229
2021-02-01 22:56:55 +00:00
jean-pierre charras
a28326fb26 Fix stupid code. 2021-01-23 21:17:56 +01:00
jean-pierre charras
af5825bd36 kicad: fix incorrect dummy .kicad_pcb file created when creating a new project.
Fixes #7242
https://gitlab.com/kicad/code/kicad/issues/7242
2021-01-23 17:00:30 +01:00
Seth Hillbrand
61ac9c8d90 Add multiple size icons for programs
In theory, the WM should now choose the closest size icon for its
purpose, making it easier to distinguish in space-constrained settings

Fixes https://gitlab.com/kicad/code/kicad/issues/6798
2020-12-22 15:37:26 -08:00
Marek Roszko
d67cf2f9af Replace wxFile usage with wxFFile
Buffered libc wxFFile is better thinking about syscall wxFile going wrong.
2020-12-12 13:16:23 -05:00
Jeff Young
4a0543c099 Formatting and naming conventions. 2020-12-02 14:27:43 +00:00
Jeff Young
a207bd97bb Naming conventions. 2020-11-17 16:05:49 +00:00
Seth Hillbrand
4085757aeb Remove beginning/ending spaces in translations
Adding space padding makes translations more difficult by increasing
string counts
2020-10-20 12:08:04 -07:00
Marek Roszko
a1c75748a0 Remove GetChars(), a wxWidgets 2.9 compatibility hack 2020-10-15 20:53:25 -04:00
Marek Roszko
763da6b3bb Add forward declaration in kicad/kicad_manager_frame.h 2020-10-12 23:29:08 -04:00
Marek Roszko
9db12be714 Cleanup some includes and enum in kicad 2020-10-12 19:38:40 -04:00
Roberto Fernandez Bautista
72b904a978 ADDED: CADSTAR Archive project importer 2020-09-27 23:50:20 +00:00