Wayne Stambaugh
a03e6e4926
Revert "Eeschema: fix broken page numbers when renaming a sheet file name."
...
This reverts commit a468a79948
.
2021-12-06 07:47:18 -05:00
Mikolaj Wielgus
10be483430
Make an exception for SCH_TEXT in SELECTION::GetCenter()
...
And undo the previous changes in SCH_TEXT::Rotate().
We continue hitting this with a wrench until it gets fixed or becomes
broken beyond any recognition.
2021-12-04 05:32:48 +01:00
Mikolaj Wielgus
83162364e7
Restore old rotation behavior for SCH_LABEL
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9861
2021-12-03 01:43:02 +01:00
Mikolaj Wielgus
4ba110e1ec
Restore original SCH_TEXT::GetBoundingBox()
...
Didn't intend to commit this, it was a mistake.
2021-12-02 16:43:19 +01:00
Mikolaj Wielgus
bb08ef2f41
Fix SCH_TEXT rotation around a reference point
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9690
2021-12-02 16:35:35 +01:00
kliment
9f568d3658
Eeschema: Add support for leading zeroes when auto-incrementing names ( fixes #9831 )
2021-12-01 13:20:35 +00:00
Wayne Stambaugh
a468a79948
Eeschema: fix broken page numbers when renaming a sheet file name.
...
Remove duplicate instance data saved in both root SCH_SCREEN and SCH_SHEET
objects that was causing them to be out of sync. All sheet instance data
is stored in the SCH_SHEET object itself and rebuilt on the fly so it is
always current.
Remove Get/SetPageNumber from SCH_SHEET_PATH object so it doesn't obfuscate
where the actual sheet page number information exists.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9782
2021-11-30 08:11:24 -05:00
Mikolaj Wielgus
f35b0446e6
Properly initialize SCH_TEXT spin style
2021-11-27 19:42:11 +01:00
Jeff Young
7fc04c3cf2
Fixes for realtime connectivity being off.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9628
2021-11-24 13:20:44 +00:00
Jeff Young
016a98df86
Increment numbers which have suffixes too.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9706
2021-11-21 18:02:17 +00:00
Seth Hillbrand
cd3ecdfc78
Fix sort to be irreflexive
...
Switching the order of the parameters must switch the sort order (no <=)
otherwise the sort is non-determinant and fails std::sort preconditions
2021-11-08 11:25:13 -08: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
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
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
Jeff Young
5d579d14c1
Give intersheet refs a bit more breathing room.
2021-10-01 18:29:21 +01:00
Jeff Young
f73042fe24
Some minor performance enhancements.
2021-09-28 14:28:35 +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
2d72ccb6ae
Simplify dangling end stuff a bit and remove graphic lines from it.
2021-09-24 12:19:27 +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
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
Seth Hillbrand
1c409ff90a
Fix typo in previous commit
2021-09-13 20:23:52 -07:00
Seth Hillbrand
2fdd805eda
Override SCH_GLOBALLABEL::HitTest
...
Global labels can optionally have intersheet references. When enabled,
they expand the bounding box of the label. Because they can be far away
from the actual label, the bounding box is not a good approximation for
the hittest
2021-09-13 19:55:48 -07:00
Jeff Young
dfacac5eb6
Repair label incrementer to handle formatting constructs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8992
2021-08-19 00:08:37 +01:00
Wayne Stambaugh
46b959c3e3
Move plotter headers into include folder.
2021-08-18 16:38:31 -04:00
Jeff Young
95b87ba29a
Freshen microwave polygon dialog and remove a bunch of dead code.
2021-08-03 01:11:11 +01:00
david-beinder
c34f45f646
Split global label size expansion from TextOffset setting
...
Global label expansion ratio default is now 37.5%
Wire text offset default is now 15%
2021-08-02 16:40:36 +00:00
david-beinder
bab13debcb
Improve overbar rendering in PCB and global labels
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8584
Moves the font slightly down in global labels
Keeps font with overbar at the same size in PCB OpenGL renderer
2021-08-02 16:40:36 +00:00
Jeff Young
6aaf4413b3
Fix kicad_string.h / string.cpp mismatch.
...
They don't define a KiCad string class, so the header file name was
somewhat misleading. But the fact that they didn't match definitely
made coding more difficult.
2021-07-29 16:03:25 +01:00
Wayne Stambaugh
cb72da294a
More NULL expunging.
2021-07-16 16:13:41 -04:00
Jeff Young
3288971a7c
Allow titleblock vars to be resolved outside the titleblock.
...
Also implements some variable resolving for Altium imports.
2021-07-06 13:30:17 +01:00
Jeff Young
64f07ea9c6
Update text variables after changes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8697
2021-06-29 13:55:06 +01:00
Jeff Young
ceb23c3aac
Don't display legacy placeholder for empty string ("~").
2021-06-12 18:58:15 +01:00
luz paz
f968fc8719
Fix source comment / documentation typos
2021-06-09 19:32:58 +00:00
Wayne Stambaugh
9ebabb222c
Pass objects by reference instead of on the stack.
2021-06-08 10:09:38 -04:00
Marek Roszko
4df3cb912d
Remove another leaky wx/log.h header
2021-06-03 08:11:15 -04:00
Marek Roszko
5f581aa6ad
Move some LABEL_SPIN_STYLE to the cpp to add back warnings
2021-06-02 00:26:16 -04:00
Wayne Stambaugh
ebd53cd45c
Eeschema: fix text justification terminology.
...
Use justification instead of orientation relative to the anchor point when
describing text direction and alignment. This seems to be the preferred
method by most users so hopefully this will eliminate some confusion.
Fix a bug in the s-expression schematic parser that failed to take into
account how graphical text alignment is defined for graphic text objects
compared to label text objects.
Fixes https://gitlab.com/kicad/code/kicad/issues/6489
2021-05-14 13:44:17 -04:00
Jeff Young
c7d689a022
Show field children when creating new labels.
...
And in particular, show reasonable intersheet reference facsimiles.
2021-04-02 15:15:07 +01:00
Jeff Young
7a13ad7b17
Consistent naming.
2021-03-19 23:06:19 +00: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
jean-pierre charras
2bc22de1a5
Eeschema: fix crash when opening preferences, due to null pointer.
...
In panel preview, Schematic() returns a null pointer.
Fixes #7869
https://gitlab.com/kicad/code/kicad/issues/7869
2021-03-11 08:20:27 +01:00
jean-pierre charras
33f465f754
SCH_GLOBALLABEL::GetBoundingBox(): do not include IREF when not shown.
2021-03-10 18:38:38 +01:00
jean-pierre charras
d295b5d6de
SCH_GLOBALLABEL: fix broken position of IREF, creating a broken bounding box.
...
Note also the bounding box is too large when the IREF is not shown, because
IREF is always included, even if not shown.
Fixes #7864
https://gitlab.com/kicad/code/kicad/issues/7864
2021-03-10 17:58:44 +01:00
Jeff Young
e4590e4762
Make sure SCH_GLOBALLABEL's bounding box includes its intersheet ref.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7819
2021-03-09 12:08:33 +00:00
Dominik Wernberger
e2aa7be4b3
Added a lot of consts and refactored a few lines
2021-03-08 12:49:48 -08:00
Franck Jullien
c16199c3f9
eeschema: add a setting to allow intersheets to not list their own page
...
Also disable inter-sheet options when "Show inter-sheet references" is
not checked.
2021-03-08 20:40:37 +00:00
Jeff Young
b9d26a55f2
Show variable references of text in status bar.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7790
2021-03-03 18:58:04 +00:00
Seth Hillbrand
f73039cb18
Fix wire endings both too small and too large
...
Junctions should only be wire endings when ending directly on the wire.
This is the requirement for netlisting, so we need to follow it in the
auto-end as well.
SCH_LABEL needs to allow ending because any wire that touches the label
will be connected, so there's a use case for this. However, the
bounding box for local labels did not include their connection point, so
we increase that box a bit. Note that this might have the opposite
effect to https://gitlab.com/kicad/code/kicad/-/issues/7689
Fixes https://gitlab.com/kicad/code/kicad/issues/7714
2021-02-25 16:27:05 -08:00
Jon Evans
92cc88f87c
Tighten up schematic label bounding boxes
...
Margins were being added in more places than necessary
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7689
2021-02-24 17:15:35 -05:00
Wayne Stambaugh
1786ae8773
Eeschema: use symbol nomenclature for object file naming.
2021-02-24 08:48:02 -05:00
Jeff Young
2a7e60960a
Use standard mirror icons & terminology.
...
Also use standard group icons.
Also put both (and rotate commands) in toolbar.
Fixes https://gitlab.com/kicad/code/kicad/issues/7504
2021-02-16 21:11:36 +00:00
Zoltan Gyarmati
17b0117074
eeschema: fixing intersheet ref mirroring for global labels
...
Implementing Mirror{X,Y} overrides in SCH_GLOBALLABEL in order
to properly handle Intersheet Ref field mirroring.
Fixes: https://gitlab.com/kicad/code/kicad/issues/7225
2021-02-05 19:55:54 +00:00
Jeff Young
8dfd297ee2
Show all pages for intersheet refs, and use IDs in hypertext menu.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7253
2021-01-25 00:55:38 +00:00
Jeff Young
f1221a9ca3
Resolve text variables in title blocks for outputing to netlist.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7153
2021-01-17 16:24:22 +00:00
Jeff Young
bd786b578a
Labels on pins should be considered "wire labels".
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7120
2021-01-15 21:07:45 +00:00
Dominik Wernberger
bb2881a5ab
Make RENDER_SETTINGS argument const
2021-01-12 20:51:31 +00:00
Jeff Young
3d852372ca
Handle nested unescaping (for buses in particular).
...
Also adds a few missing unescape() calls when showing netnames to the
user.
Fixes https://gitlab.com/kicad/code/kicad/issues/6400
2020-12-20 15:59:09 +00:00
Jeff Young
11117a2d9a
Fix invalid access into empty string.
2020-12-17 14:18:27 +00:00
Franck Jullien
70cbf59846
eeschema/intersheet: don't list own page
2020-12-15 01:06:00 +00:00
Jeff Young
9dae57ae9d
Fix several bugs in SCH color printing and plotting.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6723
2020-12-13 22:43:09 +00:00
Jeff Young
2050e05944
Formatting.
2020-12-04 14:48:48 +00:00
Franck Jullien
8d72a768e0
eeschema/intersheet: add print and plot functions
2020-12-04 14:46:42 +00:00
Peter Montgomery
821128cb8e
Eeschema: Make auto-decrementing net labels stop at zero
...
CHANGED: If you set the auto-increment value to a negative number,
created a net label and hit the insert key, when the name got below zero,
the net labels tried to go negative but created bad labels instead.
Now the code caps decrementing at zero, warns users when it has
happened, and explains why.
Fixes https://gitlab.com/kicad/code/kicad/issues/6537
2020-12-04 12:48:32 +00:00
Jeff Young
050d9e37ec
Fix rotation bugs in Eeschema.
...
Rotate text using the Rotate90() function which gets the orientation
right.
Also, when calculating the center point for rotation, don't include
labels if the selection contains other stuff. It just makes the
rotation odd, and tends to cause walking when continuing to rotate
(due to keep-upright being non-symmetrical).
Fixes https://gitlab.com/kicad/code/kicad/issues/git
2020-11-24 18:19:35 +00:00
Jeff Young
1f5831185e
Fix rotation of multiple global labels with intersheet references.
2020-11-21 23:44:26 +00:00
Jeff Young
7c344e9be6
Mirroring for intersheet references.
2020-11-18 23:34:27 +00:00
Jeff Young
293795fd46
Support rotation on intersheet references.
2020-11-18 23:34:27 +00:00
Jeff Young
c1d1c12b41
Simplify message panel code.
...
We've had the colours turned off for two releases now without any
screaming or gnashing of teeth, so it's time to clean up the code.
2020-11-18 17:32:40 +00:00
Marek Roszko
16e3e59495
Split out arrayDim and MIRROR templates from macros.h
...
These were not macros
2020-11-17 20:21:04 -05:00
Jeff Young
8c5c902fa3
Re-write IntersheetRefs on top of SCH_FIELDs and textVars.
...
1) Generalize SCH_ITEM owners (SCH_COMPONENT, SCH_SHEET, and now
SCH_GLOBALLABEL)
2) Generalize hypertext items
3) Use SCH_FIELD autoplace infrastructure for placing intersheet
references
4) Use textVar infrastructure for buildin intersheet references.
As an important side-effect this also fixes the undo issues with
intersheet refs.
2020-11-17 16:05:49 +00:00
Jeff Young
7bd31d5237
Naming conventions.
2020-11-14 18:26:03 +00:00
Jeff Young
8bae52d1c3
Correct naming conventions.
2020-11-14 14:29:11 +00:00
Jeff Young
592cd99fd5
Pin dialog min size so that we don't wrap our (hacked) overbars.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6371
2020-11-13 17:55:54 +00:00
Marek Roszko
9de0ff22c1
Rename Mirror template to MIRRORVAL to avoid shadowing
...
I am bad at naming creativity here, but hey, it's unique
2020-10-25 20:44:22 -04:00
Marek Roszko
e49ac45b84
HTML_MESSAGE_BOX is a dialog
2020-10-25 20:01:12 -04:00
Marek Roszko
a785f70ea1
msgpanel is a widget, shove it to the right folder.
2020-10-25 20:01:12 -04:00
Marek Roszko
304e5faf36
Move wxStringSplit to kicad_string
2020-10-24 00:17:07 -04:00
Jeff Young
83890f8d3a
Move label editors to QuasiModal so the Syntax Help window can be shown.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5437
2020-10-20 22:26:47 +01:00
Marek Roszko
a1c75748a0
Remove GetChars(), a wxWidgets 2.9 compatibility hack
2020-10-15 20:53:25 -04:00
Marek Roszko
1538d737e7
Split out FILL_T to its own header to avoid spreading eda_item everywhere
2020-10-14 21:51:23 -04:00
Marek Roszko
12d21e34e2
Remove trigo.h from eda_text.h
2020-10-13 23:37:48 -04:00
Jeff Young
4565631728
Finish moving eeschema assigned netclasses to sheet-path-relative.
...
Also adds code for the case where a new label is created on a net
with an existing netclass assignment.
Fixes https://gitlab.com/kicad/code/kicad/issues/5886
2020-10-07 16:31:55 +01:00
Michael Kavanagh
006e383f2a
Move sch_text help into markdown file
2020-10-06 17:18:35 +00:00
Mikolaj Wielgus
400c15b8eb
Add mils to units, remove useMils variables
2020-10-03 20:06:56 +00:00
jean-pierre charras
7865d8de43
more cleanup about removing useless include
2020-10-02 15:50:46 +02:00
Franck Jullien
2fc49045d1
ADDED: eeschema: Add intersheets references function
...
Add a new function to place intersheets references next to
global labels.
2020-10-01 20:39:32 +00:00
Jeff Young
13f1de8e73
Forgot a bunch of files from last commit.
2020-09-19 19:53:58 +01:00
Jeff Young
64fa400b19
Ease translation a bit.
...
Also improves the SNR and consistency of the menu item text. For
instance, a position is rarely useful, while relative sizes can be.
Also removes some unnecessary repitition, such as "Graphic Rectangle"
when "Rectangle" communicates the necessary information.
2020-09-19 18:49:06 +01:00
Jeff Young
f347118ce3
Add a min pin width advanced config for plotting.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5546
2020-09-08 20:19:54 +01:00
Seth Hillbrand
02a5d47de9
Avoid passing references in EESchema
...
This returns the connection list by value. This allows easier Python
use
Also renames m_End() to GetEnd()
2020-09-08 06:29:27 -07:00
Jeff Young
e782794f96
Flesh out object properties and DRC Rule syntax help.
2020-09-05 17:44:59 +01:00
Jon Evans
38a4e4ad5a
Remove the last bits of the old netlist system
2020-08-30 16:30:04 -04:00
Jeff Young
15c136ead2
Make a bunch of help dialogs modeless.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5334
2020-08-24 23:17:33 +01:00
Jeff Young
0804f487ec
Add text var cross-reference processing to SCH_FIELDs.
2020-07-30 14:27:42 +01:00
Jeff Young
55784afbfe
Allow text variables to reference parent sheet's fields.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2466
2020-07-28 13:35:37 +01:00
Jeff Young
e66523586b
Add Assign Netclass... to context menu.
...
ADDED Assign Netclass feature to EEschema.
Netclass assignments also now shown in status bar.
Fixes https://gitlab.com/kicad/code/kicad/issues/4581
2020-07-07 14:23:39 +01:00
Jeff Young
e7603ddcb9
Add tilde escape syntax to syntax help.
2020-05-29 22:06:48 +01:00
Jeff Young
8b084c373e
Autocomplete for text variables.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4190
2020-05-27 23:29:51 +01:00
Jeff Young
f3e4e61fa7
Push some more editing code out to the tool framework.
2020-05-27 23:29:51 +01:00
Jon Evans
7c7b7f41da
Move SCH_SCREEN project access to SCHEMATIC
...
SCH_SCREEN no longer needs to be a KIWAY_HOLDER
2020-05-20 22:27:48 -04:00