Commit Graph

2525 Commits

Author SHA1 Message Date
Dick Hollenbeck acbe6290c5 switch back to original sexpr usage of PTREE, add new DSNLEXER constructor, enforce accessors in kicad.exe 2014-07-07 14:49:14 -05:00
Dick Hollenbeck a3b421b02c backanno 2014-07-07 01:04:53 -05:00
Dick Hollenbeck 84a14c3a51 back annotation when CVPCB and EESCHEMA are running under KICAD 2014-07-06 23:12:04 -05:00
Dick Hollenbeck 1e7495e634 merge 2014-06-30 00:46:18 -05:00
jean-pierre charras d4a7685761 Pspice netlist generator: add option to use net numbers as net names (feature removed a long time ago, but needed by Oscad team)
Note these options are saved in project config.
2014-06-26 21:20:05 +02:00
Dick Hollenbeck 4578ea8b9e 1) Add 32 Cu Layers.
2) Change from legacy Cu stack to counting down from top=(F_Cu or 0).
   The old Cu stack required knowing the count of Cu layers to make
   sense of the layer number when converting to many exported file types.
   The new Cu stack is more commonly used, although ours still gives
   B_Cu a fixed number.
3) Introduce class LSET and enum LAYER_ID.
4) Change *.kicad_pcb file format version to 4 from 3.
5) Change fixed names Inner1_Cu-Inner14_Cu to In1_Cu-In30_Cu and their
   meanings are typically flipped.
6) Moved the #define LAYER_N_* stuff into legacy_plugin.cpp where they
   can die a quiet death, and switch to enum LAYER_ID symbols throughout.
7) Removed the LEGACY_PLUGIN::Save() and FootprintSave() functions.
   You will need to convert to the format immediately, *.kicad_pcb and
   *.kicad_mod (=pretty) since legacy format was never going to know
   about 32 Cu layers and additional technical layers and the reversed Cu
   stack.
2014-06-24 11:17:18 -05:00
jean-pierre charras 7c99a242cf Remove 2 global variables: g_DrawBgColor and g_ShowPageLimits.
They are now member of EDA_DRAW_FRAME.
This change could fix Bug #1330781 (Background color change in Eeschema affects background color in Pcbnew)
Show page limits has meaning only for the schematic editor,  the board editor and the page layout editor.
Draw background color selection exists only in eeschema and  page layout editor.
In pcbnew, only a black background is allowed.
A side effect is now the user should set the background color in schematic editor, and the library editor (2 different options).
The default is still the white color.
2014-06-20 13:13:04 +02:00
Bernhard Stegmaier a457dffd8f OSX drawing artifacts 2014-06-16 11:32:23 -05:00
Lorenzo Marcantonio bee6b9f9b7 Fixes #1186269
- Refactored the common part of cursor key movement and crosshair update
  in the various GeneralControl
- Add x10 movement with the keyboard (CTRL modifier)
- Avoid fixup of the cursor position by dummy mouse movements generated
  by cursor warping (original analysis and idea Chris Gibson)
- Do key handling in a way to permit sub-pixel cursor movement
2014-06-12 18:12:14 +02:00
Dick Hollenbeck 8cb3423262 Remove class RETAINED_PATH, put is main member function into SEARCH_STACK.
Change class PROJECT to use a generalized wxString in place of the
RETAINED_PATH items, so that new session and project specific strings
of any purpose can be saved there, for the life of a session.
2014-06-10 10:56:43 -05:00
Dick Hollenbeck 20f512e516 Fix off by one error in libpart editor when displaying duplicate pins, unit numbers.
Fix segfault when deleting last user path from eeschema libpaths and then pressing cancel.
2014-06-04 20:06:52 -05:00
jean-pierre charras f76041e956 Fix some compil warnings and Debug assertions 2014-06-04 19:34:23 +02:00
Dick Hollenbeck 431675933a remove global g_UserLibDirBuffer which was a project specific global, and no longer used with FP_LIB_TABLE support. 2014-06-03 10:59:52 -05:00
Dick Hollenbeck 093f810df3 wxFrame GetParent() strategy is obsolete, use Kiway().Player() 2014-06-03 10:31:58 -05:00
Bernhard Stegmaier 0d5c7f4461 mac fixes 2014-05-25 11:02:52 -05:00
jean-pierre charras 41e41b95f8 Plot DXF: better generation of filled zone polygons. 2014-05-16 21:03:45 +02:00
Lorenzo Marcantonio 6d17ad712c Made the project default text size apply to all text things in eeschema, instead of the hardcoded value 2014-05-16 15:57:53 +02:00
jean-pierre charras bb0804ec29 DXF export: fix incorrect export of polygons having thick outline (like zones): Thick segments of outline were drawn like lines with no thickness.
Fix ( workaround only) crash (Windows only) when a quasi modal frame (like footprint viewer) was called from a dialog (like the component properties dialog in schematic editor).
Very minor other fixes.
2014-05-15 08:32:24 +02:00
Lorenzo Marcantonio a1087801af Various fixes to pin drawing code
- Better shape to the 60617 pin markers
- Made the markers' size proportional to the pin text
- Added the missing implementation in the pin plot routines
2014-05-13 21:24:12 +02:00
Maciej Suminski 009d28d48c Merged lp:~cern-kicad/kicad/drawing_tool branch. 2014-05-13 10:19:37 +02:00
Lorenzo Marcantonio 73a8cd6180 Added eeschema option for the default pin length 2014-05-12 18:57:46 +02:00
Maciej Suminski 2ed804b8ef Upstream merge. 2014-05-12 17:17:51 +02:00
Dick Hollenbeck c855824337 Try some new Mac support ideas. 2014-05-09 09:27:21 -05:00
marco. 0166c95efd OSX: fix incorrect path to launch pl_editor.
fix also a bug in python script round_value_robin.py.
2014-05-09 08:32:05 +02:00
Dick Hollenbeck 3b0712873a Modular-Kicad milestone B), glamorous portions:
*) Eeschema can now show the footprint editor.

*) Eeschema can now invoke the footprint picker from the library part field editor.

*) KIWAY_PLAYER::ShowModal() takes aResultantFocusWindow that tells what window
   to give the focus to.  Required since frames are often near the top of the
   hierarchy and they are invoked by a peer, not a parent.
2014-05-05 12:28:40 -05:00
jean-pierre charras 45e006aee8 Kicad: fix crash on exit, when Libedit was called during a session. It fixes also a crash if Libedit was called, closed and reopened.
Happens only if eeschema was called from the Kicad manager.
2014-05-05 17:15:54 +02:00
Maciej Suminski 9536ed811d Upstream merge. 2014-05-05 10:51:31 +02:00
Dick Hollenbeck a2227a75b4 Modular-Kicad milestone B), minor portions:
*) KIWAY_PLAYER::IsModal() is now a retained state, controlled by SetModal()

*) Fully re-work the KIWAY_PLAYER::ShowModal() to use a nested event loop.

*) Add support to DIALOG_SHIM for a "quasi-modal" dialog presentation and mode.
   See top of dialog_shim.cpp about that for benefits and need.

*) You can now pick footprint from the schematic component field dialog, although
   if you do this before you open the BOARD, you will only get the global footprint
   libraries, not also the project specific ones.  Opening the BOARD first avoids this
   problem.

This is the first example of cross KIFACE invocation, it is also the first
instance of using a TOP_FRAME other than FRAME_PCB as the first thing. It works,
but it's missing support for opening the project specific table because
historically the FRAME_PCB did that. This is now starting to expose all the near
term needs for KIWAY_PLAYER <-> PROJECT interaction, independence and out of
sequence usage.

A fix for this will be coming in a few days.

However it mostly starts to show why the KIWAY is terribly useful and important.
2014-05-04 13:22:27 -05:00
Lorenzo Marcantonio 342016b692 Constification of HitTest and GetParent
In particular HitTest for zones *do not* select the nearest vertex/edge as a side effect
2014-05-04 19:08:36 +02:00
Dick Hollenbeck 19c184df97 Change order of headers for wx 2.8, use wxWindowDisabler not ENABLE_DISABLE. 2014-05-03 19:44:57 -05:00
Dick Hollenbeck 991926d320 Modular-Kicad milestone B), major portions:
*) Rework the set language support, simplify it by using KIWAY.  Now any major
   frame with a "change language" menu can change the language for all KIWAY_PLAYERs
   in the whole KIWAY.  Multiple KIWAYs are not supported yet.

*) Simplify "modal wxFrame" support, and add that support exclusively to
   KIWAY_PLAYER where it is inherited by all derivatives.  The function
   KIWAY_PLAYER::ShowModal() is in the vtable and so is cross module capable.

*) Remove the requirements and assumptions that the wxFrame hierarchy always
   had PCB_EDIT_FRAME and SCH_EDIT_FRAME as immediate parents of their viewers
   and editors. This is no longer the case, nor required.

*) Use KIWAY::Player() everywhere to make KIWAY_PLAYERs, this registers the
   KIWAY_PLAYER within the KIWAY and makes it very easy to find an open frame
   quickly.  It also gives control to the KIWAY as to frame hierarchical
   relationships.

*) Change single_top to use the KIWAY for loading a KIFACE and instantiating
   the single KIWAY_PLAYER, see bullet immediately above.

*) Add KIWAY::OnKiwayEnd() and call it from PGM_BASE at program termination, this
   gives the KIFACEs a chance to save their final configuration dope to disk.

*) Add dedicated FRAME_T's for the modal frames, so m_Ident can be tested and
   these modal frames are distinctly different than their non-modal equivalents.
   KIWAY_PLAYER::IsModal() is !not! a valid test during the wxFrame's constructor,
   so this is another important reason for having a dedicated FRAME_T for each
   modal wxFrame.

On balance, more lines were deleted than were added to achieve all this.
2014-05-03 12:40:19 -05:00
jean-pierre charras 5688a87212 Eeschema: fix unwanted creation of noname.pro (or other useless config file), when opening eeschema. Fix also an issue when saving the config (from save config menu) which saved the config file in an unknow folder. 2014-05-02 19:56:24 +02:00
Maciej Suminski c3b448b633 Upstream merge. 2014-05-01 15:55:50 +02:00
Lorenzo Marcantonio 7b4b3297db - Better way to iterate on vias in the track list (GetFirstVia)
- Converted the Next/Prev C casts to static casts and removed the type
  unsafe ones
- Splitted as virtual the VIA::Flip member instead of using RTTI
- Heavily refactored the 'unconnected track' cleanup routine
- Misc constification
2014-04-30 21:16:22 +02:00
jean-pierre charras 7b843ecac8 Plots function: fix a bug about virtual PLOTTER::Text, which was not virtual for derived classes due to a missing parameter in ::Text in these classes. Noticeable only in SVG plot.
SVG plot, fix a missing reinitialization in plot lines, which could define a filled polyline, instead of a simple polyline
(these fixes solve Bug #1313084 )
2014-04-28 18:13:18 +02:00
jean-pierre charras 802a59dc52 eeschema: fix the very minor bug #1298094. But it was due to a bad bounding box calculation, which is now fixed. 2014-04-25 18:49:32 +02:00
Dick Hollenbeck 7a129e167b Functional
*) void KIWAY::ExpressMail( FRAME_T aDestination, MAIL_T aCommand, const std::string& aPayload, wxWindow* aSource=NULL );
*) virtual void KiwayMailIn( KIWAY_EXPRESS& aEvent );
*) enum MAIL_T expansion into the brave new world if cross KIWAY_PLAYER communications.

Let the KIWAY_PLAYING begin.....
through well conceived mail from one KIWAY_PLAYER to another.
Get thinking now.  Add a new MAIL_T value, then send ExpressMail(), 
and receive it in KiwayMailIn(), it's that easy.
2014-04-21 09:49:33 -05:00
Dick Hollenbeck 1648d7fd43 Get cross-probing working under the Kiway. 2014-04-21 01:51:33 -05:00
Dick Hollenbeck e47a2bc5d4 happy Easter 2014-04-21 01:28:17 -05:00
Dick Hollenbeck a985255f95 add back missing pcbnew cross probing event handlers. eeschema launches kiface versions of pcbnew & cvpcb if not single. 2014-04-19 23:35:34 -05:00
Dick Hollenbeck 0d6560a218 *) Switch kicad.exe to using KIFACE modules for all major top level windows.
Eeschema, Pcbnew, and Cvpcb all run under the same process now,
    FOR THE VERY FIRST TIME!

*)  Added KIWAY::PlayerCreate(), PlayerClose(), and PlayersClose().

*)  Factored FRAME_T into <frame_type.h> from ID_DRAWFRAME_TYPE.

*)  Found that the following command line is helpful for collecting all the *.kiface
    files into the <build>/kicad/ directory so that kicad can find them.

      $ cp `find . -name '*.kiface'` kicad/

    Maybe somebody will want to rework how the CMake files are organized so all
    the binaries can go into the same place.  See python-a-mingw-us.

*)  This might fix the problem on the Mac where child process windows were not
    coming to the front.  See ->Raise() in kicad/mainframe.cpp.

*)  You can set USE_KIFACE to 0 in kicad/mainframe.cpp to chain load child exes
    instead of using the KIFACE modules directly, i.e. revert.
2014-04-19 13:47:20 -05:00
Dick Hollenbeck 5f65d0da93 *) Add KIFACE_I::StartFlags() and IsSingle() so a KIFACE implementation can know
if it is running under single_top.cpp or under a project manager.

*)  Test Kiface().IsSingle() when adding menus, some operations are not permitted
    when running under a project manager and the KIWAY_PLAYER is pegged to a
    specific project.

*)  Implemented KIWAY::KiFACE() so it loads *.kiface files.  They still have to be
    in the same directory as the main *.exe launcher, so this presents some difficulty
    when the binaries are not yet installed but rather the *.kiface files are still
    in their original build directories.  For today, I simply copied _pcbnew.kiface
    to build/kicad/.

*)  Add a test case to kicad/mainframe.cpp just to get an early peek at loading
    _pcbnew.kiface under the C++ project manager.  Got that working for one
    specific invocation just for proof of concept.  Surprise, it works.
2014-04-17 21:05:40 -05:00
Maciej Suminski e7ea0480e4 Upstream merge. 2014-04-16 11:26:41 +02:00
Dick Hollenbeck 4011953455 Jettison FP_LIB_TABLE::ConvertFromLegacy() into a static function, where it
was used locally.  Then comment it out in favor of a newer strategy for
filling in nicknames in cvpcb. 

Add MODULE* FootprintLoadWithOptionalNickname( const FPID& aFootprintId )
        throw( IO_ERROR, PARSE_ERROR );
from code found elsewhere.
2014-04-09 08:33:04 -05:00
Dick Hollenbeck d053e5615b More migration towards single process, extend PROJECT::Config*() in proper direction, cleanups. 2014-04-07 23:55:53 -05:00
Maciej Suminski 85365b0dbc Upstream merge. 2014-04-07 18:00:13 +02:00
Dick Hollenbeck 6beacd6e95 Rework FOOTPRINT_VIEWER_FRAME::GetActiveFootprintViewer(), fix up comments and warnings. 2014-04-04 09:57:26 -05:00
jean-pierre charras 229613ef26 Cmakefiles: do not create map file on Windows, because creating map file generates hundred of useless wranings.
In PATCH_COMMAND, use patch instead of bzr patch if patch or patch.exe is found (mandatory to use msys2 because bzr patch does not work when using msys2)
2014-04-03 13:55:02 +02:00
jean-pierre charras 9b99ac2a53 All: add 2 hotkeys to simulate a mouse left click (key return) and left dclick (key end) 2014-04-03 09:40:55 +02:00
Maciej Suminski 23392ce8c9 Upstream merge. 2014-04-02 15:38:59 +02:00
jean-pierre charras 4e18b14f14 Finishing dialog_freeroute_exchange.cpp changes to run freeroute.jar if found in kicad binaries.
Very minor other fix
2014-03-29 21:00:14 +01:00
jean-pierre charras beb33c7522 Eeschema: fix Bug #1298868 (Can't create new schematic from main toolbar icon) - Fix a bug I created in rev 4773 2014-03-28 14:23:26 +01:00
jean-pierre charras 36e62b1047 Eeschema: fix Bug #1298868 (Can't create new schematic from main toolbar icon) 2014-03-28 14:08:48 +01:00
jean-pierre charras f1ee6de025 Eeschema: does not close when the schematic file given in command line to run Eeschema is not found (i.e. when starting a new project). Otherwise one cannot start a new schematic project. 2014-03-23 07:44:15 +01:00
Marco Serantoni 1c232f5608 [MacOSX] Support for kiface in bundles, workaround for some cairo issues 2014-03-22 12:35:33 +01:00
jean-pierre charras 262ec8920a Minor fixes for Windows: move resources from dso to .exe, to have the application icon in executable, and therefore shown in shortcuts.
pcb_calculator: minor coding style fix.
2014-03-22 09:28:39 +01:00
Maciej Suminski 3a43f0527f Changed void BASE_SCREEN::GetGrids( GRIDS& aList ) to const GRIDS& BASE_SCREEN::GetGrids().
Refactored:
- EDA_DRAW_FRAME::SetNextGrid() & SetPrevGrid()
- PCB_BASE_FRAME::SetFastGrid1() & SetFastGrid2()
Removed a warning from RN_DATA::updateNet(int).
2014-03-21 18:00:11 +01:00
Dick Hollenbeck 6bfff89fe5 merge tip in, resolve. 2014-03-20 01:24:33 -05:00
Dick Hollenbeck 2c67c3ff80 * KIWAY Milestone A): Make major modules into DLL/DSOs.
!   The initial testing of this commit should be done using a Debug build so that
    all the wxASSERT()s are enabled.  Also, be sure and keep enabled the
    USE_KIWAY_DLLs option.  The tree won't likely build without it.  Turning it
    off is senseless anyways.  If you want stable code, go back to a prior version,
    the one tagged with "stable".

*   Relocate all functionality out of the wxApp derivative into more finely
    targeted purposes:
    a) DLL/DSO specific
    b) PROJECT specific
    c) EXE or process specific
    d) configuration file specific data
    e) configuration file manipulations functions.

    All of this functionality was blended into an extremely large wxApp derivative
    and that was incompatible with the desire to support multiple concurrently
    loaded DLL/DSO's ("KIFACE")s and multiple concurrently open projects.
    An amazing amount of organization come from simply sorting each bit of
    functionality into the proper box.

*   Switch to wxConfigBase from wxConfig everywhere except instantiation.
*   Add classes KIWAY, KIFACE, KIFACE_I, SEARCH_STACK, PGM_BASE, PGM_KICAD,
    PGM_SINGLE_TOP,
*   Remove "Return" prefix on many function names.
*   Remove obvious comments from CMakeLists.txt files, and from else() and endif()s.
*   Fix building boost for use in a DSO on linux.
*   Remove some of the assumptions in the CMakeLists.txt files that windows had
    to be the host platform when building windows binaries.
*   Reduce the number of wxStrings being constructed at program load time via
    static construction.
*   Pass wxConfigBase* to all SaveSettings() and LoadSettings() functions so that
    these functions are useful even when the wxConfigBase comes from another
    source, as is the case in the KICAD_MANAGER_FRAME.
*   Move the setting of the KIPRJMOD environment variable into class PROJECT,
    so that it can be moved into a project variable soon, and out of FP_LIB_TABLE.
*   Add the KIWAY_PLAYER which is associated with a particular PROJECT, and all
    its child wxFrames and wxDialogs now have a Kiway() member function which
    returns a KIWAY& that that window tree branch is in support of.  This is like
    wxWindows DNA in that child windows get this member with proper value at time
    of construction.
*   Anticipate some of the needs for milestones B) and C) and make code
    adjustments now in an effort to reduce work in those milestones.
*   No testing has been done for python scripting, since milestone C) has that
    being largely reworked and re-thought-out.
2014-03-19 19:42:08 -05:00
Brian Sidebotham 8145a8c067 Changes 2014-03-07 17:52:43 +00:00
Maciej Suminski 5ed0980dd5 Merged upstream. 2014-03-06 09:42:16 +01:00
jean-pierre charras 764b5c11bf Minor code cleanup in 3d viewer (remove dead or useless code). Some minor other fixes. 2014-03-05 18:40:23 +01:00
Fabrizio Tappero 9c71f62e1c Commit patch about cvpcb, pcbnew and layout editor menu items, with 3 menu labels modified in Eeschema. 2014-02-28 18:31:00 +01:00
jean-pierre charras 031202a837 Fix wx28 compatibility issue. 2014-02-27 09:05:28 +01:00
jean-pierre charras fbecc0d9ce * fp_lib_table.cpp: fix an issue on Windows in ConvertFromLegacy: sometimes, because the comparison was case sensitive, lib nicknames were not found, although libs exist ( for instance if a path was given like f:\mypath instead of F:\mypath)
* getpart.cpp: fix a potential bug on a translatable string with has requirements in spelling.
* fix bug  #1066179
* kicad: fix erroneous labels in sub menus.
2014-02-26 15:06:24 +01:00
jean-pierre charras 19e4cb409b Viewlib: ensure in wxListBoxes the lib and the component are always shown as selected when a lib and component are specified (when called by the get component dialog for instance) 2014-02-24 20:07:24 +01:00
HennerZeller 992cc5f166 Eeschema: * Preselect the currently chosen component in the browser when pressing the thumbnail view.
* Various smallish documentation updates in the component chooser area.
2014-02-24 11:52:08 +01:00
Henner Zeller c7e794dcaf Eeschema: component selection dialog improvements.
* Pressing 'Enter' while the focus is in the tree did not work due to the
  double-click wxWidgets workaround.  Make it work.
* More clearly document what is happening and how it can be tested.
2014-02-23 20:27:07 -05:00
Henner Zeller df8b7c53fb Eeschema: fix build error when using wxWidgets 2.8 and other minor fixes.
* Fix string concatenation for _( "Unit" ) + wxT( " " ). This failed
  compiling against wxWidgets 2.8 (thanks Cirilo Bernardo ).
* Base the indentation on a measured observation with explanation
  (98%-ile of name-length found in library). The previously chosen 24
  character indentation was too wide for most.
* Don't use a #define spilling into the global namespace, but use
  a locally defined constant for COLUMN_DESCR_POS.
2014-02-23 09:15:01 -05:00
jean-pierre charras b4d1813d86 Eeschema: Remove usage of tabs in dialog_choose_component.cpp strings, because they do not work very well on Linux, and do not work on Windows.
Fix incorrect rotation of components (CCW instaed of CW)
2014-02-22 13:39:59 +01:00
Maciej Suminski 151826b206 Upstream merge. 2014-02-21 11:05:28 +01:00
Fabrizio Tappero 28e6356250 Patch from Fabrizio Tappero: better kicad and eeschema menu entries and labels, which minor fixes. 2014-02-21 08:54:13 +01:00
Wayne Stambaugh b26d1b614e Eeschema: minor component selection dialog improvements.
* Manually change fbp file minor version number so dialog could be edited
  with latest release version of wxFormBuilder.
* Give component view panel more weight for improved component view size.
* Add padding around dialog button sizer.
2014-02-20 19:29:31 -05:00
Wayne Stambaugh 949118a030 Minor coding policy fixes. 2014-02-20 19:06:37 -05:00
Brian Sidebotham 0c9f1ef3e4 Merge in tip changes 2014-02-19 19:41:29 +00:00
Brian Sidebotham 4a15b358ab Merge in changes 2014-02-19 19:41:13 +00:00
Henner Zeller bd52f00601 Eeschema: component selection dialog improvements.
* Improve component chooser redraw to fit in wxWidgets redraw strategies.
* Use LIB_COMPONENT::Draw and LIB_COMPONENT::GetBoundingBox for drawing the
  component
* Make resize redrawing work properly.
2014-02-19 11:44:48 -05:00
Henner Zeller 392e3a0a2b Eeschema component selection dialog improvements.
* Allow to select units in components that have more than one right in the
  component chooser dialog.
* Keep chosen unit in history.
* Show preview of current component unit as thumbnail image next to the
  description box.
