Commit Graph

635 Commits

Author SHA1 Message Date
Maciej Suminski 4f9a418694 Moved SPICE_VALUE to a separate source file 2016-08-11 14:41:43 +02:00
Maciej Suminski f62a6425a3 Changed the simulator code license to GPLv3+ 2016-08-11 14:41:43 +02:00
Maciej Suminski 51f0564119 Signals are added using a separate dialog 2016-08-11 14:41:42 +02:00
Maciej Suminski 3999ff1973 Resized DIALOG_SIM_SETTINGS 2016-08-11 14:41:41 +02:00
Maciej Suminski 1a6e048afc Pressing Enter accepts changes in Simulation settings dialog 2016-08-11 14:41:40 +02:00
Maciej Suminski 246a43baf0 Spice model editor dialog 2016-08-11 14:41:40 +02:00
Maciej Suminski a83d4802f9 Load Spice directives from schematics when Sim settings dialog is launched 2016-08-11 14:41:36 +02:00
Maciej Suminski 78526ee913 Additional options for netlist exporter (fix passive values, library include paths) 2016-08-11 14:41:36 +02:00
Maciej Suminski 822f436231 Removed unused DIALOG_SIMULATE_PLOT 2016-08-11 14:41:35 +02:00
Maciej Suminski fe92630f16 Fixes for DC sweep directive generated by Simulator settings dialog 2016-08-11 14:41:34 +02:00
Maciej Suminski ee1adcd92c Fix for noise directive generated by Simulation settings dialog 2016-08-11 14:41:32 +02:00
Maciej Suminski 183fb24112 Fixed string for transient simulation directive 2016-08-11 14:41:31 +02:00
Maciej Suminski c5227b7279 Fix: use correct node numbers in noise simulation directive 2016-08-11 14:41:31 +02:00
Maciej Suminski 3c909e2c32 Allow typing zeroes in Simulation settings dialog 2016-08-11 14:41:31 +02:00
Maciej Suminski 2b1784cfc6 Simulation settings combo boxes are filled with net/power source choices 2016-08-11 14:41:30 +02:00
Maciej Suminski 95ca3914ce Fields in simulation settings dialog are treated as invalid when empty 2016-08-11 14:41:29 +02:00
Maciej Suminski a2b16ae640 Initial 'Simulation settings' dialog 2016-08-11 14:41:29 +02:00
Maciej Suminski 951d16c655 Fixed Spice netlist export options and added a few new flags 2016-08-11 14:41:20 +02:00
Maciej Suminski b6eab191d0 Added a button to add Spice fields to a schematic component 2016-08-11 14:41:10 +02:00
Maciej Suminski b4d9e7ee99 Fixed asserts in DIALOG_LIB_EDIT_TEXT_BASE. 2016-08-11 14:41:04 +02:00
Tomasz Wlostowski 7b05dc2a13 Fbp files for simulator 2016-08-11 14:41:04 +02:00
jean-pierre charras defac5272b refinemenst in dialogs and OSX Cancel button fix 2016-07-18 17:54:41 +02:00
jean-pierre charras f83a76a970 Eeschema: dialogs: incorrect sizes fixes and osx copy text fix 2016-07-18 09:04:13 +02:00
jean-pierre charras 7253ba28df Eeschema: dlg size fixes and osx fixes 2016-07-16 13:25:07 +02:00
jean-pierre charras 3cea754d90 Eeschema: dlg size fixes and osx fixes 2016-07-16 12:54:55 +02:00
Simon Richter 1b2fd6a382 Replace BOOST_FOREACH with C++11 range based for. 2016-06-29 16:07:55 -04:00
Simon Richter 527c0eff8e Eeschema: ERC dialog code improvements.
* Rename the "net", "lastNet" and "nextNet" variables to "item", "lastItem"
  and "nextItem", respectively, because these refer to netlist items, not
  nets.
* This adds a suffix "Idx" to the indexes into the list, and introduces local
  copies of the pointers to the objects we are looking at, in order to have a
  shorter way of addressing them.
* The ERC code depends on netlist items to be sorted by net code, so verify
  that in debug builds. While this condition is stricter than necessary, it
  should still hold with the current code, and provide a good canary if a
  change to the sorting code might break ERC.
