Commit Graph

530 Commits

Author SHA1 Message Date
Seth Hillbrand 0bab025832 Fixup toolchaining for immediate mode
The move tool can stack on others, so when we re-enter the previous tool
this caused another immediate action.  We flag re-entry in the tool
stack to check for this and avoid unexpected tool starts
2021-02-24 10:44:54 -08:00
Seth Hillbrand 0518d9c546 Add more force-immediate tools 2021-02-23 17:05:03 -08:00
Jeff Young a3b9e8ddb4 Round 2 of Worksheet -> Drawing Sheet. 2021-02-23 11:57:44 +00:00
Jeff Young cad5198ab7 Worksheet -> (industry standard) Drawing Sheet. 2021-02-22 17:35:46 +00:00
Jeff Young 2d28ed8eda Move canvas backend selection to Preferences.
Fixes https://gitlab.com/kicad/code/kicad/issues/7630
2021-02-21 20:12:43 +00:00
Marek Roszko 622baa6531 Silence more unused exception var warnings 2021-02-20 12:01:51 -05:00
Jeff Young 66b33834b5 Always enable save; move dirty bit to asterisk in title bar.
Also unifies PCB Editor and Schematic Editor names with other
locations in the GUI (which were still Pcbnew and Eeschema).

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

Fixes https://gitlab.com/kicad/code/kicad/issues/7594
2021-02-18 16:05:42 +00:00
Seth Hillbrand 505844f68c Generalize the Ctrl-Q to all frames
Rather than adding our handler to each frame separately, we initialize
the Ctrl-Q quit action at the base frame to be consistent
2021-02-09 11:43:42 -08:00
Marek Roszko 32bf88fa8e Point to the user template path by default in pl editor 2021-01-31 23:57:41 -05:00
Mikolaj Wielgus a6b2fb3819 Page layout editor: Fix bitmap bounding box
Fixes https://gitlab.com/kicad/code/kicad/issues/7315
2021-01-30 20:39:16 +00:00
Wayne Stambaugh 6229b127e2 Page layout editor: fix minor properties panel control layout issues. 2021-01-28 18:23:06 -05:00
Wayne Stambaugh 6a39b81647 Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
Michael Kavanagh 479487ceb1 Tidy up context menus a bit
Try and put the common actions in the same places
2021-01-17 22:42:03 +00:00
jean-pierre charras e29eefffab French translation update. 2021-01-15 14:21:22 +01:00
Roberto Fernandez Bautista ef00e7513a pl-editor: Activate Point Editor immediately to allow resizing of item just created 2021-01-15 01:36:37 +00:00
Roberto Fernandez Bautista c7624d2957 pl-editor: Don't update the properties panel while adding a shape item (line or rectangle)
Fixes a bug that caused a crash when editing an item in the properties window before it was fully created
2021-01-15 01:36:37 +00:00
Roberto Fernandez Bautista c3190627e2 pl-editor: Don't update the properties panel while adding an text item
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7074
2021-01-15 01:36:37 +00:00
Jeff Young f45c6b4166 Better labels and tooltips for step parameters.
Fixes https://gitlab.com/kicad/code/kicad/issues/7091
2021-01-13 21:22:24 +00:00
Jeff Young 69f8f79a42 Compress space out of pagelayout properties.
This allows the Apply button to appear on a MacBook Pro screen without
scrolling.
2021-01-13 21:22:24 +00:00
Seth Hillbrand 4f4a5ae3cf Use longer labels
Removing context from labels makes it difficult for translators to
correctly interpret the text.

Fixes https://gitlab.com/kicad/code/kicad/issues/7091
2021-01-13 12:35:07 -08:00
jean-pierre charras 431616981b pl_editor: fix a typo that copy the end pos Y prm into the end pos X prm
Fixes #7088
https://gitlab.com/kicad/code/kicad/issues/7088
2021-01-13 16:18:44 +01:00
Dominik Wernberger bb2881a5ab Make RENDER_SETTINGS argument const 2021-01-12 20:51:31 +00:00
jean-pierre charras 5d099bb789 pl_editor: fix a typo that copy the X repeat prm into the Y repeat prm
Fixes #7078
https://gitlab.com/kicad/code/kicad/issues/7078
2021-01-12 20:33:52 +01:00
Konstantin Baranovskiy cd2c46e5c9 Make "... file is read only." warnings translatable. 2021-01-12 14:33:35 +00:00
Michael Kavanagh 8fba0c257b Icons: remove more inconsistencies around Select
Missed from 5d9b2d3fea
2021-01-11 23:31:24 +00:00
Jeff Young 50889a9ed6 Promote mouse drag settings to full enums. 2021-01-11 22:09:36 +00:00
Jeff Young 6c648df4c6 Support 3 drag vs. select options, and unifiy with other drag prefs.
Fixes https://gitlab.com/kicad/code/kicad/issues/5493
2021-01-11 11:50:14 +00:00
Michael Kavanagh b40e3a39f5 Minor cleanup. 2021-01-04 23:59:36 +00:00
Seth Hillbrand a67bf00b9e Only move page_layout repeated items once
The page layout items have peers for duplicated items that mark the
originating element.  We avoid the duplicate EDA_ITEM selections when
moving