* Fixes lp:1280567
2014-02-18 16:41:27 -05:00
jean-pierre charras fd2afec6f5 Remove some fully outdated code (#pragma, from Henner Zeller's report, and some other things) 2014-02-18 12:41:53 +01:00
Cirilo Bernardo d5064b98a4 Export VRML and IDF maintenance.
Fix minor bug in eeschema (opening a relative path does not work) (patch from HennerZeller).
2014-02-15 08:39:06 +01:00
Brian Sidebotham d5a029ffad * Commit before merge... 2014-02-14 23:45:58 +00:00
Henner Zeller 60b1671485 Eeschema: Better naming for private struct: public fields uppercase.
* make some more fields 'const' that can.
* Instead of previous/next _visible_ element, Go through
      previous and next element. Otherwise the cursor stops moving
      if the item is only partially visible.
2014-02-14 18:16:59 +01:00
Henner Zeller 4340ceeb8b PATCH: making component choosing (much!) more usable 2014-02-14 09:05:04 +01:00
Henner Zeller 3132c70e54 * Apply Henner Zeller's patch to add connecting line from reference and labels to component position whilst moving to help identify which component the reference or label belongs too 2014-02-11 21:54:30 +00:00
jean-pierre charras d6f348f41e Remove duplicate icon apply.svg (use ckecked_ok.svg instead which is the same icon).
Add a workaround to fix a new bug in wxWidgets 3.0 ( Windows specific ) which shows icons only with a size = 16x16 in menus which have attribute wxITEM_CHECK
2014-02-07 20:32:08 +01:00
Maciej Suminski 25dfbcd39f Upstream merged. 2014-02-07 09:52:47 +01:00
Dick Hollenbeck 33e26b278d KIWAY in progress... 2014-02-03 13:26:18 -06:00
Dick Hollenbeck 4f26386e8d Initial KIWAY (modular-kicad) work. Various tweeks. 2014-02-03 09:10:37 -06:00
Dick Hollenbeck 741bfb685b Another attempt at wxFrame::SaveSettings() standard infrastructure. 2014-02-02 14:18:10 -06:00
jean-pierre charras 8afe2dfbce Eeschema: Fix bug #1271155 relative to Grid selection in Eeschema. 2014-02-02 20:51:50 +01:00
jean-pierre charras f43ed90921 Add specific bitmaps in export IDF and export DSN menus.
Add missing calls to Show( false ) to some main frames (Kicad, eeschema, gerbview), to force config saving when closing these windows.
Code cleanup and minor coding style fixes in footprint_wizard_frame.
2014-01-29 19:39:16 +01:00
Dick Hollenbeck 2ac58935b5 Make option KICAD_KEEPCASE actually functional for Eeschema, and make the setting default ON.
The desire is to migrate designs *away from* case independence, and to create
designs which use literally (case specific) interpreted component names. But for
backwards compatibility, you may turn OFF this option if you really must.
(Remember that with KiCad using text data files, typically you would be better
off simply doctoring those files into a case literal state with a text editor
and move forward into the brave new world of case specificity. Also, BOM
generators may not work properly when you have this option turned OFF, the xml
export's referential integrity is broken on library part name. Hence the default
is ON now, as of 29-Jan-2014.
2014-01-29 12:02:02 -06:00
jean-pierre charras ce6b907fe3 Add specific bitmaps in export IDF and export DSN menus.
Add missing calls to Show( false ) to some main frames (Kicad, eeschema, gerbview), to force config saving when closing these windows.
Code cleanup and minor coding style fixes  in footprint_wizard_frame
2014-01-29 18:01:42 +01:00
Maciej Suminski c3c7b2e9cc Merged the netnames branch. 2014-01-28 11:59:04 +01:00
Dick Hollenbeck c63fa6ff31 Add EDA_BASE_FRAME::Show() and call SaveSettings() only from there for all derived wxFrames. Remove calls to SaveSettings() elsewhere. 2014-01-27 19:29:26 -06:00
jean-pierre charras 294463208b Code cleanup and minor fix in viewlib. 2014-01-19 17:36:12 +01:00
jean-pierre charras a094f7d5b5 Fix some issues in modview, relative to few incorrect use of some wxAuiManager functions.
Fix not working + and - keys in layers manager.
Fix typo errors and modify some messages to make translator's life more easy.
2014-01-19 14:12:57 +01:00
maciej. 76aa0ba756 Fix compile errors when wx3.x is built with --enable-stl 2014-01-18 03:07:05 -06:00
jean-pierre charras f905b4697e Code cleanup: Pcbnew: move files relative to exort functions to the new folder exporters
all: remove include <protos.h>  from a lot of  files which do not need it.
2014-01-08 15:18:51 +01:00
Dick Hollenbeck 1c0f034bca Make KiCad compile with minimal warnings against SVN HEAD of wxWidgets as of today. 2014-01-07 19:34:04 -06:00
jean-pierre charras fe919cd456 Update demos. Fix pspice netlist issues when using ( and ) in net names ( parenthesis are replaced by underscore) . 2014-01-07 20:42:34 +01:00
Maciej Suminski 537d82fb98 Upstream merge. 2014-01-06 10:29:31 +01:00
Marco Serantoni 4d139b590f [MacOSX] Adding better support for Retina Display (NSHighResolutionCapable) 2013-12-31 12:03:02 +01:00
jean-pierre charras 7fa0aa8f4f eeschema: fix compil issue. Boost build: boost lib context built only on OSX (does not build on mingw, and not needed) 2013-12-29 23:05:06 +01:00
jean-pierre charras 612e2ddb4a fix bugs 1264240, 1264247, 1264239, 1264233 (clang report errors) 2013-12-29 16:12:27 +01:00
Maciej Suminski 84c496e138 Upstream merge 2013-12-19 11:15:27 +01:00
Maciej Suminski 32065b339a Added const modifiers where applicable (PICKED_ITEMS_LIST).
Added PICKED_ITEMS_LIST::FindItem().
2013-12-18 13:27:18 +01:00
jean-pierre charras bb8741c74f Pcbnew: remove broken patch for" Bug #1255059".
Minor change: Eeschema+Pcbnew: display timestamp in edit dialogs (for footprints, sheets, components)
2013-12-14 20:03:38 +01:00
Povilas Kanapickas 7f12513c7e Remove some uses of using namespace std. 2013-12-13 10:27:30 -06:00
Dick Hollenbeck dbd72122e1 dialog perfection does not come easily. 2013-12-09 16:48:09 -06:00
Dick Hollenbeck bb872dd583 spinners initial values and limits. 2013-12-09 16:39:12 -06:00
Dick Hollenbeck e2b7ba4b19 eeschema/dialogs/dialog_lib_new_component.cpp was not expanding part name field nor setting initial focus. 2013-12-07 22:46:25 -06:00
jean-pierre charras 48f9ea2287 eeschema, Pcbnew: fix Bug #1255822 (incorrect position of multiline texts when plotting them) 2013-11-29 09:13:43 +01:00
Dick Hollenbeck 1b93203f7c Better GITHUB class header documentation, better eeschema library field dialog stretching and title. 2013-11-27 14:06:41 -06:00
Andrey Fedorushkov d8954ca3cf eeschema: fix parts range 1 to 26 in component 2013-11-26 13:15:20 +04:00
jean-pierre charras 5f01f123de All: GetBoundingBox returns now a const EDA_RECT.
Pcbnew: Code cleaning and bug fix in autoplace functions
Dialog exchange footprints has now a separate button to update the .cmp file, only on request.
2013-11-24 18:48:14 +01:00
jean-pierre charras 5a50b968d5 Eeszchema: Minor fixes.
Code cleanup: remove m_Son member in EDA_ITEM which was never used.
2013-11-19 17:27:13 +01:00
Dick Hollenbeck b177716b65 Work around wx 2.8 bug in wxListControl not honoring omissing of wxHSCROLL. 2013-11-18 16:03:34 -06:00
jean-pierre charras cf7dbf6f94 Fix some minor issues 2013-11-18 18:52:18 +01:00
Wayne Stambaugh 4c8bff9f71 Eeschema: update component editor new component dialog with revise unit nomenclature. 2013-11-16 20:13:26 -05:00
jean-pierre charras 9f9f2ed380 Minor code cleaning: Remove unused file, remove obsolete or useless defines 2013-11-15 10:28:31 +01:00
Wayne Stambaugh 73ca1ed754 Eeschema multiple unit component nomenclature improvements (fixes 1226874).
* Replace all occurrences of the word "part" with "unit" when referring to
  multiple unit components for improved consistency.
* Replace "shared by" with "common to" when referring to objects (lines, arcs,
  pins, etc.) that are common to all units.
* Improve wording in library component properties dialog.
2013-11-09 11:30:49 -05:00
jean-pierre charras 35b1b13f27 Eeschema: Disable a debug option I enabled and forgot to remove. 2013-11-06 20:36:46 +01:00
Wayne Stambaugh a3f0e450ab Eeschema: fix bug loading grid size from previous session. (fixes lp:1239445) 2013-11-05 16:14:09 -05:00
jean-pierre charras 44d9607461 Pcbnew: Fix incorrect bounding box calculation of texts. Only noticeable with boards conveted from Eagle, which are using other text justification than center.
Eagle plugin: filter and replace not allowed chars in FPID(-':' and '/')  by _ or -, if they are used in Eagle footprint names (otherwise, boards converted and saved under kicad_pcb format are not readable by Pcbnew).
2013-11-05 18:12:27 +01:00
Maciej Suminski e13f862145 Merged upstream. 2013-10-28 21:34:06 +01:00
Wayne Stambaugh f0b2565f12 Eeschema find/replace bug fixes and improvements (fixes 1208616).
* Fix replace bug to handle case sensitivity properly.
* Fix replace bug where the item index was getting updated incorrectly.
* Fix replace infinite loop bug on replace all.
* Make find/replace view update code a separate function.
* Rearrange find/replace trace string to add tracing to EDA_ITEM::Replace().
* Add IsComplexHierarchy method to SCH_SHEET_LIST for future find/replace
  improvements.
2013-10-27 14:21:53 -04:00
Wayne Stambaugh 612ba67c10 Minor message box improvements
* Create a generic yes/no/cancel dialog from DIALOG_EXIT.
* Make DIALOG_EXIT return wxID_YES instead of wxID_OK so it is consistent
  with the standard message dialogs.
* Add missing license to confirm.h and confirm.cpp.
* Change Eeschema message dialog when loading a schematic if the current
  schematic is modified to be more consistent with the exit dialog.
* Change Pcbnew message dialog when loading a board if the current board
  is modified to be more consistent with the exit dialog.
* Remove some Eeschema block debug logging code left over from my last
  commit.
2013-10-18 09:32:22 -04:00
Dick Hollenbeck 37c3ef503f fix expansion of dialog on stretching and initial view 2013-10-17 13:59:54 -05:00
Wayne Stambaugh efb96bcce9 Eeschema block end handler code improvements.
* Merge HandleBlockEnd() and HandleBlockEndByPopUp() into as single block
  end function HandleBlockEnd().
* Replace all instances of HandleBlockEndByPopUp() with HandleBlockEnd().
* Change block hot keys to send command events instead of directly calling
  end block handler.
2013-10-15 12:18:30 -04:00
jean-pierre charras 082b8326de Pcbnew: Fix issue when displaying net names and/or pad numbers including the "<" char in drc dialog, because drc dialog uses an wxHtmlWindow to display drc messages, and the "<" char has a special meaning and is not allowed in texts (now replaced by the" &lt;" sequence in messages displayed in html)
Eeschema: replace "<" and ">" by "(" and ")" in autogenerated net names, to avoid other issues in html messages.
Very minor other fixes.
2013-10-14 18:03:38 +02:00
jean-pierre charras a8e57e10e8 Remove wxUSE_UNICODE definition from CMakeLists.txt, because this define comes from wxWidgets and should not be made inside kicad
Remove KICAD_GOST option because it is  now useless: the 2 GOST options are now selectable at run time and are:
* specific page layouts (now user definable, and the GOST page layouts are available in template folder)
* notation for multiple parts per package (made in eeschema, preference menu)
2013-10-11 18:24:43 +02:00
jean-pierre charras 25b20c5564 Gerbview: fix incorrect printing of negative objects, when using black and white option
Enhancement in Excellon file reader: accept Feed Rate and Spindle Speed definitions in Tool information line (but does not use them)
Eeschema: better name for m_SheetList (changed to m_SheetPath) member of class NETLIST_OBJECT.
2013-09-30 08:36:40 +02:00
jean-pierre charras d368739731 Gerbview: fix incorrect printing of negative objects, when using black and white option.
Eeschema: better name for m_SheetList (changed to m_SheetPath) member of  class NETLIST_OBJECT.
2013-09-29 20:24:38 +02:00
Wayne Stambaugh 473a724b9a Fix wxWidgets 2.8 compile error. 2013-09-28 18:53:55 -04:00
jean-pierre charras 1ae681454a Eeschema: fix isssues in net names selection for not named nets (i.e. nets without labels) 2013-09-27 19:58:58 +02:00
jean-pierre charras f2e5da63e3 Eeschema: netlist generation: fix bad choice for the "best net name" when selecting a net name between labels connected to the same net.
Code cleanup and remove unused file.
2013-09-27 14:30:35 +02:00
jean-pierre charras daeeee5617 Eeschema: Rework on netlist generator: code clenenig and enhancement.
Fix an annoying issue about not named nets:
now, these nets are named from the component references and pin names which are connected.
therefore, unless the net or the footprint references are modified, the net name is not modified between 2 netlist calculations.
2013-09-25 21:09:57 +02:00
Maciej Suminski 8e472c736a Merged upstream. 2013-09-20 17:54:35 +02:00
Maciej Suminski c00533a150 Merged kicad-gal 2013-09-20 15:48:27 +02:00
jean-pierre charras c029dc398b Eeschema: fix compatibility with old schematic files, which can contain markers.
Pcbnew: better test for allowed layers when creating/editing Dimensions and some other Graphic items
Drc: fix comments and messages for some drc tests.
To do: fix issues in active layer selection when creating a track and layer pair selection dialog
2013-09-11 17:30:21 +02:00
Maciej Suminski c5d3376c26 Changed some 'magic numbers' into constants. Added const modifier in appropriate spots. 2013-09-11 11:34:10 +02:00
Maciej Suminski 6d15131231 Some more missing D()->DBG() changes. 2013-09-10 17:07:46 +02:00
Dick Hollenbeck e3c104d69e Add <aliases> and <alias> to generic netlist XML format, required by new bom_csv_grouped_by_value.py support. 2013-09-01 12:52:46 -05:00
Brian Sidebotham b6110bfcc3 * Fix Bug 1219239 - EESCHEMA crashes when editing a template field in libedit through the context menu 2013-08-31 16:53:46 +01:00
Dick Hollenbeck 0be3992913 Lay basis for a more full featured usage of boost, including compiled libraries such as unit_test_framework, system, etc. Move headers now into boost_root/include/boost/. 2013-08-20 13:03:21 -05:00
Brian Sidebotham 87eb527d67 * Fix the last parts of Bug 1204712 by removing DateAndTime from library file and documentation file formats. They weren't being loaded anyway. 2013-08-16 23:31:37 +01:00
Wayne Stambaugh 761023f6bc Eeschema bus label test bug fixes. (fixes lp:1209424)
* Use a regular expression to enforce more stringent bus label testing.
* Add validator to edit label dialog to prevent space character from being
  used in labels.
2013-08-13 19:04:41 -04:00
Dick Hollenbeck cc7a070b63 User longer, more dis-ambiguating text for Show button 2013-08-09 14:03:26 -05:00
jean-pierre charras 1293c026f7 Eeschema: fix Bug #1210120 2013-08-09 08:51:14 +02:00
Dick Hollenbeck d0a69ac7b7 EHNANCE: add a "Show" button to the two text field properties
dialogs which allow editing of component properties.  The button
is active when the table row cursor is on the DATASHEET field only.
When active, and your datasheet is a URI, then your default
browser will be launced to show that datasheet if it can find it.
This incentivizes use of http:// links for datasheets.
2013-08-08 11:12:41 -05:00
Dick Hollenbeck 6196921ae1 REMOVE: check for repeat_item->Flags() == 0 in eeschema/hotkeys.cpp 2013-08-06 18:23:50 -05:00
Dick Hollenbeck 4c6f7bc158 FIX: insert key must repeat text labels 2013-08-06 17:59:07 -05:00
Dick Hollenbeck c0832a0342 BUG FIX: eeschema as segfaulting on the 'Insert' key because the m_itemToRepeat
was simply a pointer to an object on the display list.  At times this object
would disappear from the display list, in the test case because of a concatonation
of two wires, and if you then tried to clone the non-existent object you'd get a 
crash.  This was not merely a bug, but a naive design choice. IMO.
Now the item to repeat is cloned, so will never also be on the display list.
2013-08-05 16:02:41 -05:00
Dick Hollenbeck efb34166ea *) retain grid origin in the BOARD and save it in legacy and kicad board files.
*) add hotkey for setting the grid origin as 'S', in board editor, module editor.
*) re-position the function interface for cursor movement from BASE_SCREEN into
   class EDA_DRAW_FRAME.  This is a prelude to getting rid of BASE_SCREEN or
   splitting it up.
2013-08-03 00:15:23 -05:00
jean-pierre charras b65c7df0a3 Initial release of pl_editor, the page layout and title block editor. 2013-07-22 18:46:44 +02:00
jean-pierre charras d7f569ae78 Fix GOST compatibility. 2013-07-22 18:45:22 +02:00
Thiadmer Riemersma f2003d8dda Eeschema: fix subtle find bug when at the end of the search list. (fixes lp 1199689) 2013-07-20 13:13:40 -04:00
jean-pierre charras 50743cf3ba Initial release of pl_editor, the page layout and title block editor. 2013-07-19 20:27:22 +02:00
Wayne Stambaugh ba16d9e763 Eeschema find bug fixes. (fixes lp:1199689)
* Force search when wrap past end of list option changes state.
* Fix SCH_FIELD::Matches() for bug in user defined fields which have an ID
  of -1.
* Minor improvements to the find data names to improve source code readability.
2013-07-14 14:08:20 -04:00
jean-pierre charras 28d702f6a9 Eeschema: fix a *very subtle* bug noticeable only in complex hierachies, for multiple parts per package:
sometimes, the modified flag was set for these components just when switching from a sheet to an other sheet.
Pcbnew: fix Bug #1197414 (dragged track segments does not show clearance area)
2013-07-05 19:48:01 +02:00
jean-pierre charras 26bd37e086 Eeschema: fix bug Bug #1197103 and an other very minor bug. 2013-07-03 09:27:52 +02:00
jean-pierre charras 5c247857d3 Replace in EDA_TEXT::Draw the parameter EDA_DRAW_PANEL* aPanel by EDA_RECT* aClipBox, which is the actual parameter used by Draw.
This change make more easy to  use this function when a EDA_DRAW_PANEL canvas is not used to draw texts.
Remove dead code in worksheet.cpp.
2013-06-29 11:52:22 +02:00
jean-pierre charras ccbc4882fd Pcbnew: fix bug Bug #1194219 (Solder mask clearance ignored for oval pads )
When KISYSMOD is not defined , in GetAllFiles, skip hidden directories
Gerbview: fix a collision name for GetLayout method.
Eeschema: fix potential crash when editing a pin electrical type (The user was able to enter a non existing type)
2013-06-28 08:31:24 +02:00
Dick Hollenbeck 770d72c538 remove dialog_netlist.h 2013-06-27 15:34:30 -05:00
jean-pierre charras 10352b1df5 Minor fixes. Gerbview: fix a collision name for GetLayout method. 2013-06-27 21:12:01 +02:00
jean-pierre charras 781cc00aca Pcbnew: netlist dialog: add silent mode option, and tool tip to the 2 options (dry run and silent mode)
dialog_display_info_HTML_base: derived now from dialog_shim.
2013-06-19 18:11:12 +02:00
jean-pierre charras 4536e27426 Eeschema: Fix wx28 compatibility issue. 2013-06-17 21:01:47 +02:00
jean-pierre charras b4d0cd7467 Eeschema: Add dialog and utilities (help files ...) to create BOMs from generic netlist, using python scripts or xsltproc+style sheet.
Remove dead code relative to old BOM generation.
Rename witha  more explicit name bom-example?.py , fix some issues and move them from script/bom-in-python/ky to script/bom-in-python
Rename ki.py utility to more explicit  ky_generic_netlist_reader.py
2013-06-15 20:02:52 +02:00
jean-pierre charras 26b7bdc35c Eeschema: add dialog and utilities to create BOMs from generic netlist 2013-06-14 16:59:52 +02:00
Dick Hollenbeck dea9dd2361 better error reporting and parsing of bad legacy footprint libs 2013-06-13 11:09:35 -05:00
Alexander Lunev a3f2980d80 Fix pcad2kicad issue, from A. Lunev, and a minor code cleaning in component_references_lister.cpp. 2013-06-12 21:43:22 +02:00
jean-pierre charras 179ada1c70 Eeschema: fix Bug #1189893 (ps plot file opened twice) 2013-06-11 16:27:07 +02:00
Dick Hollenbeck 00adc67d2a Rename invoke_a_dialog.h. Code an alternate implementation for std::string BOARD_ITEM::FormatInternalUnits( int aValue ), for verification. 2013-06-10 07:24:01 -05:00
Dick Hollenbeck 36aca68e40 fix autopan non-response problem when dragging block to right or bottom 2013-06-09 13:14:01 -05:00
Dick Hollenbeck 515f5fbe5e *) Introduce "invoke_a_dialog.h" to information hide between top frame
and various DIALOG classes called from top frames.  See comments in
   {eeschema,pcbnew}/invoke_a_dialog.h.
*) Move some dialog classes into *.cpp files from *.h files.
*) void SCH_EDIT_FRAME::OnErc( wxCommandEvent& event ) was opening the modeless
   ERC dialog more than once if icon was clicked more than once.
*) Remove BOM stuff.
2013-06-07 15:56:55 -05:00
jean-pierre charras c8c05cb4ee page layout: if the environment variable KICAD_WKSFILE points a S expr page layout descr, this descr is used instead of internal descr. Mainly for testing purposes.
Eeschema, dialog edit component: minor enhancement (the last selected notebook page is remembered during a session)
2013-06-07 11:49:36 +02:00
jean-pierre charras 7432d4de29 Page layout: add comments, and fix a very minor issue.
Eeschema, dialog netlist: fix a bug when removing a plugin panel, when is is not the last.
dialog netlist:Add a predefined command string for python scripts, when creating a new netlist plugin entry.
2013-06-06 20:03:29 +02:00
Dick Hollenbeck 142306e238 fix libeditframe.cpp, which in release build would not show multipart text in listbox. dialog uses DIALOG_SHIM. 2013-06-05 14:23:55 -05:00
Dick Hollenbeck 2fc698846b *) Refinements to ExternalProject_Add( boost )
*) Enhancements to make_lexer().
*) Support multi-threaded build.
*) Switch to "bzr patch" from patch.exe for Windows users.
2013-05-31 16:22:34 -05:00
jean-pierre charras 4e94d8e793 Dialog page setting: replace wxStaticBoxSizer by wxBoxSizer + static text,
because under Linux and wxWidgets 2.9, wxStaticBoxSizer are very ugly (text not readable in this dialog)
(Does not happen with wxWidgets 2.8)
Eeschema hotkeys: remove duplicate keys in key editor.
2013-05-28 11:49:53 +02:00
jean-pierre charras 2043001b0a eeschema: fix Bug #1184318 (Eeschema-Libedit: Reference moving+zooming issue)
and fix a minor issue in netlist dialog.
2013-05-28 10:05:10 +02:00
jean-pierre charras ea04a4af7d eeschema: netlist dialog: fix a very minor issue. 2013-05-27 15:59:10 +02:00
jean-pierre charras b750414561 Pcbnew: fix bug Bug #1184362 (Pcbnew losing user (custom) sheet size )
Fix minor issues in print/plot: filename not printed, sheetname incorrect in eeschema
2013-05-27 11:17:37 +02:00
Dick Hollenbeck 8ccf0320b4 1) Add "rules" to base of tree for copying into BZR_HOME/rules.
File "rules" has instructional text as comments near top.

2) Convert all text files in repo to LF line ending form.
   Any checkout done with "rules" in play will convert the working
   tree to native line ending, while keeping repo as LF line ending.
2013-05-25 23:36:44 -05:00
jean-pierre charras 94dccc9128 Pcbnew! fix Bug #1184030
very minor other chnages.
2013-05-25 18:10:19 +02:00
Dick Hollenbeck dc9122c5b6 remove "~" from empty *.lib component fields, replace with "", doctor old *.lib fields to blank if that was the intention 2013-05-24 18:58:29 -05:00
Dick Hollenbeck c4c58e1279 copyright and formatting 2013-05-24 16:30:27 -05:00
jean-pierre charras 7080828fe2 More about worksheet code. 2013-05-24 10:59:40 +02:00
Lorenzo Marcantonio 26f2c04f13 Make title block date field modifiable by hand. 2013-05-23 14:45:23 -04:00
jean-pierre charras 3f38a6d89a worksheetcode cleaning and fix plot sheet filename bug under Linux. 2013-05-22 17:08:57 +02:00
jean-pierre charras 001723e077 Worksheet code: cleanup and remove useless parameters. 2013-05-22 10:45:25 +02:00
jean-pierre charras 568ae2ec7e Remove duplicate code to draw and to plot title blocks (more than 1500 duplicate lines). Note: this is a work in progress.
Code cleanup
2013-05-21 09:44:46 +02:00
jean-pierre charras 26a3029a88 Remove duplicate code to draw and to plot title blocks. 2013-05-21 09:18:25 +02:00
jean-pierre charras a8a640811b Code cleaning and move worksheet code specific to title block and frame references shape in title_block_shapes.h and title_block_shapes_gost.h 2013-05-19 21:35:49 +02:00
jean-pierre charras 172bbc8f9c Eeschema: fix Bug #1180902 (Libedit creates empty svg images) 2013-05-18 11:38:23 +02:00
Dick Hollenbeck 0ef043f0f8 replace BOM dialog with a pointer to FAQ https://answers.launchpad.net/kicad/+faq/2265 2013-05-15 05:32:41 -05:00
jean-pierre charras ac1386a5a2 Pcbnew: fix bug 1179877, due a bad default copy constructor, after my changes about CPOLYGONS_LIST class.
More about CPOLYGONS_LIST work.
2013-05-14 20:47:01 +02:00
Dick Hollenbeck 6fa4f1e6ac remove non-UTF8 encoded characters from source tree & format fix 2013-05-13 12:30:27 -05:00
Wayne Stambaugh cf86e18f5c Footprint library table work, minor fixes, and code cleaning.
* Fix a bug when full file name and path are passed to FOOTPRINT_INFO::
  ReadFootprintFiles() which I created in bug fix lp:593989.
* Fix a wxString debug assertion in EDA_APP::InitEDA_Appl() when the KICAD
  environment variable is defined as an empty string.
* Add error dialog when libraries cannot be found in system search path
  when loading footprint using the select footprint dialog.
* Add footprint library name column to the EDA_LIST_DIALOG when selecting
  footprints from the list.
* Allow reading all columns from the selected row in EDA_LIST_DIALOG.
* Remove redundant sort from EDA_LIST_DIALOG constructor
* Add library name member variable and accessors to FOOTPRINT_INFO.
* Make headers translatable for Eeschema select component from list dialog.
* Add some helper methods to FPID for identifying the FPID type and validity.
* Remove a bunch of trailing whitespace and add missing license comments.
2013-05-08 16:47:23 -04:00
jean-pierre charras 6fcd9eb8a6 Eechema: fix bug : when saving the schematic project, the lib cache was saved under the current sheet opened, not the root sheet.
Pcbnew: clamp default plot line width between 0.02 and 2 mm. the other bug (saving this parameter in internal units instead of mm is not fixed)
2013-05-07 20:32:06 +02:00
Lorenzo Marcantonio 69b7c2a1b6 Removed some spurious float casts
(explanation: float is implicitly promoted to double anyway, it's only useful
for storage; also a fp variable forces conversion of other int in the expression
without needing a cast)
Typo fixes in some comments 'floatting' -> 'floating' :D
2013-05-07 19:31:52 +02:00
jean-pierre charras 7e2779784b Eeschema: fix incorrect move command for bitmap items. 2013-05-06 15:38:14 +02:00
Lorenzo Marcantonio d00c83cde9 Migrated the interfaces accepting angles to the double type
The plan goes like this:
- eeschema still uses int in decidegrees
- all the other things internally use double in decidegrees (or radians
  in temporaries)
- in pcbnew UI the unit is *still* int in decidegrees

The idea is to have better precision everywhere while keeping the user with int i
angles. Hopefully, if a fractional angle doesn't come in from the outside, everything
should *look* like an integer angle (unless I forgot something and it broke)

When the time comes, simply updating the UI for allowing doubles from the user should
be enough to get arbitrary angles in pcbnew.
2013-05-05 09:17:48 +02:00
Lorenzo Marcantonio cb49ca5ae2 More int casts to rounding conversions 2013-05-04 13:57:09 +02:00
Lorenzo Marcantonio 91674347b5 Fixed bad computation in eeschema/transform (my fault)
Note: ArcTangente gives a double but *takes* ints, so it's not good to
use for nontrivial things
2013-05-02 22:53:12 +02:00
Lorenzo Marcantonio 78e41187b3 Moved utilities for angles in trigo.h
New conversion routines and sin/cos implementation for angles in decidegrees
2013-05-02 20:06:58 +02:00
Lorenzo Marcantonio 0e903dba5b Angle and distances cleanup (preparing for angles in doubles)
- Removed spurious int casts (these are truncated anyway and will break
  doubles)

- Applied the Distance, GetLineLength, EuclideanNorm, DEG2RAD, RAD2DEG
  ArcTangente and NORMALIZE* functions where possible

- ArcTangente now returns double and handles the 0,0 case like atan2, so
  it's no longer necessary to check for it before calling

- Small functions in trigo moved as inline
2013-05-01 19:32:36 +02:00
Lorenzo Marcantonio 3b1ddd952f Removed the SAFE_DELETE macro.
In most case the assignment to null was not necessary since it was easily provable that the (local) variable wouldn't have referenced after that anyway.
2013-04-28 16:28:13 +02:00
Wayne Stambaugh 81271ad41a Post Pcbnew NETLIST_READER change clean up.
* Tweak the NETLIST_READER code to allow for component footprint names that
  are not found in any library to generate a warning instead of an error and
  update the board accordingly.
* Don't display undo warning in netlist dialog when dry run option selected.
* Rename netlist_reader_common.cpp to netlist_reader.cpp
* Rename netlist_reader_firstformat.cpp to legacy_netlist_reader.cpp
* Rename netlist_reader_kicad.cpp to kicad_netlist_reader.cpp
* Remove cvpcb/read_write_cmpfile.cpp and move the single function it
  contained into cvframe.cpp
* Remove cvpcb/loadcmp.cpp and move the single function it contained into
  class_DisplayFootprintsFrame.cpp.
* Remove cvpcb/readschematicnetlist.cpp and move the single function it
  contained into cvframe.cpp.
* Remove cvpcb/setvisu.cpp and move the few functions it contained into
  the appropriate source file.