2016-06-28 08:52:22 -04:00
Chris Pavlina 9eef653625 Remove legacy option to zoom to selection on middle mouse button
This feature was not reliably available: neither pl_editor nor GAL supported
it. It has been replaced over the past few commits with a new zoom-to-selection
tool available in all applications and modes.
2016-06-11 19:37:43 -04:00
Chris Pavlina c13f80bb49 Remove unneeded compile option KICAD_KEEPCASE
Libraries have been 100% case-sensitive for a while now; there is no longer a
need to keep this option around. This will change nothing except for any
stragglers still manually specifying this old option.
2016-06-10 23:15:02 -04:00
Simon Richter 715eddf68b Code cleanup: remove dead code, add comment. 2016-06-08 08:32:01 +02:00
jean-pierre charras 11c369ee1b Fix minor compil warnings (deprecated warnings and shadowed local vars warnings) 2016-06-07 17:33:12 +02:00
Simon Richter 96ec9db5d6 Add missing C++ stdlib headers
The GCC standard library headers often include other headers, which makes
some code compile that forgets to include several headers.
2016-05-28 12:46:29 -04:00
jean-pierre charras e2d4118470 Eechema, Component editor: Fix a bug in Pin properties dialog: a parameter used to draw the pin in preview canvas was incorrect, due to code change in draw pin. 2016-05-19 18:38:36 +02:00
Dick Hollenbeck daa0d391de Enhancement in eeschema: Footprint field immediately updated after footprint picking (from footprint viewer) in the eeschema LIB_PART or component text field properties editors 2016-05-17 20:02:49 +02:00
Chris Pavlina 0f407a756c Pull existing settings into Doxygen module 2016-05-12 15:45:47 -04:00
Chris Pavlina 84d3fbfd68 Remove MaxUndoItems, make devel option DevelMaxUndoItems
Begin documenting configuration keys in Doxygen
2016-05-12 12:51:32 -04:00
jean-pierre charras 6a7544a2ca Fix a few deprecated compil warnings in dialogs generated by wxformbuilder 2016-05-11 10:51:07 +02:00
jean-pierre charras bfeb61abef Fix a few shadowed local variables and deprecated warnings in dialogs (using a very recent wxformbuilder version). 2016-05-10 08:56:03 +02:00
Matthew Petroff db54f3e7a7 Correct multiple UI spelling errors 2016-05-02 10:01:43 -04:00
Wayne Stambaugh 18c8f50b1d Component library editor field properties dialog improvements.
* Remove fixed dialog size setting to allow sizers to do thier job.
* General spacing and layout improvements.
2016-04-29 13:37:36 -04:00
Wayne Stambaugh 0a263d2f2b Fix value field editing bug in component library editor. (fixes lp:1576363)
* Allow editing value field for power components in the component library editor.
2016-04-29 12:01:09 -04:00
Wayne Stambaugh ce593f9784 Eeschema: fix broken component reference field in hierarchies. (fixes lp:1572812) 2016-04-22 09:29:47 -04:00
jean-pierre charras 32fc9198c3 Minor fix: dialog_edit_component: Fix incorrect tool tip for the button which runs the footprint browser or the datasheet browser (previous was the same tooltip, regardless the purpose of this button), depending on the selected field. 2016-04-17 17:15:26 +02:00
Wayne Stambaugh 30f5a7a7e1 Eeschema: fix field edit dialog power component warning bug.
* Prevent power component warning from being shown when edit normal component
  fields.
* Make text edit dialog size itself instead of using a fixed size.
* Improve the alignment and spacing in the text edit dialog.
2016-04-04 10:31:34 -04:00
Wayne Stambaugh 76d099b337 Eeschema: fix illegal field characters causing corrupt schematic files on Linux. (fixes lp:1529358)
* Refactor edit one field dialogs to use validators and transfer data to and
  from window functions.
* Add code to DIALOG_SHIM to handle validation and transfer functions since
  the base dialog class code is not called by EndQuasiModal().
* Add custom validator class for filtering field text control characters.
* Add new field validator to edit schematic component dialog field text
  control.
* Add new field validator to edit fields in library editor dialog field
  text control.