Fixes https://gitlab.com/kicad/code/kicad/issues/6920
2021-01-04 06:41:24 -08: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
Seth Hillbrand 54ca087999 Update icon resource sets
Updates the .icns, .ico and .png files used by various distros to show
KiCad and KiCad files.
2020-12-22 15:16:33 -08:00
Jeff Young 47ea51ec34 Allow both aui-manager-based infobars and window overlay infobars. 2020-12-22 21:36:39 +00:00
Marek Roszko 9b0a137d6c Stop bludgeoncompiling dialog_page_settings
Through the power of OOP!
Needs some more cleanup though
2020-12-19 10:40:37 -05:00
Wayne Stambaugh 08cf9a1e20 Move headers from common folders to appropriate include folders round 1. 2020-12-17 08:12:18 -05:00
Jeff Young 73b7b104cd Fix some issues with Infobar sizing.
This also commits to the new strategy as it wasn't really compatible
with if-def-ing anymore.
2020-12-11 12:39:40 +00:00
Marek Roszko d7b79e71f2 Tweak the pleditor props pane to resize better on the item tab 2020-12-09 18:41:43 -05:00
Marek Roszko 8ff521819e Rearrange the item tab in pleditor properties
This will match how the v7 properties will probably work anyway.
It's a scrolled control, cram in controls widthwise to some arbitrary standard
2020-12-08 23:08:54 -05:00
Marek Roszko 0af46bb186 Some rearrangement of the General Options pleditor properties tab 2020-12-08 23:08:54 -05:00
Marek Roszko bf7daac975 Connect thickness to unit binder 2020-12-08 23:08:54 -05:00
Marek Roszko 6d678f4780 Bind the pleditor properties to units
We also go out of our way to ensure we still maintain the millimeter storage format
2020-12-08 23:08:53 -05:00
Marek Roszko 809149d747 Add opt toolbar to pl editor 2020-12-08 23:08:53 -05:00
Marek Roszko 5a2ef73d66 Fix the pleditor status bar text 2020-12-08 19:49:48 -05:00
Marek Roszko 4e9b9ee9cd Use DisplayErrorMessage instead of wxMessageBox directly 2020-12-08 19:49:47 -05:00
Marek Roszko ad1aae40ec Unify the saved file strings 2020-12-08 19:49:47 -05:00
jean-pierre charras 64f555079a Code cleanup related to zoom:
- remove outdated code or comment coming from old drawing code using wxDC
- move zoom values lists to zoom_defines.h
- fix incorrect zoom max and min values (gal scaling factor limits).
2020-12-02 18:35:28 +01:00
jean-pierre charras fcce62f0a4 cleanup related to zoom definitions 2020-12-02 18:35:27 +01:00
jean-pierre charras 71ab42e60a Minor fixes and cleanup related to zoom definitions.
Mainly move 2 define relative to Zoom from convert_to_biu.h to zoom_defines.h.
Will make some changes/fixes in zoom code more easy.
2020-12-02 10:14:35 +01:00
jean-pierre charras d28fa6c492 fix typo 2020-11-30 19:13:14 +01:00
jean-pierre charras 1fd862a362 Page layout editor: fix missing scrollbars in properties panel (GTK specific)
Fixes #4878
https://gitlab.com/kicad/code/kicad/issues/4878
2020-11-30 18:50:36 +01:00
Jeff Young f57cd91cb3 Formatting. 2020-11-29 10:57:45 +00:00
jean-pierre charras 005c3b84ad Better fix for incorrect page preview in Page Settings when the worksheet contains a bitmap
The actual size of pixels was incorrectly set.
Fix also bad names for a few vars and methods in BITMAP_BASE.
2020-11-28 10:53:26 +01:00
jean-pierre charras 2f00a2ada0 pl_editor, PL_POINT_EDITOR: fix issues when moving a point of a rect or a line.
- only the selected graphic item was modified.
- the WS_DATA_ITEM master item and others draw items (repeated items) were
not modified.

