Re: gEDA-user: solder/component -- top/bottom ?
On Mon, Sep 19, 2011 at 01:24:51AM +0200, Kai-Martin Knaak wrote: Just got fooled by the classic solder/component vs top/bottom, again. It just won't stick with me, that solder is supposed to be a synonym to top. I addressed the issue before about a year ago: http://thread.gmane.org/gmane.comp.cad.geda.user/31354/focus=31356 Consensus seemed to be that top/bottom is the way to go. Since then, the naming scheme of gerber export was changed accordingly. Same with the default layer names of a new layout. But the rest of the code and the docs is still working with solder/component. On some occasions, it is even back/front side. I'd be motivated to prepare a series of patches to get away with solder/component once and for all. Would be a bit of work, though. So I'll ask before I spend hunting them down: Would such a patch get applied (provided, it is well formed and all)? I'd vote for this. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: solder/component -- top/bottom ?
On Sun, Sep 18, 2011 at 08:47:36PM -0400, DJ Delorie wrote: Still unhappy with moderation of geda-user. Why? Because it is completely intransparent. Please do not mix your political agenda with technical questions. In Kai's defense, his message was in his signature, which is clearly separated from the message and not even shown in many readers. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: New gtk menu system
On Fri, Sep 16, 2011 at 02:29:04AM +0200, Kai-Martin Knaak wrote: Andrew Poelstra wrote: Here is some visual feedback. It brightens the swatches when the mouse is over the row, a little bit. Let me know what you think of it. This feedback is in git-head now. However, it is a very subtle effect. Much too suptle for my taste. I can hardly tell the difference, if the mouse is at rest. Compare this to the strong optical feeedback the traditional layer buttons provided: A frame colored in GTKs select color combined with an inverted font color. You can easily spot the button, the mouse is over, even on a blackwhite screenshot. Why do you want this feedback? The highlighting is meant to give a tactile feel to the layer selector, nothing more. Pcb doesn't care what layer the mouse is over. The user shouldn't care what layer the mouse is over. Screenshots usually don't even have a cursor in them. Having one layer with a bigger swatch would then be completely meaningless, and confusing. The old highlight mode was awful. If the layer was visible, it would simply change the text color to black (making it hard to read over the colors, which by default are almost all dark). (The default gtk button prelighting is even less visible than my layer swatch business -- look at the Route Styles button.) If the layer wasn't visible, there was no indication on the button what color it was. If you then hovered over it, the color would re-appear, making it impossible to tell whether or not the layer was visible! IMHO, an increase in size would work better - Much like many desktop manager do, when they prelight icons on mouse-over. Best would be a changed background. (Did I understand you correctly, that this can't be done easily with the chosen widget?) Correct. We are using a treeview widget, which is essentially a select-box. I have never seen a select box with prelighting like you suggest, and evidently neither have the gtk folks. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: PCB segfaults when the Route style button is clicked
On Sun, Sep 11, 2011 at 04:53:08AM +0200, Kai-Martin Knaak wrote: Ivan Stankovic wrote: I'm using PCB from git master (9dde48253c..) and it segfaults when the Route Styles button is clicked. Here's how to reproduce: 1. use PCB to make an empty pcb file 2. start PCB again and load the empty file with File - Load layout 3. choose Power route style, then click on the Route Styles button to bring up the dialog; close the dialog 4. choose Signal route style, then click on the Route Styles button to bring up the dialog; close the dialog 5. repeat steps 3 and 4 in order, until PCB segfaults I can confirm. Current git head PCB segfaults on me, too. Sometimes on first iteration, sometimes later. Interestingly, it does not want to segfault if I do not load the previously saved empty layout. At step 3 I notice a difference: With the reloaded layout, the field for the route style name is empty. Maybe, this is a hint for the cause. Should be fixed in git head (c62863b2) now. Thanks for noticing this, guys -- this was a serious memory corruption issue. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Do whatever you want. Do what you think is important. Everybody is an individual. --Ron Paul ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: why some skip KiCAD and gEDA
On Sat, Sep 10, 2011 at 04:20:27PM -0700, Jared Casper wrote: On Sat, Sep 10, 2011 at 4:12 PM, Markus Hitter m...@jump-ing.de wrote: Using a keyboard to do anything but writing text is a thing of the past, to start with. I couldn't disagree more. I only want to use the mouse for things that absolutely require a mouse (drawing things mostly). If I have to use the mouse to click buttons or menus, etc. I consider that a complete failure. I don't even have a mouse connected most of the time. I plug one in when I need to draw, that's it. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Do whatever you want. Do what you think is important. Everybody is an individual. --Ron Paul ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: PCB segfaults when the Route style button is clicked
On Sun, Sep 11, 2011 at 04:53:08AM +0200, Kai-Martin Knaak wrote: Ivan Stankovic wrote: I'm using PCB from git master (9dde48253c..) and it segfaults when the Route Styles button is clicked. Here's how to reproduce: 1. use PCB to make an empty pcb file 2. start PCB again and load the empty file with File - Load layout 3. choose Power route style, then click on the Route Styles button to bring up the dialog; close the dialog 4. choose Signal route style, then click on the Route Styles button to bring up the dialog; close the dialog 5. repeat steps 3 and 4 in order, until PCB segfaults I can confirm. Current git head PCB segfaults on me, too. Sometimes on first iteration, sometimes later. Interestingly, it does not want to segfault if I do not load the previously saved empty layout. At step 3 I notice a difference: With the reloaded layout, the field for the route style name is empty. Maybe, this is a hint for the cause. Neat, confirmed. Notice also that the values become increasingly corrupted with each load. I'm guessing that in the RouteStylesChanged action, I should just tear down and re-create the route style selector. The selector has a pointer into pcb's route style data, which probably gets freed when a new board is loaded. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Do whatever you want. Do what you think is important. Everybody is an individual. --Ron Paul ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: accel keys (was: why some skip KiCAD and gEDA)
There are some standard shortcuts that both gschem and pcb should be using by default: New Ctrl+N QuitCtrl+Q OpenCtrl+O SaveCtrl+S Save as Shift+Ctrl+S UndoCtrl+Z RedoShift+Ctrl+Z Select all Ctrl+A Select none Shift+Ctrl+A HelpF1 There should really be no controversy on this. Maybe we should ship a vi keys keymap for people who want u for undo, etc. For single-key bindings, it would then make sense to use (I'm thinking of pcb here): F2-F10 open window (DRC, library, message log, netlist, route style editor, layer editor, etc) F11fullscreen? F12text editor? Page upnext layer Page down prev layer Ctrl+PgUp next route style Ctrl+PgDn prev route style v via l line L lock tool a arc r rectangle R rotate tool t text T thermal h hole p polygon x delete tool Escarrow tool . . . etc I'm not sure how well this integrates with Kai's list of gschem/pcb correspondences. IMHO we should try to use single-key mappings everywhere, in both tools. As somebody mentioned, there are roughly 40 of them, which is more than enough for common tasks. We shouldn't have shortcuts for things like clear undo buffer. Why is this even a menu option? On a qwerty keyboard, Ctrl+[zxcva] can all easily be done with one hand. (On dvorak this is not the case, but those users are usually more comfortable remapping their keyboard shortcuts.) The other shortcuts are not common commands, so optimizing them for one-hand usage doesn't justify the loss in discoverability, IMO. *** In pcb it would be very easy to ship the new keymaps alongside the old ones, and add a Classic shortcuts option to the preferences dialog. I'm not sure how easy it would be in gschem, since the keymap could be mixed in with other scheme code. The existing keymap, especially when combined with the old pcb layer selector, gives the impression of an ancient and non-standard UI. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: plugins (was: How can you help...)
On Wed, Sep 07, 2011 at 10:51:31PM +0200, Kai-Martin Knaak wrote: Dan Roganti wrote: I'll be glad to help anyone in this development group with this documentation work. I am close to start off a gEDA wikibook (http://en.wikibooks.org). Would you join the effort? I'd be happy to contribute when I have free time (or am procrastinating). -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Do whatever you want. Do what you think is important. Everybody is an individual. --Ron Paul ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: test repo
On Mon, Sep 05, 2011 at 03:21:25AM +0200, Kai-Martin Knaak wrote: Proposal to tone down the impact of patches breaking important features: Add a branch test to git. This branch would work pretty much like sid/unstable repo of debian. It would receive all the new stuff so advanced users like me can give them a test run. If a patch stands the test by same time, it will be applied to git-head. My thoughts on this: This sounds like a good idea, but depends on developer availability (who will move features from testing to master?), and would probably end up being of limited usefulness. My mil-to-nm changes and Peter C's rendering/cleanup changes have both been so intrusive that any minor changes applied after-the-fact, would simply not apply without those changes. So they would be stuck in testing for as long as mil-to-nm is. (To see this, run git diff 4d239d98 master --stat which gives 252 files changed, 25069 insertions(+), 13260 deletions(-) !) In the case of my metric changes, it might have been smart to tag a revision before the crazy changes, so that you would have something to compile without the breakage. As it stands, the actual conversion (i.e., the hardcoded-constant changes) should all be in commit 97b3260ec. So you might want to just checkout your own branch with this reverted, and rebase any new changes against that: git checkout -b kai_no_metric git revert 97b3260ec Then to update: git pull origin master git rebase master -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Do whatever you want. Do what you think is important. Everybody is an individual. --Ron Paul ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: pcb gtk: Toggle buttons for route styles?
On Fri, Sep 02, 2011 at 03:02:51AM +0200, Kai-Martin Knaak wrote: Andrew Poelstra wrote: Can we use toggle buttons instead of radio buttons for the route style selector? It would look like so: http://wpsoftware.net/andrew/dump/toggle.png This gives more clickable area and a cleaner look, I think. The look is still inconsistent. The buttons are centered. By contrast, the tool box and the layer lines are flush-left. I'd prefer a more radical change: 1) Make the route styles as user configurable as the layers. That is, allow to add odr delete styles, change the order they appear in the GUI, Nope, core changes required. I can allow the addition of arbitrarily many temporary layers (and I plan to), but that's pretty much the extent of what I can do without making serious changes. 2) Attach accel-keys to route styles. I know, we are running out of accels. But this is an important omission in the current GUI. Changing route styles is a very frequent action while manual routing. How about [ctrl-F1], ... [ctrl-F12]? Sure. Unless someone has a better idea, I'll go with these. 3) Add a little preview to the left of the route style name, that indicates the width of the tracks. Actual width in the preview may be calculated relative to the other route styles. I considered this, but route styles control more than just line size, and I don't think relative to the other route styles would be very useful. 4) Get rid of the Route Style button. Its meaning depends on the currently selected route style. This is very non-standard and newbie unfriendly. Here is my proposal: add an 's' to Route Style and have it load this dialog: http://wpsoftware.net/andrew/dump/styles-dialog.png Proposal: Move its function to right-mouse click on every style button. Ideally, this would be complimented by a config page in prefernces in case a user can't do right-clicks (e.g. mac users). This would also be the place to change order config accel keys or add more route styles. Side effect: More space in the right sidebar :-) To fully implement these proposals, changes in the internals of pcb are required. But at least, a GUI-only redesign should not conflict such ideas. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Do whatever you want. Do what you think is important. Everybody is an individual. --Ron Paul ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Fwd: Re: [OH Updates] How can you help solve the proprietary tool problem?
On Fri, Sep 02, 2011 at 03:45:57PM -0400, Bob Paddock wrote: Just for the record, I'm not sure what our moderation policy is. Are any of your posts being rejected by moderation? (If so - just what kind of emails are you sending? ;)). One of the things that changed when the list went moderated, is that I no longer see my own posts, so I really never know if the reached the list. Before moderation I'd see my own posts. I assume this applies to everyone, or at least everyone using gmail maybe? I see it sometimes, but with other people's messages as often as mine. For example, Peter C. recently replied to a message from Stephan. I received Peter's reply but not Stephan's message. My school's mailserver has its own host of problems I think are contributing to this. Often I'll just open the archive page and hit refresh periodically, since that seems more reliable. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Do whatever you want. Do what you think is important. Everybody is an individual. --Ron Paul ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Fwd: Re: [OH Updates] How can you help solve the proprietary tool problem?
On Fri, Sep 02, 2011 at 01:10:10PM -0700, Andrew Poelstra wrote: I see it sometimes, but with other people's messages as often as mine. For example, Peter C. recently replied to a message from Stephan. I received Peter's reply but not Stephan's message. I meant to say 'Stefan Salewski' here. I apologize for the misspelling. (Note: I did recieve -this- message of my own.) -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Do whatever you want. Do what you think is important. Everybody is an individual. --Ron Paul ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
gEDA-user: pcb gtk: Toggle buttons for route styles?
Hey all, Can we use toggle buttons instead of radio buttons for the route style selector? It would look like so: http://wpsoftware.net/andrew/dump/toggle.png This gives more clickable area and a cleaner look, I think. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Do whatever you want. Do what you think is important. Everybody is an individual. --Ron Paul ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: pcb gtk: Toggle buttons for route styles?
On Fri, Sep 02, 2011 at 02:32:44AM +0100, Peter Clifton wrote: I don't know, but my personal feeling is that toggle buttons are a PITA, and they don't look that natural in this application. Pretty much for the same reason as we didn't like them in the layer selector - which you've just done a great job of re-writing ;). Perhaps I'm just used to the old way, so am resistant to change. My true motivation here is that gtk 2's radio button handling is crap. I would like to use GtkRadioAction to handle the just-one-thing-selected logic, but I can't link radio buttons to radio actions. In fact, I can't really link radio buttons to anything. As it happens, the toggle buttons work fine in this respect. From a UI perspective, I prefer the radio buttons. But I figured I'd cheat and try to get popular support for the easy thing, first. Looks like that's not gonna happen. Oh well. Throwing out a crazy idea.. in word-processors etc.., styles are found in a drop-down combo-box. I know that doesn't fit so well with where we have space for the route-style selector, but just a crazy though. One day, when we support an unlimited number of route styles. ;) -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Do whatever you want. Do what you think is important. Everybody is an individual. --Ron Paul ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: gpcb-menu.res
On Wed, Aug 31, 2011 at 02:00:37PM +0200, Kovacs Levente wrote: On Tue, 30 Aug 2011 12:01:00 -0700 Andrew Poelstra as...@sfu.ca wrote: Fixed in git head. Thanks! Maybe I can see why the automatic layer (group) change doesn't work. Can you give me any clue where it is located in the code? In the toggle callback, I call ChangeGroupVisibility, which changes the core state, but there is no function that resyncs the selector state with the core state. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Do whatever you want. Do what you think is important. Everybody is an individual. --Ron Paul ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: New gtk menu system
On Wed, Aug 31, 2011 at 01:12:13AM +0200, Kai-Martin Knaak wrote: Two more issues: * A left-mouse-click on the square toggles the visibility of the whole layer group on the canvas. But it toggles only the visual state of this layer, not the state of the squares that correspond to the other layers in the group. As a result, the state of the squaere is not necessarily in unison with the visibility of the layers on the canvas. * Load of a colour theme does not immediately update the colours. The layers in the layout receive the new colours only, after their visibilty is toggled. The squares in the layer selector only receive the new colours after restart of the application. Both fixed in git head. I also explicily sync the layer selector to pcb's internal state in the LayersChanged() action handler, so they should not be able to get out of sync anymore. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Do whatever you want. Do what you think is important. Everybody is an individual. --Ron Paul ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: New gtk menu system
On Tue, Aug 30, 2011 at 03:47:33PM -0700, Colin D Bennett wrote: On Tue, 30 Aug 2011 14:22:28 -0700 Andrew Poelstra as...@sfu.ca wrote: Here is some visual feedback. It brightens the swatches when the mouse is over the row, a little bit. Let me know what you think of it. I didn't try it yet, but will it work for layers with the following colors: - white layers (e.g., silk) or black layers? - layers with colors like red, green, blue, yellow, cyan, etc. where all of R,G,B are either 0.0 or 1.0 (normalized scale)? White layers, no. Everything else, yes. A more general solution, and one that won't affect the accurate representation of the layer color by the swatch, is to draw a 1 or 2 pixel wide border around the swatch when the mouse hovers over that layer button. I tried this at home. It seemed to draw too much attention to the swatch, and indicate toggle me! rather than prelight. IMHO, if we do anything to indicate prelighting, it should be (at least) as subtle as my color change. And I am not entirely sold that we should be doing anything. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Do whatever you want. Do what you think is important. Everybody is an individual. --Ron Paul ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: gpcb-menu.res
On Tue, Aug 30, 2011 at 08:51:42AM +0200, Levente Kovacs wrote: I noticed that recent PCB doesn't interpret my gpcb-menu.res file located in ~/.pcb. Instead it writes the following line to the standard output/error: @�: No such file or directory and the following line to the log window: Note: home directory is /home/leva Loading menus from Loading menus from Using default menus Fixed in git head. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Tearoffs on popup menu in pcb?
On Tue, Aug 30, 2011 at 02:58:08AM +0200, Kai-Martin Knaak wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 DJ Delorie wrote: I.e. if you right-click on an element, you should get a menu specific to that element, like select to select *that* element, rotate to rotate *that* element, etc. Such an operation makes no sense if the popup is torn off and placed elsewhere. Currently, only one out of five first level items is context sensitive the way you say (Operations on this location). The rest is actions that do not refer to the position of the mouse cursor (Operations on selections, Undo last operation, Redo last operation, Tools). Unless I missed something, the Operations on this location contains just a single item: Generate object report If the menu is ripped off, Generate object report might ask the user to click somewhere on the canvas. This what Cut selection to buffer does, when chosen from the regular menu. BTW: What are Tools-None and Tools-Cancel supposed to do? None appears to do nothing at all - it is used internally to when preventing selection of invalid modes. Cancel is a synonym for Select that was used to hook the escape key up, since all accelerators are configured through the menu system. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: New gtk menu system
On Tue, Aug 30, 2011 at 06:51:10PM +0200, Kai-Martin Knaak wrote: Forget about my last message on the X-windows error. (*) I just rebooted and pcb runs fine now. Must have been some funky mix of recent updates in the X-windows libs on my system. Oh, thank goodness! The new layer selector is beautiful! I like the way the suares indicate laxyer visibility. The fact Some glitches: I don't see any visual feedback which item the mouse cursor currently refers to. Gnome user expectation seems to be, that the item should be highlighted with background changing to focus color. Much the same way that the items in a menu highlight on mouse-over. Currently, I get focus color only after I clicked a layer. Hmm. This is the default behavior of the treeview widget, and Gtk deliberately makes style decisions very hard to override, since people all have different themes and it's best to let them choose. One close thing I could do is set the hover-selection property, which would actually select the item the mouse is on. This would be a nightmare, I imagine, for people who bat their mice haphazardly to the left to get their cursor out of the way. Another, more sensible thing I can do is to change the rendering of the color swatch when the mouse is on the row. Can you think of a good highlighted cue that only affects the swatch? Layers can be selected with middle mouse button, too. Is this deliberate? The old layer chooser did not respond to middle mouse button click at all. IMHO, middle mouse should stay reserved for some funky functions yet to be designed (e.g. make the layer temporarily visible while the button is pressed) Ditto -- this is the default behavior of the treeview. I'm catching mouse clicks anyway so that visibility works without selecting each row, so it wouldn't be hard to throw away non-left-clicks. I think I'll do this - right-clicking also selects the row, which will probably irritate people expecting a popup menu. Best to make selection a left-click-only action. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: New gtk menu system
On Tue, Aug 30, 2011 at 07:04:51PM +0200, Kai-Martin Knaak wrote: Andrew Poelstra wrote: User-visible changes are: Another minor wish: Can you change the background of the layer chooser to the background color gtk uses for the rest of the controls? (menu, status line, mm/mil button, route styles) Currently, it seems to be the background of input items. But of course, you can't input anything there. It's the background of select boxes, which it is. I think changing the background tone would send a different message. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: timestamps in pcb.git
On Mon, Aug 29, 2011 at 08:37:30AM +0200, Kovacs Levente wrote: I've just downloaded a snapshoot from http://git.gpleda.org/?p=pcb.git;a=summary and it created files with timestpamps in the future. The make tool is now confused and ends up in an endless loop. make: Warning: File `Makefile.am' has modification time 2.2e+04 s in the future -rw-r--r-- 1 leva leva706 2011-08-29 14:43 Makefile.am I think I shell wailt till 14:43. Oops! This is my fault. My dev server clock seems to have found its way out of sync. This happens every so often, because of some oddity with Xen and timezones. Perhaps setting the root and virtual domains to UTC will fix it; I'll try this now. Waiting a few hours will fix the build failure. I'll be sure to keep an eye out for this when pushing commits in the future. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: timestamps in pcb.git
On Mon, Aug 29, 2011 at 08:58:44AM +0200, Kovacs Levente wrote: On Mon, 29 Aug 2011 07:09:21 -0700 Andrew Poelstra as...@sfu.ca wrote: My dev server clock seems to have found its way out of sync. This happens every so often, because of some oddity with Xen and timezones. Perhaps setting the root and virtual domains to UTC will fix it; I'll try this now. Waiting a few hours will fix the build failure. I'll be sure to keep an eye out for this when pushing commits in the future. OK. So which is the latest commit? Looks like 728f3502. The timestamps shown by git are only for human use; they often end up out of order when one dev pushes old commits from his machine after another pushs recent ones. The actual ordering is done by the hash chain, and this can't get corrupted. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: timestamps in pcb.git
On Mon, Aug 29, 2011 at 08:37:30AM +0200, Kovacs Levente wrote: I've just downloaded a snapshoot from http://git.gpleda.org/?p=pcb.git;a=summary and it created files with timestpamps in the future. The make tool is now confused and ends up in an endless loop. make: Warning: File `Makefile.am' has modification time 2.2e+04 s in the future -rw-r--r-- 1 leva leva706 2011-08-29 14:43 Makefile.am I think I shell wailt till 14:43. If you run touch `find` This will reset the timestamps on everything to your current time. make will take a while to run, since it will then believe everything has changed, but it won't get stuck anywhere. Other than that, nothing will be broken or confused. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: layer selector inconsistency (was: timestamps in pcb.git)
On Mon, Aug 29, 2011 at 09:28:36AM +0200, Kovacs Levente wrote: Ok. Thanks. I found that layer selection and toggle doesn't work as it was. I have to click 3 times (or something) to have the layer switched on or off. First click often moves the highlighted area to another line. Levente Phew! Fixed in c81a96de. The layer selector would change its state recursively -- toggle swatch then checkbox then toggle swatch then ... -- though only two or three levels deep, which is why I let it happen in the first place. Further, I was deleting non-silk layers and reinserting them on every layer state change, further confusing things. Somewhere in this mess of state changes, the layer selector was becoming inconsistent with itself AND pcb, making it nearly useless. There may still be trouble when adding or deleting layers. If you see anything, please let me know, because it seems fine to me. But I won't be able to fix it until the new menu widget is done. Also, my system clock is correct. ;) -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
gEDA-user: New gtk menu system
Hey all, I have pushed the new menu system to git head. This lets the new layer selector manage its own menu entries and accelerators. Note that Edit-Route Styles is unpopulated. I will fix this in the next day or two. User-visible changes are: - the layer selector works! You can add/delete/rename layers and the menu will adjust. The accelerators also work, and remap automatically to handle new layers. - radio buttons are used instead of checkboxes for some things - tearoffs on the right-click menu As a reminder, the layer keyboard accelerators are: 1-9 Select layers 1-9 0 Select layer 10 Alt+1-9 Select layers 11-19 Alt+0 Select layer 20 Adding Ctrl lets you toggle the visibility of those respective layers. Remember that not all layers are selectable, but all of them should be able toggle visibility. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
gEDA-user: Tearoffs on popup menu in pcb?
Hey all, Right now in pcb if you shift-right-click on the main viewport, you get a popup menu with a few submenus. There are no tearoffs. Do you want tearoffs on the submenus of this popup? What about on the popup itself? Andrew -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Updating gtk menu dynamically?
On Sun, Aug 28, 2011 at 05:14:18AM +0200, Kai-Martin Knaak wrote: But getting the accelerators hooked up is proving to be a trial. GtkActionGroup apparently -only- works with GtkUIManager, so without it, setting up accelerators, their paths, their callbacks and their menu items is up to us. While at it, can you implement gnomes convenient on-the-fly user modification of accel keys? (put the mouse on a menu item and type whatever accel you want to assign) Not while I'm at it, no. But it will certainly be possible once I'm done with the widget, unlike the current situation. Unfortunately, I'm rather time-constrained. For the next week I can work on pcb 24/7, but after that my girlfriend comes back from Calgary and school starts up again. Basically, I want to get the new menu widget done (it's nearly so -- everything works but the layer selector and route-style menu items). After that the route-style selector will probably need its own widget, but that's easy to do at this point. Then, I'll just be doing bugfixes and code documentation, and when school starts even that'll probably stop. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: New layer selector to play with (git preview)
On Thu, Aug 25, 2011 at 11:43:41PM -0700, Jared Casper wrote: On Wed, Aug 24, 2011 at 3:21 AM, Andrew Poelstra as...@sfu.ca wrote: Hey all, The new gtk layer selector is finished for most uses now. If you want to play with it before it's ready to be published (which is a few days away still), you can get it here: Looks great! Just played around with it for a second and noticed a bug though, when you delete or otherwise change the layers in the PCB Preferences dialog (i.e. delete or move the currently selected layer, or add a new one) the layers are changed, but the widget isn't updated, even after the dialog is closed, leading to all kinds of confusion. Fixed. The new behavior should now be the same as the old. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: New layer selector to play with (git preview)
On Fri, Aug 26, 2011 at 06:28:09AM +0100, Peter Clifton wrote: A few nits when I tested it. (And not just looked at the screenshots).. 1. PCB crashes immediately on startup for me: UPDATE COLORS Program received signal SIGSEGV, Segmentation fault. 0x004d6883 in gtk_pcb_layer_selector_update_colors (ls=0x0, callback=0x4ca630 get_layer_color) at hid/gtk/gtk-pcb-layer-selector.c:694 694 gtk_tree_model_get_iter_first (GTK_TREE_MODEL (ls-list_store), iter); Cool. I have never seen this. I also don't get the UPDATE COLORS text on startup. How have you configured your colors? 2. It should not be printing debug text like UPDATE COLORS to the console ;) Oops. But it seems to have helped here. ;) If I'm seeming brief, it might be because its now 6:30AM and I've not slept. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: New layer selector to play with (git preview)
On Fri, Aug 26, 2011 at 06:28:09AM +0100, Peter Clifton wrote: A few nits when I tested it. (And not just looked at the screenshots).. 1. PCB crashes immediately on startup for me: 2. It should not be printing debug text like UPDATE COLORS to the console ;) Both fixed and pushed. Thanks for noticing so quickly! -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: howto pin size
On Wed, Aug 24, 2011 at 05:14:43AM -0500, kqt4a...@comcast.net wrote: $ pcb --version PCB version 1.99z $ git log -1 commit 87572b48e0d58b8f69d4aece6e22c4a5d89a16c5 Author: Andrew Poelstra as...@sfu.ca Date: Mon Aug 22 17:10:23 2011 -0700 Fix segfault in report.c text report output I have a component with a pin that info shows copper width = 72 I want to set copper width to 70 so I go to File-Preferneces-Increments and set Size Increment/Decrement to 1 and press OK Now put cursor over pin and press shift-s Info shows copper width = 67 How do I increment/decrement size by smaller values Richard, the Increments tab is completely non-functional right now. If you would like to change copper width, click on the Route Style button on the bottom-left of pcb, and manually enter the new width. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: howto pin size
On Wed, Aug 24, 2011 at 04:31:23PM +0200, Kai-Martin Knaak wrote: kqt4a...@comcast.net wrote: I have a component with a pin that info shows copper width = 72 I want to set copper width to 70 so I go to File-Preferneces-Increments and set Size Increment/Decrement to 1 and press OK This feature is currently broken (and has been for quite some time) There is a bug report in the tracker. It contains a patch from spring 2009, that has been bit-rotten, rebased in autumn 2010 and probably needs some love again, if it is to apply to cuurent head. https://bugs.launchpad.net/pcb/+bug/699464 There is no way that patch will apply. I have fundamentally changed the way that increments are managed in pcb -- the old code had separate cases for mm and mils, but we no longer give special treatment to those units. The old code also let you change the increments for mm, and not affect the increments for mil. Given that we now support a dozen or so different units, this is clearly impractical. So some design work (i.e., discussion) needs to happen before I can fix the UI. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
gEDA-user: New layer selector to play with (git preview)
Hey all, The new gtk layer selector is finished for most uses now. If you want to play with it before it's ready to be published (which is a few days away still), you can get it here: git://wpsoftware.net/pcb-andrew.git branch: layersel TODO: - can't change colors - I'd like to add a context menu for changing colors, hide all but this layer, show all, and whatever else you guys think of. I don't plan to add a hide all button. I also don't plan to allow saving/stacking of visibility settings, though I'd like to do that some day. KNOWN BUGS: - select silk, rats, or the last copper layer, then toggle its visibility. It won't automatically switch away. Note that this bug also affects the existing layer selector. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: pcb segmentation fault
On Mon, Aug 22, 2011 at 08:45:22AM -0500, kqt4a...@comcast.net wrote: $ git log -1 commit eaf012c425a5adc9a31d857d3aa9e906d844c97f Author: Peter Clifton pc...@cam.ac.uk Date: Mon Aug 8 23:13:02 2011 +0100 hid/gtk: Clean up ghid_pan_fixup () I have just fixed it in: commit 87572b48e0d58b8f69d4aece6e22c4a5d89a16c5 Author: Andrew Poelstra as...@sfu.ca Date: Mon Aug 22 17:10:23 2011 -0700 Fix segfault in report.c text report output Please run 'git pull' to bring all the changes down. (Note aware that you will also pull the recent metric conversion changes down, which have been published between now and Aug 8.) -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: PCB+GL rebased to git HEAD (with nanometers) - bug with arcs?
On Mon, Aug 22, 2011 at 05:31:26PM -0700, Andrew Poelstra wrote: On Sat, Aug 20, 2011 at 01:57:08PM +0200, michalwd1979 wrote: Dear Peter, I'm using newest version of pcb opengl from git and I found strange behaviour with arcs. This was caused by my commit: Fixed by commit 7b590a61. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: viewing side vs. layers
On Mon, Aug 22, 2011 at 10:48:27PM +0200, Levente Kovacs wrote: The automatic layer change capability is missing from the current HEAD ( 7b590a617db3ca3ed69965b544f1468f82c39dfe ). I.e. when you swap viewing side with TAB. It works only once, then stops working. What should be happening? I will make sure this works when I implement my new gtk layer selector. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer button backgrounds - summary
On Tue, Aug 23, 2011 at 09:33:28AM +1000, Stephen Ecob wrote: With this in mind, I have implemented the italicized/separated suggestion. You can see it here: http://www.wpsoftware.net/andrew/dump/mockup4.png 404 error - did you get the URL wrong ? Nope, uploaded it wrong :-}. The URL works now. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer button backgrounds - summary
On Tue, Aug 23, 2011 at 09:52:19AM +1000, Stephen Ecob wrote: A few hours in the future, Andrew Poelstra as...@sfu.ca wrote: Nope, uploaded it wrong :-}. The URL works now. Looks good, a definite improvement on what we have now! This may be out of scope for the current work, but I have some related items on my PCB wish list: * Hide all layers button * Show all layers button These would be easy enough to add to the widget. Just tack an `All Layers' entry below the other non-selectable entries. Whether there would be demand for this, I don't know. Would it affect the pins, pads and via layers? Would it affect the solder mask layer? Why would you want to hide everything? I don't expect there would be enough of a consensus on these questions. * Layer visibility memory - this would have a Store button and a Recall button. Store just stores the current visibility state, Recall changes it to the stored value. Perhaps 2 or 3 memories like this would be really useful when working with multi layer boards. Hmm. I say, out of scope. ;) * Store layer colours and visibility data in the .pcb file. I often work with a flow where I make changes to a .pcb in a text editor and then import them into PCB with the revert function. It's a real nuisance to lose my layer visibility state every time I revert. I agree, but also out of scope. I might tackle this after the GUI work, though. We have the ability to store layer-specific attributes, which is exactly where things like color and visibility should go. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer button backgrounds - summary
On Tue, Aug 23, 2011 at 02:22:25AM +0200, Kai-Martin Knaak wrote: Andrew Poelstra wrote: I have implemented the italicized/separated suggestion. You can see it here: http://www.wpsoftware.net/andrew/dump/mockup4.png Nice. I note, that the longest layer name is solder mask. Why not shorten it to mask to save screen estate for the canvas? I'd be cool with this, but solder mask is a well-known phrase in the industry. It has a definition on Google and a Wikipedia page. mask has nowhere near the same information content. IMHO, it is not worth the space savings. Maybe s.mask would be better? -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer button backgrounds - summary
On Sat, Aug 20, 2011 at 04:41:05PM +0200, Kai-Martin Knaak wrote: Complex relationships cannot be indicated by simple graphical means. What can easily be done, is an optical hint that these layers do not belong to the same class as the upper layers. Simply add some separating space between them. Sounds like this is the general consensus. I will add a separator and italicize these layers. The swatch will work, but clicking to select will do nothing. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: pcb segmentation fault
On Sat, Aug 20, 2011 at 08:04:03AM -0500, kqt4a...@comcast.net wrote: I am using version 1.99z that I compiled a few days ago If I press control-r while the mouse is over a component name I get a segmentation fault What kind of component? What does git log -1 show? -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Commandline option --menu-file
On Fri, Aug 19, 2011 at 01:15:32PM -0700, Colin D Bennett wrote: On Fri, 19 Aug 2011 16:44:12 +0200 Kai-Martin Knaak kn...@iqo.uni-hannover.de wrote: d) While menues can be ripped off and used as a toolbox, they don't remember their state beyond the end of the session. This essentially prevents persistent user configuration of the GUI. Actually, the GTK tear-off menus are currently broken. I can tear off menus, but the items cannot be activated by clicking them. I can confirm this, but You can select them and hit enter to activate them. I used to use the View | Grid Size menu as a tear-off menu constantly, and it was very helpful. I really miss it, but was hoping the “New Grids” feature would be finished and pushed to mainline pcb to supercede that need. The gtk gui needs to be completely revamped. There are many individual things to be done, but we don't have enough developers to get to them all soon. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer button backgrounds - summary
On Fri, Aug 19, 2011 at 01:46:24PM -0700, Steven Michalske wrote: On Aug 19, 2011, at 1:39 PM, Vanessa Ezekowitz wrote: On Fri, Aug 19, 2011 at 12:41:58PM -0400, DJ Delorie wrote: [...] Though, I am still unsure how to indicate that the last 4 layers can't be used for drawing. Put the item names in parenthesis. A little padlock icon is universal as a locked thingy. I will play with this idea. Probably I can fit a small padlock onto the bottom-right corner of the swatches. How clear this will be from a user perspective, I will not know until I try it. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer button backgrounds - summary
On Sat, Aug 20, 2011 at 09:55:17AM +0100, Peter Clifton wrote: Also, try italicised text. That might make them appear distinct. This might work. So might coloring the text. But this has the same problem as putting text in parentheses: at first glance, this visual indicator might mean -anything-. Bear in mind that the current layer chooser doesn't make any distinction here, so it shouldn't trip people up _that_ much if we don't differentiate them. The current UI does a very good job on this point: there are no radio buttons to select the bottom layers, so it is very clear that they cannot be selected. At the same time, the visibility toggle buttons are identical for each layer, so it is clear that visibility can be toggled for everything. What we need to do with the treeview/swatch widget, is to indicate that the swatch still works for toggling visibility, but you can't actually select the layer for drawing. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer button backgrounds
On Fri, Aug 19, 2011 at 01:01:07PM +0100, Peter Clifton wrote: On Thu, 2011-08-18 at 18:57 -0700, Andrew Poelstra wrote: That is how I would like it to work. But clicking the swatch also selects the layer, which is undesirable behavior. There is no clean way to prevent this with a GtkTreeView widget. Is there any dirty way to prevent it? ;) Yes, I found one -- and it is not actually that dirty. You can intercept the button-press-event signal, use the function gtk_tree_view_get_path_at_pos () to figure out what cell is clicked on, then prevent the propagation of the button-press-event if it was a swatch. (In this case, you have to toggle the visibility in the tree model yourself.) I note that what you are trying to achieve is similar to the GIMP layers dialogue (with different icons), and you _can_ toggle visibility in GIMP without changing the active layer selection. Hmm - looks at source.. gimp/app/widgets/gimplayertreeview.c 14k-line re-implementation of gtk_tree_view. Given GTK was originally the GIMP TOOL KIT, it seems sad that they have to go to such lengths to implement basic functionality. If we are really keen on the behaviour described - perhaps we could implement our own widget for it too. It looks for now to be unnecessary. But I agree with your frustration at the GIMP source rewriting half the toolkit. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer button backgrounds - summary
Thanks for all of your input, guys. I've done the fun parts now (i.e., writing the widget) and still have to hook it into the Gtk menu system. It looks like it won't be too hard, once I understand everything that's going on in there. I have a busy weekend, so I won't be posting anything you can play with for a litte while. But here is a summary of the widget: 1. It looks like http://wpsoftware.net/andrew/dump/mockup3.png 2. You click the swatches to toggle visibility. Double-clicking does not work. Sorry, Kai. 3. You select layers by clicking on them, OR, numbers 1-0 (with 0 meaning 10) to select layers 1-10. Then Alt+1-0 to select layers 11-20. I can't use Shift without making assumptions about what character Shift+1 corresponds to on the user's keyboard. So that's out. 4. You can toggle visibility by combining Ctrl with the above accelerators. -- Andrew Poelstra I'm 20 today! ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer button backgrounds
On Fri, Aug 19, 2011 at 05:22:57PM +0100, Peter Clifton wrote: Cool. Here's a fun idea - had you considered using the tree view's _tree_ feature to show layer groups? That might let us allow switching off entire layer groups, or individual layers within them. Oooh. I had not considered this. We would need to have a new discussion about keyboard shortcuts and the like, and this is outside of the scope of what I plan to do, but I'll definitely stick some TODO comments in to this effect. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer button backgrounds - summary
On Fri, Aug 19, 2011 at 12:41:58PM -0400, DJ Delorie wrote: Do we need any core changes to support any new functionality we've decided on? I know people ask about making sug-group layers separately controllable, and/or making narrower classes of objects visible. Not with the current widget, no. I think we would want to fix the core layer-handling before doing those things. My goal for now is to only touch gui-top-window.c, and only affect the user's experience. Though, I am still unsure how to indicate that the last 4 layers can't be used for drawing. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer button backgrounds
On Thu, Aug 18, 2011 at 04:12:34AM +0200, Kai-Martin Knaak wrote: Andrew Poelstra wrote: Kai (and others), what do you think of this mockup?: http://wpsoftware.net/andrew/dump/mockup.png Layer names with white background are much easier to read than white on color we have now. If it were me, the colored squares could be a tad larger without increasig the line spacing. Good call. I increased them to 14x14 pixels of color and they are much easier to see without increasing the line height. The little color triangles are not necessary. But I like this eye candy. There should be two highlight modes. One to show that the respective layer is the currently active layer. And another to provide visual feedback for the mouse. These two should not be exclusive, so you can mouse-highlicgt the current layer. How about underline for the active layer and the systems highlight color for mouse feedback? The latter is what I got to expect from gnome applications. What if we just keep the active layer highlighted all the time, and use that in place of the radio buttons? -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer button backgrounds
On Thu, Aug 18, 2011 at 08:29:13AM +0200, Krzysztof Kościuszkiewicz wrote: 2011/8/18 Andrew Poelstra as...@sfu.ca: Kai (and others), what do you think of this mockup?: http://wpsoftware.net/andrew/dump/mockup.png Looks good. It resembles GtkTreeView and that raises a question - will it still be possible to toggle visibility without changing the active layer (moving the selection)? I also like the stronger visual indication of currently active layer. You're very astute ;). It looks like you can't toggle visibility without selecting a new layer. But there are two ways around this: 1. If we use Kai-Martin's idea of double-clicking for visibility, this would not be a surprise to the user. 2. Whenever you hide a layer, the selector would jump to the previously-selected layer. I haven't tried it yet, but I think that from a user's perspective that would make the visibility buttons seem independent of list selection. To me the size of layer color indication for hidden layers is too small - for example its hard to tell difference between power and outline. So I would either increase the size or skip showing color for invisible layers at all. Others have suggested this too. See http://wpsoftware.net/andrew/mockup2.png I assume graying out the last 4 layers has some meaning - they're not selectable - but that's not immediately clear by looking at the widget. That is what I meant. Can you think of how to make this clear, while still allowing the user to toggle visibility? IMHO it would be obvious what the graying-out meant after the first time the user tried selecting them. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer button backgrounds
On Thu, Aug 18, 2011 at 09:25:06AM -0700, Jared Casper wrote: On Thu, Aug 18, 2011 at 3:56 PM, Andrew Poelstra [1]as...@sfu.ca wrote: 2. Whenever you hide a layer, the selector would jump to the previously-selected layer. I haven't tried it yet, but I think that from a user's perspective that would make the visibility buttons seem independent of list selection. This would work for hiding layers, but not making them visible. If layer X is active and layer Y is invisible, how do I make layer Y visible without making it the active layer? I like KMK's click/double-click idea if possible. Very possible. But you would still be unable to toggle visibility independent of selection using the mouse. How important is this to people? It bothers me, but only because there is no keyboard shortcut in Gtk for toggling visibility. My plan is that you can still toggle visibility by Shift-num, without changing the active layer. The problem with this, of course, is that it will only work with the first 10 layers.. In practice I avoid moving the mouse all the way over to the layer selection while doing a layout anyway, instead using my free hand on the number keys to select the active layer. Jared Ditto. My primary goal here is to improve perhiphial view of what layers are selected and visibile. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer button backgrounds
On Thu, Aug 18, 2011 at 01:13:37PM -0400, DJ Delorie wrote: Very possible. But you would still be unable to toggle visibility independent of selection using the mouse. How important is this to people? It bothers me, but only because there is no keyboard shortcut in Gtk for toggling visibility. Ctrl-n doesn't toggle visibility? That's what the lesstif HID uses. No. There is code in there to do this, but (to the best of my knowledge) it has never worked. The current accelerator code is very tangled and I wasn't able to fix it last I tried, a few years ago. This is another motivation for pulling the layer-selector into its own widget. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer button backgrounds
On Thu, Aug 18, 2011 at 09:50:25AM -0700, Colin D Bennett wrote: I really dislike the double-click idea. I often need to quickly enable/disable visibility of multiple layers, and the last thing I need is to have to double-click each button. I would much prefer a small region on the button (or next to the button) that controls active/inactive. I agree. I like the color swatch and how it shows a small rectangle of the layer color when the layer is hidden; if this swatch were the show/hide toggle, that would be very slick. That is how I would like it to work. But clicking the swatch also selects the layer, which is undesirable behavior. There is no clean way to prevent this with a GtkTreeView widget. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer button backgrounds
On Thu, Aug 18, 2011 at 11:49:22AM -0700, Colin D Bennett wrote: On Thu, 18 Aug 2011 18:57:33 -0700 Andrew Poelstra as...@sfu.ca wrote: On Thu, Aug 18, 2011 at 09:50:25AM -0700, Colin D Bennett wrote: I like the color swatch and how it shows a small rectangle of the layer color when the layer is hidden; if this swatch were the show/hide toggle, that would be very slick. That is how I would like it to work. But clicking the swatch also selects the layer, which is undesirable behavior. There is no clean way to prevent this with a GtkTreeView widget. It doesn't sound like a “tree view” is the most appropriate concept for the layer list. There is no apparent visual hierarchy. I am not familiar with GTK, but is there another widget that would be more suitable? E.g., table, list, general scrollable canvas with custom widgets stacked vertically? No, tree view is used for everything. You can hookup a tree model if you want a heirarchy, but for lists you hookup a list model. The viewing logic is the same, so gtk used the confusing name tree view for both in other to avoid code duplication. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer button backgrounds
On Thu, Aug 18, 2011 at 11:34:04PM +0200, Kai-Martin Knaak wrote: Andrew Poelstra wrote: I like KMK's click/double-click idea if possible. Very possible. But you would still be unable to toggle visibility independent of selection using the mouse. Why is this so? Are double clicked items automatically selected in GTK widgets? They are in a GtkTreeView. It's a nasty, inflexible widget. How important is this to people? Quite important. When working with four layer layouts I often need to toggle visibility of layers while I keep working one of the inner layers. It bothers me, but only because there is no keyboard shortcut in Gtk for toggling visibility. I'd prefer to have both: Mouse click action and keyboard accels. I've gotten the swatch-clicking to work by catching mouse clicks over the visibility toggle column and preventing those clicks from propagating to the GtkTreeView. You say you don't want to reach for a tiny area with the mouse. I have increased the swatch size. Take a look at: http://wpsoftware.net/andrew/dump/mockup3.png The swatches are far larger than the radio buttons, have more visibly clickable area (as they are square), and contrast with their surroundings more. My plan is that you can still toggle visibility by Shift-num, without changing the active layer. The problem with this, of course, is that it will only work with the first 10 layers.. [ctrl-num] to select 11 to 20, [shift-ctrl-num] to toggle visibility. [alt-num] to select 21 to 30, [shift-ctrl-num] to toggle visibility. [alt-ctrl-num] to select 31 to 40, [shift-alt-ctrl-num] for visibility ;-) Heey, I like that. For compatibility with lesstif we should switch Shift and Ctrl, but otherwise I'm all for this. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
gEDA-user: Layer button backgrounds
Hey all, I am working on moving the Gtk layer-selector into its own widget (see bug 699482, for example), and cleaning up the code. A question I have for the group is: why are the backgrounds of the layer buttons in little rectangles? Is there opposition to making the background fill the whole buttons, like so?: http://wpsoftware.net/andrew/dump/buttons.png It would simplify the code a bit and IMHO looks more modern. There is a bit of an optical illusion making the new buttons seem bigger, but I checked in gimp and there is no change in size. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer button backgrounds
On Wed, Aug 17, 2011 at 01:14:46PM -0700, Colin D Bennett wrote: On Wed, 17 Aug 2011 20:48:48 +0200 Felix Ruoff fe...@posaunenmission.de wrote: I personally like the new style you created. Its very nice! I think the reason for adding this small rectangles is, that its easier to see, if the button is pressed. Good point. I do like the full color fill you show, Andrew. However, I think we need a better way of indicating which layers are visible. Perhaps a little X or checkbox icon on the button? I already dislike the current buttons' indication of which layers are visible (change of fill color and text color with inset or outset border). Maybe something better can be done. I suggested last year copying the Gimp's layer selector: left-click to activate, with visibility controlled by a toggle-able eye pixmap. There was not much support for the idea. The feeling was that we should try to make the layer selector take less space, whereas adding pixmaps would take more. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer button backgrounds
On Thu, Aug 18, 2011 at 07:31:24AM +1000, Stephen Ecob wrote: Good point. I do like the full color fill you show, Andrew. However, I think we need a better way of indicating which layers are visible. Perhaps a little X or checkbox icon on the button? I already dislike the current buttons' indication of which layers are visible (change of fill color and text color with inset or outset border). Maybe something better can be done. Photoshop (and also GIMP) use a small on/off icon that looks like an eye to control layer visibility. This may or may not be a good way to do it, but it is certainly a familiar UI to many people. I think such a thing would look like: http://wpsoftware.net/andrew/dump/selector.png What do people think of this? -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer button backgrounds
On Thu, Aug 18, 2011 at 12:08:34AM +0200, Kai-Martin Knaak wrote: This advantage wears off as the user uses the feature more often. Using layers is very basic to PCB. Typical use switches layers very often in a session. Because of this, long term aspects become more important, like efficient use of screen real estate and good visibility of important aspects. Eye icons would demand an additional share of space that cannot be used for the canvas. Greyed out buttons buttons are a very intuitive and obvious way to signal invisibility. Kai (and others), what do you think of this mockup?: http://wpsoftware.net/andrew/dump/mockup.png -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Nanometer conversion pushed to git head
On Tue, Aug 16, 2011 at 11:53:21PM +0100, Peter Clifton wrote: On Mon, 2011-08-15 at 18:34 -0700, Andrew Poelstra wrote: Exciting news everyone! I have just pushed the nanometer conversion patches to git HEAD. I'm really glad to see this work merged. When I get a moment, I will rebase my PCB+GL branches against it. (I might do it in a few gentle steps, rather than all 56 commits at once - depending on how brave I feel!). I see a lot of people think this will help with (hiding) the rotating a square pad bug. I'm still uneasy about that though. We should perhaps make our next order of business fixing that properly. I guess we should modify / extending the pad definition line to specify an orientation, or allow specification of an overall rotation for a package. Can we do this by adding a pcb::rotation attribute to every object? I mentioned in another thread my desire to not add anymore cruft to the current file-format. This would, of course, break backward-compatibility no matter what we do. The square-pad bug is hardcoded into every .pcb that it affects. Maybe by default we would only use this attribute on square pads ;) we really don't have enough stuff pcb can read but not write floating around the file format.. With the attribute solution, at least, we won't have to touch the parser. I have some ideas about how pad-stacks could be made more general though, so a square pad (like many others) is just a special case of a polygon - which can, of course.. be rotated arbitrarily, either at the pad level, or on the component level. We had a long discussion last time we talked about future file formats, in regards to primitives. What geometric primitives do we want? What electrical primitives? How are layers stored? Can we mark subsets of layers? Can we set different DRC rules on everything? How do vias work? Are they special in spanning multiple layers? Or can anything do that? Can we specify the substrate? Layer thickness? Trace height? Even sticking to geometry, how much should be stored as polygons? Should text? Should arcs? Bezier curves? (I would love to have answers to these questions. My point is simply that there're a LOT of them. And it might be hard to fix the square-pad-rotation bug without answering them.) Please test and let me know how things are working. I have compiled all 56 commits (by script) to confirm that they can compile so git bisect will work. That is really good. Perhaps you can lend me your script to run over my PCB+GL stuff ;) I do manual compile tests for each commit before pushing stuff to git HEAD, but don't always test everything after I rebase. while ((i = 0; i 50; ++i)); do git checkout HEAD^; make/dev/null; done (I ran it 2-and-a-bit times to get all 56 commits ;) I did this, scrolled through the output, noted the (two) bad commits, and fixed them both in one rebase -i. I have done a few save/load tests. There does not appear to be any breaks in the file format. Thank you all for your support and testing as I have worked on this over the last month or two. Your efforts are much appreciated. As soon as I get a chance, I'll try running it on some real production board data to verify things look the same. Thanks! I hope it goes well. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
gEDA-user: Nanometer conversion pushed to git head
Exciting news everyone! I have just pushed the nanometer conversion patches to git HEAD. Please test and let me know how things are working. I have compiled all 56 commits (by script) to confirm that they can compile so git bisect will work. I have done a few save/load tests. There does not appear to be any breaks in the file format. Thank you all for your support and testing as I have worked on this over the last month or two. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Bug in 'FreeRotateBuffer()'? (WAS: Re: Line Thickness in Imported DXF Files; Rotating by Arbitrary Angle; UTF-8)
On Mon, Aug 15, 2011 at 11:29:59AM -0700, Colin D Bennett wrote: On Mon, 15 Aug 2011 15:50:23 +0200 Kai-Martin Knaak kn...@iqo.uni-hannover.de wrote: Gus Fantanas wrote: Is it a bug or did I do something wrong when I created the footprint? It is half a bug. Exactly square pads are defined by two points that coincide. There is no orientation attached to this. So PCB assumes the square shape should be aligened along the axis of the grid. After the rotation transform was applied to the two points, they still coincide. Consequently PCB insists to render them like before. The work-around is to make the pads slightly non-square. Then There are rounding glitches, though. If the two points differ by too little distance, the resulting shape renders not quite in the expected angle. Because of this bug (it is completely a bug from the user's point of view), as you suggested I always make my nominally-square pads slightly non-square. Usually by +/- 0.01 mil or +/- 0.02 mil, but that might not be enough for good rotation... hopefully nanometer conversion will improve that significantly with no extra effort for us footprint designers. The problem is that the file-format still saves in cmils. (You can use a text-editor to put the new units in, but then you have problems with backward-compatibility.) But I second this is a bug. It is just a bug with no non-breaking solution. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Nanometer conversion pushed to git head
On Mon, Aug 15, 2011 at 09:47:18PM +0200, Felix Ruoff wrote: Congratulations! Really an impressive work! I found an 'incomplete function' (or bug) with the new coord-entry in the gtk gui: The spinning-arrows just work with mil unit set. Even, when changed to mm and back to mil, they don't work at my short test. Thanks, I didn't see this. The increments stop working when the units are changed. (If you close the dialog, change pcb's units, and re-open it, this will change the spinbox units without breaking it.) And: the line /* FIXME: need to write a coord-entry widget for this */ in gtk/gui-dialog-print.c seems to be 'outdated' ;). Indeed it is: the very next line calls gtk_pcb_coord_entry_new(). I am now going to rebase my (Kai-Martin's) patches for the documentation... Kind regards, Felix Am 16.08.2011 03:34, schrieb Andrew Poelstra: -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Nanometer conversion pushed to git head
On Mon, Aug 15, 2011 at 09:47:18PM +0200, Felix Ruoff wrote: Congratulations! Really an impressive work! I found an 'incomplete function' (or bug) with the new coord-entry in the gtk gui: The spinning-arrows just work with mil unit set. Even, when changed to mm and back to mil, they don't work at my short test. And: the line /* FIXME: need to write a coord-entry widget for this */ in gtk/gui-dialog-print.c seems to be 'outdated' ;). I am now going to rebase my (Kai-Martin's) patches for the documentation... Both fixed in git HEAD. Thanks for reporting it. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Bug in 'FreeRotateBuffer()'? (WAS: Re: Line Thickness in Imported DXF Files; Rotating by Arbitrary Angle; UTF-8)
On Mon, Aug 15, 2011 at 12:17:07PM -0700, Colin D Bennett wrote: On Mon, 15 Aug 2011 19:24:34 -0700 Andrew Poelstra as...@sfu.ca wrote: On Mon, Aug 15, 2011 at 11:29:59AM -0700, Colin D Bennett wrote: Because of this bug (it is completely a bug from the user's point of view), as you suggested I always make my nominally-square pads slightly non-square. Usually by +/- 0.01 mil or +/- 0.02 mil, but that might not be enough for good rotation... hopefully nanometer conversion will improve that significantly with no extra effort for us footprint designers. The problem is that the file-format still saves in cmils. (You can use a text-editor to put the new units in, but then you have problems with backward-compatibility.) Perhaps after the nanometer conversion has been thoroughly run through its paces in mainline pcb for a while, and we feel it is rock-solid, we can add a Preferences option to save .pcb files with coordinates and lengths in nm rather than cmil. My thinking on this is to just not break the file-format anymore until we switch to an extensible one. At that point we'll write an importer and exporter to the old format -- and this exporter's output could work with pcb versions back to 2007 (or earlier) just as pcb does now. Perhaps the new file format is too far away. (I for one won't have time to do such a thing until next summer.) But it would be nice if our current .pcb parser had no more cruft to deal with. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: PCB opengl?
On Sat, Aug 13, 2011 at 05:38:10PM +0200, Kai-Martin Knaak wrote: michalwd1979 wrote: Is the pcb opengl branch in the main repository now? Is there any official version of the opengl branch? Yes. Since about two months clone git://git.gpleda.org/pcb.git will give you transparent tracks and polygons :-) BTW, when can we eyxpect an official release, so that openGL trickles down to distro packages? Assuming there are no more major bugs, I will push my metric base-unit changes to git head Monday morning. I would love to see a new version released in 2011. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Commandline option --menu-file
On Sun, Aug 14, 2011 at 06:22:48PM +0200, Felix Ruoff wrote: Hello, I found a commandline option '--menu-file' in the sources (main.c) which seems to be broken. (The expected functionality is given with the option --pcb-menu). Even this other option is untouched in lesstif, and in Gtk, ignored if gpcb-menu.res or ~/.pcb/gpcb-menu.res. Do you think the same like me that this code can be removed? I appended two patches: 0055: Removes this commandline option 0056: Removes a variable from the SettingTypePtr which seems to be unused. Please give me some feedback, if I can check this patches in (or do it yourself) or if you see problems this patches introduce. I agree with this. The Media variable isn't used, it should be gone. Ditto for the --menu-file option. Honestly, we should probably get rid of --pcb-menu as well, unless someone wants to put in the effort to: 1. Unify lesstif/gtk handling of it. 2. Make it take precedence over the hardcoded pcb-menu/gpcb-menu.res -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: PCB option --minimum polygon area
On Sun, Aug 14, 2011 at 07:18:02PM +0200, Felix Ruoff wrote: Hello, as said before, I am working on Kai-Martins patch for the command-line options. I am nearly ready with modifying his patch that it will fit to actual git head. I have a question to the option '--minimum polygon area': What is the unit of the value? Is this in square* (where * is mm, mil, ...)? How should one give the unit for this option? I think it's in square base units. This can't be changed since pcb doesn't know how to convert square units. This is the only variable that would need such a thing. Peter C. has hinted at getting rid of IsleArea entirely, but I don't think there is any progress toward this goal. It is only used in MorphPolygon. (And: why is this option without minus-sign (-) between the words? Is this on purpose?) Looks like an accident. It might have been done to prevent people using it. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: PCB nanometer git tree
On Wed, Aug 10, 2011 at 04:04:47PM -0700, Andrew Poelstra wrote: Hey all, I have a pcb branch available here for testing: git clone git://wpsoftware.net/pcb-andrew.git git checkout coord6 You can now pull branch coord7 (from the same repository). It includes all the changes discussed thus far: - fix IsPointOnArc (DJ: DRC failure) - fix report.c (DJ: bad drill-report spacing) - fix report.c (me: segfault on arc object report) - fix lesstif_logv (DJ: bad DRC output) - fix lesstif mm/mil menu, make MARK_SIZE unit-agnostic (all DJ again) - fix LARGE_VALUE overflows (Colin: selecting multiple objects is weird) And I think Karl Hammar's segfault-on-doc-compile is fixed. If not, please let me know! All tests pass EXCEPT hid_png3 fails with a single-pixel error. This is just a rounding anomaly and I think I should change the test. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: PCB nanometer git tree
On Fri, Aug 12, 2011 at 11:31:39PM +0200, Karl Hammar wrote: Andrew Poelstra: On Thu, Aug 11, 2011 at 09:30:34PM +0200, Karl Hammar wrote: ... -#define LARGE_VALUE(LONG_MAX / 2 - 1) /* maximum extent of board and elements */ +#define LARGE_VALUELONG_MAX /* (LONG_MAX / 2 - 1) maximum extent of board and elements */ ... Why do you want to use only half the range? So that the width of a max width box can be calculated as LARGE_VALUE - (-LARGE_VALUE) without overflow, Hmm, wouldn't it be better to use unsigned here? No, because we store deltas a lot as Coords. In the .pcb format the contents of elements (footprints) are stored relative to the mark, which are often negative. Ditto for the r/phi display in the GUI. These are all Coord units. [snip] Isn't that most easily fixed by using a wider type during addition? Yes, but we might not have a bigger int. [snip] Well, not any great consern, just thinking aloud. I hope it isn't a great concern. If it is, we will eventually have to address the issues you raise. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: PCB nanometer git tree
On Fri, Aug 12, 2011 at 11:53:52PM +0200, Karl Hammar wrote: Andrew Poelstra: ... You can now pull branch coord7 (from the same repository). ... And I think Karl Hammar's segfault-on-doc-compile is fixed. If not, please let me know! (Using ./autogen ./configure --with-gui=lesstif make clean make) The segfault is gone, but the missing share dir is still there, and a rangecheck error: ... gawk -f ./ascii2texi.awk ncol=3 wire_size.tab wire_size.texi ../src/pcb -x png --only-visible --font-path ../src --outfile pad.png pad.pcb sh: /var/home/karl/Net/Hmm/git/pcb-andrew/src/../share/pcb/ListLibraryContents.sh: No such file or directory Can't change working directory to '/var/home/karl/Net/Hmm/git/pcb-andrew/src/../share/pcb/newlib' ... /usr/bin/ps2pdf `gawk 'BEGIN{s=8}; /BoundingBox/ {printf(-r%d -g%dx%d, s*72, s*$4, s*$5);}' pad.eps` pad.eps pad.pdf Unrecoverable error: rangecheck in .putdeviceprops make[2]: *** [pad.pdf] Error 255 rm pad.eps make[2]: Leaving directory `/var/home/karl/Net/Hmm/git/pcb-andrew/doc' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/home/karl/Net/Hmm/git/pcb-andrew' make: *** [all] Error 2 Cool, I see it now when compiling on a 32-bit system. It is caused by the BoundingBox attribute of the .eps files, which is written in 1/72. To do this, the code multiplies by 72 and then outputs in inches -- as you can imagine, storing 72 or 144 inches in nanometers causes overflows! Fixed in pcb-andrew/coord7. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Version compatibility between gschem and PCB
On Thu, Aug 11, 2011 at 10:40:51AM -0400, John Hudak wrote: I came across an board layout file that requires a newer version of PCB than I have installed. My version of PCB is 20091103. If I upgrade to the most recent version of PCB, will it be able to interoperate with gschem 1.6.1.20100214? The programs aren't really linked. What do you mean by interoperate? In any case, the only file format change from 2007 to 2010 was to add holes in polygons. I can't imagine gschem would know or care about this. Also, a clarification of terminology for me is needed. The PCB website ([1]http://pcb.gpleda.org/) lists a number of 'snapshots'..are these beta releases or are they the most recent releases for distribution? The snapshots are official releases -- at least, they are what appear in distributions. I believe they are called as such because we ran out of version numbers at 1.99z and haven't decided what to do about it. Another related question. I am running gschem and PCB under Ubuntu 10.10, Maverick Meerkat. Are there any issues in upgrading PCB for this version of Ubuntu? Not that I know of. I have an Ubuntu 11.04 box on which pcb seems to work. I rarely use it there, though. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: PCB nanometer git tree
On Wed, Aug 10, 2011 at 01:07:48PM -0700, Colin D Bennett wrote: On Wed, 10 Aug 2011 16:04:47 -0700 Andrew Poelstra as...@sfu.ca wrote: Please test this and let me know what needs to be done. Thanks! OK, I have noticed one bug. If I draw some lines on a copper layer, two strange things occur: (1) When I click on a line, it becomes highlighted and is selected. If I then click another line, it is also highlighted, but the first line remains highlighted as well. Every line clicked adds to the set of highlighted lines. I can, however, deselect a line by Shift-clicking it. Still happens to me on pcb-20100929-RELEASE after: ./autogen.sh ./configure --with-gui=lesstif --disable-doc --enable-maintainer-mode make clean /dev/null make /dev/null I don't know what to make of this. I guess a fresh clone is next... -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: PCB nanometer git tree
On Thu, Aug 11, 2011 at 10:44:42AM -0700, Andrew Poelstra wrote: Still happens to me on pcb-20100929-RELEASE after: ./autogen.sh ./configure --with-gui=lesstif --disable-doc --enable-maintainer-mode make clean /dev/null make /dev/null I don't know what to make of this. I guess a fresh clone is next... Never mind. I was compiling and running from different directories. The bug is indeed a result of the nanometer code. It appears in commit: [8df4fbf0eaf669929bc4ba49062a573df1dac986] *** CONVERT PCB'S BASE UNITS TO NANOMETERS *** so I think it is an overflow. Thank's for reporting it. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: PCB nanometer git tree
On Thu, Aug 11, 2011 at 09:30:34PM +0200, Karl Hammar wrote: It seems to work after this patch also: You mean your cannot compile docs bug? I cannot reproduce that now, nor could I when you reported it. /// diff --git a/globalconst.h b/globalconst.h index 6599823..12c0592 100755 --- a/globalconst.h +++ b/globalconst.h @@ -60,7 +60,7 @@ /* --- * some limit specifications */ -#define LARGE_VALUE(LONG_MAX / 2 - 1) /* maximum extent of board and elements */ +#define LARGE_VALUELONG_MAX /* (LONG_MAX / 2 - 1) maximum extent of board and elements */ #defineMAX_LAYER 16 /* max number of layer, check source */ /* code for more changes, a *lot* more changes */ /// A Coord is a typedef for long, and a long is signed type. Its range is LONG_MIN to LONG_MAX, where $ grep -- -LONG_MAX /usr/include/limits.h # define LONG_MIN (-LONG_MAX - 1L) on a typical 2's complement machine. Why do you want to use only half the range? So that the width of a max width box can be calculated as LARGE_VALUE - (-LARGE_VALUE) without overflow, and so that two maximum widths can be averaged as (x + x) / 2. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: The difference in pcb gerber and gerbv gerber
On Thu, Aug 11, 2011 at 03:21:24PM -0500, kqt4a...@comcast.net wrote: If I produce a layout in pcb and export the gerber files then load the gerber files into gerbv and export once again as gerber I get two different files I have been reading http://www.excellon.com/manuals/program.htm trying to understand but I am a bit lost Could someone throw me a bone gerbv and pcb are separate programs with separate gerber export code. How serious is the discrepancy? -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: This patch is breaking compile
On Wed, Aug 10, 2011 at 01:25:35PM -0500, kqt4a...@comcast.net wrote: [Jun 25 patches from https://bugs.launchpad.net/pcb/+bug/699497] [compilation error in gcode.c] Other than 'Don't do that' any suggestions? Ask Traumflug nicely to rebase his patches on current git again? It would be nice if a dev could take the time to review and commit these patches. They've been hanging around the tracker forever and reflect poorly on our willingness to work with new developers. Having said that, I certainly don't have time. ;) -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
gEDA-user: PCB nanometer git tree
Hey all, I have a pcb branch available here for testing: git clone git://wpsoftware.net/pcb-andrew.git git checkout coord6 which uses the new unit-handling code, including a metric base unit. There are probably huge glaring bugs in this. Please let me know if you see them. (Note that you need to checkout branch coord6. There is also a coord5 branch -- this is NOT the same coord5 that existed the last time I posted the link. Please re-clone. Trying to do a pull will likely result in grief.) New features not in mainline pcb (yet): 1. Nanometer precision. No more rounding errors. Probably there will be overflow errors though. I'm working on it. 2. You can tack a unit suffix onto pretty much anything that makes sense, including command-line options, .pcb contents and dialog box inputs. 3. Coordinate inputs now have a customize spinbox that handles units. You can type in different units than the default and they will roll with it. You can also convert to different units by right-clicking and choosing Change Units submenu. 4. All these can be used as display units. The mm/mil button will only give you mm and mil, but to access the others just type :SetUnits(in) for example. 5. Grid setting is saved in the .pcb via the PCB::grid::unit attribute. 6. All units are available in BOM and gcode exporters. 7. Numerous code cleanups. Please test this and let me know what needs to be done. Thanks! -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Constraint-based PCB footprint design
On Mon, Aug 08, 2011 at 10:48:19PM +0100, Peter Clifton wrote: On Mon, 2011-08-08 at 03:47 +0100, Rob Spanton wrote: The tool is by no means complete... it's the result of just a few hours work right now. Anyway, I hope either the tool or the concept of the tool might be of use to at least some in the gEDA community. Certainly a feature like this will be a work of awesome when it is complete. I've wanted such a feature (to use) for a LONG while, and never got around to quantifying just what it would look like. I've been thinking about grid-less board routing recently (which is in some ways similar), and 'm really glad to see you've started this tool. What would be the prereqs for this becoming an official part of the gEDA suite? Assuming it gets past the couple hours worth of hacking phase, that is. It looks like it will, given the enthusiasm on the list. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer selective DRC
On Sat, Aug 06, 2011 at 11:16:11PM +0200, Kai-Martin Knaak wrote: The procedures with no_drc look unchanged. I still don't see a way to make this work. I give up and write a bug report. Bump. (Whenever I get a chance, if you have not reported this, then I will. But that might not be for a while and I do not want to forget about this.) -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer selective DRC
On Sat, Aug 06, 2011 at 05:23:59PM +0200, Kai-Martin Knaak wrote: The continue statement completely messes the DRC check. I get more violations with PCB::skip-drc than without. Seems like the if-statements have some side effect that should not be skipped. What does the r_search line actually do? The comment in rtree.h says, this function returns true if something is found in a region given by the parameters. But in the context of find.c the result of the r_search() does not seem to be used: info.layer = layer; /* add touching lines */ if (setjmp (info.env) == 0) r_search (LAYER_PTR (layer)-line_tree, (BoxType *) info.pv, NULL, LOCtoPVline_callback, info); else return true; Does r_search() change any aspect of the parameters it gets? r_search does not, directly. But if it finds something, it calls LOCtoPVline_callback, which might. It definitely modifies global state. Probably there is a counter or something. Everything is hidden behind macros. I had a similar bug in cleaning up LineLineIntersect. It changed the number of DRC errors on my stereo bike from 10 to ~50. In the end I did not understand the bug or how it worked -- I only found the place where I had changed the code's behavior accidentally. What is the logic behind the if statement? That is, what is it supposed to mean if inf.env does equal zero or contains some other value? Sorry for being such a programming noob. My hacking skills are pretty under developed. I really wish we were not using setjmp/longjmp. They are essentially global goto statements -- setjmp stores the stack frame and instruction pointer (environment) in the given variable, and longjmp restores it. setjmp returns zero when you first call it. But when restoring the stack frame, it returns 1, so that we don't get an infinite loop. They make even experienced programmers very nervous. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer selective DRC
Kai, just for fun, you might want to try with the nanometers branch: git clone git://wpsoftware.net/pcb-andrew.git checkout branch coord5. If you don't want the actual conversion, checkout coord5^. It has a fairly cleaned-up find.c that should behave the same way, but be a little easier to trace. A quick status update: I am working on bug 699640. It is fixed in gtk but not lesstif on my laptop. When I finish that I'll do some quick tests and post an excited nanometers conversion done please test so I can push !!! post. I am busy this weekend, so probably early next week. You can run git log coord5 --not master to see the specific commits I've been doing over the last month or so. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer selective DRC
On Sat, Aug 06, 2011 at 11:16:11PM +0200, Kai-Martin Knaak wrote: Andrew Poelstra wrote: Kai, just for fun, you might want to try with the nanometers branch: git clone git://wpsoftware.net/pcb-andrew.git I did and it compiled right away. checkout branch coord5. Initially, the crosshair snapped to about four positions on the canvas. After I tried the unit button and grid settings, the cross hair stuck to the edge of the canvas. I'm not sure how much of this is crosshair trouble, and how much is the pcb being the wrong size. But with lesstif things are a fair bit better. If you don't want the actual conversion, checkout coord5^. The coord5 binary presented a working crosshair. Large text in silk renders funny with this version. See attachment. Cool. Looks like an overflow. It has a fairly cleaned-up find.c that should behave the same way, but be a little easier to trace. The procedures with no_drc look unchanged. I still don't see a way to make this work. I give up and write a bug report. :( -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer selective DRC
On Fri, Aug 05, 2011 at 07:28:34PM +0200, Kai-Martin Knaak wrote: Kai-Martin Knaak wrote: Unfortunately, current git head of PCB enters an infinite loop if the attribute is set correctly. The attached patch fixes this bug. Now, DRC does indeed ignore the layers marked by the attribute. ( I triple checked ;-) Well, it was working for a smallish pet project. Unfortunately, it still fails in a similar way for my real project (the large one). As a workaround, I tried to temporarily remove all tracks from the layers I don't want to apply the DRC check to. But this breaks connectivity and DRC gets swamped by false positives. Looks like I am running out of options... Maybe, PCB::skip-drc can be made to work, after all. I was able to narrow down the code path for the entry into the endless loop. It is a continue statement in LookupLOConnectionsToPVList() in the middle of find.c . See below. The offending lines are marked with an exclamation mark at the start of the line. Anyone got an idea, what might be the correct way to skip here? /from pcb/src/find.c static bool LookupLOConnectionsToPVList (bool AndRats) { Cardinal layer; struct pv_info info; /* loop over all PVs currently on list */ while (PVList.Location PVList.Number) { /* get pointer to data */ info.pv = *(PVLIST_ENTRY (PVList.Location)); EXPAND_BOUNDS (info.pv); /* check pads */ if (setjmp (info.env) == 0) r_search (PCB-Data-pad_tree, (BoxType *) info.pv, NULL, LOCtoPVpad_callback, info); else return true; /* now all lines, arcs and polygons of the several layers */ for (layer = 0; layer max_copper_layer; layer++) { ! if (LAYER_PTR (layer)-no_drc) ! continue; info.layer = layer; ... Hmm, at a glance this looks okay. Can you change the loop to dump some debug code before each continue, like, say, if (LAYER_PTR (layer)-no_drc) { fprintf (stderr, Skip layer %d, max %d, (PVL.L %d, PVL.N %d) continuing...\n, layer, max_copper_layer, PVList.Location, PVList.Number); continue; } Then above and below the for loop add puts (enter FOR); ... puts (exit FOR); and similar for the while() loop. That should tell you a bit more about how this loop is happening. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Linux Desktop für gEDA
On Fri, Aug 05, 2011 at 12:35:38PM -0700, yamazakir2 wrote: Do you guys use your linux box for general desktop usage or only EDA? I ask because I have tried many times to make the switch to linux for general desktop usage but can't get over the inconvenience of it. I have a linux box specifically for EDA (gschem, pcb, spice simulations, etc), so I couldn't care less what the WM is. It could be motif for all I care. Just Linux, going on ten years now. Interesting that you call it inconvienent. Perhaps with the default window managers (KDE 3/4 and Gnome 2/3 all seem hard to navigate by keyboard, while Win7 is excellent IMHO). And being nearly all Linux software is uselessly named, I would imagine finding programs to be a pain at first...only at first though. But having find/grep/sed/cat/awk/gcc/git/vi/ssh/sftp/mutt all at my fingertips more than makes up for that. Plus all my music is in FLAC or OGG format. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Layer selective DRC
On Fri, Aug 05, 2011 at 02:05:14PM -0400, DJ Delorie wrote: Yup, namespaces. Each app/module/whatever should have its own namespace, although I'm not picky about the syntax as long as it's consistent. PCB::grid-units grid::units etc. It makes sense for all of PCB's built-in ones to use PCB:: leaving other namespaces for plugins and external apps. I am going to use PCB::grid::unit if nobody has any complaints. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Linux Desktop für gEDA
On Thu, Aug 04, 2011 at 08:08:31PM +0200, Markus wrote: What desktop are you using for gEDA? I use wmii. Evidently this is the worst place you could have asked.. ;) -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: [PATCH] Fix distance display in lesstif HID.
On Mon, Aug 01, 2011 at 04:51:51PM +0200, Gabriel Paubert wrote: Hi, in src/did/lesstif/main.c, the Distance function is called with the parameters in the wrong order. This small patches fixes the problem. I still think that the format is wrong, or at least the rounding to integer mm/mil taking only the grid into account, but I've not yet decided on how to fix it. The worse is that often the display is wrong because the decimal part is truncated (displaying say -24 between two grid points on a 5mil grid). Thanks, Gabriel. I have pushed your fix. In future, when I convert the lesstif HID to allow arbitrary user units, I will use the default precision for pcb-printf. This will be 0 for cmils, 2 for mils, 4 for mm, etc. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: New line-snapping feature for PCB - please try it!
On Sun, Jul 24, 2011 at 11:31:52AM +0100, Peter Clifton wrote: On Sun, 2011-07-24 at 01:37 +0200, Kai-Martin Knaak wrote: Peter Clifton wrote: adding a feature for snapping to off-grid points along the body of a track. Sounds good, but I don't quite understand the details. Where exactly are these points? Try it and you will see ;) Basically, when you're over the line, the snap code picks the nearest grid point to where your mouse pointer is, then casts out from it in vertical, horizontal and both 45 degree angles in between, until it hits the line your mouse pointer is over. Any of the intersections between the cast lines and the line you're over will snap - the closest to your mouse pointer is choesen. My first impression is that I like it. Now I can draw certain lines on very fine grids and not have to worry when working on coarser ones. The old behavior was very frustrating. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Recap of remaining metric-conversion work
On Sun, Jul 24, 2011 at 11:43:31AM +0100, Peter Clifton wrote: On Sun, 2011-07-24 at 08:33 -0700, Andrew Poelstra wrote: This causes no regressions, though if you are playing with grids you may need commit #2 below, which does cause regressions. I've not been working with the grid really - just the FitCrosshairIntoGrid function in crosshair.c. (Incidentally - this doesn't really do what it says in the function name.. evaluating GRIDFIT_X and GRIDFIT_Y on the mouse pointer position is only a tiny aspect of what it does, the rest involves snapping to various different kinds of objects. I have pushed my first commit. Rebasing my work causes merge failures in three files (action.c, crosshair.c, fontmode.c). I'll let you know if there's anything serious. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Recap of remaining metric-conversion work
On Sun, Jul 24, 2011 at 05:15:15PM +0100, Peter Clifton wrote: On Sun, 2011-07-24 at 18:37 -0700, Andrew Poelstra wrote: I have pushed my first commit. Rebasing my work causes merge failures in three files (action.c, crosshair.c, fontmode.c). Probably mostly just some fixes I made for compiler warnings. I am plodding away at refactoring the event coordinate conversion for the GTK HID though, and that could potentially conflict a bit. I'm trying to use the new types where applicable though - so I hope resolving the conflicts should just be a matter of checking whether I did anything stupid with my changes. Looks good. Nearly all the conflicts were my changing LocationType to Coord where you changed the variables themselves. I did make one real change, though: I moved crosshair_sq_dist() to SquareDistance() in misc.c, to be with the Distance() function. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: PCB: Documentation for command-line options (unit-changes)
On Sun, Jul 24, 2011 at 10:00:08PM +0200, Felix Ruoff wrote: Hello everybody, I am actually working on Kai-Martins patch for the command-ine options he suggested in http://thread.gmane.org/gmane.comp.cad.geda.user/29944/focus=30083 Its from April 2010, so there is some work to be done to fit it to the present code-base. While doing this, I got two questions: - What is the actual unit for size-options like '--via-thickness', '--line-thickness'? Is the unit for this setting still 1/100 mil? Or is it possible to give this option with an unit like '--via-thickness 3 mm'? I have in mind, that there were some changes during the last weeks, but I didn't figure out the actual situation. - I realised that the default-value for '--via-thickness' is MIL_TO_COORD(60), (line 487 of main.c) but in line 616 it will be set to MIL_TO_COORD(40) if the given value is over or under a given limit. Is the difference in this sizes done on purpose? I don't think this size difference should be there. It sounds like the default was changed at some point and whoever did it forgot to change the out of range value. We should use the CLAMP() macro to force min/max values rather than ignoring out-of-range values, in my opinion. As for units, there shouldn't really be a default unit. If no unit is given, we will probably go with cmils for the sake of backward compatibility. But we support giving units like --via-thickness 3mm (no space) and that is what should be done. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
gEDA-user: Recap of remaining metric-conversion work
Hey all, On a recent bug report, Peter C. asked for a summary of the remaining work needed for the metric conversion. Here you go: It has been a busy week for me so no progress in the last eight days or so. Even so, it's been a long time since my last update... On my personal branch I have made a fair bit of progress that has not been pushed. I don't want to publish these changes yet because I'm still reordering and revising them. Another reason not to push is that I have converted PCB.Grid and Settings.Grid from double to Coord (an integer unit). This causes -severe- rounding errors for people using metric grids with cmil base units. Anyway, here are the commits I have made but not pushed: 1. Introduce Coord and Angle units, set a bunch of BDimension, LocationType and int variables in global.h to one of these. Convert pcb-printf to use these (including adding %ma spec to print angles). 2. Convert grid units to Coord. Set mm/mil autodetect code to look for multiples of 127nm (see bug lp-811393), though I doubt this will work properly with cmil base units. 3. Add scale-factor lookup functions to pcb-printf and make GetValue use this instead of its own table. Now there is only one table of units, in pcb-printf.c, and everything should be using it. 4. Upgrade unit structures in pcb-printf. Now units have a real suffix that pcb uses internally and in file.c, and an internationalized copy of the same suffix. Also, there are 5 step values for GUI spinboxes to replace the mess of arbitrary mm/mil dependent steps used by Gtk. Finally, there is a new structure for the stuff in the Increments tab under Gtk preferences. There is no way to edit this. The Increments tab is still defunct (see bug lp-699464) and I have removed --grid-increment-mm, etc, from the command-line options. 5, 6. Minor cleanups in main.c, gpcb-menu.res, that I missed in my old unit-macro patches. 7. Remove Settings.grid_unit_mm, support arbitrary units instead. The grid_units_mm flag is now emulated, along with the new grid_units_mil flag. This is so the GUI menu checkboxes still work. There is no visible change by this except that you can do SetUnits(in), say, with any unit supported in pcb-printf. No way to save this in file-format, though (see lp-811393 again). This is why I stuck default precision values, spinbox steps, increments, etc, in pcb-printf. The GUIs no longer assume the user will only use mm or mil. (They really have no clue what's in that pcb-printf table. In principle we could allow the user to introduce his own units to the table and it would work.) You can also use the command-line flag --grid-units. Pass this any supported suffix. --grid-units-mm does not work. 8. Tell file.c to use %mr, make %mr only output unsuffixed cmils. This is because the %mc [cmil, no suffix] specifier internationalizes its output, whereas %mr is designed to be consistent. 9. Audit undo.[ch], thermal.c, set.[ch], rubberband.c for proper unit handling, introduce Coord type. 10. Update hid/gtk/gui-config.c to read new --grid-units command-line option. (Didn't realize this was necessary before.) REMAINING WORK In principle, just audits. The ones I have done so far have been quick and easy, essentially just replacing LocationType/BDimension with Coord, using Angle, using NormalizeAngle() and Distance() instead of repeating code. Nothing deep. I may even have been done by now except that when auditing search.c, I found the arc-intersection problems that lead to a recent long thread on this board. When I get a free moment (probably not till tomorrow) I will just post a bug report and move on, fixing the unit handling without fixing the actual algorithm. I expect that aside from that, everything left will be easy. I just need to spend some time and git'er'done. After all the source has been audited, I can commit the small changes to const.h that actually do the conversion. Then I'll push and you guys can jump on me for all the bugs I've caused. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: Recap of remaining metric-conversion work
On Sat, Jul 23, 2011 at 06:47:23PM +0100, Peter Clifton wrote: On Sat, 2011-07-23 at 19:38 -0700, Andrew Poelstra wrote: Anyway, here are the commits I have made but not pushed: 1. Introduce Coord and Angle units, set a bunch of BDimension, LocationType and int variables in global.h to one of these. Convert pcb-printf to use these (including adding %ma spec to print angles). Oops, I've just been playing with the grid snap code and no doubt introducing additional uses of LocationType which you will need to fix up. Any chance you could push this one ASAP, or does it cause regressions? This causes no regressions, though if you are playing with grids you may need commit #2 below, which does cause regressions. In any case, I will push the first commit so that others will have the Coord and Angle units for their work. 2. Convert grid units to Coord. Set mm/mil autodetect code to look for multiples of 127nm (see bug lp-811393), though I doubt this will work properly with cmil base units. Unlikely I would imagine. 3. Add scale-factor lookup functions to pcb-printf and make GetValue use this instead of its own table. Now there is only one table of units, in pcb-printf.c, and everything should be using it. 4. Upgrade unit structures in pcb-printf. Now units have a real suffix that pcb uses internally and in file.c, and an internationalized copy of the same suffix. Is there any use-case for I18N suffixes? I would imagine units are pretty much universal and language agnostic - unless you are spelling them out, e.g. mètre (French) vs. metre (English) / meter (American). The Gtk GUI uses _(mm) and _(mil) in its current code. I did not want to change this, so I internationalized all the units. Whether there is any actual justification, I don't know. In principle, just audits. The ones I have done so far have been quick and easy, essentially just replacing LocationType/BDimension with Coord, using Angle, using NormalizeAngle() and Distance() instead of repeating code. Nothing deep. I may even have been done by now except that when auditing search.c, I found the arc-intersection problems that lead to a recent long thread on this board. When I get a free moment (probably not till tomorrow) I will just post a bug report and move on, fixing the unit handling without fixing the actual algorithm. Always *BLEEPING* arcs which cause grief. If you could describe a perfect circle with B-Splines, I would be up for killing the arc primitive and replacing it with something a little more robust (unique) in how it may be defined. I think we need to convert stretched arcs to elliptical arcs internally when reading files to avoid angle inconsistencies, and link in a proper mathematical library to look for distances and intersections. That would probably eliminate a lot of grief beyond this one problem. But I also think that is a project for another day, unless we can find a volunteer to work on it... I expect that aside from that, everything left will be easy. I just need to spend some time and git'er'done. After all the source has been audited, I can commit the small changes to const.h that actually do the conversion. Then I'll push and you guys can jump on me for all the bugs I've caused. I'm looking forward to opening my mm designs with a mm grid and not chasing lost of off-grid gremlins ;) As am I :) Let me know if I can be of any help. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: PCB segfaults on click in netlist window
On Mon, Jul 18, 2011 at 01:04:10AM +0200, Kai-Martin Knaak wrote: Hi. With my current project PCB sefaults reproducably. It crashes when I click on one of the node items on the right column of the netlist window. Curiously, everything is fine if I click on the right column for the first time in a session. The cross hair jumps to where the node happens to be on the canvas and everything looks fine. But when I try this trick again (with a different node), PCB segfaults instantly. There is nothing on the command line except for the string Segmentation fault. Fixed in 0c2f7e77. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: PCB segfaults on click in netlist window
On Mon, Jul 18, 2011 at 01:04:10AM +0200, Kai-Martin Knaak wrote: Hi. With my current project PCB sefaults reproducably. It crashes when I click on one of the node items on the right column of the netlist window. Curiously, everything is fine if I click on the right column for the first time in a session. The cross hair jumps to where the node happens to be on the canvas and everything looks fine. But when I try this trick again (with a different node), PCB segfaults instantly. There is nothing on the command line except for the string Segmentation fault. It does not seem to matter, which node I choose. PCB from git-head shows the same behavior as v20100929 distributed by debian/testing. I cannot reproduce with other layouts of mine, though. My current is bit larger than usual. Size of the layout is 2.4 MB. Probably larger than the list allows. I attached the netlist (53 kB) Anyone else seen this? Is this a known bug? I can reproduce it with the netlist you attached (and the pcb by the same name that you have posted on a few other bugs). I haven't seen it before. It happens consistently with 20100929 and git head. I'll look into it. Please post it on the tracker. If it is, as Ethan Swint suggests, the same as the invalid free bug we saw a few weeks ago, this is great news. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: PCB segfaults on click in netlist window
On Mon, Jul 18, 2011 at 01:04:10AM +0200, Kai-Martin Knaak wrote: Hi. With my current project PCB sefaults reproducably. It crashes when I click on one of the node items on the right column of the netlist window. Curiously, everything is fine if I click on the right column for the first time in a session. The cross hair jumps to where the node happens to be on the canvas and everything looks fine. But when I try this trick again (with a different node), PCB segfaults instantly. There is nothing on the command line except for the string Segmentation fault. It does not seem to matter, which node I choose. PCB from git-head shows the same behavior as v20100929 distributed by debian/testing. I cannot reproduce with other layouts of mine, though. My current is bit larger than usual. Size of the layout is 2.4 MB. Probably larger than the list allows. I attached the netlist (53 kB) Anyone else seen this? Is this a known bug? It looks like our support for heirachical netlists is broken. When looking up the selected net name in the list, pcb looks through all named nets, expecting each to have an associated list of pins. When it hits B/, which is not a net but a category, it gets a NULL pointer for the pin-list and blithely dereferences it, hence the crash. You can get the same result with the netlist safenet C1-2 danger/dangernetC1-1 if you click around in the list. The fix will be to restructure node_get_node_from_name() in hid/gtk/gui-netlist-window.c, which does the offending lookup, to recursively search the list rather than iteratively. Interesting that no one has noticed this before... -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: pcb GL can't render stretched arcs
I am using the polar form of the ellipse given at: http://en.wikipedia.org/wiki/Ellipse#Polar_form_relative_to_center with theta the angle of the point we are checking. (Those cos and sin calculations are easy, just delta-x/len and delta-y/len.) With that I can calculate the distance from the point to an ellipse. Restricting this to an ellipse /segment/ is tricky, since as DJ pointed out, these are not real elliptical arcs, but stretched arcs, so the limiting angles do not correspond directly to actual angles. Adding explicit checks for distance from endpoints would give us an almost-correct solution. There are still pathologies I can think of with arcs whose thickness (or thickness + search radius) is greater than the minor axis, though.. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: pcb GL can't render stretched arcs
On Fri, Jul 15, 2011 at 09:45:42PM +0200, Karl Hammar wrote: Andrew Poelstra: I am using the polar form of the ellipse given at: http://en.wikipedia.org/wiki/Ellipse#Polar_form_relative_to_center with theta the angle of the point we are checking. (Those cos and sin calculations are easy, just delta-x/len and delta-y/len.) With that I can calculate the distance from the point to an ellipse. The shortest line from (x,y) to the ellipse goes through the normal to the ellipses perimeter. Ohh... of course. Darn. The normal does not generally go through the middlepoint of the ellipse. It crosses the line between the center and the nearest focal point. What you get with the above polar calculation is a little bigger value than the true distance, but it could serve as a first aproximation. You could take the minimum of the polar form through the center and through the focus, to get a better value. How accurate an value do we need, would minimum of ±5% and ±0.1mm be ok ? I suspect that determining an error bound on my method would be just as difficult (mathematically) as finding a different method. There is a fairly informative discussion of this problem on SO: http://stackoverflow.com/questions/2945337/how-to-detect-if-an-ellipse-intersectscollides-with-a-circle The correct methods given there generally require root-solvers, and I don't think we have one right now. We could throw one together or introduce a dependency on, say, the GNU Scientific Library. Since we rarely care about the exact distance, only is it between 0 and Radius it is probable that we could use a bisection method with very few iterations to get an answer. Restricting this to an ellipse /segment/ is tricky, since as DJ pointed out, these are not real elliptical arcs, but stretched arcs, so the limiting angles do not correspond directly to actual angles. ... Isn't that a bug to be fixed instead? It's a design flaw, but fixing it would break existing designs. -- Andrew Poelstra Email: asp11 at sfu.ca OR apoelstra at wpsoftware.net Web: http://www.wpsoftware.net/andrew/ ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user