* Make a few LIB_PART member functions const.
2016-04-02 08:25:44 -04:00
unknown 78d96afe28 Eeschema: enhancement on Windows: adds a show console option for BOM plugin execution (needed for instance by python plugins which are run with pythonw) 2016-03-31 08:28:16 +02:00
jean-pierre charras df1d10c824 Eeschema: Fix issue in multiline text properties dialog editor: on wxWidgets 3.1, the enter key closes the dialog instead of inserting a new line in text. 2016-03-24 13:28:50 +01:00
Chris Pavlina db8c72cc9d Fix mistake in r6642 / git:bb9f1b0 2016-03-22 21:35:44 -04:00
Chris Pavlina bb9f1b00cd Fix graphics rendering on RTL systems (lp:1559545)
wx mirrors graphics by default on RTL systems; it is necessary to individually
set graphics canvases to LTR mode to avoid this.
2016-03-22 14:53:50 -04:00
jean-pierre charras 99d18faca9 Change the way main editor frames are managed by Kicad: before this change, they had the Kicad manager frame as parent frame, and it creates a few issues:
- When the Kicad manager is iconized, all other child frames are iconized (normal wxWidgets behavior)
- For viewer frames in modal mode, there is a more annoying issue: they have the wxFLOAT_ON_PARENT frame style on unix, and wxSTAY_ON_TOP on Windows.
wxFLOAT_ON_PARENT frame style is incorrect (although on most WM it works) because the parent frame (Kicad manager Frame) is not the caller. It is usually a main editor frame.
It does not work on Windows (wx STAY_ON_TOP is used).
* Now each editor frame has a null parent.
Therefore iconizing the Kicad manager frame does not iconize other frames.
* Viewer frames have null parent in normal mode and the caller parent in modal mode (therefore wxFLOAT_ON_PARENT frame style is always and correctly used)
* References to opened/closed main frames are no more managed by the (complicated) kicad code. Instead of, a non critical and more easy to understand code just uses FindWindowByName to know if a main window exists or not.

These changes do not fix all issues about Kicad frames brought to the foreground or the background, but it fixes a few issues, and AFAIK do not add other issues.
2016-03-21 17:36:06 +01:00
Chris Pavlina b521c91a6b Display "Finished" message for eeschema ERC
pcbnew DRC displays this as well; a user pointed out that when there are no
errors, it can be hard to tell that ERC ran at all.
2016-03-11 19:23:44 -05:00
Wayne Stambaugh 92f5ab8589 Eeschema: SCH_SHEET_LIST improvements.
* Derive SCH_SHEET_LIST from std::vector rather than using internal array
  management.  Change all internal code to use iterators or array operator
  in loops.
* Allow creation of empty SCH_SHEET_LIST for external population for plotting
  and printing.
* Clean up print an plot code to take advantage of new SCH_SHEET_LIST behavior.
* Make BuildSheetList() public so list can be populated after creation.
* Update all instances of SCH_SHEET_LIST with the appropriate SCH_SHEET
  object on initialization.
* Create const and non-const version of SCH_SHEET_PATH::GetSheet().
2016-03-06 16:22:01 -05:00
jean-pierre charras 0d1395ee08 Fix coverity warnings:
CID 135848:  Memory - illegal accesses
CID 135846:  Class hierarchy inconsistencies
2016-03-06 09:31:00 +01:00
jean-pierre charras 8522b0deb7 Rename enum TypeSheetLabel to PINSHEETLABEL_SHAPE (Better name, and in accordance with our coding style policy) 2016-02-28 19:16:59 +01:00
unknown 4b103baa3a Enum refactoring and shiny icons in dialog_lib_edit_pin_table 2016-02-28 18:33:29 +01:00
Wayne Stambaugh b7e56ae1cb Eeschema: SCH_SHEET_PATH refactor.
* Derive SCH_SHEET_PATH from std::vector< SCH_SHEET* > and remove unnecessary
  assignment operator and list management functions.
* Remove function BuildSheetPathInfoFromSheetPathValue() since it was
  effectively an assignment operation.
* Replace all calls to BuildSheetPathInfoFromSheetPathValue() with assignment
  operator.
* Replace list management functions with vector management functions.
* Fix a error message that wasn't translatable.
2016-02-27 14:35:45 -05:00
Bernhard Stegmaier f8abe9c191 Add support for optional touchpad panning. 2016-02-24 14:53:02 -05:00
Wayne Stambaugh 9685b3812d Eeschema: decouple SCH_SCREEN::SchematicCleanUp() from wxDC and EDA_DRAW_FRAME.
* Remove wxDC and EDA_DRAW_FRAME parameters from SCH_SCREEN::SchematicCleanUp()
  function call.
* Update all code that calls SCH_SCREEN::SchematicCleanUp() with wxDC and/or EDA_DRAW_FRAME
  parameters.
