Mikolaj Wielgus
098f234311
Add missing types to IsInstantiableType() switch
2021-12-01 00:47:22 +01:00
Tomasz Wlostowski
2c6e9778a1
GAL: OpenGL draw calls pooling/splitting
...
Improves rendering performance, esp. for large designs by:
- using a separate glDrawArrays calls() for large buffers of contiguous vertices (e.g. large zone fills)
- pooling smaller items into a small-sized index buffer held in system RAM (has to be DMAed to the GPU by the driver anyway)
2021-11-29 23:30:10 +01:00
Tomasz Wlostowski
569c39ac37
GAL: runtime profiling for CACHED_CONTAINER
2021-11-29 23:30:10 +01:00
Tomasz Wlostowski
ee8b2113a8
TRACE_MANAGER: very simple run-time tracing infrastructure
2021-11-29 23:30:10 +01:00
Tomasz Wlostowski
2f8ad08739
PROF_COUNTER: added string formatter method
2021-11-29 23:30:10 +01:00
Tomasz Wlostowski
b59ee13fcc
GAL: made Begin/EndDrawing calls public to have more control over timing of rendering context creation/destruction
2021-11-29 23:30:10 +01:00
Mikolaj Wielgus
84dd515b6a
s/Instatiable/Instantiable/, s/Instatiate/Instantiate/
2021-11-29 21:20:57 +01:00
Mikolaj Wielgus
db41769bb9
Subclasses of dimensions are instatiable
2021-11-29 04:44:11 +01:00
Mikolaj Wielgus
281f8ccc4b
Correct instatiable type condition
2021-11-29 04:41:25 +01:00
Mikolaj Wielgus
c159bd79f0
LOCATE_ANY_T is not an instatiable type
2021-11-27 19:42:11 +01:00
Mikolaj Wielgus
55ddc8161f
Add determination to which Kicad app type belongs
2021-11-27 19:42:10 +01:00
Jeff Young
9547c72e73
Teach router about different keepout rules.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9786
2021-11-27 00:55:04 +00:00
Jon Evans
8026863d4c
Use progress reporting in more places when loading a board
...
Prevents application-not-responding events while opening large designs
2021-11-25 11:19:03 -05:00
Jeff Young
5863bc0937
Put Repair Schematic behind Advanced Config.
2021-11-25 12:56:46 +00:00
PJM
f3b3d18319
Removed dead code from view_controls.h
...
CHANGED: Removed "ForcedCursorPosition()" and "IsCursorPositionForced()"
from view_controls.h. First, these functions are completely redundant
as they do the exact same thing but have different names. Second,
neither is called anywhere in the entire KiCad code base.
2021-11-25 12:55:18 +00:00
Jeff Young
228edd4121
Don't generate duplicate IDs in line/wire/bus tool.
...
Also cleans up existing duplicate IDs when reading.
Fixes https://gitlab.com/kicad/code/kicad/issues/9749
2021-11-24 13:20:44 +00:00
Seth Hillbrand
f97c7c78c8
Connect ruler tool with axes preferences
...
Adds "UpdatePreferences" action that is called when the preferences are
updated, allowing running tools to act on changes that may affect them
Fixes https://gitlab.com/kicad/code/kicad/issues/9737
2021-11-23 12:52:21 -08:00
Jon Evans
1e8284bc1a
Add ability to seed the KIID generator
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9689
2021-11-20 14:19:29 -05:00
Seth Hillbrand
766a09c338
Remove autocomplete when we lose focus
...
Prevents the excess dropdown from persisting over windows
Fixes https://gitlab.com/kicad/code/kicad/issues/9651
2021-11-19 17:24:16 -08:00
Jeff Young
c01649fc6e
Make it easier to open legacy files.
2021-11-19 13:36:14 +00:00
Jeff Young
4e6a201881
Correct cursor for search control buttons.
2021-11-18 18:25:14 +00:00
Jeff Young
1bb750814d
Cleanup dead code.
2021-11-17 12:49:53 +00:00
Jon Evans
9238b27f63
Silence IsWritable warning message
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9656
2021-11-16 21:02:32 -05:00
Jeff Young
7760d3275d
Fix printing of LIB_SHAPE arcs.
2021-11-17 01:39:16 +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
Jon Evans
ae24daa033
Do not include text when computing drag origin for a group
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9630
2021-11-14 11:54:04 -05: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
Jeff Young
36fd62ccdc
Another round of beautification changes for PCM.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9616
2021-11-14 13:11:19 +00:00
Wayne Stambaugh
53f5d616aa
Coverity issue fixes.
2021-11-13 11:38:31 -05:00
Wayne Stambaugh
f4b97eca63
Fix broken search stack behavior.
...
The overload of wxFilePath::FindValidPath() broke the normal behavior
when the file searched for existed in the current working directory.
This was causing the initial library table file to be copied from the
current working directory instead of from the list of search paths.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9599
2021-11-13 07:52:25 -05:00
jean-pierre charras
bfd09a4d16
Avoid calling deprecated wxPlatformInfo::GetArchName() in more than one place.
2021-11-13 09:52:08 +01:00
Mikolaj Wielgus
921105330a
Remove printing files from Project Manager
2021-11-12 20:18:32 +00:00
Jeff Young
0b48876ce5
Decouple left and right pane minimums for splitter window.
2021-11-12 02:12:44 +00:00
Jon Evans
16a34e6adb
Use heap instead of stack for CopyStreamData
2021-11-10 22:05:44 -05:00
Jon Evans
42eb063697
PCM: Treat color themes as read-only; don't copy to settings dir
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9548
2021-11-09 22:11:59 -05:00
Jeff Young
d4e3e67b8d
Update kicad_prl file when doing a SaveAs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9455
2021-11-09 17:25:18 +00:00
Jon Evans
75d75799f7
Move to getters/setters for aux and grid origin
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8836
2021-11-08 22:36:40 -05:00
Seth Hillbrand
8f1dec61d2
Add swedish as option for translators
...
There appears to be activity in Weblate updating this language.
2021-11-08 11:41:14 -08:00
Mikolaj Wielgus
6d9456ea4d
Fix opening files with spaces on Linux
...
`wxLaunchDefaultApplication()` fails on files with spaces on Unix
systems due to a programmer error. This is fixed in newer wxWidgets
versions, so let's backport it as a workaround.
2021-11-07 14:31:14 +00:00
Seth Hillbrand
a153951be4
Don't set adaptive swapping over SSH
...
Remote connection GL drivers lie. Don't trust them to support any
swapping other than their default
Fixes https://gitlab.com/kicad/code/kicad/issues/9532
2021-11-05 09:06:22 -07:00
Jeff Young
b73793f9ef
Rewrite text find/change routines to support word matching.
...
The old algorithm treated the "Words" checkbox as meaning match the
entire text, not match words, which is unlikely to be what anyone is
expecting.
Also fixes replace to replace all instances in a single text item
rather than just the first.
Reported on the forum.
2021-11-05 13:37:37 +00:00
Jeff Young
40b4052ad4
Improve text hittesting in schematics.
...
Text has a fairly big bounding box to account for descenders, overbars,
etc., but it makes it feel too sloppy for hittesting. This change
allows selection disambiguation to look at the actual strokes of the
text when deciding what's "closest".
Fixes https://gitlab.com/kicad/code/kicad/issues/9506
2021-11-01 21:13:12 +00:00
Jeff Young
e3ef101ec9
Add missing view controls for FP Editor Appearance Manager.
2021-10-31 16:33:03 +00:00
Jeff Young
c8a8efa67b
Save as for current version project files.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9455
2021-10-30 23:01:53 +01:00
Jeff Young
5f8e0ef1e0
Patch up arc hit-testing and printing for 6.0
...
This could use another look when we're not so near release. We
really shouldn't need to special case eeWinding vs. not eeWinding.
Fixes https://gitlab.com/kicad/code/kicad/issues/9491
2021-10-30 15:10:07 +01:00
Tomasz Wlostowski
1051f11683
libeval_compiler: thou shalt not return pointers to std::vector members! (fixes an use-after-free crash in complex rule evaluation invoked by the router)
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/9451
2021-10-29 16:48:36 +02:00
Wayne Stambaugh
e1846c33d9
Coverity issue fix.
2021-10-29 10:43:40 -04:00
Wayne Stambaugh
1f7fd436a2
Move board object polygon code into the object source files.
...
Having the board object polygon code all defined in a separate file made
finding the polygon code for an object difficult to find.
2021-10-25 17:42:11 -04:00
Roberto Fernandez Bautista
a79a221257
Array creator tool: Add option to assign unique reference designators
...
ADDED: Option to assign unique reference designators to footprints
created with the array tool [pcbnew]
CHANGED: Array creator dialog no longer displays pad numbering properties
when in the board editor. [pcbnew]
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2354
2021-10-25 22:38:49 +01:00
Jeff Young
c52cb229d0
Add unsaved-changes indication to Symbol Properties.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9443
2021-10-25 12:35:04 +01:00
Jeff Young
c9d858eaf5
Add status bar message for constraint mode.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9282
2021-10-24 14:04:12 +01:00
Jeff Young
fecb53b64f
Clean up removal of separate front & back footprint text visibility.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9441
2021-10-22 21:14:15 +01:00
Seth Hillbrand
64bcaaefd1
Fix radiobox order for FILL_T
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9412
2021-10-17 17:01:21 -07:00
Ian McInerney
5817a8b5f4
Remove unused m_host variable
...
This variable isn't needed anymore after 5f53019290
pushed dark mode handling into the HTML window itself.
2021-10-18 00:29:40 +01:00
Roberto Fernandez Bautista
99442350a4
CADSTAR PCB: Fix loading of arc tracks following recent PCB_ARC changes
...
We no longer have any knowledge of the original start/end of the arc,
since SetArcAngleAndEnd swaps the start and end to ensure the arc is
always clockwise at the end.
Adds a method EDA_SHAPE::EndsSwapped() to notify whether the start/end
point of the shape were swapped.
2021-10-17 17:57:51 +01:00
Jeff Young
f9861b4a6c
Finish arc rework and push out to file formats.
2021-10-15 12:45:43 +01:00
Jeff Young
b52529521e
Replace individual LIB_* shapes with LIB_SHAPE (based on EDA_SHAPE).
...
Also moves to more capable FILL_T model that can be shared.
2021-10-15 12:45:43 +01:00
Jeff Young
9b9e379aa0
Overhaul arc internal model to not over-specify information.
2021-10-15 12:45:43 +01:00
Jeff Young
8b08c9e53f
Shorter names before things get out of hand.
...
Also, remove comments indicating CURVE is a Bezier. Just call it a
BEZIER.
2021-10-15 12:45:43 +01:00
Jeff Young
a41944020d
Push most of PCB_SHAPE impl down in to EDA_SHAPE.
2021-10-15 12:45:43 +01:00
Wayne Stambaugh
c4d0a06701
Eeschema: fix broken auto save feature.
...
Make auto save recover all auto saved sheet files not just the root sheet.
This does not fix existing auto save issues because recovery would require
an iterative reload for each automatically saved sheet file and would only
happen once.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9288
2021-10-13 14:51:00 -04:00
Mikolaj Wielgus
5f53019290
Substitute all wxHtmlWindow with HTML_WINDOW
...
Remove other places where <body> tag is used to override the default
black-on-white theme.
2021-10-12 07:07:15 +00:00
Seth Hillbrand
8dbe60b0d5
Catch possible out_of_range
2021-10-11 10:33:50 -07:00
Ian McInerney
961c127ebe
Convert mouse coordinates to native pixesl in the 3D viewer
...
All operations in the camera are done using the native pixel sizes,
so we need to ensure the mouse coordinates are converted to native
pixels to make the mouse operations line up with the view.
Fixes https://gitlab.com/kicad/code/kicad/issues/2561
Fixes https://gitlab.com/kicad/code/kicad/issues/8410
2021-10-10 17:52:12 +01:00
Seth Hillbrand
41e7284fdc
Speed up pcbnew loading/updating
...
Rather than detaching and re-attaching the layer panels with the
attendant overhead, we keep each panel intact and only update its
contents. Since the bindings are the same, this saves substantial time
on pcb loading as well as when closing the board setup dialog
2021-10-09 13:38:35 -07:00
Ian McInerney
c14bdf7fe0
pcb_calculator: Update panel images/text when system theme changes
2021-10-08 17:31:21 +01:00
Mikolaj Wielgus
faad5ee1ce
Use system text and background colors in PCB calculator
...
wxHtmlWindow forces white background and black text. Force it back to
system settings.
2021-10-07 19:09:42 +00:00
Mike Williams
27765cd584
TOOL_DISPATCHER: drag activation should always use screen coordinates
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9325
2021-10-06 19:05:18 +00:00
Jeff Young
1bb5fc3fd6
Work around EnsureVisible bug in wxWidgets during DRC cross-probe.
...
Also adds double-click-marker to open DRC dialog and select marker
in list.
Fixes https://gitlab.com/kicad/code/kicad/issues/7246
2021-10-06 11:17:03 +01:00
Jeff Young
95f841a037
A more nuanced method of making Board & Schematic Setup read-only.
...
This one still allows you to scroll to see all contents.
Fixes https://gitlab.com/kicad/code/kicad/issues/9302
2021-10-06 11:16:46 +01: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
Seth Hillbrand
548e5f49bd
Clean up unused variable usage
...
Unused variables in function calls can be commented out. Unused
return variables get a new routine `ignore_unused()` that silences the
warnings with zero overhead.
2021-10-05 10:00:30 -07:00
Jeff Young
930c4e5582
Cleanup.
...
Formatting.
Naming conventions.
Use of auto.
Use of STL cover types.
2021-10-03 19:42:29 +01:00
Jeff Young
11c91c7179
Improve obscuring dialog algorithm to handle multiple dialogs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8970
2021-10-03 13:27:46 +01:00
Jeff Young
574bef2237
Normalize drawing sheet path to env vars & prj, not just prj.
...
Also cleans up the dialog a bit.
Also changes the workings of NormalizePath to return the input if
it couldn't be shortened which saves open coding that behaviour in
all its callers.
Fixes https://gitlab.com/kicad/code/kicad/issues/9036
2021-10-02 23:39:45 +01:00
Jeff Young
0dce303c49
Prefer wxASSERT to assert.
...
The former gives warning when not running under a debugger; the latter
does not.
2021-10-02 23:39:45 +01:00
Jeff Young
e2baacec21
Add cross-probing between PCB (markers) and DRC marker list.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7246
2021-10-02 23:39:45 +01:00
Jeff Young
f606679164
Proper numeric sorting for intersheet refs.
...
Also expunges the horrifically named std::remove and std::remove_if
(neither of which remove anything).
2021-10-01 18:29:21 +01:00
Seth Hillbrand
c4fcff46ab
Add Thai language option
2021-09-30 08:38:41 -07:00
Jon Evans
62ef27e372
Remove hard-coded anchor color in eeschema
2021-09-28 20:26:47 -04:00
Mikolaj Wielgus
adafb15126
Remove LaunchURL()
...
Unused and insecure.
Related to https://gitlab.com/kicad/code/kicad/-/issues/9236
2021-09-28 22:39:18 +02:00
Mike Williams
9ca836d1ea
Tools: Respect system drag
...
Also remove the time-based aspect. We aren't all super speed clickers.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/8765
2021-09-27 16:44:32 +00:00
Jeff Young
c05e4376f9
Update backups folder name when doing project save as.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9254
2021-09-27 13:24:45 +01:00
Jeff Young
544fa939f8
Lock/unlock group members when locking/unlocking group.
...
Also moves the stateful selection filter to after the hierarchy filter
since the hierarchy filter might swap a pad selection for a footprint
selection.
Fixes https://gitlab.com/kicad/code/kicad/issues/9255
Fixes https://gitlab.com/kicad/code/kicad/issues/7542
2021-09-27 11:29:52 +01: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
Jeff Young
5bf042fcc1
Use individual parameter version of wxExecute.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9236
2021-09-26 15:03:06 +01:00
Jeff Young
46949abe4a
Don't scroll to highlight an object already visible.
2021-09-25 15:31:52 +01:00
Seth Hillbrand
c3b6939ea7
Allow quiet creation (scripting)
2021-09-24 13:49:45 -07:00
Seth Hillbrand
64be61b4d6
Allow user to set footprint type up front
...
The default is usually wrong and presenting the basic footprint
information when creating an empty footprint allows the user to
establish their preference before mistakes occur.
Fixes https://gitlab.com/kicad/code/kicad/issues/9215
2021-09-24 13:48:01 -07:00
Jeff Young
c7f098ab25
Remove unused variable.
2021-09-24 16:03:13 +01:00
Seth Hillbrand
0f10748226
Disallow Ctrl-Tab and Ctrl-Shift-Tab as hotkeys
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9010
2021-09-20 11:13:50 -07:00
Jeff Young
3651d7c5e7
Remove vestiges of old zoom-auto architecture.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9055
2021-09-19 18:32:15 +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
5c07441e24
Remove Setup Dialog assignment of netclasses to buses.
...
Also removes the message bar display of assigned netclass for
buses and bus-to-bus entries.
Also fixes a bug where assigning a netclass via the canvas only
looked at the first level of bus members (and not any nested
members).
Also fixes a bug where the bus name validator tried to validate
a vector bus first -- which doesn't work as a vector bus may be
nested in a group bus.
Also fixes a bug where we were failing to check for illegal
chars in bus definitions which otherwise passed the bus parsers.
See additional comments in the bug report.
Fixes https://gitlab.com/kicad/code/kicad/issues/9160
2021-09-17 22:01:17 +01:00
Jeff Young
364ecc02ee
Hide scaling hacks on platforms that don't need them.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9171
2021-09-17 12:37:53 +01:00
Jeff Young
2479e1d7b1
Improve common settings property grouping.
...
Also moves apply-icon-scaling-to-fonts to its own checkbox. (We used
to try to infer when to do it, but that turns out to be a rathole.)
2021-09-16 18:31:44 +01:00
Jeff Young
6197717251
Avoid poor choices for point colors.
...
Also adjusts the point size to account for the fact that it now has a border.
2021-09-16 14:17:52 +01:00
Jeff Young
b84d1456d5
KIFACE_I -> KIFACE_BASE.
2021-09-14 23:45:14 +01:00
Jeff Young
3aae3c6f65
Dark mode for a bunch of HTML dialogs.
...
WX_HTML_REPORT_BOX
WX_HTML_REPORT_PANEL
HTML_MESSAGEBOX
DIALOG_DISPLAY_HTML_TEXT
Fixes https://gitlab.com/kicad/code/kicad/issues/9157
Fixes https://gitlab.com/kicad/code/kicad/issues/9156
2021-09-14 21:23:57 +01:00
Jeff Young
7a993c0211
Add support mode for dark mode to SCINTILLA_TRICKS.
...
Also removes the return value from the BITMAP_STORE's themeChanged
method as it will provide the wrong answer for the second frame it's
called on.
Also hooked up ACTION_TOOLBAR, the app launcher, and the project tree
to the wx event for system color changes so they change on the fly.
Fixes https://gitlab.com/kicad/code/kicad/issues/6026
2021-09-14 00:18:50 +01:00