Fixes #6483
https://gitlab.com/kicad/code/kicad/issues/6483
2020-11-26 12:41:41 +01:00
Jeff Young 9c7c05c161 Mostly formatting cleanup but a few type-casting cleanups too. 2020-11-24 22:16:41 +00:00
jean-pierre charras 64636601b8 Eeschema: fix a Unicode/UTF8 management when pasting items from Clipboard.
Copy to clipboard save items (using S expr description) using wide strings
(not UTF8 encoding).
But Paste from clipboard was not converting the wide string to UTF8 string
when getting the stored data to send it as std::string to the S expr reader.

Fixes #6449
https://gitlab.com/kicad/code/kicad/issues/6449
2020-11-21 10:59:25 +01:00
Jeff Young 9e9946628a Go back to arrow cursor on a cancel (or finish).
Fixes https://gitlab.com/kicad/code/kicad/issues/6421
2020-11-19 20:09:28 +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 a207bd97bb Naming conventions. 2020-11-17 16:05:49 +00:00
Marek Roszko 377960d4be Push the 2 pleditor dialogs into the dialogs folder 2020-11-16 10:10:24 -05:00
Jeff Young 7bd31d5237 Naming conventions. 2020-11-14 18:26:03 +00:00
Marek Roszko 08ca80a2d8 Smooth out redrawing of toolbars by not letting wx pointlessly calculate both orientations
Monkey patch

Fix #5705
2020-11-05 20:56:14 -05:00
jean-pierre charras 068758f8dd pl_editor, properties panel: ensure scroll-bars are show when needed
After selecting an item one need to generate a size event after
the widgets shown in properties panel are modified to create (or remove)
scroll-bars according to the size of the panel and the displayed items.
2020-11-05 18:37:37 +01:00
Ian McInerney 3d47eb0d49 Fix localization of the menu strings with accelerator strings
The accelerator strings really shouldn't be part of the translation,
and some translations have cause the accelerator keys to be incorrectly
handled. It is simpler to make it separate and just join them to the
translated string.

Make all accelerator modifiers use lowercased Ctrl instead of CTRL
to be the same as the other modifiers.

Fixes https://gitlab.com/kicad/code/kicad/issues/5992
2020-11-04 01:31:52 +00:00
Marek Roszko 6e9ddd9c93 Enable canvas switching in pl_editor 2020-10-31 17:20:12 -04:00
Marek Roszko 14c18b7e64 Move ui functions out of common and into ui_common 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
jean-pierre charras 34179cd039 Add missing icon in menu, and fix them in other menus 2020-10-25 14:51:08 +01: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
Wayne Stambaugh 8ff51d8899 Eeschema: add schematic sheet page number.
The groundwork has now been laid for per sheet instance data.  Initially
this only supports sheet page numbers but could be expanded to include
other per sheet instance information.

ADDED: Support for user defined schematic page numbers.
2020-10-19 14:05:45 -04:00
jean-pierre charras 539ac4c214 Remove a few include<wx/wx.h> in many files that do not actually use this include. 2020-10-19 09:00:50 +02:00
Marek Roszko ba503bedcf Use the correct parent for the pl editor color pane 2020-10-18 22:06:36 -04:00
Jon Evans e735d21824 Maximize main editors by default if config is missing
Also set default size for other windows to something slightly
larger than it was before
2020-10-18 14:38:55 -04:00
Marek Roszko a1c75748a0 Remove GetChars(), a wxWidgets 2.9 compatibility hack 2020-10-15 20:53:25 -04:00
Marek Roszko f59551d6ad Remove painter.h from eda_text.h 2020-10-14 19:18:38 -04:00
Marek Roszko 9656bd310b Remove eda_item and gr_basic from eda_text.h 2020-10-13 22:46:39 -04:00
Marek Roszko b2e9f6987d Split base_struct into eda_item and eda_rect 2020-10-13 21:24:50 -04:00
Marek Roszko 2c86363aa0 Relocate the page_layout includes to a page_layout folder 2020-10-13 20:33:33 -04:00
Marek Roszko efa28d3357 Untangle pl_editor includes 2020-10-13 20:33:33 -04:00
Marek Roszko 03074ae6ed Kick the selection tool to activate (and thus update cursors) on exiting some picker tools 2020-10-11 13:12:29 -04:00
Marek Roszko 558f4b4b51 Add new place cursor, fix cursor hotpoints again 2020-10-10 23:45:21 -04:00
Mark Roszko a8bd0a9b84 Handle Windows manifests ourselves and add dpi awareness option 2020-10-10 19:08:23 +00:00
Ian McInerney b44dbc90fe pleditor: Don't double delete items being placed
The RollbackFromUndo function deletes the items, so
they shouldn't be deleted before it is called.
2020-10-10 15:24:35 +01:00
Ian McInerney 5aa796b5fe Cleanup compiler warnings 2020-10-10 15:24:35 +01:00
Marek Roszko bd30a4a406 Add selection lasso and window cursors 2020-10-08 21:25:21 -04:00
Marek Roszko f5e0754f65 Use the setCursor lambda pattern and fix up the initial cursor states 2020-10-07 23:26:14 -04:00
Mark Roszko d9485129c8 Implement more context specific cursors using both stock and custom cursors. 2020-10-08 00:50:28 +00:00
Jeff Young 0bc7bbbadb Report silk/edge collisions.
Fixes https://gitlab.com/kicad/code/kicad/issues/5854