* Fix a display refresh bug when incrementally inserting bus entries created in my last commit.
  IsDanglingStateChanged() appears to be broke for bus entries.
2016-02-20 09:59:42 -05:00
Simon Richter e220a50958 Eeschema: minor dialog fixes.
* Fix parent of elements in wxSizers.
* Update old dialog with recent version of wxFormBuilder.
* Add wxALIGN_CENTER_VERTICAL flag to some dialogs.
* Update wxFormBuilder timestamp in generated sources.
2016-02-19 18:25:03 -05:00
jean-pierre charras 37c26cba71 Eeschema: Do not use ElectricPinType for SheetLabel items. ERC does not use ElectricPinType to test sheet labels, which do net have an actual electrical type property
Replace ElectricPinType by ELECTRICAL_PINTYPE as enum name to be compliant with coding style.
Enforce ELECTRICAL_PINTYPE control in methods.
2016-02-19 17:51:23 +01:00
unknown 8a9c6f71b7 Make pin position and pin type columns sortable in dialog_lib_edit_pin_table. 2016-02-19 16:59:31 +01:00
Wayne Stambaugh 73dc53dc35 Undo commit -r 6413. 2016-02-15 15:18:32 -05:00
Wayne Stambaugh 4007317606 Undo commit -r 6428. 2016-02-15 15:17:51 -05:00
Wayne Stambaugh 1866b61a56 Undo commit -r 6457. 2016-02-15 15:16:54 -05:00
jean-pierre charras ce7ce77d80 Very minor fix: double shortcut key fix in dialog_schematic_find_base.cpp 2016-02-01 11:42:33 +01:00
Chris Pavlina 8e8e126dcd Regression fix: hotkeys in eeschema not saved
Regression introduced in bzr 6474 / git 5173699
2016-01-21 10:17:55 -05:00
Chris Pavlina 5d805e94eb Remove last vestiges of DIALOG_COLOR_CONFIG
The color config dialog in libedit edits the same settings as the one in
eeschema, so there's no reason for it - it's just duplicated.
2016-01-16 18:51:56 -05:00
Chris Pavlina bf03642220 Pull colors widget into preferences dialog 2016-01-16 18:51:38 -05:00
Chris Pavlina 9513741816 Rename WIDGET_COLOR_CONFIG -> WIDGET_EESCHEMA_COLOR_CONFIG 2016-01-16 18:51:27 -05:00
Chris Pavlina 8c2427d3fa Add and use WIDGET_COLOR_CONFIG::InstallOnPanel 2016-01-16 18:50:55 -05:00
Chris Pavlina c4694e029d Move color configuration into a separate widget 2016-01-16 18:50:45 -05:00
Chris Pavlina 2ed78cf84b Move import/export button back into menu 2016-01-15 21:06:41 -05:00
Chris Pavlina 80fae7161e Coding style fixes 2016-01-15 21:06:25 -05:00
Chris Pavlina 73faa8238e Adjust options window 2016-01-15 21:06:15 -05:00
Chris Pavlina 4dad12794a Add and use WIDGET_HOTKEY_LIST::InstallOnPanel 2016-01-15 20:58:39 -05:00
Chris Pavlina af042628ff Refactor WIDGET_HOTKEY_LIST out of DIALOG_HOTKEYS_EDITOR 2016-01-15 20:56:57 -05:00
Chris Pavlina 9663060f97 Recreate menu bar after changing hotkeys 2016-01-15 20:56:23 -05:00
Chris Pavlina 2e4bb307dc Fix dialog sizing issue on Windows 2016-01-15 20:56:16 -05:00
Chris Pavlina db178dcdaf Eeschema options+hotkeys fixes
Fix wxTreeListCtrl column sizing

Minor: fix signed/unsigned comparison

Remove unnecessary m_parent direct access
2016-01-15 20:56:00 -05:00
Chris Pavlina 5173699eec Pull hotkey editor into eeschema preferences 2016-01-15 20:55:50 -05:00
Simon Richter 769104d542 pin table: Support flat table 2016-01-14 21:26:42 -05:00
Chris Pavlina ca01527d20 Coding style fix in the previous patch 2016-01-14 21:21:54 -05:00
Simon Richter 64782736ac pin table: Add GetString() to retrieve string value for column
This is in anticipation of the introduction of icons -- retrieving all the
icons and throwing them away during sorting takes ages.
2016-01-14 21:21:26 -05:00
Simon Richter 3c5a4a3505 Add pin number summary
Below the pin table, display which pins are currently defined, in order to
find gaps.
2016-01-13 14:17:54 -05:00
Simon Richter 9e8acdc71a Move container functionality
The "set of pin numbers" functionality is also useful outside the pin table
dialog, so create a wrapper class that exposes the relevant interfaces.
2016-01-13 14:09:24 -05:00
Simon Richter a7b102c366 Move comparison helper class to generic header
This class wraps the comparison function in a way that is compatible with
std::map and std::set. This, too is generally useful, so it should be moved
to the generic header.

