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
jean-pierre charras
7e3551d371
Add patch from Baranovskiy Konstantin about vertical justification of multiline texts.
...
Fix issues created by this patch.
Note, this fix slightly changes the vertical position of these texts.
This is not really a problem in eeschema, but in pcbnew this is perhaps more annoying, if the verical multiline text is critical.
Fix a very minor issue for vertical justification of single line texts in dxf import.
2013-10-25 14:16:18 +02:00
Dick Hollenbeck
1731e89508
*) Factor out Cut, Copy, and Paste for wxGrid into class common/GRID_TRICKS.
...
*) Use it on 3 grids total in DIALOG_FP_PLUGIN_OPTIONS and DIALOG_FP_LIB_TABLE.
*) Fix bug when pasting "(fp_lib_table" text into FP_LIB_TABLE.
2013-10-23 13:56:03 -05:00
jean-pierre charras
503ee825c9
All: fix bug making IsOK dialog always returns false, regardless the button clicked.
2013-10-19 15:22:24 +02:00
jean-pierre charras
b0e2908c9b
pl_editor: add a PPI (pixel per inch) setup option for bitmaps.
2013-10-19 12:29:54 +02:00
jean-pierre charras
6bb62a7196
Remove duplicate files.
...
Page layout editor: Add bitmap items to the page layout existing items.
Now a bitmap image can be added to a page layout description. Currently the bitmap is expected having a 300 ppi definition.
Note: not all plotters can plot a bitmap, and in this case the bounding box is plotted instead of the bitmap
2013-10-18 19:38:03 +02:00
Wayne Stambaugh
9e9450e272
Fix bug due to change in the default global footprint library table file name.
2013-10-18 12:06:18 -04:00
jean-pierre charras
7acc3e67ce
page layout editor: now one can add a bitmap to the page layout
2013-10-18 17:42:48 +02: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
jean-pierre charras
7622d6c985
Remove duplicate files
2013-10-18 12:33:50 +02:00
Maciej Suminski
5249b1a6da
Renamed TOOL_MOUSE_BUTTONS constants to avoid name conflict with Windows MB_RIGHT constant.
2013-10-15 10:41:00 +02:00
Maciej Suminski
bc305859b2
Mainly case changes.
2013-10-14 20:40:36 +02:00
Maciej Suminski
0ac3e1fbf2
Namespace KiGfx->KIGFX.
...
template<> -> template <>
Some more reformatting according to uncrustify results.
2013-10-14 16:13:35 +02:00
Maciej Suminski
22045b61ea
Converted tabs to spaces. Removed trailing whitespaces.
2013-10-14 13:43:57 +02:00
Maciej Suminski
4b6c6a5c98
Merged 'testing'
2013-10-14 11:40:14 +02:00
Maciej Suminski
75bb84704d
Added error messages for OpenGL framebuffer errors. This should eliminate quiet segfaults in case of drivers that cannot handle multiple attachment points for framebuffers.
2013-10-14 11:39:21 +02:00
Wayne Stambaugh
c674314859
Fix bug when creating initial global footprint library table on Windows.
2013-10-13 20:14:52 -04:00
Dick Hollenbeck
afd6f292e7
*) Switch over to FP_LIB_TABLE::Footprint*() functions.
...
*) Set environment variable KISYSMOD before loading FP_LIB_TABLE so that
FP_LIB_TABLE::ROW::SetFullURI() can do substitution up front.
*) De-emphasize the lib path in some of the footprint frames but keep it
so the footprint editor can export a current library to another.
You can even export a GITHUB library to a pretty library for local
installation.
*) Start the PLUGIN options editor.
*) Enhance cursor positioning in DIALOG_FP_LIB_TABLE.
2013-10-13 16:33:58 -05:00
Wayne Stambaugh
8580d87ef7
Footprint library table improvements.
...
* Add save table and set project path environment variable code to
FP_LIB_TABLE object.
* Add code to Pcbnew and CvPcb to set project path environment variable.
* Create empty footprint table in Pcbnew when new board created.
* Save current project specific footprint library table to path on file save
as or empty project path.
* Fix a bug in Pcbnew in file save function that would silently overwrite
an existing board file.
* Disable selecting the current library in the module editor when there are
no libraries defined.
* Catch exceptions and report errors when writing footprint library tables.
* Fix Boost build CMakeFile to fix bug when bootstrapping a Boost build in
MSys.
2013-10-13 12:29:20 -04: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
Dick Hollenbeck
ec7f26f54b
FP_LIB_TABLE::ROW::SetFullURI() does environment variable substitution up front.
...
We can now remove a few calls to FP_LIB_TABLE::ExpandSubstitutions( const wxString& aString )
since its being done in above function.
DIALOG_FP_LIB_TABLE now handles table to copy cut copy paste from global to
project and reverse. Fixed a problem with cursor position management when
switching between tables.
2013-10-05 05:34:55 -05:00
Dick Hollenbeck
248788f381
Put FP_LIB_TABLE::Footprint*() functions on stage, but comment out lazy plugin lookup trick in FindRow() until these new API functions are used.
2013-10-04 23:53:15 -05:00
Dick Hollenbeck
a90975d11c
FP_LIB_TABLE::ROW::SetType() ensures sensible value of "KiCad" if nothing good comes in.
2013-10-04 17:40:25 -05:00
jean-pierre charras
7a2593832d
Fix Cmakelists issues
2013-10-04 14:48:50 +02:00
jean-pierre charras
79443fdbe5
Move specctra.cpp, specctra_import.cpp and specctra_keywords.cpp compilation to pcbcommon lib because they containt functions used by the 3D viewer in Cvpcb and Pcbnew.
2013-10-04 14:22:33 +02:00
jean-pierre charras
dd64b2f284
3D board display: better rendering of the board: the board polygon outlines (generated by the specctra function) is now used to create the 3D body of the board.
2013-10-04 10:42:09 +02:00
Dick Hollenbeck
e45ed220f9
DIALOG_FP_LIB_TABLE does not use wxSplitterWindow, it would not obey.
...
Paste popup menu in this dialog now allows pasting a (fp_lib_table)
s-expression element holding (lib) elements. This provides an
opportunity for GITHUB library publishers to put the table description
into their README.md file as a (fp_lib_table) element where it can
be quickly copied to clipboard and pasted into the fp lib table dialog.
This is a paste operation, and overwrites from the initial cursor position.
2013-10-03 17:12:56 -05:00
Maciej Suminski
3c738faed6
Renamed WORKSHEET_ITEM to WORKSHEET_VIEWITEM.
2013-10-02 14:26:14 +02:00
Maciej Suminski
54946f46f7
Fixed memory leak caused by ViewUpdate() with VIEW_ITEM::GEOMETRY/LAYER parameters.
2013-10-02 13:57:21 +02:00
Maciej Suminski
86000832fe
Added typedefs for VIEW_GROUP iterators. Fixed improper order of layer drawing for VIEW_GROUP items.
2013-10-02 10:19:48 +02:00
Maciej Suminski
87a9964c78
VIEW_GROUP now does not change depth during drawing. Introduced functions for manipulating stored items.
...
FIxed problem of overlay being covered by other layers while panning.
Few minor fixes.
2013-10-01 16:55:33 +02:00
Maciej Suminski
d2618caabc
Added missing file
2013-09-30 16:28:21 +02:00
Maciej Suminski
43b5aa4c8d
Fixed Mac OS build & removed one warning.
2013-09-30 09:45:42 +02:00
Maciej Sumiński
a6a1af9d75
Restored previous version of math_utils.h. WARNING: Mac OS build is probably broken now.
2013-09-29 21:29:28 +02:00
Maciej Sumiński
6409f7f96b
wxWidgets 2.8 compatibility fix (removed wx/kbdstate.h)
2013-09-29 14:25:04 +02:00
Maciej Sumiński
e1290101aa
Fixed strings for wxWidgets 2.8
2013-09-29 12:57:20 +02:00
Maciej Suminski
35721397bd
Moved common actions to a separate file.
2013-09-27 20:52:34 +02:00
Maciej Suminski
6b74b5771a
Even more code comments and reformatting.
2013-09-27 18:51:21 +02:00
Maciej Suminski
3f320e4d68
Some more comments and code formatting.
2013-09-27 16:23:43 +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
Maciej Suminski
5e3030ee89
Merge kicad-pns-mac
2013-09-27 12:06:59 +02:00
Maciej Suminski
936e0be090
Uncrustified the push&shove source, fixed some warnings.
2013-09-27 10:00:26 +02:00
Maciej Suminski
87b3f2e499
Added Init() to TOOL_INTERACTIVE, allowing to set up things that are needed to be initialized only once.
...
TOOL_ACTIONs can be run from CONTEXT_MENU after adding them.
Move tool actions are available to be run from CONTEXT_MENU displayed after right mouse button click on selected items.
Added some asserts to check the code.
2013-09-26 18:38:58 +02:00
Dick Hollenbeck
5f0679bf6e
comment/doc cleanups
2013-09-26 10:02:46 -05:00
Maciej Suminski
e6c20adc5a
Fixed premature highlighting of options in CONTEXT_MENU.
2013-09-26 14:29:47 +02:00
Maciej Suminski
61066fa608
Added functions for handling hotkeys, interface for adding TOOL_ACTIONs to CONTEXT_MENU.
...
Less objects are allocated dynamically.
CONTEXT_MENU is being run using its copy (it saves a hassle of following the lifetime of object).
2013-09-26 14:09:18 +02:00
Maciej Suminski
7b7a331645
Added some const modifiers.
2013-09-26 11:22:59 +02:00
Dick Hollenbeck
4f7c7eb174
Make pretty prettier by striving for single line module pads. Add slick std::string based strprintf(), twice.
2013-09-26 00:29:54 -05:00
Dick Hollenbeck
f72394cc6b
Make PLUGIN::Footprint*() API functions take 'const' PROPERTIES*.
...
Add const PROPERTIES* to FootprintDelete().
Add {Get,Set}Properties() to FP_LIB_TABLE::ROW.
Touch up fp table dialog.
2013-09-25 14:17:06 -05:00
Dick Hollenbeck
74ce031e62
Set PROPERTIES* into FP_LIB_TABLE::ROW, which is a parsed (binary) form of the 'options'.
...
Write parser and formatter for options. Write dialog verification used before saving
FP_LIB_TABLEs, triggered from OK button in table editor.
Switch PROPERTY's value column to std::string from wxString.
Add event handler to fp lib table dialog for upcoming options dialog.
2013-09-24 16:23:13 -05:00
Wayne Stambaugh
85777d6569
Pcbnew footprint library plug in fixes and minor code cleaning.
...
* When loading footprint do not retest every footprint in cache. Only test
the footprint being loaded. Fixes long load times on libraries with a lot
of parts.
* Fix footprint name bug where file extension was added to the end of the
footprint name.
* Fix bug in path equivalence test due to Posix path separators in footprint
library table. Convert paths to native separator before comparison.
* Fix a bug in FOOTPRINT_VIEWER_FRAME::OnActivate() which cause the footprint
list to always get reloaded when using footprint library tables.
* Remove some unnecessary debugging messages.
* Add a few Doxygen comments to FP_CACHE in kicad_plugin.cpp.
2013-09-24 14:45:57 -04:00
Maciej Suminski
d1578e4e1a
Fixed cvpcb build.
2013-09-24 16:12:02 +02:00
Maciej Suminski
1624320749
Added protection from redrawing while GAL backend is being switched.
2013-09-24 16:00:21 +02:00
Maciej Suminski
1de8eba49e
Added functions for refreshing the layer set occupied by a VIEW_ITEM.
2013-09-24 15:48:04 +02:00
Maciej Suminski
96d162c907
Added possibility to cancel a tool that is not on the top of the tool stack.
2013-09-24 15:47:07 +02:00
Maciej Suminski
7837dfa3ac
Fixed build for Mac OS
2013-09-23 17:02:25 +02:00
Wayne Stambaugh
0f4ba09545
Pcbnew footprint library table fixes.
...
* Make footprint viewer work properly with library table.
* Fix bug in Eagle plugin when enumerating footprints.
* Add missing P-CAD plugin from footprint library table editing dialog.
* Fix bug in FOOTPRINT_INFO::LoadLibraries when error occur loading footprints
from libraries.
2013-09-21 20:28:02 -04:00
jean-pierre charras
e9713bb291
Pcbnew: Block selection enhancement, from Bug #593997 (whishlist)
...
1. block created from-left-to-right selects only 100%inside selection objects (as it now does)
2.block created from-right-to-left selects all overlapping objects inside selection
From the patch sent by mathieulj (mathieulj), and some fixes and code cleaning.
2013-09-21 20:09:41 +02:00
jean-pierre charras
d5ecafd5af
Fix some minor issues in hotkey dialogs
2013-09-21 19:09:08 +02:00
Dick Hollenbeck
4a2f86932a
Early GITHUB_PLUGIN hopefull-ness
2013-09-21 02:30:23 -05:00
Maciej Suminski
7db595da31
Added missing files
2013-09-20 18:21:01 +02:00
Maciej Suminski
8e472c736a
Merged upstream.
2013-09-20 17:54:35 +02:00
Maciej Suminski
a991cb4470
Changed the way of refreshing canvases (both standard & GAL).
2013-09-20 17:29:32 +02:00
Maciej Suminski
c00533a150
Merged kicad-gal
2013-09-20 15:48:27 +02:00
Maciej Suminski
2c03bf4109
Removed TA_ActivateTool (now tools are invoked by sending TA_Action event, with the tool name as string parameter).
...
Developed TOOL_Action class & added ActionManager. Hot keys registered by tools are processed.
Selection & move tool can be invoked by a hot key.
2013-09-19 17:02:57 +02:00
Maciej Suminski
9b16651607
Added limits for VIEW scale values & panning area.
2013-09-18 17:36:54 +02:00
Maciej Suminski
dcb5d8f25c
Merged Tom's branch
2013-09-18 16:59:08 +02:00
tomasz.wlostowski@cern.ch
88ee288465
VIEW_CONTROLS: added ForceCursorPosition() and ShowCursor() methods
2013-09-18 13:15:42 +02:00
tomasz.wlostowski@cern.ch
dea793209d
VIEW: added GetTopLayer() method
2013-09-18 13:14:57 +02:00
tomasz.wlostowski@cern.ch
23298886a1
geometry: killed compiler warnings
2013-09-18 13:14:13 +02:00
tomasz.wlostowski@cern.ch
d8480e4674
gal: make the cursor a bit bigger and hidden by default
2013-09-18 13:13:03 +02:00
Maciej Suminski
3f6fa86190
Fixed random color of worksheet border.
2013-09-17 14:46:48 +02:00
Wayne Stambaugh
0224bc2f58
Fix but reading empty footprints in netlist. (fixes lp:1226283)
...
* Remove fp_lib token from board and s-expr netlist file format.
* Fix a bunch of Doxygen warnings.
* Remove some extra debug log messages.
2013-09-16 20:52:08 -04:00
Maciej Suminski
ab21124b71
Reenabled snapping for tools.
2013-09-16 16:46:02 +02:00
Maciej Suminski
373c8d6441
Changed to worksheet border color to match the rest of the worksheet layout.
2013-09-16 15:19:48 +02:00
Maciej Suminski
573f9841df
Better way of marking 'brightened' mode for items.
2013-09-16 11:00:59 +02:00
Maciej Suminski
9fbf45ebfc
Fixed drawing outlined track segments.
2013-09-16 09:51:53 +02:00
Maciej Suminski
e0f3e2900b
Changed alignment.
2013-09-16 09:51:24 +02:00
Wayne Stambaugh
ce409e3699
CvPcb footprint library table implementation.
...
* Add code to CvPcb to handle assigning component footprints from the
footprint library table instead of the search path method.
* Add code to CvPcb to allow editing of the footprint library table.
* CvPcb footprint and component panes display fully qualified FPID names.
* Make CvPcb library pane display footprint library table nicknames instead
of library file names.
* Add code to FP_LIB_TABLE object to test the paths in the table against the
list of libraries loaded from the project file.
* Add code to FP_LIB_TABLE to convert assigned footprints in a NETLIST from
legacy format to footprint library table format.
* Split out COMPONENT_NET, COMPONENT, and NETLIST objects from netlist_reader
files and create new pcb_netlist files.
* Fix minor wxListView scroll bar sizing issues.
* Add new token and code to save and load FPID nickname in board file.
* Add new token and code to save and load FPID nickname in s-expression net
list file.
* Add WX_STRING_REPORT object to dump strings to a wxString object.
2013-09-14 16:33:22 -04:00
tomasz.wlostowski@cern.ch
886a3e937a
Merged Orson's branch
2013-09-13 15:45:03 +02:00
Maciej Suminski
782867f7b3
Caps for lines are drawn only when segments are wider than 1.0
2013-09-13 15:30:45 +02:00
tomasz.wlostowski@cern.ch
00ecafe94f
common/profile.h: fix incorrect #endif
2013-09-13 15:28:51 +02:00
Maciej Suminski
e00c8e92cb
Removed VIEW_LAYER.isDirty flag.
2013-09-13 11:38:16 +02:00
Maciej Suminski
42860b5d02
Changed VIEW::PrepareTargets() to more appropriate name VIEW::ClearTargets(). Added SELECTION layer to always-on-top list.
2013-09-13 11:28:47 +02:00
Maciej Suminski
f9cc914960
Mouse movement events are sent during autopanning, as the cursor position changes in the world coordinates (even if it stays still in the screen coordinates). It allows tools to update their state, as if the mouse was moved.
2013-09-13 10:26:08 +02:00
Maciej Suminski
d9ff4b851a
Currently selected layer is displayed on the top.
2013-09-12 18:24:53 +02:00
Maciej Suminski
82fe1a4972
Merged Tom's branch
2013-09-12 17:42:28 +02:00
tomasz.wlostowski@cern.ch
f85bf48a4b
EDA_DRAW_PANEL_GAL: redraw stuff in a single place, with "coalescing"
...
Redraws can be requested way too often than it is required. This commit adds redraw timeout:
- if the view became dirty and there has been no redraw for longer than certain time, it is redrawed immediately
- otherwise, we wait for the next frame
This in general improves smoothness of rendering.
2013-09-12 11:40:16 +02:00
tomasz.wlostowski@cern.ch
660d4cc6c9
CONTEXT_MENU: null pointer check bugfix.
2013-09-12 11:36:19 +02:00
tomasz.wlostowski@cern.ch
c3759d870c
COLOR4D: added Saturate(), FromHSV(), ToHSV() methods.
...
Used in highlighting/routing code.
2013-09-12 11:35:42 +02:00
Maciej Suminski
b04de0cada
Fixed memory leaks in containers.
2013-09-12 09:44:57 +02:00
Maciej Suminski
d13355f7fe
Removed some potential memory leaks.
2013-09-11 19:37:52 +02:00
Maciej Suminski
f179183dea
Removed some dead code.
2013-09-11 16:38:40 +02:00
Maciej Suminski
90a3b97c2f
Added drawing of worksheet layout.
2013-09-11 14:42:12 +02:00
Maciej Suminski
e2f5b2779f
Changed lifetime of RENDER_SETTINGS (now they are accessible right after PAINTER object is created).
2013-09-11 12:09:22 +02:00
Maciej Suminski
afe2e27b0a
Moved GetColor() from PAINTER to RENDER_SETTINGS. Fixed recaching of custom items.
2013-09-11 11:39:46 +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
cd56848326
Added one more function to convert colors.
2013-09-11 11:11:27 +02:00
Maciej Suminski
7d4aed1099
Fixed COLOR4D( EDA_COLOR_T aColor ) and added asserts.
2013-09-11 10:30:39 +02:00
tomasz.wlostowski@cern.ch
9eb3916852
Merged kicad-gal-orson
2013-09-10 19:32:19 +02:00
tomasz.wlostowski@cern.ch
fa817b7475
pcbnew: start integrating P&S router
2013-09-10 19:26:44 +02:00
tomasz.wlostowski@cern.ch
b73474bda6
VIEW_GROUP: added FreeItems() method
2013-09-10 19:25:02 +02:00
tomasz.wlostowski@cern.ch
f14db7c78c
TOOL_MANAGER: open menu on right mouse button when requested
2013-09-10 19:23:15 +02:00
tomasz.wlostowski@cern.ch
9daa1ab52a
TOOL_DISPATCHER: improve mouse handling
2013-09-10 19:22:38 +02:00
Maciej Suminski
08e797551b
Modified default grid/origin settings.
2013-09-10 14:35:10 +02:00
Maciej Suminski
5659dd479e
PCB items are refreshed on GAL switching (changes made using default renderer are displayed by GAL).
2013-09-10 13:57:28 +02:00
tomasz.wlostowski@cern.ch
6ac8188f7f
common: minimum version of the shape library
2013-09-10 13:43:09 +02:00
Maciej Suminski
87da6a8ad3
Fixed hanging up of menu loop when user never moves mouse cursor into popup menu area.
2013-09-09 17:12:03 +02:00
tomasz.wlostowski@cern.ch
b0694e0333
EDA_DRAWPANEL_GAL: set focus on mouse enter to catch all key events
2013-09-09 17:07:03 +02:00
Maciej Suminski
d0749a3a52
Small refactoring.
2013-09-09 14:31:27 +02:00
Maciej Suminski
8a4417ec46
Fixed color for drawing polygons on overlay.
2013-09-09 14:31:13 +02:00
Maciej Suminski
cba1e0bf91
Stops autopanning on left mouse button release.
2013-09-09 13:57:56 +02:00
Maciej Suminski
0dc587e2ef
Tools are enabled to switch snapping cursor to grid.
2013-09-09 10:54:11 +02:00
Maciej Suminski
dbbe628b8c
Modified interfaces for [WX_]VIEW_CONTROLS.
2013-09-09 10:53:46 +02:00
Maciej Suminski
31f7ecc16a
First version of the move tool.
2013-09-09 09:34:52 +02:00
Wayne Stambaugh
230c5f8f5a
Convert footprint definitions from wxString to FPID.
...
* Use FPID instead of wxString in MODULE object.
* Use FPID instead of wxString when loading and saving files.
* Use FPID in COMPONENT object.
* Add wxString helper functions and comparison operators to FPID.
* Add fp_lib token to pcb and netlist file formats.
* Add code to load and save FPIDs to pcb file format.
* Fix segfault when deleting invalid footprint library tables in Pcbnew
in non footprint library table build.
* Fix bug when counting the number of mod files in
EDA_APP::SetFootprintLibTablePath();
2013-09-08 14:31:21 -04:00
Maciej Suminski
f1b0ffd3d7
Changed focus owner of LayerWidget to EDA_DRAW_PANEL_GAL to make keyboard events work (apparently everything works fine, to be tested more extensively).
...
Removed unnecessary event hook from EDA_DRAW_PANEL_GAL.
2013-09-06 17:53:01 +02:00
Maciej Suminski
8658d90663
Some more spots where the GAL refresh was required.
2013-09-06 17:06:02 +02:00
Maciej Suminski
f2b4c7a18b
Added a few comments.
2013-09-06 16:01:46 +02:00
Wayne Stambaugh
9ab7c18f46
Footprint library table ground work.
...
* Remove defined CMAKE_INSTALL_PREFIX for Windows from main CMakeList.txt.
* Move footprint library path detection code from pcbnew.cpp to EDA_APP
object.
* Add CMAKE_INSTALL_PREFIX to config.h.cmake.
* Simplify and fix search path list code.
* Add CMAKE_INSTALL_PREFIX to the list of search paths in case KiCad was
installed using `make install`.
* Add default global footprint library table to CMake install.
* Add method to set footprint library table to PCB_BASE_FRAME object.
* Remove unused function EDA_APP::GetLibraryFile().
* Minor FP_LIB_TABLE object improvements.
2013-09-06 08:17:33 -04:00
Maciej Suminski
ab4cb862b0
Solved refreshing issues.
2013-09-06 11:31:16 +02:00
Maciej Suminski
f93d297cb5
Some comments.
2013-09-04 16:25:57 +02:00
Maciej Suminski
bf3690d841
More effective way of updating bounding boxes. IsCached() method made public. Removed some of unused fields from the layer description structure.
2013-09-04 16:23:26 +02:00
Maciej Suminski
55744d1e9a
Fixed Cairo's render target setting.
2013-09-03 17:46:05 +02:00
jean-pierre charras
ede208f3cb
Pcbnew: use pcb layer box selector in dialog graphic item properties and pcb text properties.
2013-09-03 14:48:38 +02:00
Maciej Suminski
f4ec1e729e
Allow invoking GAL tools, only if GAL is active.
2013-09-02 16:44:13 +02:00
Maciej Suminski
8e88a621ba
Corrected behaviour of drag panning while autopanning is enabled.
2013-09-02 16:26:42 +02:00
Maciej Suminski
e8083ae808
Added some comments and changed names of classes to match the coding rules.
2013-09-02 14:21:12 +02:00
Maciej Suminski
fef50dd81e
Changed way of naming VIEW_ITEM update flags to be more explicit.
...
VIEW_ITEMs save the layer numbers they use, it allowed to speed up removal of items.
2013-09-02 11:49:46 +02:00
jean-pierre charras
047749a8dc
minor changes and refinement in class pcb layer box
2013-09-02 11:06:17 +02:00
jean-pierre charras
684bfad0af
Cleaning code for PCB_LAYER_BOX_SELECTOR class, and use it in edit dimension dialog.
2013-09-01 20:38:11 +02:00
jean-pierre charras
6c14eee672
Pcbnew: Redesign layer selection and layer pair selection (give them a look near the Layer selector in toolbarr)
2013-08-30 21:28:31 +02:00
Maciej Suminski
d0fc362ec6
Fixed warning.
2013-08-30 14:43:18 +02:00
Maciej Suminski
fb9a4c2bfc
Added stacking for tools.
2013-08-30 10:37:26 +02:00
Maciej Suminski
edea2f9112
Reduced displayed events information.
2013-08-29 12:03:57 +02:00
jean-pierre charras
90b820a52c
Pcbnew: enhancements for blind/buried vias palcement, and save blind/buried vias allowed option in .kicad_pcb file
2013-08-28 18:14:39 +02:00
Maciej Suminski
bd8998d1da
Fixed cursor drawing for OpenGL.
2013-08-28 17:06:07 +02:00
Maciej Suminski
6fe086ab6d
Added cursor snapping.
2013-08-28 16:25:42 +02:00
Maciej Suminski
215f35e237
Added mouse cursor drawing.
...
Added flipping mode.
2013-08-27 18:08:32 +02:00
Maciej Suminski
32e962e8ee
Merged upstream and Mac OS X build fixes.
2013-08-27 11:03:06 +02:00
Maciej Suminski
9b52e9dd89
Fix for wxWidgets 2.9.5
2013-08-26 14:23:17 +02:00
Maciej Suminski
3962464190
Fixed linking errors for apps other than pcbnew.
2013-08-26 10:43:22 +02:00
Maciej Suminski
b03f97b991
Removed some unnecessary stuff and added some comments to WX_VIEW_CONTROLS.
2013-08-23 10:56:52 +02:00
jean-pierre charras
4428d69a63
Pcbnew: Fix a bug when reading a netlist which forces pcbnew to read lib files to find a footprint even if the right footprint is already loaded (which explains the long time to load netlists)
...
Netlist dialog: add option to report only most important messages. Useful for large boards.
class REPORTER: add features to allow a basic message filtering (flags to report all/warning/error messages)
Fix Bug #1214599 ( tools are deselected on Move command )
2013-08-23 08:38:57 +02:00
Maciej Suminski
961a8c2eca
Added autopanning functionality to WX_VIEW_CONTROLS.
2013-08-22 18:42:53 +02:00
Maciej Suminski
875c0f7062
Modified InvokeTool(), so besides resetting the tool, it also send an ActivateTool event.
...
Added generation of CancelTool event upon ESC key press.
Minor bugfix.
2013-08-22 15:07:34 +02:00
Maciej Suminski
6b3742b76b
Mark layers as dirty on VIEW_ITEM removal.
2013-08-22 15:04:14 +02:00
Maciej Suminski
89a138c09e
Added handling keyboard events for the Tool framework.
2013-08-21 17:37:27 +02: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
Maciej Suminski
5adba827a6
Added VIEW_GROUP for grouping items to be displayed on a single layer.
2013-08-20 15:07:38 +02:00
Maciej Suminski
61ba40aa7e
Added InvokeTool() and FindTool() functions.
2013-08-20 14:49:08 +02:00
Maciej Suminski
43ae1cb98d
Smarter way of the overlay rendering (overlay is always refreshed, while cached&noncached targets only if the viewport or items have changed).
2013-08-19 11:02:38 +02:00
Maciej Suminski
e87eea7abc
Reformatting.
2013-08-19 09:47:36 +02:00
Maciej Suminski
e697a2c41c
Functions for direct item drawing.
2013-08-19 09:44:50 +02:00
jean-pierre charras
d04ab1fe75
Pl_Editor: fix minor issues in multi-lines texts
...
Others: fix very minor issues.
2013-08-18 17:49:04 +02:00
Maciej Suminski
9bd7ba36ac
Added resetting of tools after loading a new board.
2013-08-15 10:20:49 +02:00
Maciej Suminski
1b7593f403
Fixed win32 builds.
2013-08-10 11:14:16 +02:00
jean-pierre charras
5817c99a4a
Replace the wxFilePickedCtrl in Option Page dialog by an usual wxButton + wxTextCtrl, because under wxWdgets 2.8.12 the look and the behavior is very different between Windows and Linux.
2013-08-09 18:19:52 +02:00
Maciej Suminski
723424df07
Added some comments.
2013-08-09 15:21:31 +02:00
Maciej Suminski
80901c69cf
Reformatting.
2013-08-08 19:41:20 +02:00
Maciej Suminski
12e10fd43a
Reformatting.
2013-08-08 14:59:59 +02:00
Maciej Suminski
282995eaee
Fixed disambiguation menu issue.
2013-08-08 14:50:32 +02:00
Maciej Suminski
402f3c6f2c
Added brightened mode for selecting items using disambiguation menu.
2013-08-08 12:30:00 +02:00
Maciej Suminski
8c37e70889
Different approach to item recaching.
2013-08-07 17:20:01 +02:00
jean-pierre charras
69c880e088
Eeschema: fix a crash when plotting a schematic.
...
Pcbnew: footprint wizard dialogs: minor fixes, and fixes a not working parameters dialog under Windows, due to an incorrect Printf format.
remove scripts/packagesrc.sh, fully outdated (still refers svn repo) and not commented.
2013-08-07 15:22:59 +02:00
Maciej Suminski
ee80c7f674
Some more reformatting and adding copyright notices.
2013-08-07 11:20:12 +02:00
Maciej Suminski
62ea71fcae
Fixed layers caching settings. Added some comments.
2013-08-07 10:52:50 +02:00
Maciej Suminski
e050133c07
Simplified color computation.
2013-08-07 09:51:39 +02:00
Maciej Suminski
8ab98ae60b
Removed frame limiter.
2013-08-07 09:37:28 +02:00
Carl Poirier
3f8343b341
REMOVE: USE_PCBNEW_NANOMETERS by making it the only way to go in pcbnew, effectively removing the deci-mils build.
2013-08-06 18:21:40 -05:00
Maciej Suminski
bc69429a56
Added GetTarget() for GALs.
2013-08-06 14:57:48 +02:00
Maciej Suminski
7d5a456344
Code reformatting.
2013-08-06 10:30:09 +02:00
Maciej Suminski
f193e389ec
Moved highlighted flag from VIEW_ITEM to EDA_ITEM. Added brightened and selected flag to EDA_ITEM.
2013-08-06 09:31:08 +02: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
c58bd957a5
add Brian to about dialog, scoot Wayne up, alphabetize the rest
2013-08-05 15:45:22 -05:00
Camille Delbegue
2134e7de04
Remove a Clang warning and add a missing dependency to boost in cmake file.
2013-08-05 17:53:13 +02:00
Dick Hollenbeck
e8dc730526
1) Remove requirement to define KICAD_TESTING_BRANCH. Instead the KICAD_STABLE_BRANCH
...
must be defined if that is the build type wanted. This only affects a text string
anyways, is not particularly important other than telling user from which code
branch the source came.
2) Change name of "testing" to "product" in that same description within
common/build_version.cpp. "testing" made it sound frightenly unusable.
2013-08-05 10:38:50 -05:00
Maciej Suminski
8753bef2fa
Moved VIEW_ITEM::ViewGetRequiredLayers() functionality to the VIEW class. Now required layers are set per layer basis instead of per item.
2013-08-05 16:28:58 +02:00
Maciej Suminski
d15f0e91e2
Upstream merge.
2013-08-05 14:46:05 +02:00
Dick Hollenbeck
790e0ef36c
ReturnStringFromValue() refinements
2013-08-03 15:20:55 -05:00
Dick Hollenbeck
1b5a1b74fa
fix interface mapping slip-up in wxPoint EDA_DRAW_FRAME::GetCrossHairPosition( bool aInvertY ) const
2013-08-03 13:57:15 -05:00
Dick Hollenbeck
76a604bc35
split expression into two lines for verification while using debugger that GetScreen() is a virtualized call.
2013-08-03 01:36:51 -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
Maciej Suminski
df6cacf64b
Windows build fix.
2013-08-02 19:21:22 +02:00
tomasz.
8ea0f7ae5b
Merged Orson's changes
2013-08-02 17:28:09 +02:00
tomasz.
69a44d5f13
pcbnew: hooked Tool Framework into the edit panel. Added a sample selection tool (not fully functional).
2013-08-02 16:53:50 +02:00
tomasz.
09182d814d
View: various fixes, added VIEW::IsDirty()
2013-08-02 16:51:38 +02:00
tomasz.
241061025b
Added core tool framework files + boost::context assembly stuff (initial, very buggy and unfinished work).
2013-08-02 16:46:53 +02:00
Maciej Suminski
2fd2c1dc03
Upstream merge.
2013-08-02 15:57:24 +02:00
Maciej Suminski
19b344806d
Fixed the tesselator, so now it works with Windows.
2013-08-02 10:55:40 +02:00
Maciej Suminski
5e474cf87f
Modified usage of wxStandardPaths to make it compatible with newer versions of wxWidgets.
2013-08-02 10:35:58 +02:00
Maciej Suminski
ebc2a4269e
Modified way of handling OpenGL framebuffer errors.
...
Now it is more verbose and the status is checked at the right moment (previously it was fine with Linux, but on Windows it showed errors).
2013-08-02 10:34:23 +02:00
jean-pierre charras
744dd80eaf
Minor fixes. Minor code cleaning. Pcbnew: better iniatilization of members in DRAWSEGMENT, TRACK, EDGE_MOD (not bugs: just useful when using python scripting).
2013-07-31 18:41:32 +02:00
Maciej Suminski
544726e4f3
New display style for grid (dotted).
2013-07-31 10:28:23 +02:00
Maciej Suminski
d34df18f2c
Fixed grid line drawing in OpenGL backend for some drivers.
2013-07-31 09:01:25 +02:00
Maciej Suminski
190ed58568
Code refactoring.
2013-07-30 18:29:54 +02:00
Maciej Suminski
790a1f8563
Made GAL backends settings more consistent. Fixed grid line width in the OpenGL backend.
2013-07-30 17:09:06 +02:00
Maciej Suminski
1ce21605a5
Merge removal of the shaderless OpenGL backend.
2013-07-30 14:05:32 +02:00
Maciej Sumiński
6dda8d4a7e
Fixed smudging in the Cairo backend.
2013-07-30 13:58:03 +02:00
Maciej Suminski
f9d74ccb70
Removed shaderless OpenGL backend.
2013-07-29 16:38:07 +02:00
Maciej Suminski
be012cac94
Added initialization of variable, preventing unconditional jumps. Fixed typos in comments.
2013-07-29 14:12:27 +02:00
jean-pierre charras
4a7f92fb4f
Minor code cleaning. Pcbnew: better iniatilization of members in DRAWSEGMENT, TRACK, EDGE_MOD (useful when using python scripting).
2013-07-29 09:33:56 +02:00
jean-pierre charras
3b246ca483
Pl_Editor: add undo/redo commands.
2013-07-26 14:50:29 +02:00
Maciej Suminski
2ee99f74c4
Fixed profiling timers for compilation under Win32 (and hopefully Mac OS too).
2013-07-26 14:35:31 +02:00
jean-pierre charras
1ef311cd01
Pl_Editor: title block texts can be multiline (use" \n" : a '\' followed by a 'n' to create a new line inside a text)
...
Very minor code cleaning.
2013-07-25 20:58:46 +02:00
Maciej Suminski
c9199ea80a
Fixed high contrast mode in OpenGL. Split display settings loading into more appropriate places.
2013-07-25 18:04:15 +02:00
Maciej Suminski
4076f99332
Added a layer compositor for the Cairo backend.
2013-07-25 14:40:04 +02:00
jean-pierre charras
71a40b0d09
Very minor code cleaning
2013-07-24 20:34:28 +02:00
jean-pierre charras
28cd996394
Pl_Editor: add some hot keys. Fix some rounding issues.
2013-07-24 17:11:35 +02:00
Maciej Suminski
27113348b9
Fixed blending function for OpenGL compositing. Corrected documentation, removed unnecessary functions.
2013-07-24 15:06:59 +02:00
Maciej Suminski
618a5f0e75
OpenGL multitarget rendering (compositing).
2013-07-23 18:39:07 +02:00
jean-pierre charras
fff2f017d8
Fix an issue in Debug mode
2013-07-23 12:35:58 +02:00
jean-pierre charras
ec7ee344b5
Bug #1202761 (Off centre zoom )
2013-07-22 20:38:04 +02:00
jean-pierre charras
d7f569ae78
Fix GOST compatibility.
2013-07-22 18:45:22 +02:00
Maciej Suminski
a8f4791395
Changed rendering order of cached & noncached layers.
2013-07-22 13:14:53 +02:00
Maciej Suminski
5242fff9d7
Code refactorization. VBO_CONTAINER is split to [NON]CACHED_MANAGER, GPU_MANAGER and VERTEX_MANAGER.
2013-07-22 10:41:12 +02:00
jean-pierre charras
1f3f11ca0d
Add margin values control in pl_editor, and remove margin definition from class PAGE_INFO.
2013-07-20 21:36:19 +02: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
Maciej Sumiński
92ccc2018e
Headers containing shader program sources are generated using CMake.
2013-07-17 23:55:59 +02:00
Maciej Suminski
bbc0e8eb74
Refactorization of VBO_CONTAINER.
2013-07-17 18:49:38 +02:00
Maciej Suminski
99e8814028
Fixed wrong memory freeing.
2013-07-17 14:16:37 +02:00
Maciej Suminski
c5ca075e24
Added an interface for highlighting.
2013-07-17 10:21:46 +02:00
Maciej Suminski
b0c1b97ff3
Fixed stroked circles width issue with OpenGL shaders.
2013-07-17 10:21:29 +02:00
Maciej Suminski
fef47b0b67
Fixed OpenGL tracks transparency & netnames issue.
2013-07-16 15:44:08 +02:00
Maciej Suminski
7739cfef2f
Added support for multiple active layers (colored ones in the high contrast mode).
...
Added separate layers for pad netnames (now these are divided into multilayer/top/bottom pads).
More appropriate layers are selecting a copper layer in the high contrast mode (now it shows the copper layer itself, vias & multilayer pads and netnames).
2013-07-16 13:40:53 +02:00
Maciej Suminski
07e4fc31b4
1 pixel wide outlines for the Cairo and the OpenGL with shaders backends, but it breaks displaying outline in the shaderless OpenGL backend.
2013-07-16 09:27:28 +02:00
Maciej Suminski
cbec733deb
Refactored code responsible for high contrast mode. Now it allows to have more than one layer on the top.
...
Selecting layer using the dropdown list on the toolbar influences the layer displayed in high contrast mode.
2013-07-16 09:26:29 +02:00
Maciej Suminski
20c86db71f
1 pixel wide lines using OpenGL shaders.
2013-07-16 08:49:12 +02:00
Maciej Suminski
64122ae057
Stroked lines in Cairo GAL are always drawn at least 1 pixel wide.
2013-07-16 08:48:21 +02:00
Maciej Suminski
58280f749a
Fixed multiline vertical strings drawing bug.
2013-07-09 10:00:23 +02:00
Dick Hollenbeck
34e6314a3e
dialog information hiding, initial Fit()
2013-07-09 00:48:26 -05:00
Dick Hollenbeck
8c2d3d12fc
comment improvements
2013-07-09 00:22:08 -05:00
Dick Hollenbeck
e44fa93776
wxStandardPaths().GetExecutablePath(); is not wx 2.9.5 compatible, formatting improvements
2013-07-09 00:20:07 -05:00
Maciej Suminski
b7747bc224
wxWidgets 2.8 compatibility fix.
...
Scripting engine build fix.
2013-07-08 17:14:16 +02:00
Maciej Suminski
b7447ff05e
Remove updating of non-cached layers.
2013-07-08 15:24:44 +02:00
Maciej Suminski
36f1147da1
Upstream merge.
2013-07-08 15:05:12 +02:00
Maciej Suminski
5a0869f2e2
Added 'required layers' option for drawn items.
2013-07-08 09:28:58 +02:00
Maciej Sumiński
180c72ef83
Added possibility to change zoom using toolbar in GAL.
2013-07-07 19:30:44 +02:00
Maciej Sumiński
07781d34be
Removed KICAD_GAL CMake option.
2013-07-07 02:30:28 +02:00
Maciej Suminski
b5aadfc3f9
Fixed segmentation fault when there was no board loaded.
2013-07-05 15:48:45 +02:00
Maciej Suminski
eb041ee2d3
Removed most of deprecated OpenGL calls. Items used to be drawn in immediate mode now are drawn using vertex arrays.
2013-07-05 14:01:33 +02:00
Maciej Suminski
408fb4f159
Removed pointers where they were not necessary.
2013-07-05 09:31:04 +02:00
Maciej Suminski
e29a829a70
Added implementation of level of details per layer and item type pairs basis (items on every layer have a possibility to define the minimum VIEW scale to be shown).
2013-07-04 18:45:00 +02:00
Maciej Suminski
9c4e02379a
Added the 'cached' parameter for VIEW_LAYER. The parameter decides if items drawn on the layer should be cached or drawn in immediate mode.
...
Removed m_useGroups from VIEW, as now groups are enabled per layer.
2013-07-04 17:02:20 +02:00
Maciej Suminski
aff3787b34
Fixed drawing circles and semicircles using display lists.
2013-07-04 16:27:27 +02:00
Maciej Suminski
073eb024fe
Reduced frame limit.
2013-07-04 14:21:40 +02:00
Maciej Suminski
84392f1723
Moved STROKE_FONT from PAINTER to GAL.
2013-07-04 11:37:43 +02:00
Maciej Suminski
fe6c901a9f
Shaders can handle integer parameters (uniforms).
2013-07-03 13:08:43 +02:00
Maciej Suminski
97f914ccb3
Fixed stroked semicircles Z coordinate in shaderless OpenGL backend.
2013-07-02 18:11:57 +02:00
Maciej Suminski
0f5aa0630a
Fixed stroke semicircles drawing using shaderless OpenGL backend.
2013-07-02 09:27:12 +02:00