2013-04-26 11:11:52 -04:00
Wayne Stambaugh 61b4f8a9eb Pcbnew NETLIST_READER improvements.
* Create separate NETLIST object to hold contents of netlist files.
* Read entire netlist and footprint link files before making applying
  changes to board.
* Add BOARD::ReplaceNetlist() function to eliminate the calls between the
  NETLIST_READER, PCB_EDIT_FRAME, and BOARD objects.
* Change placement of new components below the center of the current board
  or in the center of the page if the BOARD is empty.
* Add dry run option to netlist dialog to print changes to message control
  without making changes.
* Add button to netlist dialog to allow saving contents of message control
  to a file.
* Eliminate the need to compile netlist_reader_*.cpp in both CvPcb and Pcbnew.
* Add netlist_reader_*.cpp to the pcbcommon library.
* Remove redundant load component link file code from CvPcb.
* Modify CvPcb new to work with the new NETLIST_READER object.
* Add compare() function and < and == operators to FPID object.
* Add REPORTER class to hide an underlying string writing implementation for
  use in low level objects.  Thank you Dick for the idea.
* Lots of minor coding policy, Doxygen comment, and missing license fixes.
2013-04-25 12:29:35 -04:00
Stefan Helmert 5da0a971d5 The internal BOM generator has bugs. I designed an XSL script, which converts the generated XML Partlist into
a CSV file for Libre Office or Open Office.  It is very easy to use. You can specify it as a plugin for 
Eeshema netlist generator.

It searches for all field names, generates the table headings accounting for all fields found in any part.
Then stuffs all the parts rows according to proper fields.
2013-04-17 09:57:47 -05:00
jean-pierre charras c4dc992c03 Eeschema: fix bug #1168116. Netlist generation: remove dead code and fully outdated option pspice "use net number"
Pcbnew: layer manager: display tooltips using translated form (where internationalized, but always shown in English).
2013-04-16 12:53:23 +02:00
Lorenzo Marcantonio 70dc51d1f9 Changed format specifiers of some printf involved with size_t values to %zu to avoid runtime assertions. 2013-04-14 13:02:19 +02:00
Lorenzo Marcantonio 2cad7a52ad Closes bug 1168753.
Depending on build options seems that wx uses different types for size() so the Format string was not always correct. Put a fat warning in a comment too.
2013-04-14 10:26:42 +02:00
Lorenzo Marcantonio b1c710a214 Made overbar position independant of pen size for text, to fix graphics glitches with halo text.
Slightly retuned for compensating the new position.
2013-04-10 21:09:59 +02:00
jean-pierre charras 0d41a7a523 All: fix some issues in messages to translate. Remove fully outdated files 2013-04-10 09:23:20 +02:00
Lorenzo Marcantonio 42709330e0 Better strings for the translators (converted concatenations to formats) 2013-04-09 19:49:01 +02:00
Marco Mattila e04b6a04a6 Use the boundary of the object and not just the boundary of the text in SCH_TEXT hit testing. 2013-04-07 21:49:13 +03:00
Lorenzo Marcantonio 204d085b64 More cleanup on layer code usage
Better description for entities on right click menu and panel
Typo fixes and some comment reformats
2013-04-07 13:55:18 +02:00
Lorenzo Marcantonio 150cfebb59 Fixed some tab-induced disalignments
Charras beat me on fixing the include/sch_item_struct.h include issue from 4069
2013-04-06 14:28:02 +02:00
Lorenzo Marcantonio 74a57d4ea8 Cleanup of the eeschema 'layers' i.e. entitity colours. This also fixes
the spurious warning about stuff that couldn't be seen when changing
colours.
NOTE that the 'net name' layer is present and configurable but non used 
anywhere!
2013-04-06 07:01:48 +02:00
jean-pierre charras 752e4a4a58 All: change some texts and messages hard to translate, or not translatable (and some incorrect messages).
Pcbnew, layer manager: add option (popup menu) to always keep copper layers not visible but the active layer, even when the active layer is changed.
Usefull for multilayer ( more than 4 layers) PCBs.
2013-04-05 09:38:00 +02:00
Lorenzo Marcantonio d12a45923b More work on EDA_COLOR_T and layers.
In particular the new mechanism for handling extended color palettes is in place,
included renaming the ini keys and saving the color name instead of its index; this means better forward compatibility with palette changes.

Since ini keys are changed, colors will be reset
2013-04-04 23:35:01 +02:00
Lorenzo Marcantonio 23981977f3 Fixed idiotic merge error in busentry handling 2013-04-02 18:04:12 +02:00
jean-pierre charras f4d6430eb0 Eeschema: Minor changes in dialogs to ensure a better likeness between dialogs on Linux and Windows (mainly, remove some useless wxStaticBoxSizer in dialogs)
Update Clipper version.
2013-04-01 14:41:46 +02:00
Lorenzo Marcantonio e18404eea1 Removed unused width attribute from schematic line 2013-04-01 13:59:19 +02:00
jean-pierre charras fd1cd36f63 Minor changes in dialogs to ensure a better likeness between dialogs on Linux and Windows (mainly, remove some wxStaticBoxSizer in dialogs) 2013-04-01 13:42:09 +02:00
jean-pierre charras 92e0eb628c Minor changes in dialogs to ensure a better likeness between dialogs on Linux and Windows (mainly, remove some wxStaticBoxSizer in dialogs) 2013-04-01 12:50:01 +02:00
Lorenzo Marcantonio f37812f898 Refactoring: split in two the SCH_BUS_ENTRY class 2013-04-01 12:35:20 +02:00
Lorenzo Marcantonio cc0524a21a Converted the IS_BUS/IS_WIRE define to an enum 2013-04-01 07:47:44 +02:00
Lorenzo Marcantonio c32f56ffaa Removed the long time dead SCH_POLYLINE class (schematic level polyline) 2013-03-31 22:40:22 +02:00
Lorenzo Marcantonio 9fd79dfa91 Implemented the LAYER_NUM typedef (LAYER was already taken as a class name...) to represent a layer number. 2013-03-31 15:27:46 +02:00
jean-pierre charras 8e09679437 Minor cosmetic fixes (mainly on Linux) in dialogs. 2013-03-31 14:44:23 +02:00
Lorenzo Marcantonio 27ee815742 Minor flags and layer mask cleanup 2013-03-30 20:55:26 +01:00
Lorenzo Marcantonio c650c378c0 Fixed the logic for "do you want to make the footprint visible" requester
(meaning was inverted)
2013-03-30 18:49:58 +01:00
Lorenzo Marcantonio e0303a4558 - New typedef LAYER_MSK to encapsulate a layer bitmap
- Renamed ReturnMaskLayer to GetLayerMask (since it's a plain getter)
2013-03-30 18:24:04 +01:00
Wayne Stambaugh 45fc0125a7 Fix field position bug in edit component dialog when OK button cancelled due to empty field. 2013-03-29 20:06:08 -04:00
Lorenzo Marcantonio 675f8d4a0b Typedef STATUS_FLAGS to encapsulate EDA_ITEM bitmapped flags 2013-03-28 20:12:46 +01:00
Lorenzo Marcantonio 4865a68fa0 Extremely trivial stuff (mostly cosmetics) 2013-03-28 07:40:19 +01:00
Andrey Fedorushkov 5a5b90984a all: new Russian GOST patch - author Konstantin Baranovskiy
pcbnew: fix print format in THROW_IO_ERROR
        fix properties file export_vrml.cpp
2013-03-28 00:38:20 +04:00
jean-pierre charras 5874ac0f6f Commit patch for x3d file reader (with minor changes). Commit other minor patches and fixes 2013-03-27 19:34:23 +01:00
Wayne Stambaugh a6232e2c92 Fix field text position access bug in Eeschema. (fixes lp:1160214) 2013-03-26 13:25:18 -04:00
Wayne Stambaugh db5d90ce9f Fix SCH_FIELD get reference designator text bug. (fixes lp:1159401) 2013-03-25 13:09:55 -04:00
Andrey Fedorushkov 2b9297020b eeschema: fix build when KICAD_GOST ON (insert in bzr4019) 2013-03-24 00:37:48 +04:00
Carl Poirier 8421cacef4 Add library column to component and module select dialog. 2013-03-18 21:25:19 -04:00
Wayne Stambaugh 7d0ec1a138 More encapsulation work.
* Complete encapsulation of the MODULE class.
* Complete encapsulation of the EDA_TEXT class.
* Encapsulate most of the ZONE_CONTAINER class.
* Add pcbcommon library as a dependency for reSWIGging the scripting
  support.  This should cover most dependency cases.
2013-03-18 15:36:07 -04:00
jean-pierre charras c8ed3280f3 Pcbnew: Fix many minor issues in print dialog, mainly in modedit. 2013-03-12 16:17:44 +01:00
jean-pierre charras e4f72171f5 Eeschema: fix broken mirroring for texts and labels in block mirror X and Y (this fixes Bug #1135505)
Pcbnew: add in module popup menu an option to edit the footprint in Modedit (like in Eeschema for components)
minor icons enhancements.
2013-03-01 20:59:29 +01:00
jean-pierre charras 7a5386a1a1 Minor fixes and cleanup 2013-02-26 12:25:30 +01:00
Baranoviskiy Konstantin af433f8031 Remove redundant Eeschema plot submenu on platforms that do not support plot to clipboard. 2013-02-23 15:08:28 -05:00
Wayne Stambaugh 348b7de4ab Fix Eeschema plot dialog escape key handling bug on some Linux distros. 2013-02-22 16:59:53 -05:00
Wayne Stambaugh 0e4bb20e3c Minor dialog and footprint ID class fixes.
* Make Pcbnew net list dialog honor escape key on Linux.
* Make Pcbnew swap layers dialog honor escape key on Linux.
* Layout and UI policy fixes for Pcbnew swap layer and net list dialogs.
* Layout and UI policy fixes for Eeschema plot dialog.
* Rename fpip.h to fpid.h.
* Fix FPID class compiler errors.
* Restore fpid.cpp to Pcbnew static library source list.
2013-02-22 15:03:00 -05:00
Dick Hollenbeck 74540cb49a wxID_CANCEL, 5 pixel border around sizers, resizable search combobox, dialog_shim usage on a few dialogs 2013-02-22 07:47:35 -06:00
Baranovskiy Konstantin e37372f45f Eeschema border and title block DXF plot color bug fix. 2013-02-21 18:45:46 -05:00
jean-pierre charras ee2ed120bd Eeschema: Fix Bug #1130262 (Inverted pins are plotted with erroneous line width) 2013-02-20 12:46:38 +01:00
Wayne Stambaugh 0564cbc70c Minor dialog spacing, grammar, and sizer fixes. 2013-02-19 14:43:48 -05:00
Wayne Stambaugh 8cd77e78f9 Minor dialog spacing, grammar, and UI policy fixes. 2013-02-18 15:14:53 -05:00
Emmeran 13972e0678 Adds zooming method for zooming relative to the crosshair instead of centering
the crosshair after zooming.

This method is only used when the ALT key is held while using the mousewheel or
if it's permanently enabled in the options dialog next to the middle mouse
button panning option.
2013-02-18 09:57:39 -06:00
Antia Puentes fa0a51411a Eeschema: force file ext in"Sheet Save As" command (Bug #1122212 ) 2013-02-13 18:18:23 +01:00
Emmeran 6a54a198ca converted linux to dos file endings for wxfb files 2013-02-12 05:30:28 +01:00
Emmeran 95213372fe moved changes to dialogs into fbp files 2013-02-12 05:18:22 +01:00
jean-pierre charras e206a1b4c5 Eeschema: All fixed fields are now always saved in libraries. Therefore the footprint field can be set in lib (size, visibility) and imported in schematic with its predefined attributes, even if the footprint text is not set. 2013-02-11 19:50:55 +01:00
Wayne Stambaugh 4d465ec8a0 Configuration and compile documentation improvements.
* Improve the stable and testing build version option logic.
* Use CMake FindPythonInterp to configure the Python interpreter.
* Use Python interpreter to determine the system Python module install
  path if not already defined on the command line.
* Add header symbol checks for asinh(), acosh(), and atanh().
* Add test source to check for isinf() which can be defined as a C++template.
* Replace conditional compile on windows systems for aXXXh() with CMake
  configuration tests.
* A few minor MSVC compile fixes.
* Fix incorrect python environment string in fixswigimports.py
* Create a separate document for KiCad CMake build options.
* Create a separate how to compile KiCad on Windows document.
2013-02-10 19:41:49 -05:00
jean-pierre charras 00fafe7d58 eeschema, libedit l fix a bug in lib_arc.cpp which creates incorrect arc start and arc end parameters after rotation or mirror.
the Bug #1121079 is due to this bug, but Bug #1121079 itself cannot be fixed because this is the data inside the lib which is broken.
2013-02-10 19:02:45 +01:00
jean-pierre charras 42c2399af7 Pcbnew: Try to find a better workaround for zone fiill bug (crash or bad fil areasl in very rare cases).
pcbnew+Eeschema: Fix a very minor bug: filename not displayed in frame reference.
2013-02-09 21:03:20 +01:00
Wayne Stambaugh 3af054c702 Improve Eeschema find dialog behavior.
* Remove ignore mouse events before creating find dialog for true mode-less
  behavior as was originally intended.
2013-02-07 15:36:35 -05:00
Jacobo Aragunde Perez da757938e6 Commit patch for bug 1116059 (Inconsistency between confirmation dialogs) 2013-02-07 18:35:37 +01:00
jean-pierre charras 410644343d Eeschema, Libedit: fixes color artifacts when moving/placing a pin.
Very minor other fixes.
2013-02-06 12:54:51 +01:00
jean-pierre charras 02bacd668e Very minor changes (tooltips update, to synchronize them with the doc update) 2013-02-04 09:52:56 +01:00
Emmeran 0bdf5bac72 added option to allow zooming around the crosshair instead of the center; can be enabled via options or by holding alt while using the mousewheel 2013-02-02 20:10:48 +01:00
jean-pierre charras 619125f9ab Changes for CvPcb to eeschema stuff file: the stuff file generation from CvPcb is removed. Eeschema now imports footprints names from the .cmp usual file created by CvPcb or by Pcbnew (Why to use 2 file formats for the same thing?) .
Pcbnew: in netlist dialog: The user now can choose between the netlist and the .cmp file to import footprints names.
Therfore no need to delete the .cmp file when exists to use only the netlist.
This is useful for users who use CvPcb only once to fill footprints fields in schematic, and after edit/modify the footprints fields in schematic outside CvPcb.
2013-02-02 18:39:59 +01:00
Jacobo Aragunde Perez 638decafae Commit fixes for bugs #1108773 and #1110651 and a bug fix improvement for #1101718 and #1102381. 2013-02-01 08:58:49 +01:00
Jacobo Aragunde Perez 85562b45e8 Commit patch to fix bug 1108838 (+ fix a very minor fix in eeschema, when loading a new component) 2013-01-30 17:15:45 +01:00
jean-pierre charras 5d5a50dde9 Eeschema: fix a bug which crashes Eeschema (when a label is being created, and its type is changed by popup menu, for instance to a text, before it was put on schematic)
remove unused file and minor coding style fix
2013-01-25 18:29:54 +01:00
Jacobo Aragunde Perez a641ebb344 Eeschema: Add "append schematic" feature. Fix bug 1101718 <Empty plot filename> 2013-01-24 18:46:37 +01:00
Jacobo Aragunde Perez 03ffc93786 Eeschema: hotkey enhancement while moving a block or an item. 2013-01-21 21:16:04 +01:00
Jacobo Aragunde Perez 2f3c5e7a1e Eeschema: fix Bug #1102381 <eeschema: -cache.lib file not created the first time you save a schematic> 2013-01-21 20:58:02 +01:00
Wayne Stambaugh f8a56d446f Base object decoupling improvements.
* Improve MSG_PANEL_ITEM to handle message panel information.
* Create containers for passing message panel items between objects and
  the message panel.
* Rename EDA_ITEM::DisplayInfo to EDA_ITEM::GetMsgPanelInfo.
* Remove all direct manipulation of EDA_DRAW_FRAME from all objects derived
  from EDA_ITEM.
2013-01-12 12:32:24 -05:00
jean-pierre charras ccfd2369b9 EDA_LIST_DIALOG: add a filter option to select names to display is list, from a kamil zorychta's patch <kamil.zorychta@gmail.com>
Use wxFormBuilder to create EDA_LIST_DIALOG_BASE, like other dialogs.
Minor code cleanup (remove unused functions and coding style fixes) and minor bug fixes.
2013-01-10 13:18:43 +01:00
Jacobo Aragunde Perez f914cd0dec Eeschema:commit patch <Prevent Eeschema from opening the same file twice> with a small fix for windows. 2013-01-04 13:06:50 +01:00
jean-pierre charras 7dbcbf6d15 Kicad manager: cleanup code, remove dead or not working code. Fix minor isssues 2013-01-03 20:25:12 +01:00
jean-pierre charras 2fc643de36 Eeschema, Libedit: Fix potential issues when using some hot keys. 2013-01-02 09:34:46 +01:00
jean-pierre charras 9c62d2dfb7 Eeschema, Libedit: fix potential bugs. 2013-01-02 08:55:48 +01:00
jean-pierre charras dd3b684ce6 Eeschema: fix Bug #1095005 2013-01-01 21:52:37 +01:00
Antia Puentes f4af52f94d Eeschema: Allow to edit an schematic item while dragging 2012-12-29 13:55:36 +01:00
jean-pierre charras d2126bafff Eeschema: fix incorrect hotkey commands while moving/dragging a component. 2012-12-28 16:56:41 +01:00
jean-pierre charras 8653e362b2 Pcbnew: board editor: allows pad edition by hotkey 'E' (was accessible only by mouse button right click)
All: minor code cleaning and very minor bug fixes.
2012-12-27 17:42:41 +01:00
jean-pierre charras 97749ed192 Eeschema: fix bug 1092864 2012-12-21 19:57:56 +01:00
jean-pierre charras d919d71054 Eeschema: fix bug 1092834 (Hotkey 'G' Drag label not working) 2012-12-21 13:56:17 +01:00
Wayne Stambaugh 63b884558a Doxygen warning fixes. 2012-12-18 08:54:44 -05:00
jean-pierre charras 4352eddadb eeschema: make new netlist format (S expr netlist format) the default for Pcbnew netlists in dialog netlist.
Also move netlist_control.* to dialogs/dialog_netlist.*, to be consistent with other file dialogs.
2012-12-16 12:36:18 +01:00
jean-pierre charras 1886082fce Eeschema: Erc dialog: enhancement. Now not modal.
Pcbnew: Drc dialog: fix a old very minor bug.
Added: single click on an item in marker list moves the board  graphic cursor on the corresponding marker location on the board
Double clicking is not modified.
2012-12-10 20:08:09 +01:00
jean-pierre charras 926dec84a5 Eeschema: fix compil issue with wxWidgets 2.8.12 2012-12-08 20:36:28 +01:00
jean-pierre charras ba05519662 Eeschema: Add hotkey 'U' to edit reference. Better filtering for hotheys V, F, U: now the corresponding field is selected without selection list between component and the field. 2012-12-08 18:24:49 +01:00
jean-pierre charras 1671432ac1 All: Fix an usually unwanted behavior in kicad: When closing a dialog (mainly ERC, DRC and recently a component selection by the library viewer on a double click) the mouse release left button event (which is seen by the parent after closing the dialog, becuse it is actually made in the parent) generate an unwanted command (item selection, component place ...)
This event can be now skipped if needed by calling  EDA_DRAW_FRAME::SkipNextLeftButtonReleaseEvent() from the dialog.
Very minor other fixes
2012-12-07 11:05:19 +01:00
jean-pierre charras 14fcf7f933 Try to fix an unwanted left mouse release button event, when closing a dialog on a click or double click,
and therefore when the mouse butoon is released in the parent window
Minor other fixes.
2012-12-06 22:53:00 +01:00
Dick Hollenbeck 151f81aa95 merge patch with refinement 2012-12-04 13:12:50 -06:00
Dick Hollenbeck 79015495b1 Prevent the double click from being as a single click in the parent
window which would cause the part to be parked rather than staying
in drag mode.
2012-12-04 13:09:53 -06:00
Antia Puentes c971460467 In eeschema, when inserting a component into the schematic using the
Library Browser tool, you have to select it in the components listbox
and then press the "Insert component into schematic" button to close the
window and return to the schematic.

The attached patch enables the selection and insertion of a component in
schematic by double clicking on it in the Library Browser component
listbox. As the double clicking should have effect only if the Library
Browser was launched to load a component in schematic, the patch checks
for NULL the m_Semaphore variable, used two distinguish the mode in
which the Library Browser is running (modal, used when inserting a
component in schematic, or non-modal).
2012-12-04 13:04:04 -06:00
Marco Mattila 275f02adc3 Fix BOM-by-reference generator to print the separator character instead of the ascii code 2012-12-03 17:06:49 +02:00
jean-pierre charras 91d5bb5812 Eeschema: dialog ERC: minor enhancements and code cleaning. 2012-11-30 13:28:23 +01:00
jean-pierre charras efdf28f67e Polyline.cpp: fix a bad wxASSERT test which generate error messages in Debug mode when there is no error, in DEBUG mode, when filling zones with holes. 2012-11-27 21:12:39 +01:00
jean-pierre charras 2d1a7e099b Csv Boom file: fix a minor error in commit 3818 2012-11-26 20:14:38 +01:00
jean-pierre charras 978ae91841 Eeschema: Fixes and enhancements in BOM list generation and BOM code:
* remove useless spaces in csv bom file format.
 * remove KICAD_GOST conditionnal compilation and merge KICAD_GOST code with the "normal" code.
 * Csv file format created by KICAD_GOST code is now available for everybody through the BOM dialog options (as it should).
 * fix coding style issues.
2012-11-26 18:28:54 +01:00
jean-pierre charras 22645084bb Pcbnew: fix bug1082146 (Keep-out areas get destroyed by "export settings to other zones" )
Eeschema: fix bug 1082107 (error message" component not found" when no component selected from select component dialog box)
2012-11-23 10:10:37 +01:00
jean-pierre charras bf3b8f567a BOM list code cleanup. 2012-11-22 21:33:52 +01:00
jean-pierre charras 1dd0adf7e0 Eeschema: item drag command: Fix issue for overlapping items (from a Younes Manton's idea)
Added: display info when clicking on labels.
2012-11-20 12:35:09 +01:00
Dick Hollenbeck a93637b14f remove -std=c++0x compiler option since nobody is ready for it, and accordingly back into auto_ptr from unique_ptr 2012-11-15 10:04:10 -06:00
Dick Hollenbeck 9bbff22d96 1) Switch to boost hashtable support from wx macros which did not handle std::string.
This required the additional compiler command line option "-std=c++0x".

2) Switch to unique_ptr from auto_ptr which is C++ deprecated.

3) Change to new English layer names per mailing list discussion, see class_board.cpp.

4) When saving to *.kicad_pcb or *.kicad_mod, identify opportunities to use wildcard
   layer sets, for pads so far.

5) Switch to two std::string hashtables in pcb_parser.cpp, away from one wxString based one
   for layer names and layer sets mapping. One hashtable holds the mask, the other the index.
   Layer sets are only in the mask table.

6) Move "LOCALE_IO toggle" into PCB_IO::Format() since it is a public API function and
   caller should find it as convenient as possible to use.  LOCALE_IO should handle
   nesting OK in the case where public Format() is called from one of the Footprint*()
   functions.

7) Drop support for "export module to new library".  Creating new libraries will have to
   be handled in concert with library table entries, and we've talked recently about
   creating a better footprint library manager, one that resides in a DLL/DSO.  So
   this kind of functionality needs to be handled in there in the near future.