At the same time, the criterium for less-than is changed from "equal to -1"
to "smaller than 0", because technically the comparison function may return
other values.
2016-01-13 14:09:18 -05:00
Simon Richter 88ccd787a4 Split off pin number comparison
Pin numbers need to be ordered in more places in the future, so fold this
out of the pin table dialog into a utility class.
2016-01-13 14:09:07 -05:00
Wayne Stambaugh cdba425bad Eeschema: move get components from SCH_SHEET_PATH to SCH_SHEET.
* Add sheet number that is set by schematic file load order.  This duplicates
  the previous SCH_SHEET_PATH behavior.
* Uncouple SCH_REFERENCE and SCH_REFERENCE_LIST from SCH_SHEET_PATH.
* Add - operator to SCH_SHEET for comparison purposes.  This duplicates the
  behavior of SCH_SHEET_PATH::Cmp().
2016-01-12 21:31:34 -05:00
Chris Pavlina 3a8e78c586 Eeschema: always enable Replace All when there is a search term 2016-01-12 10:57:17 -05:00
Wayne Stambaugh e8e0a75b8c Eeschema: move update all screen references from SCH_SHEET_PATH to SCH_SHEET.
* Uncouple SCH_COMPONENT::GetRef() from  SCH_SHEET_PATH and use SCH_SHEET
  instead.
* Uncouple SCH_COMPONENT::GetUnitSelection() from  SCH_SHEET_PATH and use
  SCH_SHEET instead.
* Fix all calls to GetRef() and GetUnitSelection() to pass a pointer to the
  appropriate SCH_SHEET object instead of an SCH_SHEET_PATH object.
2016-01-06 19:07:30 -05:00
Wayne Stambaugh 133b8f6b96 Eeschema: move annotate power symbols from SCH_SHEET_PATH to SCH_SHEET.
1
* Uncouple SCH_COMPONENT::SetRef() from  SCH_SHEET_PATH and use SCH_SHEET  instead.
2016-01-03 08:58:27 -05:00
unknown 662d35633a Minor changes to eeschema options dialog 2016-01-01 10:47:17 +01:00
jean-pierre charras a84d8f70bc Very minor fixes in dialog_eeschema_options_base: make the dialog resizable, and remove duplicate accelerator keys in 2 items. 2015-12-31 17:11:47 +01:00
Chris Pavlina e12d6fb82f Eeschema: improve default field option dialog tab (fixes lp:1527309)
* Use wxGrid to edit default fields in option dialog which allows user to
  directly instead a separate edit panel.
* Implement TransferData{To,From}Window methods.
2015-12-31 10:12:09 -05:00
Chris Pavlina 3dff6c097e Eeschema: reorganize options dialog. 2015-12-28 08:33:21 -05:00
unknown 0ea1c67caf eeschema plot dialog: cosmetic enhancement:
Including the inline of the Output directory and its text field/browse button.
Moving the plot format to the left of the plot options as the plot options depend on the plot format.
2015-12-21 16:08:37 +01:00
jean-pierre charras fcdbb7484c fix Bug #152546 (Netlist not respecting case sensitivity for labels): the label matching is now case sensitive. To avoid issues with previous eeschema versions, add in ERC a dectection for "similar" labels (labels which differ only by a case sensitivity)
(this option can be disabled, and saved in project config)
2015-12-20 13:40:17 +01:00
Chris Pavlina 2add6ca736 Eeschema: fix spacing issues in options dialog. (fixes lp:1526790) 2015-12-16 19:19:16 -05:00
Chris Pavlina 50c418a332 Eeschema: add field automatic placement feature. 2015-12-13 11:56:47 -05:00
jean-pierre charras 7dbefa29ac Minor fix: Remove a duplicate title in eeschema dialog plot. 2015-12-12 19:32:18 +01:00