Fixes https://gitlab.com/kicad/code/kicad/issues/4892
2020-10-06 14:21:18 +01:00
Ian McInerney 43c14face0 Switch to showing metric/imperial units in comboboxes and menus
This will always show 1 unit from each system, with the primary unit
being the current frame unit and the secondary unit being the
most recent unit used from the other system. These are saved in
the settings, so they are saved between runs.
2020-10-05 20:26:33 +01:00
Ian McInerney 9d3aca56bb Add unit submenu to page layout editor view menu 2020-10-05 20:22:57 +01:00
Ian McInerney 6fbe645d6d Ensure the page layout editor settings pages are in a subpage
Without this, it looks like the settings for the program are
actually common.
2020-10-04 17:53:55 +01:00
Ian McInerney 122bd7ca7c Make the statubar aware of mils units
Switch Eeschema to use the built-in printing routines
because its precisions are close to those and it is
cleaner.

Give mils a precision of 2 decimal places to match
the precision shown in inches.
2020-10-04 17:53:55 +01:00
jean-pierre charras 0b23cb7dbb more cleanup about removing useless include 2020-10-03 15:26:03 +02:00
jean-pierre charras b38cef409b Rename CopyFile() to KiCopyFile() to avoid name colliding with a windows header.
Using CopyFile() that can collide with a windows header create hard to
understand errors, including link errors.

Renaming this function avoids these strange errors.
2020-10-03 10:08:21 +02:00
jean-pierre charras 87a220b8e2 more cleanup about removing useless include 2020-10-02 14:51:11 +02:00
Ian McInerney f736cc15b6 pleditor: Ensure toolbars are redrawn when icon size changes
This ensures the icon scaling factor is applied to the toolbars,
and also fixes a drawing artifact where the old dropdown boxes
would still be visible on top of the scaled icons (with the new
ones in their proper place.
2020-10-01 19:50:09 +01:00
Ian McInerney fc565edb33 Add a palette to the toolbars to display groups of actions
This adds a palette to toolbar items that displays groups
of actions when long-pressed on a button.
2020-09-27 01:00:44 +01:00
PJM d1322e7d1d Refactor GetDocumentExtents()
CHANGED: GetDocumentExtents() in 'eda_draw_frame.h' now has a bool
parameter "aIncludeAllVisible" with a default value "true" which makes
it behave as it did before adding parameter.  If "aIncludeAllVisible"
is false, the returned bbox ignores some items depending on which
program it is running in.

CHANGED: Made "Zoom to Objects" use only PCB edge in Pcbnew.  This
allows text, notes, etc outside the PCB edge to be excluded in the
zoom calculation.

CHANGED: Added "Zoom to Objects" to Pcbnew main menu, and to RMB context
menus for Eeschema and Pcbnew.

Fixes https://gitlab.com/kicad/code/kicad/issues/5787
2020-09-25 00:31:56 -07:00
Seth Hillbrand e840ac1c0c Adding pledit and cvpcb zoom to fit 2020-09-22 23:21:44 +00:00
Seth Hillbrand f493e270ea ADDED: Menu option to enable/disable snap to grid
You can now enable and disable snap to grid when drawing/editing across
all apps.  You can also tie snap to grid to the visibility of the grid
to allow rapid enable/disable via grid display.
2020-09-10 20:09:30 -07:00
Seth Hillbrand 4026904cc4 Make grid snapping depend on grid visibility
Turning the grid view on enables snapping to the grid.  Turning it off
removes the snap and allows free draw
2020-09-09 10:18:15 -07:00
Seth Hillbrand 173b4ff588 Add snapping to eeschema
This generalizes both the SetPosition() function and ORIGIN_VIEWITEM
class away from the pcbnew-centric.
2020-09-09 10:18:15 -07:00