8) Change name of exported PCB_IO module/footprint to *.kicad_mod and not *.emp.
2012-11-14 01:15:59 -06:00
jean-pierre charras 31e58d87d4 Eeschema: fix an old bug: sometimes E hotkey (and some other' hot keys) was editing a previously selected item, not the item under the mouse cursor
Templates: remove useless backup files
2012-10-31 21:27:31 +01:00
Dick Hollenbeck dd519d68ea remove unused #include <wxfstream.h> from several places 2012-10-29 16:56:18 -05:00
Dick Hollenbeck 7c5e42b4d0 switch from STREAM_OUTPUTFORMATTER to FILE_OUTPUTFORMATTER mostly throughout,and minor richio factoring 2012-10-25 10:41:20 -05:00
jean-pierre charras 6abf0e9f94 Eeschema: Bug fix (move component field was not undoable)
Minor enhancement in popup menus for wire and bus.
Kicad: stm32f0discovery template: very minor fix.
2012-10-23 18:37:19 +02:00
jean-pierre charras 292c1f0912 Kicad: bug fix in menubar when changing the selected locale.
fctsys.h: remove useless define.
Fix minor issues and add minor enhancements.
2012-10-18 21:31:40 +02:00
Brian Sidebotham 9823666ca9 Commit patch from Brian Sidebotham: Project template in Kicad manager 2012-10-14 18:57:11 +02:00
jean-pierre charras 621a43c4ad Eeschema: always stores sheet filename in unix-like notation, and fix a bug when editing sheet file name.
Pcbnew: add PDF format  for drill map generation.
Plotter classes: tweaking code.
2012-10-13 20:54:33 +02:00
Andrey Fedorushkov cedcd2bace eeschema: fix segfault when edit text and empty editing text 2012-10-13 22:33:58 +04:00
marco. eee9738755 OSX: Corrected issue with Menus, workaround/fix for an issue with Mountain Lion 2012-10-13 20:23:03 +02:00
Dick Hollenbeck 44c25d14ec eeschema erc dialog extends from DIALOG_SHIM 2012-10-08 14:34:04 -05:00
Dick Hollenbeck b97ece7f58 minor. 2012-10-08 14:30:38 -05:00
jean-pierre charras 143af26952 Eeschema: code cleanup, remove dead code and some global and useless variables 2012-09-28 19:47:41 +02:00
jean-pierre charras 63257245e8 Eeschema: fix Bug #1057225 2012-09-27 20:18:56 +02:00
marco. 0355119044 [MacOSX] Updated Icons - Document ones still missing :( 2012-09-27 19:20:44 +02:00
jean-pierre charras b660b033ad All: remove macros MAX, MIN, ABS from macros.h and replace these macros by std::max, std::min and std::abs (mainly found in old code). 2012-09-22 13:19:37 +02:00
jean-pierre charras 5179ed926b eeschema: plot functions: code cleaning.
SVG plotter: fix issues in draw arc and draw rectangle.
2012-09-18 16:50:30 +02:00
jean-pierre charras c3ecce2ec6 Eescheam: plot HPGL: add comments and minor fix. 2012-09-18 10:39:56 +02:00
jean-pierre charras 5590e1ebf5 eeschema: plot dialog: minor fix 2012-09-17 21:28:17 +02:00
jean-pierre charras 996bf80d1f Add missing files 2012-09-17 19:56:40 +02:00
jean-pierre charras 16064881be Eeschema: Plot dialogs: unify 5 dialogs (which means 5 duplicate code) to only one plot dialog (like in Pcbnew)
clean duplicate code.
Simplify HPGL dialog: plot offet removed and replace by only one option (plot origin to center of sheet or not)
This is surely enought.
2012-09-17 19:42:27 +02:00
jean-pierre charras a9744e3f84 Pcbnew: added: SVG plotter. Need refinements, but works.
Mainly to plot drill maps, but can be used to plot boards, for documentation.
The print svg still exists, but the plot SVG has more options (mirroring, holes in pads),
however  print svg allows color print, and full board printing, and plot does not.
2012-09-15 14:13:03 +02:00
jean-pierre charras 93ebdb2cd0 All: better code to handle opened frames libview, libedit, modview, modedit.
Other minor fixes.
2012-09-12 11:53:11 +02:00
jean-pierre charras b810135e4e Code cleaning, minor fixes and minor coding style fixes. wxWidgets 2.9.4 compatibility fix( deprecated function MakeModal ) 2012-09-11 21:03:21 +02:00
jean-pierre charras 3668f4ccc3 Pcbnew: cleanup functions: now, cleanup uses same algorithm as connectivity calculations to detect pads connections, and is faster.
therefore tracks which have a end point inside a pad, but not necessaryexactly  to the pad position are seen as connected, and are no more removed.
Side effect: reconnect to pads option is removed, because it is useless.
TODO: use this algorithm in drag functions.
Minor other fixes
2012-09-07 21:29:44 +02:00
Dick Hollenbeck 5aec46049d apply DIALOG_SHIM to dialog_lib_edit_text_base and make dialog_lib_edit_pin_base apportion more width for pin name 2012-09-07 11:15:18 -05:00
Lorenzo Marcantonio 7d154606be Substituted the few remaining uses of long instead of time_t 2012-09-05 14:13:33 +02:00
Lorenzo Marcantonio e771112259 Enforced EDA_COLOR_T type and minor const-ification 2012-09-02 14:06:47 +02:00
Lorenzo Marcantonio 082d901d60 Encapsulated drawmode as an enum for type checking 2012-09-01 15:38:27 +02:00
jean-pierre charras 37ee239449 Pcbnew: in SVG export, add option to export only the board area, not the full page.
dialog plot functions: fix compil warnings with wxWidgets 2.8
2012-08-31 09:43:37 +02:00
Lorenzo Marcantonio fef8347176 Script plotting patch 2012-08-29 18:59:50 +02:00
jean-pierre charras 79d55c0460 Minor cosmetic enhancements.
Kicad manager: shows now svg files in tree files.
Pcbnew: fix incorrect printing (board out of page) when creating drill map in postscript format ( noticeable mainly for small boards)
2012-08-29 14:40:09 +02:00
jean-pierre charras 31ff1bac4f 3D viewer:
*  serious code cleanup (remove duplicate code)
  *  shows (option in 3D preference menu) the copper items (tracks, zones...)  in 3D, using 35 microns copper thickness.
      However, because there are a lot more3D data to show (roughly 4 times more), this is slower.
2012-08-26 15:59:55 +02:00
Dick Hollenbeck 3a07ab1f09 *) 64 bit size_t is not compatible with %u printf format control. use "%zu"
where the 'z' prefix is for size_t arguments.

*) minor beautification
2012-08-24 06:14:10 -05:00
jean-pierre charras 0ebc3f063e 3D-viewer: code cleanup.
Eeschema: annotate and netlist dialogs: enhancements.
Minor  coding policy fixes and  changes.
2012-08-21 12:45:54 +02:00
Dick Hollenbeck 898275fa43 work around wx2.8 wierdness 2012-08-16 10:34:41 -05:00
Dick Hollenbeck 367bfb4e14 fix problem with eeschema print dialog showing up on missing monitor 2012-08-15 12:55:48 -05:00
jean-pierre charras abe5c08e20 3D-viewer: code cleaning. Added option in menu: show a 3D grid.
All: press ctrl+shift key when moving the mouse allows the graphic cursor to be moved outside the grid.
(useful to place graphic objects, texts in any position, regardless the current grid)
2012-08-11 14:52:13 +02:00
jean-pierre charras 1f277fd66d Remove Kbool from Kicad. Use Clipper instead. 2012-08-04 11:43:27 +02:00
jean-pierre charras 3b56ea6732 Eeschema: fix crash when changing a label type to a global label during creation.
Pcbnew: code cleaning in polygons
2012-08-02 15:23:53 +02:00
jean-pierre charras 99b90d2fa3 More work on a better support of polygons in Kicad (code cleaning). 2012-07-25 20:46:25 +02:00
jean-pierre charras 4f01bedf97 Eeschema: fix a bug that crashes eeschema (only when compiled in debug mode) when creating a new wire, and when any wire orientation is allowed. 2012-07-21 18:52:29 +02:00
Marco Mattila 9ec6139f9d Edit eeschema single part per line sorting code. 2012-07-17 22:13:35 +03:00
jean-pierre charras 9d8c684a4a Libedit and Modedit: fix minor, but annoying issues when editing items 2012-07-17 17:29:29 +02:00
Marco Mattila 5742bfb8cc Fix eeschema single part per line bom generation. 2012-07-16 21:49:04 +03:00
jean-pierre charras 8439dc450f Eeschema: fix compatibility issue with wxWidgets 2.8.12 2012-07-12 16:59:06 +02:00
jean-pierre charras 701140a6dd Eeschema: fix wrong bitmap size in hierarchy navigator tree 2012-07-10 14:26:26 +02:00
jean-pierre charras af0d21474d Pcbnew: commit Lorenzo Marcantonio's patch for THT thermals (added loading/saving using S. expr).
Fix incorrect import of smd pads from Gpcb.
Very minor change in dialog print.
2012-07-09 09:10:07 +02:00
jean-pierre charras 7f16520498 Eeschema: bug fix: when creating new connections, junctions were not always automatically added when needed.
Fix an other minor bug.
2012-07-05 13:37:48 +02:00
Moses McKnight 70c30bce74 Commit patches from Moses McKnight, to avoid duplicate junctions. 2012-06-20 11:52:29 +02:00
Wayne Stambaugh 2d0d805014 Add Pcbnew s-expression file parser.
* Add s-expression file parser object and keyword files.
* Fix minor issues with s-expression file formatting.
* Fix a minor bug the zone container fill state parsing in the legacy plugin.
* Move EDA_TEXT visibility definition to eda_text.h.
* Add minor BOARD_ITEM object improvements to support s-expression file
  parser.
2012-06-09 13:00:13 -04:00
jean-pierre charras de471744cd Fix some minor bugs in plot functions 2012-06-09 11:38:58 +02:00
Ryan Bunch e07fd7ef82 allow comments in library files 2012-06-06 09:12:39 -05:00
jean-pierre charras 20a6b7ea70 Eeschema: Fix incorrect display refresh when editing the reference of a component from the popup menu. 2012-06-03 13:16:08 +02:00
jean-pierre charras 808020b1eb Eeschema, Libedit: Fix bug that can crashes Eeschema: In libedit 2 mandatory fields could be deleted. Fixed now.
Very minor other fixes.
2012-05-31 15:47:02 +02:00
Lorenzo Marcantonio 28bcad847e Rename BASE_SCREEN member m_NumberOfScreen to m_NumberOfScreens. 2012-05-26 20:19:12 -04:00
Andrey Fedorushkov d8c14403f2 eeschema: fix set bus width when define KICAD_GOST 2012-05-25 18:33:58 +04:00
jean-pierre charras e6ec9f0a32 Pcbnew: fix crash in legacy_plugin.cpp when reading old lib files.
fix a compil warning.
CvPcb: fix regressions :
 Shows now a void field instead of the dummy footprint name $nonane (whenthere is  no footprint selected in netlist).
 The active footprint selection changes only if a new component is selected from the component file,
 and does not change just when the next component is automatically selected, after a footprint selection.
 Speed up delete association and auto associe.
2012-05-25 08:58:52 +02:00
Lorenzo Marcantonio 925774760c Rationalize numeric time stamps to type time_t. 2012-05-24 21:52:04 -04:00
brian. afdf5258f3 Commit patch from Brian Sidebotham (Bus width value option) 2012-05-24 08:51:52 +02:00
jean-pierre charras cdd60c956e Libedit: fix minor bug: Copy doc not working in Properties dialog. 2012-05-23 12:06:33 +02:00
jean-pierre charras 4812968129 Eeschema: Fix a minor issue in block command
Very minor code cleaning
2012-05-20 21:18:06 +02:00
jean-pierre charras 9e7cbed8c1 Fix compil issues with gcc 4.6 and boost 1.49 2012-05-16 18:59:47 +02:00
jean-pierre charras 40c5a46f38 Libedit: fix Bug #994014.
Pcbnew: fix Pcbnew name capitalization in messages.
About dialog: add a link to kicad-pcb.org
2012-05-13 17:31:58 +02:00
jean-pierre charras f6551172d2 Fix capitalization issues in title bar and config files (broken by bzr rev 3543) 2012-05-10 08:25:27 +02:00
Dick Hollenbeck 86e04b4fb3 more nanometer work, see comment at line 66 of pcbnew/classpcb.cpp 2012-05-06 15:10:43 -05:00
jean-pierre charras a3f83d771f Fix grid selection issue when starting Eeschema or Gerbview:
Eeschema (also Libedit and Libview) starts always to the default grid (50 mils)
Gerbview starts with the last selected grid, but the validity is tested.
In Pcbnew the grid value is always displayed, so it should always be good.
2012-05-06 18:55:51 +02:00
Jerry Jacobs 5f5c504288 Cosmetic UI changes mostly for Mac OS X, see CHANGELOG.txt 2012-05-05 18:02:09 +02:00
Dick Hollenbeck 173c93969d Remove zip library by switching to wxZlibOutputStream for PDF plotter.
Delete LEGACY_PLUGIN cache after deleting library of same name.
Remove automatically generted freerouter help header.
Add Normalize() to BOX2.
Clamp some values in the virtual space of drawframe.cpp
2012-05-04 23:55:36 -05:00
jean-pierre charras 4125ea7789 Gerbview: remove dependencies from Pcbnew.
Should allow Pcbnew code easier to change and Gerbview code more understandable and easier to maintain.
Code cleaning (remove dead code, add comments).
Minor other enhancements.
2012-05-04 19:44:42 +02:00
jean-pierre charras 684d98ecca Add missing files 2012-05-03 21:08:14 +02:00
jean-pierre charras 61acac28e1 Add patch from Lorenzo Marcantonio. Fix some warning issues, and zlib issue under Windows (zlib sources added) 2012-05-03 20:37:56 +02:00
jean-pierre charras e96f1aeb3d Remove valeur_param(), that does not work in Kicad Nanometer 2012-04-27 16:15:11 +02:00
jean-pierre charras 758f22161a All: change MILS_TO_IU_SCALING_FACTOR constant to IU_PER_MILS ( and MM_TO_IU_SCALING_FACTOR to IU_PER_MM)
Also fix bug 985654.
2012-04-26 23:34:20 +02:00
jean-pierre charras 3b671e09d1 All: change MILS_TO_IU_SCALING_FACTOR constant to MILS_PER_IU ( and MM_TO_IU_SCALING_FACTOR to MM_PER_IU)
Also fix bug 985654.
2012-04-26 22:21:31 +02:00
jean-pierre charras fa3ebc4043 Define MM_TO_IU_SCALING_FACTOR (scaling factor from mm to internal units) only in convert_to_biu.h
Other scaling factors (MILS_TO_IU_SCALING_FACTOR and DECIMILS_TO_IU_SCALING_FACTOR)
also defined only in convert_to_biu.h.
Allows different scaling value for Gerbview.
Needs more tests.
2012-04-25 21:33:24 +02:00
Dick Hollenbeck c24863c078 // Dick Hollenbeck's KiROUND R&D
// This provides better project control over rounding to int from double
// than wxRound() did.  This scheme provides better logging in Debug builds
// and it provides for compile time calculation of constants.


#include <stdio.h>
#include <assert.h>
#include <limits.h>

//-----<KiROUND KIT>------------------------------------------------------------

/**
 * KiROUND
 * rounds a floating point number to an int using
 * "round halfway cases away from zero".
 * In Debug build an assert fires if will not fit into an int.
 */

#if defined( DEBUG )

// DEBUG: a macro to capture line and file, then calls this inline

static inline int KiRound( double v, int line, const char* filename )
{
    v = v < 0 ? v - 0.5 : v + 0.5;
    if( v > INT_MAX + 0.5 )
    {
        printf( "%s: in file %s on line %d, val: %.16g too ' > 0 ' for int\n", __FUNCTION__, filename, line, v );
    }
    else if( v < INT_MIN - 0.5 )
    {
        printf( "%s: in file %s on line %d, val: %.16g too ' < 0 ' for int\n", __FUNCTION__, filename, line, v );
    }
    return int( v );
}

#define KiROUND( v )    KiRound( v, __LINE__, __FILE__ )

#else

// RELEASE: a macro so compile can pre-compute constants.

#define KiROUND( v )  int( (v) < 0 ? (v) - 0.5 : (v) + 0.5 )

#endif


//-----</KiROUND KIT>-----------------------------------------------------------

// Only a macro is compile time calculated, an inline function causes a static constructor
// in a situation like this.
// Therefore the Release build is best done with a MACRO not an inline function.
int Computed = KiROUND( 14.3 * 8 );


int main( int argc, char** argv )
{
    for( double d = double(INT_MAX)-1;  d < double(INT_MAX)+8;  d += 2.0 )
    {
        int i = KiROUND( d );

        printf( "t: %d  %.16g\n", i, d );
    }

    return 0;
}
2012-04-19 01:55:45 -05:00
Dick Hollenbeck e88bc8e58b LEGACY_PLUGIN is now in full use:
*) for footprint access into *.mod files and 
*) BOARD save/load

The item_io.cpp and ioascii.cpp have been set off to the side for reference
as *.notused, for awhile.

The CMake options USE_NEW_PCBNEW_LOAD and USE_NEW_PCBNEW_SAVE are gone,
this is now the mandatory usage of the LEGACY_PLUGIN.  This should reduce
code maintenance for awhile until the s-expression plugin comes into 
play.  But at least for legacy format, there is not two code bodies
to maintain any more.

A new LEGACY_PLUGIN footprint library caching scheme is in place which 
needs some testing.  It should not be any faster, but might give better 
results in a networked environment if there is *.mod files on the server.
2012-04-16 22:12:53 -05:00
Wayne Stambaugh bf5802f1f7 Removal of internal units.
* Remove internal units from BASE_SCREEN and it's derivatives.
* Remove internal units from EDA_DRAW_FRAME and it's derivatives.
* Use build time code to replace internal units conversions.
* Fix scaling bug in page layout sample window that I created in my
  last commit.
2012-04-16 19:31:29 -04:00
Wayne Stambaugh 6468805c27 More internal unit improvements.
* Move all convert from user to internal units into base_units.cpp.
* Remove internal units parameters from all moved conversion functions.
* Revise all source code that calls the moved conversion functions.
* Remove internal units from all dialog text control helper classes.
2012-04-16 13:39:32 -04:00
Dick Hollenbeck a42490e0f3 work on footprint plugin API 2012-04-15 22:18:41 -05:00
Wayne Stambaugh 8c0dc01fdd Pcbnew nanometer internal unit fixes.
* Scale page reference border and title block, grid sizes, and zoom factors
  correctly for nanometers.
2012-04-15 21:25:26 -04:00
lajos kamocsay add5321328 Commit patch fixing an issue in pan with middle mouse button (from lajos kamocsay)
Other minor fixes.
2012-04-15 12:33:35 +02:00
Wayne Stambaugh 57d75a75a8 More internal unit improvements.
* Move all convert from internal to user units functions into separate file.
* Remove internal units parameter from all moved conversion functions.
* Revise all source code that calls the moved conversion functions.
* Compile these conversion routines separately for the appropriate pcb or
  schematic internal units.
* Move internal units specific status bar update code into the appropriate
  application for updating the status bar.
* Move millimeter user units rounding function to common.cpp.
2012-04-13 14:51:24 -04:00
jean-pierre charras b28e976e35 Eeschema: BOM list generation: some fixes and enhancements.
drawframe.cpp: commit a fix about scrollbars  from lajos kamocsay
2012-04-13 20:44:02 +02:00
Wayne Stambaugh bed96be750 Internal unit improvements and Pcbnew s-expression file format changes.
* Move EDA_TEXT object into separate header and source file.
* Compile EDA_TEXT class separately for BOARD_ITEM and SCH_ITEM units.
* Compile PAGE_INFO  class separately for BOARD_ITEM and SCH_ITEM units.
* Minor formatting tweaks to Pcbnew s-expression file.
* Move internal unit formatting functions into BOARD_ITEM and SCH_ITEM.
2012-04-12 17:31:31 -04:00
jean-pierre charras 7bd6c82cf0 Eeschema: fix a bug in my previous commit. 2012-04-11 23:01:20 +02:00
jean-pierre charras f0dc54340d All: new middle mouse pan feature, from lajos kamocsay (and jp charras for some enhancements).
If enable in preference menu, allow the pan with drag mouse with middle button down.
both unlimited and limited pan is allowed.
2012-04-11 20:54:20 +02:00
jean-pierre charras 8f62c6aa05 Move AddMenuItem inline functions outside wxstruct.h in a new file (menu_helpers.h)
Enhancements in AddMenuItem (that accepts now a menu type)
Partial use of the Edwin van den Oetelaar's patch (patch not fully working or correct)
2012-04-09 11:16:47 +02:00
jean-pierre charras d739f03c5f Remove old xpm icons files 2012-04-07 13:09:57 +02:00
Dick Hollenbeck f8490ff4af Remove g_PcbPlotOptions, use wxformbuilder to subclass DIALOG_SHIM on several dialogs 2012-04-05 13:27:56 -05:00
Wayne Stambaugh d7feb9ab45 Initial Pcbnew s-expression file format commit.
* Add s-expression Format() function to all objects derived from
  BOARD_ITEM.
* Add s-expression Format() function to base objects as required.
* Add functions to convert coordinates from base internal units
  (nanometers) to millimeter string for writing to s-expression
  file.
* Add temporary dummy conversion functions to prevent link errors
  until schematic and board object and action code can be separated
  into DSO/DLL.
* Add CMake build option to build Pcbnew with nanometer internal
  units.
2012-04-01 16:51:56 -04:00
jean-pierre charras 4882d5459a Libedit, dialog edit pin: fix wxDialogs tabbing order 2012-03-28 18:53:02 +02:00
jean-pierre charras e356e6dc6b Fix issues about translations:
Eeschema: one string with a bad char (\a, not useable in internationalized strings).
Dialog_page_settings: use not translated strings in code, so strings can be freely translated for the UI.
(Initial code was not working with existing translations)
Update 2 icons.
2012-03-27 18:41:13 +02:00
Wayne Stambaugh 45445dd88f Minor code improvements and coding policy fixes.
* BLOCK_SELECTOR class is not longer derived from EDA_ITEM.
* Encapsulate BLOCK_SELECTOR class member variables and add access methods.
* Move HandleBlockBegin() function from block_commande.cpp to drawframe.cpp.
* Remove virtual methods from top level derived objects per future
  coding policy change.
* Remove Doxygen copydoc statement from objects derived from EDA_ITEM
  since the comments are automatically copied to the derived object.
* Removed copy and pasted Doxygen comments from objects derived from
  EDA_ITEM.
2012-03-26 19:47:08 -04:00
Alexander Zakamaldin 625e964c8d Alexander's patches, with refinements 2012-03-26 16:45:05 -05:00
jean-pierre charras cf9864766b class EDA_RECT: is no more derived from EDA_ITEM, just from EDA_RECT (reason: does not use anything in EDA_ITEM)
issue in cast to wxRect fixed (EDA_RECT accepts negative size, but not wxRect, so the wxRectcast  is normalized now).
This fixes some bugs.
A minor other bug fix in Pcbnew.
2012-03-24 15:25:30 +01:00
Dick Hollenbeck b01bcda079 Backout my usage of DIALOG_EXTEND_WITH_SHIM in favor of wxFormbuilder's
subclass DIALOG_SHIM support.
Tried dialog_drc but it has nesting problems due to use of DRCLISTBOX, which
needs to be put into its own header file to untangle.
2012-03-22 13:36:20 -05:00
Dick Hollenbeck 31a84b84ec Add include/dialog_shim.h and common/dialog_shim.cpp for use by wxformbuilder's "subclass a wxDialog" support.
This works, but in my version of wxformbuilder there is a bug which does not properly show the 
subclass property, even though it is still in play.  This happens after saving then loading the *.fbp file.
So it is a nuisance bug, but does not affect functionality.
2012-03-22 02:02:49 -05:00
Andrey Fedorushkov 00e6f01584 eeschema: add forgotten major fix in bzr3471 2012-03-20 19:19:07 +04:00
Andrey Fedorushkov b8a2c4e240 eeschema: fix sorting parts generate BOM "Single part per line" 2012-03-20 18:41:57 +04:00
jean-pierre charras f49c27798e Update some icons with new icons from Fabrizio Tappero.
Remove 2 duplicate icons.
Minor cosmetic enhancements and fixes in popup menus.
2012-03-20 15:17:58 +01:00
Dick Hollenbeck df494fc83e start toying with DIALOG_SHIM 2012-03-19 15:57:19 -05:00
jean-pierre charras b5cac30abd Eeschema: fix a bug in bool SCH_LINE::MergeOverlap( SCH_LINE* aLine ): ends point of resulting segment incorrects.
remove unused icon files.
2012-03-19 08:48:29 +01:00
Wayne Stambaugh 058e17edf7 Minor code and Doxygen comment improvements.
* Remove double Clone() function calls from all classes derived from
  EDA_ITEM.
* Lots of Doxygen comment warning fixes.
2012-03-17 10:39:27 -04:00
Dick Hollenbeck 5080d4cc3e cleanups 2012-03-16 21:11:44 -05:00
jean-pierre charras 6dc85d1c96 Eeschema: fix bug Bug #956818 2012-03-16 20:08:57 +01:00
Wayne Stambaugh 6375497825 Hit test method rationalization and other minor improvements.
* All objects derived from EDA_ITEM now have consistent hit test method
  definitions.
* Remove double function calls from all classes derived from SCH_ITEM.
* Lots of Doxygen comment fixes.
2012-03-15 10:31:16 -04:00
jean-pierre charras 396538e176 Eeschema: minor fixes:
* make 2 bitmaps more visible.
* fix incorrect screen redraw when rotating a component.
* netlist : the pcbnew advanced format can be now stored (persistant option) in project config.
2012-03-12 11:04:40 +01:00
jean-pierre charras 909c2a6051 Dialog exit: better icon.
Pcbnew:
 * graphic_item_properties_base.fbp * dialog pad edit: make some strings more easier to translate.
 * global pad edition: fix a bug that change pad position instead of pad size (round pas only).
Eeschema:
 * fix a bug: new created wires were not alwaes shows until the screen was redrawn.
2012-03-09 19:58:58 +01:00
jean-pierre charras e90cc8adf5 All: added a standard exit dialog called by int DisplayExitDialog( wxWindow* aParent, const wxString& aMessage )
Called when closing pcbnew, cvpcb and eeschema.
Minor code cleaning: remove duplicate or not used strings (mainly file extensions and wildcards)
2012-03-08 18:47:23 +01:00
jean-pierre charras 5e5ec6f1a9 All: try to fix incorrect acs in plot SVG under wxWidgets 2.9:
wxWidgets 2.9 knows wxSVGFILEDC device context.
Unfortunately, arcs are drawn as pies (this is a feature, not a bug).
This is not correct for Kicad.
So Kicad has its own wxSVGFILEDC (named KicadSVGFileDC) that is basically the same as wxSVGFILEDC,
but with arcs drawn as arcs, not pies.
Note also under wxWidgets 2.8 does not know wxSVGFILEDC , so kicad had already its own SVG device context.
2012-03-07 21:18:00 +01:00
jean-pierre charras ed5585eb6c Libedit: fix bug (svg export does not work)
other minor fixes.
2012-03-06 15:08:59 +01:00
jean-pierre charras 75d2dc7311 Pcbnew: Hight contrast mode: commit last patch from Miguel Angel Ajo Pelayo, which also fixes an old bug.
All: prepare better compatibility with wxWidgets 2.9.4. Works fine with 2.8.x (I hope...)
2012-02-28 21:14:17 +01:00
Wayne Stambaugh 4a7394038f Minor Eeschema LIB_ITEM object improvements. 2012-02-27 18:02:08 -05:00
Wayne Stambaugh aaa1cc3e02 Eeschema object list and other minor improvements.
* Convert Eeschema from manually linked list to DLIST for storing
  SCH_ITEM objects.
* Add helper functions to SCH_SCREEN for appending list of SCH_ITEM
  objects.
* Fix bug in wire editing code for accurate undo/redo behavior.
* Add member to DLIST to append another DLIST.
* Other minor code cleaning.
2012-02-26 13:39:39 -05:00
Marco Mattila 23aea616e0 Fix wxUniCharRef casting issue in eeschema single part per line BOM generation code (?). 2012-02-24 17:00:56 +02:00
Marco Mattila d57a12772a Add correct value sorting (1u < 1n) to bom exports. 2012-02-24 01:57:29 +02:00
Marco Mattila 165cbf1149 Fix compiler warnings introduced in 3430. 2012-02-23 14:54:54 +02:00
Marco Mattila 39ba360861 Fix eeschema component drawing issue during copy. Add hotkey for block save. 2012-02-23 01:35:26 +02:00
Marco Mattila 97884551f0 Make single part per line BOM generation compare all component fields. 2012-02-22 23:37:34 +02:00
jean-pierre charras 0a68744e2d Eeschema: Add better dialog to edit an existing field of the current edited component. 2012-02-22 15:04:48 +01:00
jean-pierre charras 718b25656c Libedit: Add better dialog to edit an existing field of the current edited component. 2012-02-21 18:47:30 +01:00
jean-pierre charras 477e98dc6c Fix 2 minor bugs:
* Pcbnew: in hight contrast mode the 'V' hotkey did not always refresh the screen.
* Eeschema: incorrect print scale when the option 'Show page limits' is disable.
2012-02-20 19:46:56 +01:00
jean-pierre charras f1e5be9a67 Fix @JP messages (no bugs, just comment lines)
Eeschema: Viewlib is now accessible from Libedit (to browse libs or load a component to edit)
Libedit: uses now the same dialog as the schematic editor to load a component
Some code cleaning.
2012-02-19 20:53:11 +01:00
jean-pierre charras 827352511a Layers manager: add in popup menu option to hide all coppers layers but active layer.
Design rules: increase number of vias and tracks sizes
Pcbnew: netlist reader: change from my recent commits to keep netnames in pads for footprints not in netlist
(allow an user to place some footprints by hand, set pads netnames and do not lost these netnames when loading a netlsit)
Fix other very minor issues.
2012-02-17 20:43:43 +01:00
jean-pierre charras ba689c10e3 Kicad project manager: add .cmp, .drl .pos and .rpt files management.
Code cleaning and other minor fixes.
2012-02-16 21:03:33 +01:00
Dick Hollenbeck 35ddad2193 wxWidgets Debug builds apparently have some tricky technique to validate
the match between wxString::Format() or wxString::Printf() format strings
with passed arguments, but does this at runtime, not compile time.
Fix some mismatches.  size_t is a 64 bit type on x86_64 whereas int and
unsigned are 32 bit types.  On 32 bit machines they are all 32 bits so
this error is probably not triggered.
2012-02-16 00:17:01 -06:00
Dick Hollenbeck 2082fbba4f fix some warnings in Debug mode under wx 2.9.x 2012-02-10 16:26:42 -06:00
jean-pierre charras fa470d5c4a Pcbnew: Added: modview. This footprint viewer frame which has the same purpose as Viewlib in Eeschema.
this viewer is built using the new  FOOTPRINT_VIEWER_FRAME class.
2012-02-09 21:33:38 +01:00
jean-pierre charras 08ef741770 Undo redo change and code cleanup. 2012-02-05 14:02:46 +01:00
jean-pierre charras 7eb1a136f1 Pcbnew: First draft to use a new netlist format ( containing the same info as the intermediate netlist, but using S expressions)
* Eeschema can generate this netlist format.
*   Pcbnew can use (automatic identification) the current format or the new format.
*   Cvpcb does not use yet the new format.
2012-01-26 10:37:36 +01:00
Dick Hollenbeck 4cbb5c5e94 tune the order of link libraries, based on estimated dependency sequence 2012-01-25 08:56:52 -06:00
marco. a51dab7341 MacOSX: Fix in eeschema component move 2012-01-24 18:46:32 +01:00
Dick Hollenbeck 94097a6b22 * Switch to C++'s true and false and away from C" TRUE and FALSE.
* Enhance class PLUGIN's comments to improve their value as instructional.
  * Switch #includes from "file.h" to <file.h>, and fiddle with search paths
    by using include_directories(BEFORE ...)
  * dialog_page_settings did not have symmetrical space on its right border.
    And it now remembers it last position and size within a program session.
  * base_screen.cpp is now compiled twice, once for {pcbnew,cvpcb} and once
    for eeschema, in preparation for "compile time" support of internal units
    rather than "runtime" support.
