1
0
mirror of git://projects.qi-hardware.com/fped.git synced 2024-09-28 23:51:59 +03:00

Commit Graph

  • e1f4e03a28 fped: don't output pad names consisting only of spaces werner 2011-03-23 06:45:04 +0000
  • 1409cfafd8 - gui.c (change_world_reselect): take into account that we may get called with a selected object but no selected instance. In this case, don't try to re-select. (Not perfect, but better than the crash this caused so far.) werner 2011-01-22 00:54:56 +0000
  • 49a1bbdd05 Added a new pad type: trace pads, for antennas and other trace-like elements. werner 2011-01-18 00:30:57 +0000
  • 0bfba12f3c - test/tsort: "Aborted" doesn't get reported on all platforms, so we just remove it completely (reported by Nobuhiro Iwamatsu) werner 2010-12-10 06:56:43 +0000
  • 177fe9cc36 The box coordinates were not properly initialized in gui_draw_pad_text werner 2010-10-31 12:11:18 +0000
  • feae08fc9e fped/Makefile: added LDFLAGS (currently empty) werner 2010-10-16 13:52:50 +0000
  • dd255ef510 fix wrong bold content in manual page fped.1 werner 2010-10-13 16:15:40 +0000
  • 585ea5595d add DESTDIR to Makefile. werner 2010-10-12 15:45:09 +0000
  • 4d175e5aef add the manual page manual/fped.1 werner 2010-10-12 15:44:21 +0000
  • 478bf03343 make the SVN_VERSION, SVN_STATUS run only once. this can reduce warning "svn: '.' is not a working copy" when we not in a svn repo. werner 2010-10-12 15:40:57 +0000
  • a119e25a77 Makefile (spotless): added target to remove "fped" (suggested by Xiangfu Liu) werner 2010-10-12 15:39:32 +0000
  • 02518334f2 Updated regression tests for output change in r5974 and improved handling of cores. werner 2010-10-12 15:32:15 +0000
  • e6b2658a65 Added relaxation of pad overlap checking. Not GUI-settable yet. werner 2010-08-09 04:16:37 +0000
  • b2b3a46119 A bit of cleanup. werner 2010-05-31 05:53:56 +0000
  • d4c4031b9a Added support for reordering frames in the GUI. werner 2010-05-30 20:30:24 +0000
  • 7eb3ac5ba2 When dragging an endpoint of an inverted measurement, we didn't consider that inst->base and inst->u.meas.end are swapped, causing fped to crash in vec_at. Also introduced a universal swap() function. werner 2010-05-30 09:04:26 +0000
  • c9af8cd0fe The mechanism for selecting points for measurements reaches its limits when using frames to encapsulate building blocks, e.g., like macros or functions in a programming language. Since measurements only know about the frame containing a vector but not the frames containing that frame, invocations of this frame from different places can only be distinguished within the min/next/max scheme. (See the example in README.) werner 2010-05-29 21:13:48 +0000
  • 8e60952ba1 New option "-s scale" to set the exact scale factor for full-page Postscript output. werner 2010-05-03 13:41:24 +0000
  • 24011c74d6 Removed an old bug: parentheses and backslash are meta-characters in Postscript strings but weren't escaped until now. werner 2010-04-29 21:34:29 +0000
  • dbace0b2fa Cleaned up the disgusting mess that was the list of frames. The changes: werner 2010-04-28 00:34:32 +0000
  • ac535d6e03 Deleting things often left measurements behind. Fixed these bugs, enhanced %del to also delete frames and items in other frames than the current one, and added the corresponding regression tests. werner 2010-04-27 22:36:46 +0000
  • dc1e644da1 In the GUI, pad names were always centered on the pad. In the case of through-hole pads, this could easily make them disappear into the hole. We now draw them outside the hole. werner 2010-04-27 10:57:09 +0000
  • 82a12023cd I thought there was a bug in frame ordering, but it turns out that it works fine. Anyway, here's a new debug construct (%frame) and a bunch of new regression tests. werner 2010-04-27 01:02:24 +0000
  • 39fef16d1c Got rid of the requirement to have a "package" directive. Fixed a grammar error found in the process. Also taught the regression test system a new trick: the path to "fped" can be passed in the environment variable FPED. E.g., FPED=fped.r5943 make test werner 2010-04-26 23:11:22 +0000
  • bc27b094af With a little help from m8cutils and abyss, we now have regression tests for the topological sort. "make test" or "make tests" invokes the regression tests, "make valgrind" runs them under valgrind's watchful eyes. werner 2010-04-26 21:30:21 +0000
  • 190bcaf982 Added a topological sort algorithm, for use when dumping. werner 2010-04-26 15:18:01 +0000
  • e047cc074d Holes can now also be output as KiCad modules. werner 2010-04-25 15:27:27 +0000
  • 6db067a90f More work on holes: added documentation and Postscript output. werner 2010-04-25 13:09:36 +0000
  • 1dda2ac2ae When creating an object in the GUI, its label wasn't initialized. Added infrastructure for hole objects. (Postscript and KiCad output are still missing, and so does sanity checking.) werner 2010-04-25 10:58:07 +0000
  • 9743cb6fa7 One more little DND surprise: drag-end doesn't get called if have a successful drag-drop. So we have to explicitly clear "dragging", or the last frame successfully referenced suddenly becomes unselectable. werner 2010-04-25 00:37:04 +0000
  • af0d2c78cb Removing the old interface for adding frame refrences. Also updated the documentation. werner 2010-04-25 00:11:45 +0000
  • 84e03e5542 Dragging a frame into the canvas reuses the hover and drag system. In order to avoid accidently dragging away bits the selected item (and confusing the internal logic of the hover and drag system in the process), we have to make sure nothing is selected when we enter the canvas. werner 2010-04-24 23:08:39 +0000
  • 1cd6c924d0 Oops. Some nasty debugging code escaped. werner 2010-04-24 22:18:21 +0000
  • 0b241a14fe Dragging a frame into the canvas now works. It's built on top of the frame tool, with all the old code still around, so the code paths are a bit obscure. werner 2010-04-24 21:46:43 +0000
  • a4d2926b2d Working towards the dragging of frames. Changed the press/drag/release logic of tables such that items are selected on release and we can thus drag without selecting. (From a user point of view, selecting would be fine. But selecting may sometimes cause a change_world or similar, destroying the widget, which upsets drag and drop.) werner 2010-04-23 22:01:56 +0000
  • 093a34f860 Added support for reordering rows and columns in a table via the GUI. To move a column, drag the variable or any of its values and drag horizontally. To move a row, drag one of its value vertically. werner 2010-04-23 13:43:19 +0000
  • 59335b63b0 The partial order algorithm in dump.c sometimes dumped objects before a vector they referenced. As a band-aid, we now explicitly keep track of which vectors have been dumped, and defer objects accordingly. A more correct solution would be to properly abstract the partial order algorithms (along with the heuristics for maximizing the number of ".") and to implement it properly. werner 2010-04-20 21:01:16 +0000
  • b7db446cbb - fped.c (load_file): don't falsely complain about empty files werner 2010-04-20 03:16:09 +0000
  • 6b22c8a579 The characteristics of the diagonal of the object selected (length and angle) were taken from the bounding box and thus included silk width and other confusing things. werner 2010-04-20 02:12:46 +0000
  • c9ca5a45be Updated copyright dates of files changed in 2010. werner 2010-04-20 01:55:49 +0000
  • 8cd9b7b514 Added a "Save as" dialog and made fped disable "Save" if working on a manually created file. This is a precaution against accidently saving to a manual work, which would change the structure and remove all comments. werner 2010-04-20 01:11:45 +0000
  • e24b9de387 %dump didn't dump the root frame because this frame was only appended to the list of frames at the end of parsing. We now tentatively append it each time a %dump is requested. werner 2010-04-19 22:57:51 +0000
  • 6374b3a61a Added debugging directives to the fped language. They're describe at the end of README. werner 2010-04-19 14:39:57 +0000
  • e302162a70 When unselecting a value selected for editing in a table with a single row, the unselected value was set to the background color for an inactive row. Now it's set to the color of an active row. werner 2010-04-19 12:23:04 +0000
  • bacbfb3f39 When editing, fped would sometimes not respond to [Enter] if the value had not changed. This was particularly noticeable when editing variable names. werner 2010-04-18 16:43:41 +0000
  • 8e9001644c Make fped build with older versions of Gtl. werner 2010-03-16 12:37:14 +0000
  • aaba06fb24 Full-page postscript now includes all packages (not just the first one). Measurement lines now have a fixed size, so they can't scale to invisibility. werner 2010-02-23 01:02:19 +0000
  • 140b60d074 Generating full dependencies for each and every change slowed down development quite a bit. We now use per-file granularity for dependencies, reducing the overhead by about a factor of 30. werner 2010-02-20 05:10:24 +0000
  • ea8e848f72 New option -P for batch output for full-page postscript. werner 2010-02-19 22:27:25 +0000
  • c8cf877204 Simplified and improved the design of wrapped tables. werner 2010-02-19 14:00:55 +0000
  • 4bfb601a40 Wrap wide tables. werner 2010-02-19 10:27:46 +0000
  • 3ba5a476b8 - Makefile (SVN_VERSION): use "svn info -R" to get the correct SVN revision werner 2010-02-18 14:18:30 +0000
  • 53a01182a3 Show fped's SVN revision in the title bar. werner 2010-02-18 14:03:14 +0000
  • 3d6ef48930 As a shortcut, accept entry of "0" as a valid distance for dimensions. (For safety, this only works if used directly, not through variables.) werner 2010-02-18 13:39:20 +0000
  • 0115283735 Variables and loops can now be added from the variable/loop pop-ups, without having to go all the way up to the frame. werner 2010-02-18 11:35:12 +0000
  • 9c22c1b2e5 gtk_init calls setlocale(..., ""), which can upset all uses of scanf, printf, etc. We restore sanity by resetting the locale to "C". Reported by Nick Oestergaard. werner 2010-01-18 22:57:49 +0000
  • 8a0039f202 When clicking on an instance, fped used to select the currenly active instance of the corresponding object but didn't change any table or loop selection to make it active. (It did already change the frame reference.) This meant that, upon clicking on an instance, often a different instance of the same object would be selected. This was confusing at best. werner 2010-01-12 02:18:58 +0000
  • e84727ce95 When editing a variable or value, the actual value is now shown. The choice of active frame reference, row, and loop instance affects this value, as it should. werner 2010-01-10 13:09:55 +0000
  • 393c178a5f Added tooltips for editable status area items. All tools are now tipped. werner 2010-01-03 00:36:52 +0000
  • feabeb73f4 The build process used dependencies only if they were explicitly generated. This often caused accidental builds without proper dependencies. werner 2010-01-02 23:58:03 +0000
  • 661398c20a Yet more tooltips. This time, for all non-editable fields in the status area. werner 2010-01-02 23:27:36 +0000
  • f9eefa4e69 When repeatedly clicking on a stack of items to cycle through the stack, a click on an anchor point of the selected object would be treated as a drag, even if the click was very short. This created a very confusing user experience. werner 2010-01-02 22:04:25 +0000
  • 522e8df574 When selecting a tool and then selecting an object, the tool still appeared to be active, while in truth it had been reset internally. werner 2010-01-02 21:38:15 +0000
  • 1cd5e6da94 Canvas tooltips now work. The problem was that expose events set the paint region to only cover the newly exposed area. This prevented the general redrawing from clearing areas that still contained hovering and dragging items. However,the paint region has no effect on reading from the drawable. Thus when rebuilding the hover and drag stack, the still tainted image was stored. werner 2010-01-02 15:47:46 +0000
  • 14f21c0aee More work on tooltips and a build fix. werner 2010-01-02 12:55:34 +0000
  • 329b8306aa Added tooltips to frame/items list. werner 2010-01-01 22:08:29 +0000
  • bdd6e95521 Added tooltips to all icons acting as buttons. werner 2010-01-01 14:59:17 +0000
  • 40028ed18f The comment of the previous commit contained a slight exaggeration: we did in fact let duplicate variable names pass. werner 2009-12-31 16:24:23 +0000
  • 325a732e1c One could add a new frame if a frame with an underscore as its name already existed, thus creating a structure that could be saved but no longer loaded. Likewise, one could add new variables/loops/columns if there was already one named "_", thus creating the same problem. werner 2009-12-31 16:13:49 +0000
  • 25e806172a When deleting the locked frame, icon and internal reference weren't reset. werner 2009-12-31 15:11:47 +0000
  • 09186de7a8 When selecting an expression of an assignment and then selecting another expression, the background of the first expression did not revert to its original color. werner 2009-12-31 09:34:17 +0000
  • 887643e65a Indicated more prominently that fped is licensed under the GPLv2 and included the license text. (Thanks to nickoe for pointing this out.) werner 2009-12-27 22:07:16 +0000
  • 30f444daee Added package name (transfig) of fig2dev werner 2009-12-27 20:55:41 +0000
  • 3d6c9b2a1f Added Netpbm to prerequisites. werner 2009-12-16 17:26:31 +0000
  • aca443f566 Make the icon for the currently selected instance transparent so that it better blends in and won't be mistaken for a button. werner 2009-12-16 17:25:13 +0000
  • b37a8599d9 It can sometimes be unclear what exactly has been selected. To improve this, we now display an icon for the currently selected instance in the status area. werner 2009-12-15 21:24:30 +0000
  • 83669c6db7 When entering the first vectors, where were a number of display anomalies such a vectors pointing in the wrong direction. They were caused by overflows due to inadequate zoom settings. werner 2009-12-15 20:05:37 +0000
  • a830226830 When no instance is selected, show the polar coordinates of the current pointer position relative to the user origin in the radius/angle fields. This helps to make quick manual measurements, e.g., of clearances. werner 2009-12-15 19:33:15 +0000
  • 2a819a82d7 Added a crude hack to increase the robustness of font scaling. (This can be necessary if printing unusually large components.) werner 2009-12-10 12:02:02 +0000
  • c6312cd313 A bit of cleanup, as suggested by Chitlesh Goorah. werner 2009-12-02 15:36:00 +0000
  • 582e2391de The absolute Y position in the status bar was actually the X position. Oopsie. werner 2009-12-01 13:16:47 +0000
  • 6f2dc7fb0b Added functions sin(), cos(), and sqrt(). werner 2009-12-01 12:43:59 +0000
  • 9cd195bf5b When entering a name with variable expansion, the "invalid character in variable name" error was never cleared. werner 2009-12-01 10:50:55 +0000
  • 1613d4bdbc Trying to save arcs would crash fped. werner 2009-12-01 01:29:07 +0000
  • 56371f440a Creation of a rounded pad could crash fped. werner 2009-12-01 01:04:32 +0000
  • a26b79041b - inst.c (inst_select): cycle through instances globally, not only within the same priority werner 2009-11-27 23:31:03 +0000
  • 1daa0068d5 Vector name generation could produce duplicates if vectors were moved or deleted. The new algorithm checks for collisions and also reduces the number of allocations. werner 2009-11-27 19:55:25 +0000
  • 907bcf919b Fixed some bugs in the vector list re-ordering function. This should work now, but there's another problem in the dumping code that still spoils the fun. werner 2009-11-27 19:18:44 +0000
  • 2dffbfeaa9 When moving a vector, the list order could get confused, resulting in a segfault, failure to update the screen content, and assigning of invalid references. werner 2009-11-27 16:23:35 +0000
  • b6e5c6d20a - gui_inst.c (gui_draw_rpad): when drawing an outline instead of filling, use two lines instead of a rectangle werner 2009-10-21 15:04:56 +0000
  • 549a15def5 For future extensions. werner 2009-10-20 23:50:45 +0000
  • cd830046fa Drawing all the pad layers as filled areas can cause confusion. Now we draw the solder mask with lines. werner 2009-10-19 15:00:30 +0000
  • c172870dfd - README: added link to the GUI manual - added a conceptual explanation of instantiation (with picture) werner 2009-09-13 13:16:39 +0000
  • 192ec568d8 - inst.c: cleanup_inst leaked memory when using special pads - changed pad classification in instances from bare/other to copper/special - moved LAYER_* definitions from layer.h to layer.c - after instantiation, we perform sanity checks on pads and remove layers from coppery pads that are handled by a special layer - fped.y: the line number in objects was never set - overlap.c: fixed overlap calculations - gui_tool.c: end_new_pad didn't initialize the pad type werner 2009-09-13 11:11:03 +0000
  • 8df866ab2f - the set of layers of a pad is now maintained in the instance, so that we can make adjustments when removing layers provided by specialized pads - gui_inst.c: moved gc construction from gui_draw_pad and gui_draw_rpad to shared pad_gc - layer.h: new home of all definitions related to pads and layers - layer.c: - overlap.c: functions to test for overlaps of pad shapes (in progress) werner 2009-09-13 09:58:30 +0000
  • c91156aac0 - gui_util.c: make container clean-out globally available as vacate_widget - gui_status.c: the x entry are is now a vbox with variable content - the pad type is now shown in the x entry area and can be changed by clicking on it werner 2009-09-12 23:15:15 +0000
  • f054cdd7d5 - added "make update" that combines "svn update" with remaking the dependencies werner 2009-09-12 07:34:02 +0000
  • 76c3c1c1d0 - added solder mask pad type (patch by Rene Harder) werner 2009-09-11 18:34:51 +0000
  • 5c37256c09 - bare pads are now drawn in orange, so that one can see if a pad has a special solder mask pattern - postscript.c: don't scale fonts down to nothing to make measurement text fit (in progress) werner 2009-09-10 23:40:03 +0000
  • e04a8017b7 - postscript.c: don't try to print empty pad names, or we'll have a hard time scaling that zero-sized box to fill the available space werner 2009-09-08 19:37:47 +0000