2012-01-22 23:17:34 -06:00
Dick Hollenbeck 23172cce23 compile base_screen.cpp separately for {pcbnew,cvpcb} and eeschema, so we can diverge internal units at compile time, not runtime 2012-01-22 22:53:21 -06:00
Dick Hollenbeck b8a0ab4c52 switch to <> for includes from "" per conversation with Jean-Pierre and Wayne, adjust search paths 2012-01-22 22:33:36 -06:00
Dick Hollenbeck e6c8515873 switch to C++'s false and true from C's FALSE and TRUE 2012-01-22 11:20:22 -06:00
jean-pierre charras 4565308d63 Eeschema: fix bug #919636
Pcbnew: 2 minor enhancements
2012-01-21 16:02:49 +01:00
Lorenzo Marcantonio 30fa7158c0 This moves the 'Place Junction' button near the 'No Connection' one, to
keep all the labelling tools together in the eeschema toolbar.
2012-01-18 09:06:48 -06:00
Dick Hollenbeck b76d05f591 fix syntax error in kicad_plugin.cpp, carve out class_page_info.cpp, and add PAGE_INFO::Custom 2012-01-15 23:17:23 -06:00
Dick Hollenbeck 0025ac7d38 Add "portrait" support to the page size settings for all standard paper
sizes.  Tested with postscript output only.  Required minor file format changes
    to reflect the "portrait" setting.  common/dialogs/dialog_page_settings.cpp
    uses a checkbox but its name is "Landscape", which is inverted from portrait,
    but since it is the more common choice, I used that rather than portrait.
    The tooltip for that checkbox makes it clear.  No portrait mode is supported
    for "User" paper size.
2012-01-15 22:11:43 -06:00
jean-pierre charras 742486dce6 Eeschema: Fix erroneous message [Read Only] after creating a new project, and obviously the corresponding schematic file does not yet exist (replaced by [no file]) 2012-01-14 12:52:46 +01:00
jean-pierre charras 1c98200721 Pcbnew: fix issue when KICAD_NANOMETER is defined: when zones use htcth to show zones areas, hatch lines were incorrectly calculated (hunded of thousand lines created)
Eeschema: fix issue in search: search not made in reference strings.
Minor fixes, code cleaning and comment enhancements.
2012-01-10 21:12:46 +01:00
Wayne Stambaugh 409d6e8ea2 Eeschema schematic object improvements.
* Remove unnecessary copy constructors from schematic and component
  library objects.
* Add comment to class definitions where the default copy constructor
  generated by the compiler was adequate.
* Add assignment operator to EDA_ITEM, SCH_ITEM, and all schematic
  objects where the default assignment operator generated by the
  compiler would not be adequate.
2012-01-09 15:26:55 -05:00
Dick Hollenbeck 67e28ade74 ++eeschema
Add shim class SCH_BASE_FRAME which introduces the data model SCH_SCREEN
    to the frame class hierarchy.
2012-01-09 11:24:01 -06:00
Dick Hollenbeck 0cad6e7913 carve out TITLE_BLOCK class from BASE_SCREEN, add hashtables.h for PROPERTIES 2012-01-09 02:35:06 -06:00
jean-pierre charras 9cc4f5d0a6 Eeschema: add compil option in sch_field.cpp to go back to old behavior for field texts justifications (this option is not activated)
Note: only vertical texts have a modified behavior.
Minor other changes.
2012-01-06 20:00:59 +01:00
Dick Hollenbeck dd091fc6b9 merge in mainline into KICAD_PLUGIN work, which is for the PCBNEW nanometer support 2012-01-05 10:30:58 -06:00
Dick Hollenbeck 1393eb0f11 finish up SCH_SHEET::{Set,Get}PageSettings() switch over 2012-01-05 02:07:11 -06:00
Wayne Stambaugh 152b8d91e3 Eeschema schematic object improvements.
* Move SCH_ITEM::Place() code into SCH_EDIT_FRAME so schematic item
  objects no longer have any knowledge of the schematic frame window
  or undo/redo containers.
2012-01-04 17:08:46 -05:00
jean-pierre charras 5a96588eec Fix bug 910364: When a footprint saved in a .mod file is not on front layer and/or not with orientation 0 degree, the Module editor load it incorrectly.
note:  the Module editor save it with default orientation and layer, but the archive function does not, so some footprints can be not editable.
TODO: modify the Archive Function to use the default layer / orientation.
2012-01-04 20:10:33 +01:00
Dick Hollenbeck d3afe95ca8 remove page size globals from eeschema 2012-01-04 00:18:38 -06:00
Wayne Stambaugh b774d96fb0 Minor coding policy and code readability improvements. 2012-01-03 12:14:17 -05:00
Dick Hollenbeck 697f912307 moving objects into BOARD which are saved in a *.brd file, for PLUGIN access 2011-12-30 23:44:00 -06:00
jean-pierre charras 3f15b9c057 Eeschema: Fix issue in Search/ReplaceAll
Pcbnew: fix a very minor issue.
2011-12-30 20:04:40 +01:00
Wayne Stambaugh 8985a1807b Encapsulation and other minor improvements.
* EDA_DRAW_PANEL completely encapsulated.
* Moved OSX m_overlay member from EDA_DRAW_PANEL to EDA_DRAW_FRAME where
  it is used.
* Doxygen comment warning fixes.
2011-12-29 15:11:42 -05:00
jean-pierre charras 375310f2ab 3D view: Fix Bug #908871
Eeschema: fix a minor issue.
2011-12-27 19:08:50 +01:00
jean-pierre charras 750dd6eeac Eeschema: fix bug that creates duplicate segments instead of breaking them at junctions points.
Duplicate segments where created in drag command and netlist calculations.
2011-12-23 09:16:36 +01:00
Dick Hollenbeck 929d5c7a3f merge in testing 2011-12-22 16:12:21 -06:00
Dick Hollenbeck 0d4598656b rename Ki_PageDescr to PAGE_INFO, encapsulate it in accessors, and move it into the BOARD 2011-12-22 15:57:50 -06:00
Wayne Stambaugh c2e5fcaec8 More encapsulation improvements.
* EDA_DRAW_FRAME completely encapsulated.
* Encapsulate the the low hanging fruit in EDA_DRAW_PANEL.
2011-12-22 08:28:11 -05:00
jean-pierre charras 2df818b844 Fix issue in GPcb footprints import.
Better code in test connections in zones.
Very minor other fixes
2011-12-22 09:07:50 +01:00
Wayne Stambaugh 85d2f2f1d5 Eeschema find and replace improvements.
* Add check box and flag to ignore replacing the component reference
  designator field.
* Fix a resizing bug when switching between the find and replace modes of
  the find/replace dialog.
* Fix replace component reference designator field bug.
* Force rebuild of search list when schematic is modified and the replace
  dialog is closed.
* Prevent finding the next item when the find/replace dialog is closed.
* Respect warp mouse pointer setting when closing find/replace dialog.
* Fix duplicate mnemonic control accelerator keys in find/replace dialog.
2011-12-21 15:21:15 -05:00
Wayne Stambaugh 6c28cdc62c More encapsulation work and other minor improvements.
* EDA_RECT and EDA_ITEM completely encapsulated.
* Removed unnecessary EDA_ITEM member m_Selected and replaced functionality
  with SELECTED flag bit.
2011-12-21 08:42:02 -05:00
jean-pierre charras e50d18bc1b Minor enhancement and minor code cleaning. 2011-12-18 18:57:05 +01:00
jean-pierre charras 2c150e4817 All: fix compatibility issues with wxWidgets 2.9.3
Minor cosmetic enhancements.
Pcbnew: more workd abput connection algorithms (work in progress)
2011-12-17 22:21:03 +01:00
Wayne Stambaugh 0e27f45ffd Encapsulate EDA_APP class. 2011-12-16 15:12:49 -05:00
Wayne Stambaugh fac288cffa More encapsulation work and other minor improvements.
* EDA_DRAW_FRAME completely encapsulated except for DrawFrame member.
* Moved members specific to Pcbnew from EDA_DRAW_FRAME to PCB_BASE_FRAME
  or PCB_EDIT_FRAME as appropriate.
* Replace EDA_TOOLBAR with wxAuiToolBar as EDA_TOOL bar provided no
  additional functionality and made code less readable.
* Remove EDA_TOOLBAR class definition from wxstruct.h and delete file
  wineda_toolbar.cpp.
* Rename tool bar members to something more descriptive since the
  horizontal and vertical references wont mean anything once the
  tool bars are movable.
* Lots of dead code removal.
2011-12-16 08:32:23 -05:00
Wayne Stambaugh 95891006cd More EDA_DRAW_FRAME encapsulation work. 2011-12-14 15:03:15 -05:00
Dick Hollenbeck 463c17b807 fix EDA_ITEM::Show() prototype bug, fix KICAD_PLUGIN::Save() problem with netclasses. 2011-12-14 11:25:42 -06:00
Dick Hollenbeck 74ccc4b558 ++common
* changed all the RotatePoint() functions in trigo.{h,cpp} to take a double as the
    angle, which is still in tenths of degrees for now.
  * EDA_TEXT::m_Orient is now double, still in tenths of degrees (for a short while),
    but the double means parsing files and saving them use a different format string.
++pcbnew
  * DRAWSEGMENT::GetStart() and GetEnd() do not operate for S_ARC like they used to.
    They are now simply accessors for m_Start and m_End.  Use DRAWSEGMENT::GetArcStart()
    and GetArcEnd() and GetCenter() for arcs.  specctra_export.cpp was the only
    source file dependent on the old behavior.
  * DIMENSION::m_Text is now contained, not dynamically allocated.
  * more kicad_plugin work.
2011-12-13 22:43:51 -06:00
Wayne Stambaugh a63a2006f0 Add Eeschema replace code.
* Enable replace toolbar button and menu entry.
* Improve find replace logging granularity.
* Fix find and replace dialog control hiding and disabling.
* Minor improvements to the SCH_FIND_REPLACE_DATA object.
* Move find collector list iterator into the collector object.
* Add visibility override flag to EDA_ITEM to temporarily show items that
  are hidden during find and replace.
2011-12-13 10:37:33 -05:00
Wayne Stambaugh 5465966c7b Fix infinite recursion bug in SCH_COMPONENT::SetTimeStamp(). 2011-12-12 15:59:43 -05:00
Wayne Stambaugh d9af562f8f Fix a minor bug in my last commit that caused the debug build to fail. 2011-12-12 10:16:05 -05:00
Wayne Stambaugh 768ec258f7 Encapsulate LABEL_OBJECT class and message panel window member of EDA_DRAW_FRAME. 2011-12-12 09:02:37 -05:00
Dick Hollenbeck b979d1e0b9 plugin work, accessors 2011-12-12 02:37:05 -06:00
Wayne Stambaugh 9461f16281 Encapsulate SCH_EDIT_FRAME and LIB_EDIT_FRAME classes. 2011-12-09 11:37:11 -05:00
Wayne Stambaugh d8ad2cceb0 Encapsulate LIB_PIN class and begin encapsulating SCH_EDIT_FRAME class. 2011-12-08 16:05:43 -05:00
Wayne Stambaugh 1047e60e35 Encapsulate SCH_POLYLINE, SCH_SHEET, and SCH_TEXT classes. 2011-12-08 10:45:01 -05:00
Wayne Stambaugh 9dce6fba09 Encapsulate SCH_JUNCTION, SCH_LINE, and SCH_NO_CONNECT classes. 2011-12-07 15:19:29 -05:00
Wayne Stambaugh 16131a500d Encapsulate SCH_FIELD class. 2011-12-07 13:47:59 -05:00
jean-pierre charras bcbde5d813 All: fix a collision name between accessor function GetTimeStamp and GetTimeStamp in common.cpp.
In common.cpp GetTimeStamp is renamed GetNewTimeStamp (a better name).
Pcbnew: prepare work to calculate connections between pads that inteserct and therefore can be connected without any track (composite pads).
2011-12-07 16:49:32 +01:00
Wayne Stambaugh c7fe98db2f Encapsulate SCH_BUS_ENTRY class. 2011-12-07 09:08:52 -05:00
Wayne Stambaugh 539f4e1ed7 Encapsulate DANGLING_END_ITEM class. 2011-12-06 16:02:21 -05:00
Dick Hollenbeck b26580d5df ++PCBNew
* Removed Pcb_Frame argument from BOARD() constructor, since it precludes
    having a BOARD being edited by more than one editor, it was a bad design.
    And this meant removing m_PcbFrame from BOARD.
  * removed BOARD::SetWindowFrame(), and BOARD::m_PcbFrame
  * Removed the global BOARD_DESIGN_SETTINGS which was in class_board.cpp
  * added BOARD_DESIGN_SETTINGS to the BOARD class, a full instance
  * a couple dialogs now only change BOARD_DESIGN_SETTINGS when OK is pressed,
    such as dialog_mask_clearance, dialog_drc, etc.
  * Removed common/pcbcommon.cpp's int g_CurrentVersionPCB = 1 and replaced it
    with build_version.h's #define BOARD_FILE_VERSION, although there may be a
    better place for this constant.
  * Made the public functions in PARAM_CFG_ARRAY be type const.
    void SaveParam(..) const and void ReadParam(..) const
  * PARAM_CFG_BASE now has virtual destructor since we have various way of
    destroying the derived class and boost::ptr_vector must be told about this.
  * Pass const PARAM_CFG_ARRAY& instead of PARAM_CFG_ARRAY so that we can use
    an automatic PARAM_CFG_ARRAY which is on the stack.\
  * PCB_EDIT_FRAME::GetProjectFileParameters() may no longer cache the array,
    since it has to access the current BOARD and the BOARD can change.
    Remember BOARD_DESIGN_SETTINGS are now in the BOARD.
  * Made the m_BoundingBox member private, this was a brutally hard task,
    and indicative of the lack of commitment to accessors and object oriented
    design on the part of KiCad developers.  We must do better.
    Added BOARD::GetBoundingBox, SetBoundingBox(), ComputeBoundingBox().
  * Added PCB_BASE_FRAME::GetBoardBoundingBox() which calls BOARD::ComputeBoundingBox()
2011-12-05 00:15:33 -06:00
Wayne Stambaugh d9e0ab0241 Improve Eeschema find code and add initial replace plumbing.
* Replace Eeschema find code with a collector based implementation.
* Fixed a search bug when all subsequent searches of an item would ignore
  the remaining valid child items when an item had more than one child
  item that matched the search criteria.
* Add SCH_FIND_COLLECTOR class to find all items that meet the specified
  search criteria.
* Add SCH_FIND_COLLECT0R_DATA to keep track of information for all matching
  items.
* Use collector to iterate over the list of items that match the search
  criteria rather than trying to start at the last matched item.
* Remove unused searching methods from sheet path and sheet path list
  objects.
* Add replace and replace all functionality to Eeschema find dialog.
* Push matching methods down to EDA_ITEM class so they can be used by
  other derived objects.
* Add method to EDA_ITEM to test if item supports replacing.
* Add flag to find/replace data to support replace feature.
* Disable wild card matching check box when dialog is in replace mode as
  wild card replacement is not supported at this time.
* The usual Doxygen comment and coding policy fixes.
2011-12-01 11:49:28 -05:00
Dick Hollenbeck b6508af0f4 KICAD_PLUGIN and nanometer intermediate checkin, work in progress... 2011-11-30 15:15:56 -06:00
jean-pierre charras 683921f98d Eeschema: fix crash in intermediate netlist generation when a component has no pins (like logos or images).
Pcbnew: texts in dimensions can be now moved.
Gerbview: fix incorrect number of layers  in export to pcbnew function.
2011-11-24 20:57:41 +01:00
Wayne Stambaugh 35749e57c4 Fix Eeschema find item bugs and other minor changes.
* Fix bug in hierarchical searches using sheet path pointers which are
  destroyed on every search.  Use human readable path as last sheet found
  in test to prevent comparison of deleted pointers.
* Fix a bug in SCH_COMPONENT::Matches() that would prevent searching for
  pins if the search all fields flags was not set.
* Fix a bug in SCH_COMPONENT::Matches() to use the sheet path to perform
  the comparison to the correct reference designator and unit number.
* Fix wrapping in sheet path and sheet path list MatchNextItem methods.
* Push search methods down to EDA_ITEM object so advanced searching can
  be performed on all items derived from EDA_ITEM.
* Add virtual method to EDA_ITEM object to test if item supports replacing
  text.
* Replace switch statement magic numbers in Eeschema socket connection code
  with Pcbnew for improved readability.
2011-11-16 20:06:08 -05:00
jean-pierre charras 790b6b54f5 Forgotten change. 2011-11-12 10:58:20 +01:00
jean-pierre charras 9cb27eb85c Some better icons.
Fix bug 880132 (Justify not correct)
Note: justifications are now always relative to the text, in libedit (as before) and schematic editor:
if rotated, justification is rotated, because in Pcbnew rotation can have any value.
2011-11-12 10:51:06 +01:00
Wayne Stambaugh 7a5e6a2d66 Remove message dialogs from COMPONENT_LIBRARY class.
* Move the component library save file creation and write error dialogs
  into the appropriate frame object.
* Change the save component library and document definitions take an
  OUTPUTFORMATTER object instead of a file name.
* Change the component alias save document definition function to take
  an OUTPUTFORMATTER object instead of a file handle.
2011-11-11 15:10:24 -05:00
jean-pierre charras 4221c3619a Eeschema: bug 880132 : partial fix.
Pcbnew: remove useless code.
Doc: remobe obsolete reference to MINIZIP (which do not exist now)
2011-11-11 08:00:51 +01:00
Wayne Stambaugh fc7189e6f4 Fix for hidden find dialog when display settings change. 2011-11-10 12:01:33 -05:00
Wayne Stambaugh cc7e7fc5ca Memory allocation improvements and other minor fixes.
* Replace C malloc() and free() functions with C++ new and delete
  operators or the appropriate STL container.
* Add option to end mouse capture function to skip executing the end
  mouse capture callback.
* Lots of coding policy and Doxygen comment goodness.
2011-11-10 10:55:05 -05:00
Dick Hollenbeck 311a8186ff sweet editor, compiler warning 2011-11-08 15:14:39 -06:00
Wayne Stambaugh cd0b231656 Minor fixes, dead code removal, and coding policy fixes.
* Use version of DateAndTime that returns a wxString and delete the
  version that takes a char* as it is no longer required.
* Merge StrNumICmp() and StrLenNumICmp() into StrLenNumCmp() to create a
  single function for comparing strings with integers and remove a lot
  of duplicate code.
* Remove unused strupper from string.cpp.
* Use wxArrayString for sorting the EDA_LIST_DIALOG contents.
2011-11-08 11:37:25 -05:00
Wayne Stambaugh 393e020442 Fix cursor warping out of client when zooming bug.
* Modify algorithm to correctly calculate the virtual drawing size and
  offset required to place the drawing correctly under all conditions.
* Ignore default wxWidgets scroll keys on Windows in EDA_DRAW_PANEL key
  event handler.
2011-11-07 14:04:24 -05:00
Wayne Stambaugh 3541335a08 Use output formatter to save component library files and objects. 2011-11-01 11:06:26 -04:00
Wayne Stambaugh 8cad403d23 Use line reader to load component library files and objects. 2011-10-31 16:49:48 -04:00
jean-pierre charras 8a034512ea Pcbnew: fix minor issue: Footprint bounding box was too large for very small footprints (like SM0204) due to the minimal size value used in calculations. 2011-10-29 14:01:59 +02:00
Wayne Stambaugh bbda48f9e8 Unify Eeschema orient commands and other minor fixes.
* Create command event handler for orienting schematic items and block.
* Remove redundant orient item and block command handler code and IDs.
* Remove redundant cancel current command event table entry.
* Remove unnecessary schematic bitmap object virtual functions.
* Set path when saving schematic sheet files to prevent assertion in
  updated path and file write permission test function.
* Restore directory and file name write permission test function to it's
  previous behavior to prevent unexpected save results.
* Add an assertion to verify the path is not empty to directory and file
  write permission test function.
* Improve documentation for path and file write permission test function.
* Fix Doxygen link warnings.
2011-10-28 16:30:50 -04:00
Wayne Stambaugh a834c47be5 Fix schematic library pin editing bug. Fixes lp:809506
* Change edit pin per part flag to only have effect when editing
  component with multiple parts or alternate body styles.
* Move global edit pin pert part variable into library editor frame
  object.
* Note that this only fixes the bug when the component does not have
  multiple parts or alternate body styles.
2011-10-28 09:43:37 -04:00
Wayne Stambaugh 60805606a0 Unify Eeschema drag item commands into a single event handler.
* Create command event handler for draggining all schematic items.
* Remove redundant delete item command handler code.
* Remove unused close current tool command ID from process special
  functions event handler.
2011-10-27 13:51:22 -04:00
Wayne Stambaugh 7195644360 Unify Eeschema edit item commands into a single event handler.
* Create command event handler for editing all schematic and child items.
* Remove unique edit schematic item command IDs.
* Unify find item, undo, and redo hot key commands.
2011-10-27 09:34:28 -04:00
Wayne Stambaugh b98b23a1a6 Factor Eeschema rotate item hot keys into a rotate event handler.
* Add a rotate event handler to schematic frame object.
* Remove unique rotate item command IDs.
* Use process event instead of post event to eliminate the need to clean
  up the command event client object from the heap.
* Unify find next item and next DRC error hot key commands.
* Unify move and rotate hot keys commands.
2011-10-26 16:46:04 -04:00
Wayne Stambaugh e21ebb7282 Factor Eeschema place item hot keys into select tool event handler. 2011-10-24 09:56:35 -04:00
Andrey Fedorushkov 8e584fc233 Eeschema:
* Fix bug in draw reference for multiunit component
* Code cleanup for drag item
2011-10-24 17:11:11 +04:00
Wayne Stambaugh 609abb2f0c Complete Eeschema unified move code.
* Schematic fields now use unified move code.
* Move the unified move code into file schedit.cpp
* Remove old schematic field move code.
2011-10-22 08:31:44 -04:00
Wayne Stambaugh 7bbe2f784e Initial ground work to make schematic fields use unified move code.
* Remove external dependency for adding suffix to reference designator
  fields.
* Make schematic field get and set position methods transform coordinates
  relative to the parent component object that owns them.
* Make base text class get text method virtual so derived classes can
  change the base string according to their individual requirements.
* Fix a problem with default place schematic item add in last commit.
2011-10-21 14:17:51 -04:00
Wayne Stambaugh 78377058c9 More Eeschema schematic item move code unification.
* Tweak move item to support moving schematic sheet pin objects.
* Change schematic sheet pin set position to constrain position within
  the parent sheet.
* Schematic sheet pin moving now handled by unified move code.
* Remove old schematic sheet pin move code.
* Add custom client data object for passing hot key information to
  command event handlers.
* Fix a bug that prevented changes to schematic sheet pin objects from
  being undone.
2011-10-21 09:59:15 -04:00
Wayne Stambaugh 30a4bd3902 Minor Eeschema fixes.
* Fix a set position method bug in schematic item that caused the fields
  to drawn in the wrong position.
* Group zoom hot keys to use the same command event in schematic and
  library editor frames.
2011-10-19 19:17:28 -04:00
Wayne Stambaugh 6a4e8aa909 Eeschema schematic item move code unification.
* Add get and set position methods to all schematic items.
* Encapsulate schematic item position members.
* Add swap data method to schematic items that lacked one.
* Remove global swap data function used by undo and redo functions.
* Unify as many schematic move methods as possible.
* Remove unnecessary place schematic item methods.
* All schematic items are now moved in the same event handler.
* Fixed bug in hierarchical sheet get menu item string method.
* Make no connect and junction items movable, fixes lp:804048
2011-10-19 16:32:21 -04:00
Wayne Stambaugh 1bd7fc8a4e Minor menu bar fixes.
* Fixed bug on Windows that prevented the menu short cuts from working
  properly.
* Fix duplicate menu short cut keys in KiCad, Pcbnew, and Eeschema.
* Add menu short cuts for all possible menu entries.
2011-10-18 15:59:19 -04:00
jean-pierre charras 0409bc8d1b Fix very minor issues and code cleaning 2011-10-18 19:28:49 +02:00
jean-pierre charras 2db1e221d4 Eeschema: Fix icons in macro menu.
Fix confusing labels in libedit (for pins and graphic items sharing)
2011-10-18 12:16:27 +02:00
Wayne Stambaugh 2c251196c6 Minor dialog fixes and code cleaning.
* Grammar and spelling fixes in Eeschema, CvPcb, and Pcbnew path and
  library dialog tool tips.
* Translate the French file name subrill.cpp to highlight.cpp.
* Lots of coding style policy fixes.
2011-10-17 16:01:27 -04:00
jean-pierre charras 021a075fbe Gerbview: minor enhancement.
All: fix some strings very hard to translate in messages.
2011-10-16 10:02:36 +02:00
Wayne Stambaugh 121b65bfb8 More auto save improvements.
* Factor test for auto save file into base frame class.
* Added auto save feature to Eeschema for saving schematics, addresses
  launchpad question 173631.
* Add auto save interval control to Eeschema options dialog.
* Fix problem with subsequent auto saves in last commit.
2011-10-15 09:25:57 -04:00
Wayne Stambaugh b7a8719617 Make CvPcb stay open on save the default behavior. Fixes 872265 2011-10-13 16:13:11 -04:00
Wayne Stambaugh 70569edb05 Pcbnew auto save improvements.
* Factor auto save common code into base frame class so all frame windows
  can take advantage of the shiny new auto save goodness.
* Use a timer instead of depending on mouse and keyboard events to trigger
  an auto save.
* Check for auto save file when opening a board and ask user if they
  wish to use the auto save file or the last saved board file.
* Protect all base frame public members.
2011-10-13 15:56:32 -04:00
Wayne Stambaugh 31ed2c288c Factor bus label parsing function into net list object. 2011-10-12 11:34:52 -04:00
Wayne Stambaugh 4e55b6be65 More Eeschema net list object generation improvements.
* Add net list object creation functions to schematic sheet and label
  objects.
* Remove function to add schematic object net list items as it is no
  longer needed.
* Add license statements to all modified files that required one.
2011-10-12 10:03:43 -04:00
Wayne Stambaugh d5cbd5d186 Eeschema net list object generation improvements.
* Add net list object creation functions to schematic component object.
* Remove external variables used by the verify bus label and parse bus
  label functions.
* Remove redundant net list object include sheet path member assignment.
* Add license statements to all modified files that required one.
2011-10-11 16:23:56 -04:00
Wayne Stambaugh 2ba1984442 Eeschema net list object generation improvements.
* Define function to allow schematic objects to create their own net list
  objects.
* Add net list object creation functions to schematic line, junction, and
  no connect objects.
* Add license statements to all modified files that required one.
2011-10-11 09:38:13 -04:00
Wayne Stambaugh d4fb921b43 Eeschema ERC improvements and other minor fixes.
* Move the hierarchical label connected test into the NETLIST_OBJECT class.
* ERC pin type strings can now be translated.
* Remove unused EDA_DRAW_PANEL attribute from all ERC test functions.
* Add get marker count method to SCH_SCREENS object.
* Redundant header removal.
* Lots of coding style policy fixes.
2011-10-07 10:41:30 -04:00
Fabrizio Tappero and jean-pierre charras 22b42b2a41 Commit new icons from Fabrizio Tappero .
(With a minor change for icon_cvpcb.svg: better look on dark backgrounds)
Fix bug 668200.
2011-10-05 14:36:32 +02:00
jean-pierre charras 6a33eed0f4 Fix typo errors and make translations more easy. 2011-10-03 21:11:09 +02:00
Wayne Stambaugh 301ef32e17 Fix error when opening component library file names with dot. 2011-10-02 16:24:41 -04:00
Wayne Stambaugh 4b853dedb4 Application name capitalization fixes.
* Correct all user strings and comments for the correct capitalization of
  application names according to JP.  They are KiCad, Pcbnew, CvPcb,
  Eeschema, and GerbView.
* Add a note the the user interface policy about the correct capitalization.
2011-09-30 14:15:37 -04:00
Wayne Stambaugh c09bc26dc2 Minor PCBNew code fixes.
* Translate French code names and comments.
* Dead code removal.
* Hot key object and structure coding style policy fixes.
* Doxygen comment warning fixes.
2011-09-29 12:49:40 -04:00
jean-pierre charras 538b1ed314 Eeschema: fix bug when rotating (only using the Rotate hotkey) a field. 2011-09-28 09:38:58 +02:00
jean-pierre charras 8db19bbd6a Preparing hotkeys/shortcuts changes in place menu. 2011-09-23 22:00:30 +02:00
JP Charras and Fabrizio Tappero, fabrizio.tappero 846dca8c05 Update .cpp icon files not updated in previous commit.
Fix minor issues.
Fic compil issue in dimension.cpp with wxMSW 2.8.12 (wxMSW 2.8.12 only).
2011-09-22 21:16:55 +02:00
jean-pierre charras 98886a6d17 Eeschema: Fix incorrect size of dialog Edit component in libedit: wrong size under wxWidgets 2.9.3
Edit component in schematic: reduce length of some texts (when translated, give a too big dialog)
2011-09-20 20:19:09 +02:00
Hauptmech bd19d31082 Hauptmech's centralized wxAuiPaneInfo patch. 2011-09-15 14:25:44 -04:00
jean-pierre charras e9b71f1e83 Commit changes asked by Fabrizio Tappero.
Fix compatibility issues with old xpm icons.
Add or update .xpm and .ico files for shortcuts and taskbars
Remove artwork folder.
2011-09-13 21:37:25 +02:00
jean-pierre charras ba39dac223 Fix wxWidgets 2.8 compatibility 2011-09-11 15:48:04 +02:00
jean-pierre charras b5d27a5659 Fix issues with new icons:
* Replace use of wxICON by new icons declaration.
* Remove unused files.
* Fix filenames inconsistencies between old and new icons.
* dialog_erc handle variable size icons in erc matrix.
2011-09-11 13:38:01 +02:00
jean-pierre charras 1c412879d5 New icons: fix problems about .ico files (under Window)
Remove or move old .ico and .pgn files and add new icons (.ico files and .png files) in bitmaps_png/icons and bitmaps_xpm/icons
.png files and .ico are used to build desktop shortcuts
Handle variable size bitmaps in kicad.
2011-09-10 19:48:35 +02:00
jean-pierre charras 3b381cf8cf Remove *.ico files and used only xpm or new pgn bitmaps for icons under Window.
Fix minor other issues.
Remove unused files.
2011-09-09 21:30:59 +02:00
Dick Hollenbeck 1d696bf69f PNG fixes 2011-09-08 01:58:52 -05:00
Dick Hollenbeck 658199774f PNG support, initial version 2011-09-08 01:43:19 -05:00
jean-pierre charras f0f2a4cf9b Eeschema: fix bug when aborting a move label or text. 2011-09-08 08:39:14 +02:00
Dick Hollenbeck 50dbd5b762 merge from testing 2011-09-08 01:20:13 -05:00
Dick Hollenbeck 07ab5534e5 PNG bitmap support, initial implementation 2011-09-08 00:58:45 -05:00
Wayne Stambaugh 750f84c19a Coding style policy fixes and dead code removal. 2011-09-06 15:42:46 -04:00
Wayne Stambaugh ebc7259a91 Rename WinEDA_App class to EDA_APP and remove redundant includes. 2011-09-06 10:09:40 -04:00
Fabrizio 4467b911b0 Commit patch make by Fabrizio, with a minor change to avoid duplicate HTML dialog. 2011-09-06 09:02:18 +02:00
jean-pierre charras 9b97938a8a Code cleaning: rename DIALOG_LOAD_ERROR (a stupid name) class to the more understandable HTML_MESSAGE_BOX.
rename corresponding files are move them in a better place.
2011-09-04 20:35:14 +02:00
jean-pierre charras 2b216bcc39 * Add Fabrizio Tappero <fabrizio-dot-tappero[at]gmail-dot-com> in contribuotors list.
Eeschema:
 *   Graphic texts ans labels: fix fully broken undo/redo code relative to the way undo/redo command
 *   handles changes (maintly move) for labels
 *   Fix minor bug for undo command relative to block rotate
 *   Remove dead code.
 *   Add new class BITMAP_BASE, and (for Eeschema) SCH_BITMAP to handle bitmap images in schematic.
      Remember plot Bitmaps in not possble with all plotters.
2011-09-01 18:31:16 +02:00
Wayne Stambaugh 4a7dc4ad03 Add menu item function fixes and other minor improvements.
* Rename all ADD_MENUITEM_* functions to AddMenuItem and move them to
  wxstruct.h since they are used by the Kicad main frame classes.
* Move SET_BITMAP and SETBITMAPS definitions to wxstruct.h.
* Fix a bug in SET_BITMAPS that prevented enabling menu item images on
  OSX.
* Rename MsgItem to EDA_MSG_ITEM.
* Remove redundant includes from modified files.
* Doxygen and coding style policy fixes.
2011-09-01 08:54:34 -04:00
jean-pierre charras f51ac9fce7 Eeschema: fix incorrect redo command for rotated items 2011-08-31 20:16:02 +02:00
jean-pierre charras 4402c97c7a Eeschema: Fix a subtle bug in undo command when editing texts and labels.
Add a new schematic item: SCH_BITMAP. One can insert now images in a schematic.
Add Fabrizio Tappero as contributor  in Kicad About dialog
2011-08-31 16:59:20 +02:00
Wayne Stambaugh fd486a11da Prevent duplicate sheet names in schematic editor. 2011-08-31 09:27:05 -04:00
Wayne Stambaugh ebaf145467 Add field removal warning to EESchema's edit component in schematic dialog.
* Warn the user that fields with no value and not it the field template list
  will be removed from the component before exiting the edit component in
  schematic dialog.
* Add a function to TEMPLATES class to check if template list contains a
  field with a given name.
* Move the function to display the edit component in schematic dialog into
  the SCH_EDIT_FRAME class.
* Doxygen and coding style policy fixes.
2011-08-30 15:24:28 -04:00
Jerry Jacobs 3cc37e83b9 Fix the mac application menubar preferences default OS X shortcut 2011-08-30 15:54:22 +02:00
Jerry Jacobs 8a6ceaf90f Fix some minor OS X issues 2011-08-30 09:35:40 +02:00
Hauptmech 3c208f5e29 Apply Hauptmech's patch to improve EESchema's menu and main toolbar.
* Improve main (top) toolbar button organization.
* Add commands from main toolbar to menubar that were not already defined.
2011-08-29 16:45:22 -04:00
Dick Hollenbeck 45c5e594b6 zwischen punkt for migration to PNG bitmaps 2011-08-28 22:04:59 -05:00
Dick Hollenbeck 82d5ed1e12 start migration to PNG, use shim function KiBitmap() and KiBitmapNew() 2011-08-28 15:02:27 -05:00
Dick Hollenbeck 9e79cc6a04 eeschema library path configuration window was not expanding in bottom panels 2011-08-19 11:24:23 -05:00
Dick Hollenbeck ece8592182 eeschema library path configuration window was not expanding in bottom panels 2011-08-19 11:16:13 -05:00
jean-pierre charras 1e2b145a2f Pcbnew: Add NPTH pads (seen changelog).
Minor fixes and enhancements.
2011-08-19 15:08:24 +02:00
Wayne Stambaugh c64a6937f4 Add user write permission tests to EESchama and other minor fixes.
* Add general purpose user write permission test function to base
  window class.
* Check user write permissions before saving project, schematic and
  library files.
* Remove displaying file dialog every time the project file is saved.
* Display absolute paths for non-root sheet file in title bar.
* Remove redundant command table entry from schematic editor.
* Remove unused variables to fix GCC 4.6 warnings.
* The usual Doxygen comment and coding style policy fixes.
2011-08-18 15:25:12 -04:00
Dick Hollenbeck 6f33e6da0c SetName() was broken 2011-08-16 10:36:25 -05:00
Wayne Stambaugh e7eef8cf7b Prevent component library editor from saving read only files (fixes lp:811118)
* Disable save library command when user does not have permission to write
  the active library.
* Append the active library file name displayed in the title bar with read
  only when the user does not have write permission.
* Test the selected folder permissions when user chooses the save library
  as command.
* The obligatory coding style policy fixes.
2011-08-12 13:43:16 -04:00
jean-pierre charras 1275240759 Add a new utility: pcb_calculator (need of course wore work)
Eeschema: optimize import of footprints names ( .stf files) that was time consumming with large designs.
2011-08-05 21:53:42 +02:00
Dick Hollenbeck 89ccc663aa right side of eeschema edit component in schematic dialog was not stretching properly 2011-08-05 11:04:17 -05:00
jean-pierre charras 0eb4050004 * Fix 3D frame issue (3D frame not show) when it is iconized and reactivated by Pcbnew or CvPcb menus (Windows only)
* Add in help menu a direct link to the new doc Getting_Started_in_KiCad.pdf, written by contributors (useful for beginners)
* Fix other very minor issues in CvPcb.
* Update howto doc about translation
2011-08-04 20:03:26 +02:00
jean-pierre charras 81ddf0bb56 Eeschema: fix bug 812924. Very minor other changes to make translations more easy. 2011-07-20 07:57:06 +02:00
Dick Hollenbeck 6850365db3 encapsulate eeschema name encoding, by adding toUTFTildaText() 2011-07-15 08:17:41 -05:00
Andrey Fedorushkov 9a51dc7593 eeschema: add SCH_SHEET_PIN_T in ParentItems collector, convert sch_collectors.* to native unix format 2011-07-12 10:57:11 +04:00
Marco Mattila 55f6529216 Fix sheet resizing in eeschema. 2011-07-08 22:55:41 +03:00
jean-pierre charras 87e220e1fc Eeschema: fix bug that crashes libedit (after creating a new pin, repeat it (insert key), delete the new repeated pin and try to repeat) 2011-07-07 14:54:02 +02:00
jean-pierre charras f00696e835 Pcbnew: fix bug 804780.
All: use double instead of int to store zoom values.
2011-07-05 14:46:14 +02:00
jean-pierre charras 160ab816f5 Eeschema: fix bug in Delete Connection (see bug 781604) 2011-07-04 13:31:31 +02:00
jean-pierre charras d76cd0cf2c Very minor fixes. 2011-07-03 20:51:07 +02:00
Jerry Jacobs 52211afbf0 Add some toolbar entries in a new menu called Tools, update OS X build documentation 2011-07-02 14:48:45 +02:00
Andrey Fedorushkov f7009397b7 eeschema: fix limit number of units in libedit 2011-06-28 13:58:48 +04:00
Wayne Stambaugh c18020374b Schematic object plot code refactoring and CMake required version changes.
* Change the minimum required CMake version to 2.6.4 for all build platforms
  except Windows and OSX.
* Move all schematic plot code from plot.cpp into the appropriate schematic
  objects.
* Create SCH_SCREEN plot method to plot all objects in the schematic
  screen.
* Delete plot.cpp and remove it from the CMakeList file.
2011-06-17 09:24:22 -04:00
jean-pierre charras 3ea0c1065c Eeschema: fix a bug I created in commit 3018 2011-06-16 21:52:12 +02:00
Wayne Stambaugh 48b2661baa EESchema dead code removal and other minor changes.
* Move code from function ClearProjectDrawList() into SCH_SCREEN object
  Clear() method.
* Delete eeschema/delsheet.cpp as none of the code in it is ever called.
* Move global spice and net list command line variables into SCH_EDIT_FRAME
  object as priviate members and provide access methods.
* Remove unnecessary header includes from eeschema/sheet.cpp.
* Minor coding policy fixes.
2011-06-15 14:44:24 -04:00
jean-pierre charras 95388c6ec4 eeschema: fix memory leakage.
Pcbnew: fix a minor issue.
Version update.
2011-06-09 15:30:46 +02:00
Vladimir Ur f53e8971b4 Annotation of multiparts gets CHINAME compared. This fixes bug when annotating components of same value (model) in several forms (e.g. dual opamp in single-body and dedicated representation). 2011-06-08 18:35:03 +04:00
Wayne Stambaugh baa0d7920a EESchema bug fixes and other minor changes (fixes lp:793373).
* Fix debug build warning (lp:793373).
* Changed sheet edit restore and undo to use object copy and replace method.
* Add minimum width and height constraints when resizing sheets that have
  hierarchical pins.
* Fix drag sheet hot key bug.
* Change Doxygen configuration to extract private methods and members
  when creating documentation.
* Fix a bunch of Doxygen comment warnings.
2011-06-07 11:29:01 -04:00
jean-pierre charras 71d0f69bab Fix new bug 791067 created by my last commit. 2011-06-01 10:45:34 +02:00
jean-pierre charras 9092dd0aec Try to fix bug 639683 : Illegal reference strings are now detected and replaced by default prefix for old schematics or rejected in schematic edition. 2011-05-31 18:29:14 +02:00
jean-pierre charras 5383aa2e56 Gerbview: fix bug 788778. 2011-05-30 15:55:37 +02:00
jean-pierre charras 09c038be5c Eeschema: add direct acces to LibEdit in popup menu, when a component is selected ( Whishlist #788621 ). This new command calls Libedit and load the lib component corresponding to the selected schematic component. 2011-05-28 20:51:32 +02:00
jean-pierre charras fb8a6bf164 Libedit: actual line thickness taken in account by collector. Thick lines are now more easy to locate. Fix incorrect boundary box calculations for LIB_PIN items. Very minor other fixes. 2011-05-25 12:42:56 +02:00
jean-pierre charras 0b91eb30b2 Minor code cleaning and minor enhancement. 2011-05-22 21:08:34 +02:00
Marco Serantoni a3ec2e24a2 OSX: Fix for bug #717381 - Print Preview hangs 2011-05-21 11:16:57 +02:00
Wayne Stambaugh 6b7ab76199 Add drag context menu entry for junctions in EESchema, fixes lp:783173.
* Add drag context menu entry for junctions that actually form a junction
  with wires to EESchema.
* Add function to test for junctions to SCH_COLLECTOR class.
* Create annotate type and sort order enums to eliminate magic numbers
  used in annotate code.
* Remove duplicate Doxygen comments from annotate.cpp and improve the
  actual Doxygen comments in wxEeschemaStruct.h.
2011-05-20 15:21:09 -04:00
jean-pierre charras f81c237d43 Libedit: add block rotate and block mirror horizontally 2011-05-20 20:29:35 +02:00
Marco Serantoni 9214f5849e MacOSX: Complete support for wxOverlay (http://trac.wxwidgets.org/ticket/12894) 2011-05-20 20:25:11 +02:00
jean-pierre charras 34e4ec5cf1 Fix Bug 784017 and 784140 2011-05-17 20:25:49 +02:00
jean-pierre charras 94372b81e5 Eeschema: fix bug 783535. Minor code cleaning.
Pcbnew: fix very minor issue.
2011-05-16 21:32:57 +02:00
Wayne Stambaugh a367dea4db Fix most GCC 4.6 compiler warnings and minor bug fix.
* Remove most (not all) variables that were initialized but never used that
  cause GCC 4.6 to generate a warning.
* Fix bug in schematic library editor best zoom calculation.
2011-05-13 09:15:28 -04:00
Jerry Jacobs 312c16b3bf Minor UI changes that affect OS X, see CHANGELOG.txt 2011-05-12 20:47:56 +02:00
jean-pierre charras 4fd912c33c Minor fixes and enhancement 2011-05-09 21:44:06 +02:00
Andrey Fedorushkov 93ac159e0e eeschema: fix correct send command to pcbnew a locate pin 2011-05-07 12:13:09 +04:00
jean-pierre charras d60caed493 Pin edit: fix some minor issues. 2011-05-06 15:56:26 +02:00
jean-pierre charras 2d972fcf66 Libedit: other fix in pin edition. 2011-05-05 20:43:56 +02:00
jean-pierre charras 70de08f397 Bug fixes:
Pcbnew: refresh issue with dialog designe rules under wxWidgets 2.9.2 under WINDOWS (replace wxChoiceBox by wxComboBox, should not change anything for users)
Eeschema: some  issues in libedit (when editing a pin )
2011-05-05 19:45:35 +02:00
jean-pierre charras 1809f692cb Eeschema: SCH_SHEET::GetBoundingBox(): better bounding box calculation. 2011-04-29 14:42:04 +02:00
jean-pierre charras f2e6170fbc Eeschema: bug fix: after a "De Morgan" convert command, the component was left selected (.m_Flags not cleared) 2011-04-29 10:17:14 +02:00
jean-pierre charras 842195da7e eeschema/lib_circle.cpp: missing initializations 2011-04-28 19:39:26 +02:00
Wayne Stambaugh 86bf955db7 Add hit testing clarification to schematic library editor.
* Create library collector class.
* Add clarification menu to library editor when multiple items are found
  at the current position.
* Add get clarification menu text to all objects derived from LIB_ITEM.
* Add get menu bitmap for all objects derived from LIB_ITEM.
* Improve LIB_PIN bounding box calculation.
* Rename LIB_ITEM::DoGenCopy to doClone to match behavior defined in base
  class EDA_ITEM.
* Minor class renaming for improved code consistency.
* Added less than operator to EDA_ITEM.
2011-04-27 15:44:32 -04:00
Andrey Fedorushkov e3505ff5d3 fix get unique filename if defined KICAD_GOST 2011-04-25 10:05:03 +04:00
jean-pierre charras c89070da83 Plot poly code cleaning. Suppress erreurs for malformed polygons (< 2 corners) 2011-04-20 10:13:21 +02:00
Wayne Stambaugh dcccaee2aa Replace WinEDAChoiceBox with wxComboBox. 2011-04-19 15:19:41 -04:00
jean-pierre charras 320d01f622 fix bug 765355 2011-04-19 18:30:28 +02:00
Wayne Stambaugh 1bfe830689 Minor schematic move item code improvements. 2011-04-19 08:08:12 -04:00
jean-pierre charras 7c87086ffb Eeschema: enhanced Pin editor dialog: minor change. 2011-04-18 22:27:22 +02:00
jean-pierre charras 135a62748f Eeschema: enhanced Pin editor dialog. 2011-04-18 22:22:17 +02:00
jean-pierre charras 8e538ddd4f Libedit: Make pin editor dialog resizable. This dialog remembers now its last size and position. 2011-04-18 14:23:20 +02:00
jean-pierre charras 44c3ef1fe5 Make pin editor dialog resizable 2011-04-18 11:26:02 +02:00
jean-pierre charras dc978a9c82 Code cleaning and Fix a crash under wxWidgets 2.9.2 and Linux, related to wxFileHistory.
Coding policy fixes and dialog design rules cosmetic enhancement.
2011-04-17 19:11:53 +02:00
jean-pierre charras 401ea10e8f Code cleaning. Coding policy fixes. 2011-04-17 15:54:17 +02:00
Andrey Fedorushkov cf8f8ca2cc minor fix component subref in russian GOST 2011-04-15 20:41:31 +04:00
Wayne Stambaugh ce983218f8 Push schematic get connection code into schematic screen object. 2011-04-15 08:40:56 -04:00
Wayne Stambaugh 0cedcb8749 Coding policy fixes. 2011-04-13 15:30:27 -04:00
Vladimir Ur 668bdfa695 Made symbol text capable of overlining. Format for text is slightly changed: now text with quotes and/or tildes saved in quoted format: it will cause libraries to fail loading in older versions when ~s or "s are used in text. 2011-04-12 20:23:12 +04:00
jean-pierre charras cc36a80e80 Modify my previous patch about zoom issues in eeschema (remove zoom limitations).
Also fix a minor zoom page issue in Libedit.
wxMSW, version 2.8.x must be patched.
Some zoom values smaller than 3 to 5 create artifacts on screen, mainly values < 1.
(corresponding to draw scale factor > 1 )

 * see http://trac.wxwidgets.org/ticket/9554
 
This is fixed in version 2.9.x
Workaround: ( that is not a full fix, but remaining artifacts are acceptable )
edit file  edit file <wxWidgets>/src/msw/dc.cpp
 >> search for line
    static const int VIEWPORT_EXTENT = 1000;
 >> and replace by
    static const int VIEWPORT_EXTENT = 10000;
2011-04-12 14:41:13 +02:00
jean-pierre charras d5c985866f Eeschema: bug fix: incorrect behavior when changing(for a multiple parts per package component) the selected part (component not deselected)
Fix a minor compil warning in lib_polyline.cpp
2011-04-11 13:45:16 +02:00
jean-pierre charras 3d7bd8d215 Fix a compil warning 2011-04-09 21:22:37 +02:00
jean-pierre charras c2ff1d9416 Viewlib: fix a zoom error (due to a call to BestZoom() made before the full window is built)
CMake: add definition KICAD_TESTING_VERSION and KICAD_STABLE_VERSION.
One of these 2 options *must* be now defined (i.e. run cmake with option -DKICAD_STABLE_VERSION or -DKICAD_TESTING_VERSION
Stable and testing branches should be more easier to maintain.
2011-04-09 20:53:39 +02:00
jean-pierre charras be2f22d497 Testing minor enhancements and fixes 2011-04-09 12:52:14 +02:00
Wayne Stambaugh 053498d1a4 Fix EESchema undo and abort move regressions.
* Component moves can now be undone do to incorrect virtual method declaration
  in schematic component object.
* Undoing a field move now redraws the undone field properly.
* Fix bug when after aborting a field move kept displaying context menu
  field items.
* Removed unused current field member variable and access methods from the
  schematic edit frame object.
* Update component move code to comply with coding policy.
2011-04-08 13:41:52 -04:00
Wayne Stambaugh 1016448c02 Change EESchema library viewer to stay on top of parent not all other windows. 2011-04-07 15:30:49 -04:00
jean-pierre charras 0952393413 Pcbnew, Gerbview: Fix a minor issue in layer manager:
In Render, colors shown were the default colors, not the selected colors, when starting Pcbnew or Gerbview,
because colors were not updated after reading the config.
2011-04-07 21:17:51 +02:00
jean-pierre charras a4f2d3ea57 All: fix a very minor issue: when a window is closed mazimized, and later reopened, it was not maximized. But this is very annoying when using 2 monitors with a different size
Very minor other enhancements and fixes
2011-04-07 19:48:26 +02:00
Jerry Jacobs 6b39096b03 Cleanup of all menubar code, see CHANGELOG.txt 2011-04-06 15:52:47 +02:00
Wayne Stambaugh e764474f9d CMake and other minor improvements.
* Merged CMake 2.8.4 version of FindwxWidgets.cmake with local copy.
* Merged CMake 2.8.4 version of UsewxWidgets.cmake with local copy.
* Bump required version of CMake to 2.8.0.
* Delete commented out include from eeschema/protos.h that I forgot on my
  last commit.
2011-04-06 09:44:38 -04:00
jean-pierre charras 3b55948db2 fix an issue created by commit 2954. Gerbview: display now an indicator of layers in use. minor code cleanup. 2011-04-05 19:49:14 +02:00
Wayne Stambaugh df8f7d1ee0 EESchema remove global variable and fix text object change type undo/redo.
* Move undo item copy global variable into schematic editor frame object
  member variable.
* Add helper methods for accessing the undo item copy member variable.
* Fix undetected bug when changing a text type.
* Added an exchange command to the undo/redo base class for handling undoing
  a changed item type which cannot be undone by swapping out the variables.
* Revert change to common/hotkeys_basic.cpp that broke hot key behavior.
* Lots of coding policy changes while making the changes above.
2011-04-05 10:46:51 -04:00
Jerry Jacobs fb47536123 More native changes for OSX, see CHANGELOG.txt 2011-04-04 20:05:55 +02:00
jean-pierre charras f2b0e18510 Minor fixes to prepare wxWidget 2.9.1 use:
* store selected language by name instead of wx language id (that changes between wxWidgets version)
* accept always comma and point as flotating point separator.
2011-04-01 19:10:16 +02:00
jean-pierre charras ede820b45f Eeschema: Fix crash when a netlist is created, if format is not Spice. 2011-04-01 14:12:19 +02:00
Vladimir Uryvaev 8f2f26688f New features added to polyline drag in lib editor.
* VERTEX INSERT: when dragging middle of a edge a new vertex is added there;
* VERTEX DELETE: when dragging vertex onto its neighbour vertex  they're collapsed into one.
2011-04-01 06:23:13 +04:00
Vovanium 37d4ed97cf Libedit polyline bug fixes:
* will not add zero-length segments when creating polylines;
* polyline vertex to edit is now being chosen correctly.
2011-04-01 05:19:37 +04:00
Charles McDowell 7e1fe2c242 Option to prefix references U and IC with X when generating spice net lists.
* Fixed minor code formatting issues with submitted patch.
* Change field name to "spice_model" per discussion with Charles McDowell.
2011-03-31 11:22:34 -04:00
jean-pierre charras a041ef9dd4 Workaround for zoom levels < 1 in eeschema, with wxMSW version < 2.9 2011-03-30 22:14:44 +02:00
Wayne Stambaugh cfc3d6dfd6 EESchema sheet pin code improvements.
* Change all code references to pin sheet and sheet label to sheet pin to
  more closely match the sheet pin object for improved code readability.
* Change menu and tool bar text from pin sheet to sheet pin for improved
  user readability.
* Moved sheet pin place method to sheet pin object source file.
* Move last sheet pin stored state information into schematic frame object.
* Add Doxygen comments for the sheet pin editing methods.
2011-03-30 15:26:05 -04:00
jean-pierre charras 58c9647166 Workaround for zoom levels < 1 in eescxhema, with wxMSW version < 2.9 2011-03-30 21:20:23 +02:00
jean-pierre charras c38d59a609 Fix an error in sch_field.cpp I created in bzr 2923 version, that prevent compiling with wxWidgets 2.9.1 (was not detected by 2.8.12) 2011-03-30 13:20:05 +02:00
jean-pierre charras 1f087b2f55 Libedit: fix crashes when no active libary selected (happens when creating a new component) 2011-03-30 12:51:51 +02:00
Wayne Stambaugh 67f70fe079 Coding style and Doxygen comment fixes.
* Rename EDA_Rect class to EDA_RECT.
* Rename EDA_TextStruct class to EDA_TEXT.
* Remove duplicate Doxygen comments from sch_sheet_path.cpp.
2011-03-29 15:33:07 -04:00
Wayne Stambaugh e6c70dca8f EESchema edit field code improvements and Doxygen comment fixes.
* Remove specialized edit reference, value, and foot print field methods
  from SCH_FRAME object.
* Improve general field method to handle all field types as this was
  essentially the same code used in the three methods removed.
* Updated the the hot key and context menu handlers to use the new field
  edit method.
* Minor Doxygen comment warning fixes.
2011-03-29 11:21:35 -04:00
jean-pierre charras 02d4b59c59 Bitmaps cosmetic enhancements 2011-03-29 12:43:08 +02:00
jean-pierre charras 3f5478eead fix 2 minor bugs: GERBVIEW: Button "Erase all layers" not working, EESCHEMA: Plot to Clipboard: EDA_DRAW_FRAME::PrintPage() error 2011-03-28 21:26:31 +02:00
Wayne Stambaugh 2694c524b4 EESchema back annotate code refactoring and other minor changes.
* Push schematic back annotation code down into the appropriate class.
* Minor improvements to back annotate file selection code and user prompt
  strings.
* Minor tool bar tool tip capitalization fixes.
* Change tool bar ID error from message dialog to a debug assert message.
2011-03-28 14:23:01 -04:00
jean-pierre charras 137d132985 Make some messages translatable. 2011-03-26 11:08:50 +01:00
jean-pierre charras 89ff6c646b Fix bug 741352. Needs more tests 2011-03-25 22:27:06 +01:00
jean-pierre charras 38269efa47 Fix bug 741352 2011-03-25 21:07:27 +01:00
Wayne Stambaugh 175fab48f8 EESchema multiple item hit testing and other minor improvements.
* Add item clarification context menu to EESchema when multiple unresolved
  items are found at the current cross hair position.
* Add collector class SCH_COLLECTOR for supporting multiple item hit testing.
* Removed bit wise masked filtering from schematic item hit testing.
* Removed all old hit testing functions and methods scattered about the
  EESchema source code.
* Move terminal point test function into SCH_SCREEN object.
* Fixed bug in terminal point test when terminating a bus to a label.
* Define the < operator for sorting schematic items.
* Add area calculation method to EDA_Rect item.
* Add method for returning an item's bitmap for menu display purposes.
* Add method for returning an item's menu text for menu display purposes.
* Changed EDA_ITEMS container from boost::ptr_vector to std::vector.
* Factor coordinate string conversion code from EDA_DRAW_FRAME to function
  CoordinateToString().
2011-03-25 15:16:05 -04:00
jean-pierre charras 5f6cd45445 Add Italian translator. very minor 2 other fixes 2011-03-24 20:22:15 +01:00
Dick Hollenbeck 6407751741 revised bug fix 2011-03-22 13:29:26 -05:00
Dick Hollenbeck 03d85728e5 bugfix 2011-03-22 11:49:44 -05:00
jean-pierre charras cc63f5f86f Fix Libedit regression. 2011-03-21 21:35:16 +01:00
jean-pierre charras edfc110913 zoom bitmaps enhancements. 2011-03-20 18:10:38 +01:00
jean-pierre charras 73c674b89d Gerbview cosmetic enhancements 2011-03-19 21:39:18 +01:00
Charles McDowell a8581d1994 This patch adds two features to the standard SpiceNetlister:
F1.) Allows you to disable a component from the Netlist.  Useful for connectors etc.
To exclude a component from the Spice Netlist add [Spice_Netlist_Enabled] user FIELD set to: N

F2.) Allows you to adapt to simulation libraries that require the netlist node 
sequence to be in a different order. To reorder the component spice node sequence 
add [Spice_Node_Sequence] user FIELD and define sequence: 2,1,0  I am using 
LTSpice, but this holds true for any SPICE subcircuit.
2011-03-18 09:38:25 -05:00
jean-pierre charras 59534f519c Gerbview: Add drill file history and minor enhancements. 2011-03-17 20:14:45 +01:00
jean-pierre charras dc1e410757 Eeschema: fix a *very serious* bug in netlist generation: sometimes the netlist forgets pins for components having more than one part per package, in hierarchical designs. 2011-03-17 11:52:01 +01:00
Charles McDowell 628f874c07 The following patch adds two features to the standard SpiceNetlister:
F1.) Allows you to disable a component from the Netlist. Useful for connectors etc.
To exclude a component from the Spice Netlist add [Spice_Netlist_Enabled] user FIELD set to: N

F2.) Allows you to adapt to simulation libraries that require the netlist node sequence to be in a different order.
To reorder the component spice node sequence add [Spice_Node_Sequence] user FIELD and define sequence: 2,1,0 I am using LTSpice, but this holds true for any SPICE subcircuit.

Note1: Patch maintains existing SpiceNetlister behavior as far as I can tell
------------------------------------------------------------------
Updated Patch from Prior release:
New Changes consists of:
1.) Now allowing user to put in less Nodes then exist on the actual part.
2.) Now echoing Schematic Sheet Netlist components come from. This helps users segment the netlist in to understandable blocks of code that mimic the schematic sheets.
3.) Retested.
2011-03-14 15:20:05 -05:00
Wayne Stambaugh fe6890a955 Dialog escape key termination and default button fixes.
* Fix about dialog escape key termination bug.
* Fix edit hot keys dialog escape key termination bug.
* Set schematic editor component properties dialog default button.
* Fix schematic editor plot DXF dialog escape key termination bug.
* Set PCB editor layers setup dialog default button.
* Set PCB editor swap layers dialog default button.
* Set PCB editor net list dialog default button.
* Add comment to UIPolicy.txt about escape key termination requiring proper
  dialog button IDs.
2011-03-14 15:17:42 -04:00
Wayne Stambaugh 283cfa67ff Set default button on all dialogs. Fixes lp:665703
* Set default button on all dialogs that do not already have a defined
  default button.  The only exception is the EESchema net list dialog
  which needs converted over to wxFormBuilder and due to it's design makes
  setting the default button in any tab other than the default tab
  problematic.
* Fix escape key dialog handling bug in EESchema print post script
  dialog.
2011-03-14 11:17:18 -04:00
Andrey Fedorushkov 669db0ff8a eeschema: minor fix russian GOST compact form BOM out 2011-03-12 07:20:32 +03:00
Andrey Fedorushkov cd3b3b33b9 eeschema: add russian GOST compact form BOM output 2011-03-11 19:57:57 +03:00
jean-pierre charras 2f47b3f464 EEschema: fix minor issue (cursoe shape lost when aborting a block command by popup menu)
Pcbnew: dialog plot: make message window resizable, add tool tip and remove unused sizers.
2011-03-11 15:44:08 +01:00
Wayne Stambaugh c07b677a20 Schematic editor locate item changes and other minor fixes.
* Move locate function code into schematic screen object.
* Move test for junction needed into schematic screen object.
* Move test for marking connected items into schematic screen object.
* Move delete item function code into schematic screen object.
* Move delete all markers code into schematic screen object.
* Add method for locating multiple items in schematic screen object.
* Fix minor bug in schematic field object hit test declaration.
* Initial encapsulation work on item picker object.
* Remove duplicate doxygen comments from item picker object source file.
2011-03-10 14:36:30 -05:00
jean-pierre charras 3e570c1afc Fix cursor shape issue after block command in modedit and libedit 2011-03-10 09:31:07 +01:00
jean-pierre charras 155a9dbe19 All: fix a minor bur annoying issue: incorrect cursor shape after a block command (mainly when a tool is selected) 2011-03-09 21:09:11 +01:00
jean-pierre charras dc24d6fcb2 Minor fixes. Code cleaning. 2011-03-09 15:30:39 +01:00
jean-pierre charras c2cf793f7a eeschema: very minorbug fix 2011-03-05 11:35:18 +01:00
jean-pierre charras 0760c126ed Code cleaning. Pcbnew: very minor fix 2011-03-04 20:16:00 +01:00
Wayne Stambaugh 9769c9b63c Minor EESchema code improvements.
* Factor change schematic component orientation code out of switch statement
  into separate function.
* Remove redundant command events from schematic editor hot key handler.
2011-03-03 14:55:44 -05:00
jean-pierre charras 098a20a0d8 fix very minor bugs. 2011-03-03 20:08:13 +01:00
Wayne Stambaugh 9e0e43e4c1 EESchema and other minor code improvements.
* Change EDA_ITEM set flag function to set flag bits using logical or
  instead of assignment.
* Add clear flag function to EDA_ITEM to clear flag bit using inverted
  logical and.
* Factor change schematic text type code out of switch statement into
  a single function call.
* Schematic text orientation function renaming improvements.
* Lots of small coding policy changes to updated files.
2011-03-02 20:58:12 -05:00
jean-pierre charras 85b8fc66ee All : modify macro FROM_UTF8, to ensure compatibility with files using a non utf8 encoding (old files created under Window, having some non ASCII characters). 2011-03-02 12:03:06 +01:00
Wayne Stambaugh 9210956459 EESchema code simplification improvements.
* Factor component unit select handling out of huge switch statement into
  a separate function.
2011-03-01 19:46:08 -05:00
jean-pierre charras ec400bf7c7 Eeschema, Pcbnew: fix minor issues about mouse cursor position, when loading files or entering sheets. 2011-03-01 19:45:21 +01:00
jean-pierre charras 1b7670ad24 Eeschema: bug fix:when clear annotation, delete annotation using current scheet only delete annotation of other sheets. 2011-02-28 20:06:27 +01:00
jean-pierre charras 92952b70aa Use UTF-8 encoding only in kicad files. Under Linux, this was already the case. Under Windows, texts with non ascii characters must be corrected.
This ensure compatibility between platforms.
2011-02-28 19:36:19 +01:00
Wayne Stambaugh ffa9feda69 Schematic component library editor rotate item improvements.
* Merge three separate rotate code paths into a single rotate item function.
* Reduce three separate rotate command IDs into a single rotate command ID.
* Move pin rotate code into pin object.
2011-02-28 08:53:49 -05:00
jean-pierre charras bc8f250b8b Fix bug 726387. 2011-02-28 10:06:56 +01:00
jean-pierre charras 4ca6c4fb67 Eeschema:
* fix incorrect bounding box size calculation of schematic components.
* fix incorrect bounding box position and size used when schematic components are not found in lib (dummy lib componen used).
Pcbnew:
* Fix issues in block selection for arcs in modedit. Minor code cleaning.
CopyToClipboard: fix incorrect call to PrintPage (bad parameters)
2011-02-27 20:54:01 +01:00
Dick Hollenbeck bc16d9d7c3 simplifications, typo 2011-02-27 00:22:34 -06:00
jean-pierre charras 90dc2908bd Use Unix notation for paths and filenames in .pro files 2011-02-26 09:35:22 +01:00
jean-pierre charras 858401d205 Eeschema & Pcbnew: fix incorrect position of cursor when crossprobing items. 2011-02-25 20:09:42 +01:00
Wayne Stambaugh e07643f070 Fixed bug that prevented moved items from being place in library editor. 2011-02-25 10:17:07 -05:00
Wayne Stambaugh 4d1cdfd4ff Schematic component library editor delete item improvements.
* Merge two duplicate case statement and delete pin code paths into a
  single delete function.
* Make all delete commands use new delete function.
* Fix a few set tool ID calls to use default cursor instead of arrow
  cursor.
2011-02-24 17:29:43 -05:00
Wayne Stambaugh cb647737ee Improve handling of tool bar command IDs.
* Make EDA_DRAW_FRAME current tool ID member variable private.
* Added global no tool selected ID to replace application specific no
  tool selected IDs.
* Change SetToolID to prevent setting the tool ID to anything less than
  the new global no tool selected ID and assert on debug builds.
* Change command and update user interface command event handlers to use
  new global no tool selected ID.
* Fixed schematic library editor add pin hot key handler.
2011-02-24 15:22:12 -05:00
Dick Hollenbeck c303d3f8bd fix 723793 2011-02-24 10:20:11 -06:00
Dick Hollenbeck 36773d6677 debug support for BUG 723793 2011-02-24 09:56:23 -06:00
jean-pierre charras 8bde66afbe Eeschema, Pcbnew, fix issues when creating new pins, tracks or segments. 2011-02-24 13:35:14 +01:00
Wayne Stambaugh 0f09b337a2 Fix developer warning message to only show on debug build. Fixes lp:624926 2011-02-23 10:42:56 -05:00
Wayne Stambaugh b0ea88e23e Added options tool bar to schematic component library editor. Fixes lp:671343 2011-02-23 09:20:01 -05:00
jean-pierre charras d39df05275 Eeschema: fix crash when starting ERC.
Fix other issues.
2011-02-23 14:48:19 +01:00
Wayne Stambaugh ee003180bc Global variable removal and minor Doxygen comment fixes.
* Remove global key press variable.  The key press is know passed to
  GeneralControl().
* Removed unused old mouse buttons global variable.
2011-02-22 11:43:03 -05:00
Wayne Stambaugh c02d90e9a7 Use wxUpdateUIEvent in CVPcb and other minor changes.
* CVPcb now uses wxUpdateUIEvent instead of set toolbars.
* Removed duplicate event handlers in CVPcb that were factored into
  EDA_DRAW_FRAME.
* Fix definition of GeneralControle() in CVPcb that prevented it from being
  called.
* Remove rarely used and scary refresh code GeneralControle() method in all
  main frame windows.
* Factor zoom menu and tool bar command IDs down to EDA_DRAW_FRAME.
2011-02-21 16:07:00 -05:00
Wayne Stambaugh bdca3c5efb All control state handling is now performed in wxUpdateUIEvent handlers.
* Old control state handling code completely removed in all applications.
* Factor common control state handlers into EDA_DRAW_FRAME.
* Replaced EDA_ITEM test for newness with IsNew() method.
* Factor vertical right toolbar command handlers out of giant edit command
  switch statement in EESchema and PCBNew.
2011-02-21 08:54:29 -05:00
jean-pierre charras 640a06850f Fix some issues. 2011-02-17 19:34:27 +01:00
jean-pierre charras 521d43c475 eeschema: fix 2 issues:
1- incorrect mouse cursor position when clicking on an ERC error message from dialog ERC window to go to the corresponding marker.
2- broken behavior of hierarchy navigator (horizontal toolbar, hierarchy tool)
2011-02-17 14:56:54 +01:00
jean-pierre charras f0afa23066 Eeschema: fix 2 issues.
Pcbnew: dialog plot: use full available height to display layers list.
2011-02-16 11:14:02 +01:00
Marco Mattila a609f2606f Fix segfault when placing pins in libedit. 2011-02-15 20:34:28 +02:00
Wayne Stambaugh 7b8b51b240 Draw panel object refactoring and other minor code cleaning.
* Rename all member variables and methods that reference the cross hair
  code in draw panel object from cursor to cross hair to eliminate confusion
  between the two concepts.
* Rename cursor capture call backs in draw panel object to improve code
  readability.
* Create helper class for turning off the cross hair while drawing.
* Remove redundant block clear code.
* Remove redundant mouse capture call back reset code when end capture
  call back is called.
* Remove unused function definitions in base draw frame object.
* Lots of minor coding policy and doxygen comment fixes.
2011-02-11 15:48:13 -05:00
jean-pierre charras 25fe492022 Eeschema: intermediate netlist : fix duplicate pins in libpart, with components having 2 shapes (DeMorgan conversion) and somethimes with multi parts per package. 2011-02-11 11:52:48 +01:00
jean-pierre charras b79011fbbb Eeschema: fix bug 716331
Commit installer translation files for Japanese
2011-02-10 20:39:18 +01:00
jean-pierre charras 90c130b600 Eeschema: intermediate netlist : fix duplicate pins in list of nets, with multi parts per package. 2011-02-10 18:49:04 +01:00
jean-pierre charras 0cb6cd8c02 Eeschema: in intermediate netlist generation: remove redundant pins list by component, and make Dick happy.
Known bug in intermediate netlist generation: multi parts per package have their common pins listed more than once in nets section. Will be fixed.
2011-02-10 09:27:36 +01:00
Wayne Stambaugh 34094e77fc Fix and enable optimized grid drawing and other minor changes.
* Fix optimized bitmap grid drawing method.
* Enable optimized grid drawing method on Windows and Linux.
* Create a helper class for resetting and restoring device context scale
  and origin settings for blitting purposes.
* Use wxLogTrace instead of wxLogDebug for coordinate dumping in
  drawpanel.cpp.  See comments for more information on enabling coordinate
  tracing.
* Add flag to allow hiding the drawing cross hair.  Hide cross hair by
  default on OSX.
* Move get cross hair device position code from draw panel object to base
  screen object.
* Remove redundant parent member variable from draw panel object by
  overriding wxWindow::GetParent() method.
2011-02-09 14:47:33 -05:00
jean-pierre charras 2d2c73efc7 Eeschema: fix a bug that prevents duplicate timestamps to be corrected by annotate function.
very minor enhancement in netlist dialog.
Gerbview: remove useless  code I wrote specific to Windows in BOARD::Draw()  function, because Wayne has fixed the bug.
common_plotPS_functions.cpp: remove a potential bug.
Rename some classes according to coding style policy.
2011-02-09 13:06:42 +01:00
jean-pierre charras e3637dd369 Code cleaning and minor enhancements 2011-02-08 19:39:41 +01:00
Wayne Stambaugh e01f89670b GerbView rendering bug fix and other minor improvements.
* Fix rendering bug in GerbView caused by wxDC scaling change caused by
  setting the wxDC clipping region.
* Eliminate the need to have optional background erasing as the change
  above fixed that problem as well.
* Default cursor handling improvements.
2011-02-08 09:48:38 -05:00
jean-pierre charras a86385bf90 Eeschema: fix bug 714835. Add electrical pin type in intermediate netlist file.
Use non translated fields names in intermediate netlist file because they are keyword in this file.
Change intermediate netlist file extension from .tmp to .xml
2011-02-08 13:01:14 +01:00
Wayne Stambaugh 66566f9b47 EESchema command handling and other minor improvements.
* Schematic editor cancel current tool command now use a single command
  ID that is used everywhere the event is generated.
* Moved cancel current tool code from Process_Special_Functions to a
  separate event handler.
* Add idle check method to block select object.
* Add block active check to base screen object.
2011-02-05 14:22:58 -05:00
Wayne Stambaugh fe7a7215f2 Fix junction drawn off grid on root sheet bug. 2011-02-05 11:11:24 -05:00
Wayne Stambaugh 0d8cb9b53c EESchema improvements and other minor fixes.
* Remove base screen methods from draw frame object and correct current
  screen methods in derived objects.
* Move restore old wires function code into schematic screen object.
* Make add junction method use current screen position instead of store
  position.
* Move poly line ghosting function into the delete current segment method
  as that was the only place is was being used.
* Add method to base schematic object of testing if object has a label
  that can be incremented.
* Simplified the schematic hierarchy traversing code.
* PCBNew Doxygen warning fixes.
2011-02-04 21:21:11 -05:00
Wayne Stambaugh 828790017b EESchema find dialog improvements.
* Add option to disable warping mouse to item found.
* Add code to warp mouse when dialog is closed.
2011-02-03 16:57:02 -05:00
Wayne Stambaugh 50f063da07 Changes to use cursor position as parameter and snap to grid settings.
* Changed managed cursor callback definition to include the current
  cursor drawing position.
* Modified all managed cursor callbacks to match new definition.
* Added snap to grid option to base drawing frame object.
* Changed add no connect managed cursor callback to use new position
  parameter instead of the stored one.
* Lots of coding policy fixes.
2011-02-03 14:27:28 -05:00
Dick Hollenbeck 1ae44d090a work around 8 bit wxString B.S. 2011-02-02 13:41:35 -06:00
Wayne Stambaugh 6a26a7f9bf Use logical cursor position and other minor changes.
* Remove unused member variable m_SizeVisu from base screen object.
* Move nearest grid position code into base screen object.
* Add get cursor position method to base screen object.
* Add position parameter to OnHotKey method in base draw frame and all
  derived objects.
* Pass logical position on left mouse button click and double click
  events instead of device position.
* Pass logical position to on right mouse button click instead of device
  position.
* Use logical event position parameter for locating items in EESchema
  instead of the stored position.
* Remove unused position parameter when displaying component edit dialog
  in EESchema.
* Comment out debugging macro in eeschema/template_field_names.cpp that was
  preventing debug builds using wxWidgets 2.8.x.
2011-02-02 14:01:21 -05:00
Dick Hollenbeck 0093f4f612 ++common:
* macros.h now has TO_UTF8() and FROM_UTF8() which are working converters
    to and from UTF-8 encoding for any wxWidgets build mode.  We can switch to
    them at any time.  I am using them now for specctra conversions and
    elsewhere where I wanted gauranteed UTF8 encoding.
  * added OUTPUTFORMATTER::Quoted( const wxString& ) to simplify converting
    to UTF8 encoded s-expression atoms.  The recommended technique is now simply:
        out->Quoted( wxString ).c_str()
2011-02-02 09:31:48 -06:00
Wayne Stambaugh 85ae0373e3 Global variable removal and coordinate fixes.
* ActiveScreen global variable is gone, yeah!
* Use drawing coordinates instead of screen coordinates when calling
  GeneralControle().
2011-02-01 10:46:25 -05:00
Wayne Stambaugh d657b43052 Use wxDC for all coordinate manipulations.
* Remove all occurrences if #ifdef USE_WX_ZOOM and all associated code within
  the #else/#endif block ( old zoom code ).
* Removed the build option for USE_WX_ZOOM from CMakeList.txt and config.h.in.
* Removed all scaling code in base screen object.
* Fixed buffered paint and buffered client DC on Windows.  Buffering works
  properly on Linux and Windows.
* Modified kicad_device_context.h to automatically uses buffering on platforms
  where double buffering is supported natively.
* Remove all of the scaled versions of the drawing functions in gr_basic.cpp
  and any support code.
* Removed all traces of ActiveScreen global variable from eeschema and
  gerbview.
* Renamed Recadre_Trace to RedrawScreen in draw frame object.
* Renamed PostDirtyRect to RefreshDrawingRect in draw panel object.
* Lots of code cleaning an Doxygen comment improvements.
2011-01-30 17:22:38 -05:00
Dick Hollenbeck e0f4963b6a OUTPUTFORMATTER::Quoted() was not wrapping strings containing internal quotes with quotes 2011-01-28 14:18:30 -06:00
jean-pierre charras 3e0921eafa Very minor fixes: fix some warnings in Debug mode. 2011-01-27 21:24:57 +01:00
jean-pierre charras c4bff79694 Eeschema: fix a minor issue when creating a new hierarchical sheet (bad final size) 2011-01-26 09:09:52 +01:00
jean-pierre charras 4f3708c13f Eeschema: bug 706677 fixed (delete connection, junction persist).
This was due to a duplicate constants ( with sligtly different values)  used to select items in some seach functions that broke filtering. Old definitions removed.
2011-01-25 15:06:17 +01:00
Wayne Stambaugh da9f4b8ac2 Undo schematic hierarchy path container changes.
* Boost container release method clobbering sheet pointers causing
  seg faults.
2011-01-23 16:22:42 -05:00
jean-pierre charras 3c49fb1e9d Eeschema: fix bug 706429 2011-01-23 13:32:33 +01:00
Wayne Stambaugh df344195c1 Schematic hierarchy path object improvements.
* Use Boost pointer container for sheet hierarchy object.
* Add test for modification in sheet hierarchy list object.
* Add method to clear modification flag in sheet hierarchy list object.
* Improve Doxygen comments for sheet hierarchy list object.
* Remove redundant definitions in prototypes header file.
2011-01-22 14:48:28 -05:00
Wayne Stambaugh 73e38ce98c EESchema code refactoring and coding policy naming fixes.
* Move schematic wire and bus break code into schematic screen object.
* Move schematic test for dangling ends into schematic screen object.
* Remove left over debugging output in schematic screen object.
* Remove unused file eeschema/cleanup.cpp.
* Fix bug in schematic line object hit test algorithm.
* Fix a string concatenation compile error added in r2752.
* Rename class WinEDA_BasicFrame to EDA_BASE_FRAME.
* Rename class WinEDA_DrawFrame to EDA_DRAW_FRAME.
* Rename class WinEDA_DrawPanel to EDA_DRAW_PANEL.
2011-01-21 14:30:59 -05:00
jean-pierre charras 1d2ca601cb Gerbview: fix printing issue.
Minor others fixes and enhancements
2011-01-21 15:19:06 +01:00
Wayne Stambaugh e560573c5e Schematic object encapsulation and other minor improvements.
* Encapsulate file name member of base screen object.
* Encapsulate associated screen member of schematic sheet object.
* Create add screen method to schematic sheet object to simplify setting
  the associated screen.
* Move the change file name code in the schematic sheet object to the edit
  sheet method in the schematic editor frame object to eliminate message
  dialogs.
* Improve reference counting in schematic screen object.
* Add helper type definitions for changing schematic object storage to C++
  containers.
2011-01-20 11:34:57 -05:00
jean-pierre charras fbeb411632 Eeschema: Fix incorrect behavior of block drag and wire drag commands.
Other minor fixes
2011-01-20 12:26:10 +01:00
Dick Hollenbeck ed8c021f63 ++all:
* TokenList2DsnLexer.cmake now supports comments, which start with a leading
    # character, and may be either on their own line or on a line after a token.
  * DSNLEXER::PopReader() now pops even the last LINE_READER* and returns it.
++pcbnew:
  * SPECCTRA_DB now inherits from new class SPECCTRA_LEXER, which led to a great
    deal of simplification and code factoring.
  * Moved specctra keywords into specctra.keywords.
2011-01-19 14:46:07 -06:00
jean-pierre charras 42b9e0e676 Eeschem: fix bug when moving fields in schematic: incorrect field move for rotated+mirrored components
(added InverseTransform( ) in TRANSFORM class)
2011-01-19 11:34:56 +01:00
jean-pierre charras f43f7af5fe Modedit: fix issues when printing a footprint. But needs refinement. Work in progress (mainly "Fit in page" is not working).
Minor code cleaning
2011-01-17 19:37:58 +01:00
Dick Hollenbeck 2f211c6b9d ++all:
* TokenList2DsnLexer.cmake now wraps each token enum in its own namespace. It
    also no longer setup of the "using" directive in the header file, which was
    bad behavior.  C++ enum values will have name collisions unless the enums
    themselves are different namespaces.
++new:
  * Sweet library is now a DSO/DLL.
  * Brought in SWIG to do a wrap of the Sweet DSO/DLL for unit testing
    and scripting.  The SWIG DSO/DLLs are built separate from the Sweet DSO/DLL
    and are also optional.
2011-01-17 11:26:19 -06:00
jean-pierre charras 73585a8514 Fix minor bug (layer color not updated in toolbar when changed in layer manager)
Pcbnew: fix that prevents loading modules from libraries (footprint name not identified in lib)
Module Editor: Try to fix incorrect printing. Fixed now only for scale 1. Nor working for other scales. (Work in progress).
Gerbview: Known bug: printing not working.
VRML export: Fix incorrect export of 3D shapes rotations when the 3D shape was rotated.
2011-01-15 19:06:10 +01:00
Wayne Stambaugh f9af593ee3 Minor EESchema improvements.
* Rename sch_item files to sch_junction.
* Make global variable g_ItemToRepeat a private member of SCH_EDIT_FRAME
  object.
* Encapsulate SCH_SCREEN reference count member.
2011-01-12 16:47:54 -05:00
Wayne Stambaugh 2a60327545 Build default change and minor schematic screen object improvements.
* Change default build to enable wxDC zooming.
* Move sheet label find function into SCH_SCREEN object.
* Move draw screen items function into SCH_SCREEN object.
* Remove redundant page print method from SCH_EDIT_FRAME.
* Add method to hit test for all items in SCH_SCREEN.
* Add method for testing if junction is required in SCH_SCREEN.
* Fix Doxygen waring in help_common_strings.h
2011-01-11 15:34:29 -05:00
jean-pierre charras 20efe4f6dc Eeschema: fix incorrect undo behavior after a component edition using the dialog frame (some changes were not undoable).
Fix incorrect behavior after unit selection using the popup menu,  and add undo command after this change (was non undoable)
2011-01-18 11:42:49 +01:00
Wayne Stambaugh a9a96c0e51 EESchema schematic item hit test improvements.
* Merge LocateAnyPin() and LocatePinEnd() into single method and move to
  SCH_SCREEN object.
2011-01-10 15:35:24 -05:00
jean-pierre charras f34926be10 Eeschema: minor enhancement: When a netlist is created and a component is not yet annotated, the annotate dialog is called from the netlist dialog
(no need to close the netlist dialog, open  the annotated dialog and reopen the netlist dialog).
2011-01-10 18:47:50 +01:00
Wayne Stambaugh a3a73ef5dd EESchema block code cleaning and other minor fixes.
* Move update block pick list code to SCH_SCREEN object.
* Remove redundant drawing function RedrawOneStruct().
* Change context menu text "Noconn" to "No Connect".
* Change context menu text "GLabel" to "Global Label".
2011-01-10 11:50:40 -05:00
jean-pierre charras 2ba076f7bc version id update 2011-01-08 19:59:18 +01:00
Wayne Stambaugh 7e1745da56 EESchema block object select improvements and other minor fixes.
* Move schematic select block from global variable to SCH_EDIT_FRAME.
* Remove redundant schematic drawing code for eeredraw.cpp.
* Move block select code into SCH_SCREEN object.
* Simpilify block item select code.
* Fix bug in SCH_LINE selection state test.
* Add test to schematic objects for connectability.
* Make copy block items function a private method in SCH_EDIT_FRAME.
2011-01-07 14:24:24 -05:00
Wayne Stambaugh 1e2e144231 Schematic reference object refactoring and minor dialog fix.
* Schematic reference object now completely encapsulated.
* Schematic reference list object refactoring complete.
* Make OK default button in PCBNew block operation dialog.
2011-01-06 11:55:18 -05:00
Dick Hollenbeck 62a4072c92 minor bugs 2011-01-05 15:13:47 -06:00
Wayne Stambaugh 938cb8843b Schematic reference object improvements and doxygen comment warning fixes.
* More schematic reference list object refactoring.
* Initial encapsultation of schematic reference object.
* Improve schematic reference object doxygen comments.
* Remove redundant library component lookup when generating net list.
* Fix doxygen waring in LIB_PIN object.
2011-01-05 14:16:55 -05:00
jean-pierre charras 9618c3a5f5 Pcbnew: Bug fix: arcs in modules outlines (when flipped) were incorrectly saved and read in .brd files.
this was due to incorrect macro NORMALIZE_ANGLE (was the same as NORMALIZE_ANGLE_POS), now modified and renamed NORMALIZE_ANGLE_360
2011-01-05 18:28:55 +01:00
jean-pierre charras ff9cdca994 Dialog annotate changes to use new annotation algorithm. 2011-01-04 21:27:52 +01:00
jean-pierre charras 784c04203e Finish work to enhance annotation algorithm.
Fix a minor warning when starting Kicad in debug mode (wxWidgets 2.9.1 specific)
2011-01-02 19:56:44 +01:00
jean-pierre charras e7d5770f42 Fix some Doxygen warnings.
Eeschema: cleaning code. Start work to enhance annotation algorithm.
Already added an option to annotate using sheet number (sheet 1 uses numbers 100 to 199, sheet 2 uses 200 to 299..).
Works fine if deleting existing annotation, but needs work to be used when the existing annotation is kept .
2011-01-01 18:28:21 +01:00
Wayne Stambaugh d0105f1ba6 EESchema code refactoring and other minor fixes. 2010-12-31 14:47:39 -05:00
Dick Hollenbeck d2cc77ac71 see CHANGELOG.txt 2010-12-30 16:15:53 -06:00
jean-pierre charras a9010796e0 Doxygen comment warning fixes. 2010-12-29 18:47:32 +01:00
jean-pierre charras 258cebf1a8 Fix some Doxygen warnings. No new code. 2010-12-28 12:24:42 +01:00
Dick Hollenbeck 4f956712e2 fill out more /new files 2010-12-27 10:49:39 -06:00
jean-pierre charras 2faf429643 Fix bug in SCH_SHEET copy constructor (size not copied, so copied hierarchical sheets have a 0 size), and a minor bug in block save. 2010-12-23 14:16:06 +01:00
jean-pierre charras 952f9f9b7e Fix bug in LIB_COMPONENT::LocateDrawItem() that destroys DefaultTransform matrix. 2010-12-23 11:53:12 +01:00
jean-pierre charras b700f7c248 fix bug 692240: a subtle bug in LIB_COMPONENT::LocateDrawItem() that destroys DefaultTransform matrix. 2010-12-23 11:00:55 +01:00
jean-pierre charras 3453e67085 Eeschema: minor enhancements 2010-12-22 15:11:01 +01:00
jean-pierre charras 69b19f5148 Libedit: fix a bug (affects only multi parts per packages) after moving an item. 2010-12-22 12:18:38 +01:00
Wayne Stambaugh b98538ec35 Add copy constructors and cloning to schematic objects and other minor fixes. 2010-12-21 10:13:09 -05:00
jean-pierre charras c699c726b6 Eeschema: in component properties dialog, add control for fields texts justification, like in Libedit.
Fix some Doxygen warnings.
2010-12-21 13:41:17 +01:00
jean-pierre charras aec75256c9 Eeschema, Modedit: void fields (mainly the footprint field) now cannot be selected when click on them. 2010-12-20 20:18:20 +01:00
jean-pierre charras 5bab73d638 Eeschema: fix issues in drag command (mainly hotkey command and forgotten wire ends connected to components to drag).
Rename EDA_Rect::Inside to EDA_Rect::Contains ( EDA_Rect::Inside( const EDA_Rect& aRect ) was very ambiguous )
 Fix some Doxygen warnings and erroneous comments; Add comments.
2010-12-20 18:44:25 +01:00
Lorenzo Marcantonio 020e875973 Patch to fix setting grid color in EESchema with some minor changes. 2010-12-20 11:42:34 -05:00
jean-pierre charras 1901a379b0 Gerbview: remove flicker when refresh screen. Pcbnew fix (partially) issue when printing in mirror mode ( version compiled with USE_WX_ZOOM = ON specific). Minor enhancements. 2010-12-18 17:09:06 +01:00
jean-pierre charras 7d85aa92a8 Fix minor issues. 2010-12-18 09:59:04 +01:00
jean-pierre charras b8eba35cba Gerbview: remove flicker when refresh screen, and loadind files. Fix very minor bugs.
Minor cosmetic enhancements.
commint forgoten files in boost lib.
2010-12-17 21:34:29 +01:00
Wayne Stambaugh 8d567953d6 More schematic component object encapsulation and Doxygen comment warning fixes. 2010-12-14 16:39:31 -05:00
Wayne Stambaugh 7cb34aece7 Schematic component object encapsulation and Doxygen comment warning fixes. 2010-12-14 10:56:30 -05:00
Wayne Stambaugh a8a99abefe Schematic object hit testing improvements. 2010-12-13 10:59:00 -05:00
Wayne Stambaugh adb4ad1a7b Schematic object improvements and other minor fixes. 2010-12-10 14:47:44 -05:00
Wayne Stambaugh c79077c9a2 Minor fixes and lots of coding policy changes. 2010-12-08 15:12:46 -05:00
Wayne Stambaugh 3fed7b9dd9 Component library object encapsulation work. 2010-12-07 11:10:42 -05:00
jean-pierre charras a6a34f3509 Eeschema: fix bug in dialog_lib_edit_text (OnOkClick method never called).
Other very minor changes.
2010-12-07 12:42:58 +01:00
jean-pierre charras 384fc5724e Cosmetic enhancements. Eeschema: in libedit the Value Field is n more editable in the field editor dialog (due to recent changes in library code) 2010-12-04 13:56:19 +01:00
Wayne Stambaugh df48725551 Restore library editor value field rename behaviour and other minor fixes. 2010-12-02 16:41:56 -05:00
jean-pierre charras 67d98658bc minor cleanup. minor enhancements. Finish file housekeeping. add Bug 682586 fix from Mark van Doesburg. 2010-11-29 16:05:01 +01:00
jean-pierre charras 8e0937e6a2 Pcbnew: code cleaning, dialogs converted from Dialogblocks to wxFormBuilder, file housekeeping. Add patch from Manveru. 2010-11-27 14:09:18 +01:00
jean-pierre charras 6963001a00 Fix very minor bugs. Boost update. Pcbnew: files housekeeping and code cleanup. 2010-11-26 12:55:34 +01:00
jean-pierre charras 814f4e435e Code cleaning. Also fix gcc 4.5 compil warnings. 2010-11-21 19:28:32 +01:00
Wayne Stambaugh f6c8066477 More EESchema dialog file housekeeping and coding policy fixes. 2010-11-20 16:59:00 -05:00
jean-pierre charras f01653fc56 Fix gcc 4.5 warnings compil. 2010-11-20 20:53:00 +01:00
jean-pierre charras f930894d9f Common dialog file housekeeping. Code cleanup, and minor fixes. 2010-11-20 11:59:59 +01:00
jean-pierre charras 8257ebeb32 Code cleanup 2010-11-19 19:50:23 +01:00
Wayne Stambaugh 43fe809d4d Added missing header file from previous commit. 2010-11-19 11:45:23 -05:00
Wayne Stambaugh ccabd605a5 More EESchema dialog file housekeeping and coding policy fixes. 2010-11-19 11:28:46 -05:00
jean-pierre charras e095b07cc3 code cleaning 2010-11-18 22:16:28 +01:00
Wayne Stambaugh 408cf4d87e More EESchema dialog file housekeeping. 2010-11-18 16:10:52 -05:00
jean-pierre charras 2cdce05d45 Pcbnew: minor code cleanup and enhancement in zone filling. Commit patch from Marco Mattila. Eeschema: minor bug fix about dangling ends. removed obsolete file 2010-11-18 14:38:08 +01:00
Wayne Stambaugh e3b4eeb160 More EESchema dialog file housekeeping 2010-11-17 16:47:27 -05:00
jean-pierre charras fdb18547a6 Eeschema: fix bug 676532. Minor enhancements. 2010-11-17 19:41:20 +01:00
jean-pierre charras 67b14484c0 eeschema: fix bug in SCH_COMPONENT::GetConnectionPoints() 2010-11-13 22:14:38 +01:00
Marco Serantoni 3dbae0b84c MacOSX: PRIO_MAX already defined is Maximum Process Priority in (sys/resource.h) 2010-11-13 19:56:07 +01:00
jean-pierre charras 9b77f2a415 Formatting, code cleaning and fix erroneous or inconsistent comments in block functions 2010-11-13 12:02:24 +01:00
jean-pierre charras bc9d521738 Eeschema: fix bug in load_one_schematic_file.cpp: error about files version, that create errors for hierarchical labels.
Pcbnew: cleaning code in block.cpp, and modifye previous way to calculate block size in block command, because old way creates unexpected behavior in block rotate and block flip.
Pcbnew: Fix a bug in plot silkscreen layers.
Cvpcb: Fix compilation issue under MACOX
2010-11-12 19:38:48 +01:00
Dick Hollenbeck 6c9244e8c3 fix function comments, this time ones in *.cpp files until they
can be deleted later if they exist in the headers, or moved to 
headers if they should exist in the headers.
2010-11-12 10:59:16 -06:00
Dick Hollenbeck 636b2d301e function comments, fix ones in *.cpp files until they can be deleted if they exist in the headers 2010-11-12 10:36:43 -06:00
Dick Hollenbeck 845d61acc5 coding standards consistency updates 2010-11-12 09:17:10 -06:00
Macor Mattila f05b6d4962 Pcbnew: Commit block move patch from Marco Mattila 2010-11-11 22:46:55 +01:00
Wayne Stambaugh 37ad67dfb1 EESchema file name and location house keeping. 2010-11-11 16:10:27 -05:00
jean-pierre charras 32394e056a Eeschema: Add hotkeys. Minor code cleaning 2010-11-11 18:54:24 +01:00
Wayne Stambaugh 76aa3f6e1c EESchema schematic object refactoring and header rationalization. 2010-11-10 10:30:12 -05:00
Dick Hollenbeck 067bf8518c change IOError class name spelling to IO_ERROR to conform to coding standards 2010-11-09 09:45:11 -06:00
jean-pierre charras 7a92a96a85 netlist: refinements in net name selection 2010-11-08 16:47:48 +01:00
jean-pierre charras 75e613f6af Netlist.cpp: remove debug lines 2010-11-08 15:43:16 +01:00
jean-pierre charras a12b80f6d2 Eeschema: fix bug in algorithm which select net names, in netlist calculations. Named nets should now keep their names. Cvpcb:minor enhancements. Gerbview: fix an issue under W7. 2010-11-08 15:27:02 +01:00
jean-pierre charras ee9e9b84c4 minors enhancements and minor code cleanup 2010-11-07 21:06:07 +01:00
Wayne Stambaugh aeb6dd8cc7 Minor schematic object improvements and code cleaning. 2010-11-03 10:13:15 -04:00
jean-pierre charras 8724386be2 fix minor issues in internationalized strings 2010-11-01 19:33:44 +01:00
jean-pierre charras 527de3e5aa Minor enhancements, and minor code cleanup. Eeschema: added hotkey J to place junctions 2010-10-30 12:03:41 +02:00
Wayne Stambaugh 2c69cd319b Fix bug in EESchema when testing for overlapped lines. 2010-10-29 13:23:41 -04:00
jean-pierre charras 787ca931f1 Fix bug in PolyLine.cpp, Fix bug in DRC calculations (see changelog).
Cvpcb and Gerbview: move dialog files in dialogs/.
Eeschema: fix bug in libedit: crashes with import a symbol.
2010-10-28 18:30:48 +02:00
jean-pierre charras fd1c159a59 Fix bug in PolyLine.cpp, Fix bug in DRC calculations (see changelog). Cvpcb: move dialog files in dialogs/ 2010-10-28 15:02:07 +02:00
Wayne Stambaugh 1e7d95d58e Begin schematic object rationalization and other minor improvements 2010-10-26 16:25:48 -04:00
jean-pierre charras e0f8b04c20 Eeschema: added dialog_plot_schematic_DXF_base.* 2010-10-26 11:24:31 +02:00
jean-pierre charras 4f0273b09a Eeschema: converted HPGL plot dialog from Dialogblocks to wxFormBuilder 2010-10-26 10:22:38 +02:00
jean-pierre charras 64be6fd26a Eeschema: converted plot PS dialog from Dialogblocks to wxFormBuilder Fixed a minor bug when plotting shapes with filled in background option. Pcbnew: Added locked modules block patch 2010-10-25 18:14:36 +02:00
Wayne Stambaugh 6566b0c5fa Schematic component library object improvements and other minor fixes. 2010-10-25 11:43:42 -04:00
jean-pierre charras bd022c23a3 Libedit: fixed draw artefacts when editing a graphic symbol. fixed minor issues in undo and abort commands when editing graphic items. 2010-10-23 15:49:14 +02:00
jean-pierre charras 0c24113dc0 Libedit: minor enhancements. Update Boost::Polygon 2010-10-23 12:09:23 +02:00
Vovanium 15652d8d34 Make option not uppercasing component names. I'm so bored with my Eeschema is convert ADuC, Si, component names to ADUC, SI etc., so I contribute this patch so anyone now may keep components 2010-10-22 19:02:11 +04:00
Wayne Stambaugh 185a2544b5 Component library editor bug fixes and other minor fixes.
* Fix bug that prevented component from being replaced in library when
  the component root name was changed.
* Fix drawing bug when changing text or field item string while move in
  progress.
* Fix drawing bug when rotating text item while move in progress.
* Prevent undo or redo when editing a component draw item.
* Fix assert bug when replacing component in library when the component
  root name was changed.
* Fix bug in field editor caused by new root alias implementation that
  prevented any field from being changed.
* Fix minor spacing issues with EESchema find dialog.
* Deprecate remaining internal linked list code from component library
  objects.
* Rename pin object files to match new library object file naming
  scheme.
* Move LIB_TEXT object definition into it's own header file.
2010-10-22 08:11:52 -04:00
jean-pierre charras 62916eb28f Fixed bug 664795 (not connected electrical pin type) 2010-10-22 09:52:55 +02:00
jean-pierre charras 796eca5c64 Eeschema: added hotkeys in libedit. Update Boost::polygon 2010-10-21 21:01:37 +02:00
Dick Hollenbeck c3924e6fc9 fix bug lp:663929 2010-10-20 19:18:42 -05:00
Wayne Stambaugh 285d9b649d Major component library ojbect editing code refactor.
* All library component object editing is now performed with the ojbect
  except LIB_PIN (coming soon).
* Added TRANFORM class to handle coordinate transforms.
* Remove old transform matrix functions.
* More file renaming to align them with the other component library
  object file names.
* Fix hot key bugs in library editor to disable edit keys while an item
  is being edited.
* Fixed bug when cancelling rotation of text and field objects while
  being moved.
2010-10-20 16:24:26 -04:00
jean-pierre charras 4cdc2c5048 Eeschema: added pin names in search function. Fixed minor issues in search function. Known bug: "search next" searches for pins in next component, not the next pin in the same component.
Pcbnew: fixed an old minor issue when moving the layer manager window (not fully fixed, but  wxAuiManager seems have minor bugs and lacks).
2010-10-20 21:43:58 +02:00
jean-pierre charras 9ec8d53604 Gerbview: Added support for gerber command SR (Step and Repeat) and multiple MOIN and MOMM in file 2010-10-15 20:59:26 +02:00
Wayne Stambaugh e8bb7d1ef5 Fix segfault when replacing an existing component in a library. 2010-10-12 16:44:39 -04:00
jean-pierre charras 2ddcbe1a01 Eedchema: class_libentry.* : wxString GetLibraryName() is now virtual 2010-10-12 12:28:30 +02:00
Wayne Stambaugh fc0864befa Schematic component library object code cleaning and refactoring.
* Break classes_body_item.cpp(.h) into more reasonable size bites.
* Rename classes_body_item.cpp(.h) to lib_draw_item.cpp(.h)
* Fix some unsatisfied header file dependencies.
* Add stubs to component library draw item base classe to handle editing
  internally.
* Lots of code cleaning.
2010-10-08 16:40:57 -04:00
Wayne Stambaugh 3335ccd98d Initial work on new component library stucture.
* Use C++ map in component library instead of boost::ptr_vector.
* Drop Boost pointer containers for standard C++ containers.
* Moved duplicate name user interface elements from library object to
  library editor.
* Added code to support direct addition and replacement of component
  alias objects into libraries.
* Removed temporary strings used to add and remove alias objects.
* Libraries only store alias objects, components now accessed thru alias.
* Simplify library API for adding, removing, and replacing components.
* Updated edit component in library dialog and library editor to reflect
  component library object changes.
* Fixed bug in library viewer when displaying alias name.
* Made a few header files compile stand alone per the new coding policy.
* Remove some dead code and the usual code formatting fixes.
2010-10-04 14:54:14 -04:00
jean-pierre charras a188f9d06e added orto2 patch 2010-10-04 14:58:07 +02:00
Andrey Fedorushkov d247025d19 minor improvement for russian GOST build BOM 2010-09-30 18:19:09 +04:00
Dick Hollenbeck 2dc5327634 pieces of Amir's 2010-09-28 patch 2010-09-29 13:19:26 -05:00
Andrey Fedorushkov 3ae0df15ee add new pin style to schema file, minor change kicad command frame icon 2010-09-26 09:35:29 +04:00
Vovanium cd778c125e Added two pin shapes:
* reverted clock ( --<| ) as it is commonly used for inverted clock in x-USSR
* nonlogic       ( ---X ) for non-logic pins of logic ICs (commonly used for power and timing RC pins).
2010-09-24 20:00:40 +04:00
Marco Serantoni e149951bba OSX - should resolve problems on case sensitive filesystem 2010-09-19 13:06:30 +02:00
jean-pierre charras 59f25e7f3c fixed bugs 639774 and 639586 2010-09-15 19:50:47 +02:00
jean-pierre charras 658ca2a21e Fixed some issues about trapezoidal pads. Better pad editor dialog. fixed other (very) minor bugs. Code cleaning 2010-09-11 18:33:43 +02:00
Wayne Stambaugh 0c3541b7c1 Component library object refactoring and minor code cleaning. 2010-09-09 13:37:25 -04:00
jean-pierre charras 363548f266 Due to (minor) problems in block rotate/mirror (display and undo/redo) go back to old behavior (command immediately executed , and do not entering a move block aftera block mirror/rotate) 2010-09-06 11:10:12 +02:00
jean-pierre charras 352dcb3823 added eeschema rotate block patch from pascal baerten. Uncrustify files. fixed some issues. 2010-09-05 19:01:48 +02:00
jean-pierre charras b45a35b719 Switch to new Kicad about dialog: removing old code. 2010-09-03 19:39:57 +02:00
Dick Hollenbeck fe6591b287 formatting cleanups 2010-08-31 05:44:38 -05:00
Yury Khalyavin b2a09cc26d https://lists.launchpad.net/kicad-developers/msg05013.html 2010-08-31 05:43:10 -05:00
jean-pierre charras 4264ddb061 netform.cpp added in intermediate netlist the pin list for each component in schematic. Some netlist formats (spice, orcadpcb2) are very simple to create with this pins list. 2010-08-29 21:33:29 +02:00
Marco Mattila 9936bef7f8 https://lists.launchpad.net/kicad-developers/msg05202.html 2010-08-29 13:15:19 -05:00
Marco Mattila 356835c87f https://lists.launchpad.net/kicad-developers/msg05228.html 2010-08-29 11:09:07 -05:00
jean-pierre charras f77121a57a Fixed compatibility with wxWidegets 2.9.1.
Added hotkeys editor from David Turner, with a lot of enhancements and fixes
Added pins connections info in intermediate netlist for each compoment. This is redundant, but some netlist formats (ORCADPCB, PSPICE) are very easy to create with this redundant info.
2010-08-28 20:02:24 +02:00
Wayne Stambaugh 91530e7a60 Added help menu item to copy bug report information to clipboard. 2010-08-24 13:26:51 -04:00
jean-pierre charras 8921272a2f fixed libedit regression 2010-08-22 19:42:55 +02:00
jean-pierre charras c108af9841 Added a plugin to create cadstar netlist, using the new intermediate file.
fixed issues in pads-pcb xsl converter
2010-08-20 15:41:36 +02:00
Dick Hollenbeck 92d58ffea4 XML tweaks 2010-08-19 09:02:49 -05:00
Dick Hollenbeck 36575c0e1a go back to XML from S-expressions in WriteGENERICNetList() 2010-08-11 14:54:22 -05:00
Dick Hollenbeck 0ceb19879b implement OUTPUTFORMATTER::Quoted() 2010-08-11 14:52:44 -05:00
Dick Hollenbeck 0980306f2a fix stylesheet 2010-08-11 10:32:44 -05:00
Dick Hollenbeck 97767241e4 fix path bug, use lower case local variable names please 2010-08-11 09:47:16 -05:00
Dick Hollenbeck b3f13be336 https://lists.launchpad.net/kicad-developers/msg05157.html 2010-08-11 00:58:34 -05:00
Wayne Stambaugh 3c878aecdd MSVC compile error and memory leak fixes.
* Fixed multiple line strings causing MSVC compile errors.
* Fixed memory leak when attempting to add duplicate library component.
* Added recent cmake generated files to bazaar ignore list.
* Minor code cleaning.
2010-08-10 11:42:26 -04:00
Dick Hollenbeck 6c5927c536 ++CMakeModules:
Revise TokenList2DsnLexer.cmake to take outCppFile and outHeaderFile optinally
    and enum mandatorily.  Standardize the script's invocation technique within
    all the CMakeLists.txt files.
2010-08-09 11:56:00 -05:00
Dick Hollenbeck fb0bb79a8d TokenList2DsnLexer.cmake, netform.cpp enhancements 2010-08-08 21:03:16 -05:00
Dick Hollenbeck f285c8295b S-expression in xnode.cpp 2010-08-07 19:31:07 -05:00
Dick Hollenbeck b615939120 change to XNODE and XATTR classes 2010-08-07 10:31:32 -05:00
Dick Hollenbeck 2c44d8175f add XNODE and XATTR classes 2010-08-07 10:25:18 -05:00
Dick Hollenbeck c36bc5510d add *.xsl pluging, fix eeschema/plugins/CMakeLists.txt to install it. 2010-08-05 09:38:20 -05:00
Dick Hollenbeck b9eca9454e Change Node() to node(), changed top level element from <netlist> to <export>, version 'D' 2010-08-05 09:20:12 -05:00
Dick Hollenbeck 42f710a945 XML export work 2010-08-04 14:14:51 -05:00
Jason Oster 86a6c4de3b Fix EESchema crash bug on Mac with wxWidgets 2.9 2010-08-03 09:19:55 -04:00
Dick Hollenbeck df9dae6d8e rename NETLIST_HELP to EXPORT_HELP to generalize it a bit 2010-08-03 00:16:13 -05:00
Dick Hollenbeck 2213a347e9 netlist export speed optimizations, bug fix in NETLIST_HELP::FindAllInstancesOfComponent that I put in there yesterday. 2010-08-03 00:11:05 -05:00
Dick Hollenbeck 5d7410c9ea Put netform.cpp functions into a class so scratch memory objects can be freed.
Improve code performance and appearance
2010-08-02 21:13:33 -05:00
Dick Hollenbeck a2b3a4cf94 more work on generic netlist export 2010-07-31 18:57:36 -05:00
Dick Hollenbeck 81bcc8d73a trying to reduce the imporantance of field ids for user defined fields in eeschema 2010-07-31 12:20:34 -05:00
Dick Hollenbeck 43d7b7237e user defined fields should fill next available component field slot 2010-07-31 11:19:51 -05:00
Dick Hollenbeck 1f18ff2812 merge from testing 2010-07-31 10:48:11 -05:00
Dick Hollenbeck 8d777fc6d9 Merge new generic netlist work, code cleaning, and BOM fixes 2010-07-30 16:55:02 -05:00
Dick Hollenbeck 4eb80203bb ++eeschema:
* Now link with XML support within wxWidgets.
  * Start of export the generic netlist in XML.  Still need to rework the chain
    loaded netlist plugin.
  * OBJ_CMP_TO_LIST class now uses a std::string to hold the 8 bit string m_Ref,
    but hides this behind accessors which provide for both Unicode and 8 bit
    set and get functions.
  * build_BOM.cpp retains the selected filename on subsequent runs as a default.
  * Code cleaning, especially in build_BOM.cpp.
2010-07-30 16:41:55 -05:00
jean-pierre charras f9b3ecc4fa fixed bug 611580 (EESchema: Negative Repeat Insert Impossible) 2010-07-30 21:31:05 +02:00
jean-pierre charras 0a63587342 added " pcbnew module editor toolbar items now in menubar" patch from Jerry Jacobs. Fixed TODO.
minor code cleaning. fixed minor warnings in debug mode.
2010-07-29 22:00:24 +02:00