/
ChangeLog
17657 lines (11880 loc) · 730 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
This ChangeLog is automatically generated from git commit messages
during the snapshot process. See README.snapshots and utils/git2cl.
2011-09-18 DJ Delorie * dj AT delorie dot com *
* po/POTFILES.in: Remove src/hid/common/hidgl_package_vrml_y.c from
POTFILES.in Reverts 61bd0cb1e134bbea96abd6fd2d5fb94d09c0b3c8 as this file
doesn't exist in this repository, causing a distcheck failure.
2011-09-18 DJ Delorie * dj AT delorie dot com *
* : Update golden files for nanometers hid_png3 was off by a pixel on a line end. I retested my UV and TT
films to verify that the nanometers conversion didn't affect line
*widths* and updated the golden file to accept this one-pixel
difference.
2011-09-17 DJ Delorie * dj AT delorie dot com *
* src/action.c: [windows] use unix-style path separators when
calling gnetlist
2011-09-17 Felix Ruoff * Felix AT posaunenmission dot de *
* : commit 70db91fc3dfb8b378962794fc8f86f71b52f7af8 Author:
Kai-Martin Knaak * kmk AT lilalaser dot de * Date: Fri Sep 16
01:07:32 2011 +0200
2011-09-16 Kai-Martin Knaak * kmk AT lilalaser dot de *
* doc/pcb.texi: remove panner control from documentation There is no panner control in the GUI (anymore?) since at least five
years. this pathc removes its description from the texi manual.
2011-09-17 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/file.c, src/main.c: Don't adjust the Library command settings
if they are NULL, or an empty string. (The empty string part is a fixup for commit
31df66e87a810aac852139da9119b15c47fa8c71 - this will teach me for bikeshedding) The NULL part should fix bug lp-852598 Closes-bug: lp-852598
2011-09-17 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/file.c, src/main.c: Bikeshed commit
11700ba8c3c951a788c8190073eb09822060dfdd I don't like magic strings, and IMO, using a blank
LibraryContentsCommand string to imply "don't use this feature" is
better than "*NONE*".
2011-09-17 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-top-window.c: hid/gtk: Set the LC_NUMERIC locale
to "C" rather than "POSIX" This value is supported on Win32 platforms, whereas "POSIX" doesn't
appear to have any effect. This was one possible way to fix the "zoom doesn't work" bug on
Win32 for locales which use "," as the decimal separator. DJ fixed the Zoom action to be locale independent in commit
fd5399c67b988f2f7c9d1a0b4ab7c13bc2e95158, which worked around the
problem for this particular action, but I feel it would be best that
we made our locale handling consistent between Linux and Win32 as
well. Affects-bug: lp-843577
2011-09-08 Dima Kogan * dima AT secretsauce dot net *
* src/djopt.c: fixed an instance of the "only-optimize-autorouted"
flag being ignored Signed-off-by: Dima Kogan * dima AT secretsauce dot net *
2011-09-16 DJ Delorie * dj AT delorie dot com *
* src/file.c, src/main.c: Skip the M4 library on Windows On Windows, set the LibraryContentsCommand to the magic string
"*NONE*" and check for that string while loading the libraries.
This avoids the windows pcb.exe from trying to run bash or m4
scripts, which are normally not available, yet allows the user a way
to re-enable them if they want.
2011-09-16 DJ Delorie * dj AT delorie dot com *
* src/hid/gtk/gtkhid-main.c, src/hid/lesstif/main.c: De-localize
zoom parsing The values used for Zoom() were being parsed with strtod(), which
switches between '.' and ',' depending on locale. Switch to
g_ascii_strtod() which always uses '.' and thus always matches our
actions. Note: I didn't change the command line parsing, because I didn't
think we should impose '.'-centric syntax on other locales.
2011-09-16 DJ Delorie * dj AT delorie dot com *
* lib/generic.list: Add DIL footprint names and R025. Existing tutorials say to use "DIL 16 300" for DIPs (we use "N 16
300") and often call for the R025 footprint, so add them as aliases
so the m4-to-newlib converter includes them.
2011-09-16 DJ Delorie * dj AT delorie dot com *
* lib/m4lib_to_newlib.sh: Fix m4-to-newlib converter filenames The m4 library uses macros and parameters to describe footprints,
which allows for a *very* flexible footprint naming scheme. While
it is impossible for pcb to know all valid footprint values, it does
have a list of "standard" ones, and knows how to obtain those.
However, the m4 to newlib converter wasn't using the same footprint
naming convention as everyone else, so produced *.fp files that
weren't always useful. For example, there were a large number of
300.fp files that all collided. With this fix, the footprint name matches the value in [...] in the
library window, which is what we tell people to use for the
"footprint=" attribute anyway.
2011-09-16 DJ Delorie * dj AT delorie dot com *
* src/hid/lesstif/lesstif.h: Wrap all XmStrings in gettext()
2011-09-15 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* po/POTFILES.in: Add another missing source file to POTFILES.in
2011-09-15 DJ Delorie * dj AT delorie dot com *
* src/main.c: Add locale functions Add textdomain() and setlocale() to connect to our message catalogs.
2011-09-15 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* po/POTFILES.in: Add some missing files to POTFILES.in (And sorted the file contents). Reported-by: Bert Timmerman * bert dot timmerman AT xs4all dot nl *
Affects-bug: lp-846368
2011-09-09 Bert Timmerman * bert dot timmerman AT xs4all dot nl *
* po/nl.po: Updated the Dutch translation.
2011-09-15 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/report.c: report.c: Don't leave actions in the undo stack or
change the user's flags Some actions in ReportNetLength*() would have been lumped in with
whatever actions were next added to the undo stack. These functions
also left the user's board with a different "FOUND" flags on various
items. In the case of the "Report(AllNetLenths)" action, a very long undo
stack would be created, which is not very helpful to the user. These changes hide the internal flag changes made during the net
length calculation from the undo system. We are able to get back to the inital board state because we save
the operations caused by our initial RestConnections() on the undo
stack. After we have done our work (modifying various flags in the
process), we reset the flags again (this time bypassing the Undo
system), so the board is consistent with the ResetConnections() call
we DID save undo data for. We then Undo() these changes before we
leave the function.
2011-09-15 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/report.c: report.c: Return 1 for all failure conditions in
ReportNetLengthByName()
2011-09-14 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/undo.c: undo.c: Add error message where
RestoreUndoSerialNumber() will break things If operations are addded to the undo stack between a call to
IncrementUndoSerialNumber() and a subsequent call for
RestoreUndoSerialNumber(), those added operations will be placed in
the undo stack with an inconsistent serial number. The {Save,Restore}UndoSerialNumber() API is pretty fragile in this
regard, and we should avoid using it where possible. An better alternative might be to implement a
"LockUndoSerialNumber()" call which temporarily disables
IncrementUndoSerialNumber(), and a "UnlockUndoSerialNumber()" call
which re-enables its increment function. Better yet - we could make these functions nestable, so we need not
worry whether some action uses this new feature internally when we
are also using it.
2011-09-14 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/undo.c: undo.c: Handle undo failures in a more sane manner Our current error-case handling can cause serial number
inconsistency when something goes wrong when performing an Undo
operation. There are also various logic flaws in our handling, as it
only catches failures where every sub-undo operation with that
serial number fails. Remove the confusing do-loop which decrements the serial number in
the failure case, and return some sensible error message instead. This patch also removes the code which looked like it was intended
to loop over the undo stack until a serial number was found to
operate on. It is advantageous for code like the DRC to be able to
add increment the undo serial number, then safely perform an Undo -
even if there were no changes logged in the undo system during the
previous serial number. Closes-bug: lp-848509
2011-09-14 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/undo.c: undo.c: Allow undo of locked objects Our internal actions can make changes to locked objects, then use
the undo mechanism to revert these changes. An example is DRC, which
changes flags on objects and uses the Undo system to restore their
original values. Affects-bug: lp-848509
2011-09-14 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/find.c: find.c: Remove stray RestoreUndoSerialNumber() calls These will cause havoc with the undo system, as we don't actually
save a serial number to restore to. Until a commit efd212c1deb264e9a7f2be17e9338fbb60e22cc0 we were
saving a serial number at the start of each "ResetConnections
(true);" call, and it would have been that serial number which got
restored. With this and some other fixes to the undo system, these restores
are no longer required. Affects-bug: lp-848509
2011-09-14 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gtkhid-main.c: gtk: Fix ghid_zoom_view_fit() to work
when the board is flipped. Affects-bug: lp-850311
2011-09-13 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/common/hidgl.c, src/hid/gtk/gtkhid-gl.c: Fixup OpenGL
includes for better compatibility with OSX Not tested ;)
2011-09-13 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* autogen.sh, configure.ac, m4/ax_check_gl.m4, m4/ax_check_glu.m4,
m4/ax_lang_compiler_ms.m4, m4/ax_pthread.m4: Better autoconf tests
for GL and GLU (from GtkGLExt - GPL v2 or later) These tests should give better cross platform support for our build.
2011-09-13 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* .gitignore, m4/.gitignore: Remove the m4 directory from the root
.gitignore file and add its own
2011-09-13 DJ Delorie * dj AT delorie dot com *
* src/hid/lesstif/styles.c: [lesstif] set units for styles dialog in
more places The styles dialog was segfaulting as the units hadn't been set yet,
if you open the style dialog before doing anything with the grid.
2011-09-13 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gtkhid-gl.c: hid/gtk: Remove misplaced (and redundant)
hidgl_flush_triangles() call. If we were to flush the triangle buffer in ghid_show_crosshair(), we
should do it before we set XOR mode on the GL context (assuming the
buffer might be dirty when we are called), and we should do it after
we finish drawing (if we wish to leave the buffer clean when we
return). The location the flush was in before this commit is just plain
wrong. As we currently have flushes of the triangle buffer wrapping the
call to ghid_show_crosshair(), just leave the flushing out of this
function. Does this commit message provide an adequate example of simple
patch, complex commit message phenomenon?
2011-09-13 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gtkhid-gdk.c, src/hid/gtk/gtkhid-gl.c,
src/hid/gtk/gtkhid-main.c, src/hid/gtk/gui-config.c,
src/hid/gtk/gui-output-events.c, src/hid/gtk/gui.h: hid/gtk: Remove
auto-pan feature (kill it with fire). This seems to be fairly universally unpopular on geda-user, and its
implementation is a little fragile, often leading the board to pan
off to some corner of the board as the poor user reaches for the
layer selector or a menu without having remembered to click the
feature off. The fact that the pan direction and speed was set the instant you
leave the drawing window also made it particularly unhelpful. A
proper implementation should have grabbed the mouse - or at least
implemented some buffer zone in which the mouse could be used to
give feedback on the pan direction.
2011-09-11 DJ Delorie * dj AT delorie dot com *
* src/hid/gtk/gtkhid-main.c: [windows] set GDK_PIXBUF_MODULE_FILE If we're using a local gdk-pixbuf installation, we need to set this
env variable to point to it.
2011-09-11 Bdale Garbee * bdale AT gag dot com *
* doc/Makefile.am: Invoke eps2png in $(srcdir), no .
2011-09-12 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/common/hidgl.c: hid/common: Remove #include "draw.h" from
hidgl.c (twice!)
2011-09-11 Dima Kogan * dima AT secretsauce dot net *
* src/hid/gtk/ghid-route-style-selector.c,
src/hid/gtk/ghid-route-style-selector.h, src/hid/gtk/gtkhid-main.c:
Re-ordered all references in the style selector dialog to have one
consistent ordering. Everything that refers to the settings in the style selector dialog
now does so in order of Line thickness Hole size Hole thickness (hole + annular ring)
keepaway region size This wasn't 100% consistent previously, which resulted in a bug
(fixed in a previous patch). This patch doesn't touch the
functionality, but improves the style to avoid future bugs. Modified to apply on recent route style selector changes by Bert
Timmerman. Signed-off-by: Andrew Poelstra (local) * apoelstra AT wpsoftware
dot net * Affects-bug: lp-844635
2011-09-11 Dima Kogan * dima AT secretsauce dot net *
* src/hid/gtk/ghid-route-style-selector.c: Swap via-hole and -ring
size connection in route style selector dialog Closes-bug: lp-844635 Signed-off-by: Andrew Poelstra (local) * apoelstra AT wpsoftware
dot net *
2011-09-10 Andrew Poelstra (local) * apoelstra AT wpsoftware dot net *
* src/hid/gtk/gtkhid-main.c, src/hid/gtk/gui-top-window.c,
src/hid/gtk/gui.h: Repopulate route style selector on PCBChanged
action When loading a new pcb, Bad Things happen to the route style
selector because pcb's route style data is freed. This patch removes
all styles from the route style selector and re-adds them whenever a
new pcb is loaded.
2011-09-10 Andrew Poelstra (local) * apoelstra AT wpsoftware dot net *
* src/hid/gtk/ghid-route-style-selector.c,
src/hid/gtk/ghid-route-style-selector.h: Add
ghid_route_style_selector_empty to GHidRouteStyleSelector
2011-09-10 Andrew Poelstra (local) * apoelstra AT wpsoftware dot net *
* src/hid/gtk/ghid-route-style-selector.c: Add finalize function to
GHidRouteStyleSelector
2011-09-09 Bert Timmerman * bert dot timmerman AT xs4all dot nl *
* po/POTFILES.in: Remove the src/hid/gtk/gui-dialog-size.c entry
from the translatable files list. This is a completion of commit:
a914d5ba58104d8559395b66798b35761afb991a "Replace old route style
selector with GHidRouteStyleSelector" dated 20110903 11:09 PM
2011-09-09 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/ghid-layer-selector.c: hid/gtk: Filter out double
clicks on the layer selector widget This makes things behave a little nicer if you click to toggle a
layer's visibility twice in quick succession. Previously, this would
be interpreted as a double-click, causing an extra synthetic click
event which would toggle the visibility an extra time.
2011-09-07 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-top-window.c: hid/gtk: Update file-changed
notification bar to match gedit a bit more 1. Add a stock "refresh" image to the "Reload" button. 2. Change the message text when the board has modifications. 3. Reload without further prompting if the user presses "Reload", even if the board is modified. (We already warned them due to
2.)
2011-09-07 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gtkhid-main.c, src/hid/gtk/gui-top-window.c,
src/hid/gtk/gui.h: hid/gtk: Reimplement file-change monitor without
GFileMonitor I must have had a brain-fail when I hooked up setting up the
file-changed monitor in the function which sets the window title.
NB: That also gets called after every menu operation! A better place to hook up the monitor would be
ghid_sync_with_new_layout(), however changing this alone revealed
another issue - we would get notified for changes WE make to the
files. We were avoiding those events as the file-monitor was being
reset before it could pop up, at the end of the menu action which
invoked the save). However - due to a race condition bug in GLib / GIO, we would
sometimes see change notify events for changes we made, even when we
hooked up the GFileMonitor AFTER having saved (and synced) our
changes to disk. Rather than attempt to work around this bug, implement the
file-change notification in a much more simple way - look at the
file mtime when we update the layout, and at each time the mouse
pointer enters the main window. FWIW, this is how gedit currently
achieves the same feature.
2011-09-06 DJ Delorie * dj AT delorie dot com *
* src/action.c: Warn user if footprints can't be found on import Since the message log doesn't make it obvious, add a pop-up dialog
whenever there are missing footprints during an import. Affects-bug: lp-828388
2011-09-06 DJ Delorie * dj AT delorie dot com *
* src/search.c: Fix math error in IsPointOnLine() The math in C didn't match the math in the comment (and, apparently,
hasn't for quite some time). To test: Draw three lines, from 1000,3000 to 1500,2500, then to
2000,3000, then back to the start at 1000,3000. Without this patch,
the first and last lines are removed and replaced with a copy of the
second line.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/action.c, src/file.c, src/file.h, src/hid/common/actions.c:
Implement a new RevertPCB() call, sharing code with LoadPCB() The RevertPCB() takes no filename parameter, and aside from that,
the only difference to LoadPCB is that when it calls the GUI's
"PCBChanged" action, it passes a new "revert" argument. This should
let the GUIs optionally do less work resetting the view state for a
board being reverted.
2011-09-06 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/action.c, src/command.c, src/hid.h: Add a HID API call,
notify_pcb_filename_change() This is so the core can tell the GUI when the PCB being edited is
saved into a different file.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/file.c, src/hid.h: Add a HID API call, notify_save_pcb()
called around saving the PCB The intention of this API is so that GUIs monitoring the active PCB
file on disk for changes, can filter out changes which occur as we
save the file ourselves.
2011-09-06 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/action.c, src/command.c, src/file.c: file.c: Don't set the PCB
filename or changed flags inside SavePCB (Filename) Save this for the caller to do. (action.c already set the filename
for the SaveAs case anyway).
2011-09-06 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gtkhid-main.c: Revert "hid/gtk: Avoid the deprecated
gdk_drawable_get_display()" This reverts commit c6d6ca16e58b5c7f2248c21e3248825f54e52374. Turns out the replacement API I used was only introduced in GTK
2.24, which is still a little new for us here.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-top-window.c, src/hid/gtk/gui-utils.c: hid/gtk:
Remove usage of deprecated gtk_range_set_update_policy() We only set this to the default value anyway, and the API has been
removed with no replacements.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-top-window.c, src/hid/gtk/gui-utils.c: hid/gtk:
Replace gtk_container_border_width with
gtk_container_set_border_width Replaces the old deprecated API.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-utils.c: hid/gtk: Use g_signal_connect(), not
gtk_signal_connect() gtk_signal_connect() is deprecated.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-dialog-print.c: hid/gtk: Re-write the tool-tip
handling code to use newer tooltip API Use the gtk_widget_set_tooltip* API introduced in GTK 2.12. This
avoids the APIs deprecated in GTK 2.12, and also avoids the
requirement to pack GTK_WIDGET_NO_WINDOW widgets inside
gtk_event_box() widgets to make their tooltips work.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-drc-window.c, src/hid/gtk/gui-library-window.c,
src/hid/gtk/gui-log-window.c, src/hid/gtk/gui-netlist-window.c,
src/hid/gtk/gui-pinout-window.c, src/hid/gtk/gui-top-window.c:
hid/gtk: Replace usage of the deprecated gtk_widget_set_uposition()
call The closest replacement is gtk_window_move(), and looking at the GTK
sources, appears to be what gtk_widget_set_uposition() calls
internally. We are still rather at the mercy of the user's window manager as to
whether it will honour the request we make, and arguably we ought to
remove this (mis-)feature anyway.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-dialog.c: hid/gtk: Replace deprecated function
call gtk_box_pack_start_defaults()
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gtkhid-main.c: hid/gtk: Avoid the deprecated
gdk_drawable_get_display() Grab the active display using gdk_window_get_display() on the window
belonging to the drawing area.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gtkhid-main.c: hid/gtk: Use the g_timeout_add()
function, not the deprecated GTK one.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/ghid-main-menu.c: hid/gtk: Fix not accessing
GtkMenuShell's children harder I missed a critical part of the fix from commit
3584101f67f6ca2f0a252c312cb0c6c9c4fa016f
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-pinout-preview.c: hid/gtk: Replace
GTK_WIDGET_REALIZED() test with a check for window != NULL This avoids the use of the deprecated GTK_WIDGET_REALIZED macro,
without needing to use the GTK2.20 function
gtk_widget_get_realized(). The check for a NULL window should be
sufficient here I hope.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-command-window.c: hid/gtk: Use gtk_bin_get_child()
accessor In GTK3.0, direct access to bin->child will be impossible.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-config.c: hid/gtk: Use gtk_notebook_get_n_pages()
rather than diving in and counting In GTK3.0, direct access to notebook->children will be impossible.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/ghid-main-menu.c: hid/gtk: Don't access a
GtkMenuShell's children directly In GTK3.0, direct access to shell->children will be impossible.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/ghid-main-menu.c: hid/gtk: Free list returned from
gtk_container_get_children() We can (and should) g_list_free() the list of children returned when
we are finished with it. Whilst we are at it, convert the while loop to a for loop and use a
tighter condition on the loop termination test. The existing test
worked, but would leave a negative number in the object counter we
test against. This would not work if the object counters were ever
unsigned integers (as they might plausibly be).
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/ghid-route-style-selector.c,
src/hid/gtk/gtkhid-main.c, src/hid/gtk/gui-dialog-print.c,
src/hid/gtk/gui-dialog.c, src/hid/gtk/gui-library-window.c,
src/hid/gtk/gui-utils.c: hid/gtk: Use accessors to get the vbox from
GtkDialog In GTK3.0, direct access to dialog->vbox will be impossible.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-output-events.c: hid/gtk: Use accessor functions
for handling GtkAdjustments In GTK3.0, direct access to these member variables will be
impossible.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-config.c, src/hid/gtk/gui-top-window.c: hid/gtk:
Don't use GTK_WIDGET_SET_FLAGS() Call the appropriate setter function instead. (For GTK3.0
compatibility).
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-library-window.c: hid/gtk: Don't test for NOOP
before calling gtk_widget_set_sensitive() We were using a deprecated test macro anyway, GTK already does a
NOOP test inside gtk_widget_set_sensitive().
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-utils.c, src/hid/gtk/gui.h: hid/gtk: Remove unused
function ghid_button_set_text()
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-utils.c, src/hid/gtk/gui.h: hid/gtk: Remove unused
function ghid_button_active()
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gtkhid-gdk.c, src/hid/gtk/gui-drc-window.c: hid/gtk:
Use gtk_widget_get_style() accessor, rather than direct access In GTK3.0, direct access to widget->style will be impossible. Swap out the GTK_WIDGET_STATE() macro for gtk_widget_get_state(),
which does not directly access the GSeal'd member widget->state.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gtkhid-gdk.c, src/hid/gtk/gtkhid-main.c,
src/hid/gtk/gui-misc.c, src/hid/gtk/gui-output-events.c,
src/hid/gtk/gui-pinout-preview.c, src/hid/gtk/gui-top-window.c,
src/hid/gtk/gui-utils.c: hid/gtk: Use gtk_widget_get_window()
accessor In GTK3.0, direct access to widget->window will be impossible.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gtkhid-gl.c, src/hid/gtk/gui-drc-window.c,
src/hid/gtk/gui-keyref-window.c, src/hid/gtk/gui-library-window.c,
src/hid/gtk/gui-log-window.c, src/hid/gtk/gui-netlist-window.c,
src/hid/gtk/gui-top-window.c: hid/gtk: Use
gtk_widget_get_allocation() accessor In GTK3.0, direct access to widget->allocation will be impossible.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gtkhid-gdk.c, src/hid/gtk/gtkhid-gl.c: hid/gtk: Use
gtk_widget_get_allocation() not gdk_window_get_geometry() This avoids an unnecessary round-trip the the X server on X11
platforms.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gtkhid-gdk.c: hid/gtk: Avoid warning caused by early
drawing before gport->pixmap is set Avoids a command line warning: (pcb:28876): Gdk-CRITICAL **: IA__gdk_draw_drawable: assertion
`GDK_IS_DRAWABLE (src)' failed With the GDK renderer in use. This trigger appears to be some state changes triggered as the new
layer selector widget initialises.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-misc.c: hid/gtk: Clean and make
gport_set_cursor_type() more GTK3.0 compatible Also removes the DEFAULT_CURSOR return value (for the case of no
window being setup) to GDK_X_CURSOR (the 0 enum value), as the code
path which returned DEFAULT_CURSOR would never have been hit.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/ghid-cell-renderer-visibility.c: hid/gtk: Use
gtk_cell_renderer_get_{align,pad} accessors In GTK3.0, direct access to these fields will be impossible.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-top-window.c: hid/gtk: Avoid double-destroying the
file-changed info_bar on "Reload" This was caused by an addition I made in the earlier patch to
destroy the info_bar when the user manually reverts or loads a new
file). The callback on revert button was trying to delete it (again) after
the revert _action_ we call triggered a destroy of the widget. Avoid
this by destroying the info_bar before we call the revert action.
2011-09-05 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/ghid-layer-selector.c: gtk: use
gtk_action_block_activate() in layer selector The GHidLayerSelector widget now uses gtk_action_block_activate()
instead of storing/blocking signal IDs. This is the proper way to
suppress signal emission since 2.16. This also fixes the lockup bug that was supposed to be fixed by the
recent commit 8857757, but still occured when using the menus to
toggle layers.
2011-09-05 DJ Delorie * dj AT delorie dot com *
* src/const.h, src/draw.c, src/misc.c, src/print.c, src/report.c:
Fix text scaling exceeding Coord max. The old way of scaling text was to multiply by scale/100 but this
could easily overflow on reasonably sized boards with a 32-bit Coord
type. The new code scales by (double)scale/100.0 instead. Since we
don't store scaled values in the PCB file, a loss of precision won't
matter, but a double has 53 bits of precision - in nanometers,
that's a board about the size of North America. Closes-bug: lp-832451
2011-09-05 DJ Delorie * dj AT delorie dot com *
* configure.ac, globalconst.h, src/global.h: Add configure selection
of 32/64 Coord type --enable-coord64 Force 64-bit coordinate types --enable-coord32 Force 32-bit coordinate types Defaults to "long" as before, but if you give one of the above, the
type changes to a suitable 32-bit or 64-bit type. Note that this is
only guaranteed to be the size you choose if you have <stdint.h>
which most OSs provide, else the "int" and "long long" types are
used instead.
2011-09-05 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/ghid-layer-selector.c: gtk: Fix "clicking on layer
selector separator bug" If you click on the selector between real and virtual layers in the
pcb layer selector, it will toggle the first layer. This patch
simply ignores the click.
2011-09-05 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/ghid-layer-selector.c, src/hid/gtk/gui-top-window.c:
gtk: fix behavior when hiding the last visible layer When you try to toggle the last layer invisible, pcb should refuse
to let you do so, since something has to be selected, and we don't
allow selection of invisible layers. What actually happens is that pcb locks up. This patch fixes that.
2011-09-05 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/gui-top-window.c: gtk: Force silk and rat layers
visible when they are selected.
2011-09-05 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/ghid-route-style-selector.c,
src/hid/gtk/ghid-route-style-selector.h, src/hid/gtk/gtkhid-main.c:
Implement RouteStylesChanged action This action looks at the actual route-style settings (i.e.,
Settings.LineThickness), and gives these to the route style
selector. The selector looks in its list and selects a style, if one
matches. Otherwise, it does nothing.
2011-09-04 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/ghid-route-style-selector.c,
src/hid/gtk/ghid-route-style-selector.h,
src/hid/gtk/gui-command-window.c, src/hid/gtk/gui-top-window.c,
src/hid/gtk/gui.h: Add Ctrl+F1,F2,F3,... accelerators to route style
selector Since we now have three accelerator groups to worry about (those of
the layer selector, route style selector and main menu), I have
moved the hooking/unhooking code into two functions: ghid_install_accel_groups () ghid_remove_accel_groups () These should be used whenever accelerators need to be disabled, for
example, when the user has the command box active.
2011-09-03 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/gui-top-window.c, src/hid/gtk/gui.h: Remove the last
of ghidgui->toggle_holdoff
2011-09-03 Andrew Poelstra * asp11 AT sfu dot ca *
* src/Makefile.am, src/hid/gtk/gtkhid-main.c,
src/hid/gtk/gui-dialog-size.c, src/hid/gtk/gui-top-window.c,
src/hid/gtk/gui.h: Replace old route style selector with
GHidRouteStyleSelector TODO: The RouteStylesChanged action is now very broken. Menu accelerators need to be installed
2011-09-03 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/ghid-main-menu.c, src/hid/gtk/ghid-main-menu.h:
Introduce functions for GHidRouteStyleSelector handling to menu
2011-09-03 Andrew Poelstra * asp11 AT sfu dot ca *
* src/Makefile.am, src/hid/gtk/ghid-route-style-selector.c,
src/hid/gtk/ghid-route-style-selector.h: Introduce
GHidRouteStyleSelector widget, don't use it yet
2011-09-04 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-top-window.c, src/hid/gtk/gui.h: hid/gtk: Add file
change notification for the currently open PCB If the file is modified on disk, a bar appears at the top of the PCB
area offering the user a choice as to whether they wish to reload
the board or cancel (do nothing). If the user has changes, and hits reload - they are prompted as to
whether they wish to throw away their changes. Requires GTK 2.18 or higher due to use of the GtkInfoBar widget.
2011-09-05 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* configure.ac: Require GTK 2.18 or later for the GTK HID. This is for some new widgets, like the GtkInfoBar.
2011-09-04 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-top-window.c, src/hid/gtk/gui.h: hid/gtk: Fix
styling of menubar area so it is consistent across its width This relies on some nasty tricks copying GtkStyle's between the
menubar widget and a new GtkEventBox widget we pack the top bar in
to give us a background to paint on. We also adjust the styles of
the coordinate read- out labels and frames to ensure they are
legible. There may still be some inconsistencies, as the coordinate selector
button is themed as if it were a toolbar button, hence the
colourings used may be designed to work with a different background
colour than we have.
2011-09-04 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-top-window.c, src/hid/gtk/gui.h: hid/gtk: Create a
GtkToolbar of mode buttons for compact vertical mode Rather than packing our mode buttons into an hbox, use a proper
GtkToolbar so theming will match the rest of the user's desktop. This simplifies code to switch compact mode on and off, as we have
two distinct widgets to show / hide, rather than having to reparent
the mode buttons each time. It does, however mean we have to be careful not to double-trigger
events when keeping the two sets of mode buttons in sync with each
other, so that isn't ideal. In the longer term, we probably ought to split out the mode button
area on the left-hand toolbar as a separate self-contained widget.
2011-09-03 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/ghid-cell-renderer-visibility.c: gtk: Prelight toggle
swatches in layer selector This brightens the layer visibility swatches subtly when the mouse
hovers over them. IMHO this improves the discoverability of the
widget without being distracting or misleading.
2011-09-03 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/ghid-layer-selector.c: gtk: Don't gray out invisible
layers' text in the selector
2011-09-03 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/ghid-layer-selector.c: gtk: toggle non-activatable
layers on click, without checking for swatch
2011-09-03 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-config.c, src/hid/gtk/gui-top-window.c,
src/hid/gtk/gui.h: hid/gtk: Remove compact_vbox and compact_hbox
2011-09-03 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-config.c, src/hid/gtk/gui-top-window.c,
src/hid/gtk/gui.h: hid/gtk: Always show the PCB name on the
title-bar, not the toolbar This saves space and reduces code complexity
2011-09-03 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-top-window.c, src/hid/gtk/gui.h: hid/gtk: Don't
use a GtkEventBox as a container widget We weren't making use of the events from the event box, and appeared
just to be using it as a convenient container to allow setting the
sensitivity on our entire left hand toolbar at once. Scrap the event box widget and just store a pointer to the vbox
widget which the left toobar items are packed into. We can set the
sensitivity on this and get the desired effect.
2011-09-03 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-pinout-window.c, src/hid/gtk/gui-top-window.c:
hid/gtk: Don't pack the drawing area in a GtkViewport widget (For both the main window and the pinout preview). The GtkViewport
widget is designed to add scroll bars to a widget which doesn't have
native scroll capabilities. We are handling out own scroll-bars, so
the only gain we had from the GtkViewport we added was a shadow
around the widget. If we decide we want the shadow back, a more appropriate widget to
pack the drawing area with might be a GtkFrame.
2011-09-03 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-top-window.c: hid/gtk: Remove the vbox used to
pack ghidgui->compact_hbox The main effect here is that the contents of the compact_hbox will
get more vertical space assigned to them if the menu bar section is
taller than the natural size of those widgets. The visual change seems acceptable, and we could use every bit of
code-cleanup in ghid_build_pcb_top_window()
2011-09-03 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-top-window.c: hid/gtk: Remove some more temporary
variable assignments These make the code harder to follow, as the same temporary variable
is used again and again to refer to different widgets.
2011-09-03 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-top-window.c, src/hid/gtk/gui.h: hid/gtk: Don't
use an hbox to pack the board name label The hbox only has one child, so use the name label directly.
2011-09-03 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-top-window.c: hid/gtk: Skip the generic "hbox"
variable when storing the widget anyway For widgets we keep references to in the ghidgui structure, we avoid
confusion by assigning directly to the more descriptive ghidgui
variable.
2011-09-03 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gui-top-window.c: hid/gtk: Don't pack a frame around
the menu bar
2011-09-02 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/gui-dialog-size.c, src/misc.c, src/misc.h: Move
make_route_string() from gtk into misc.c
2011-09-02 Andrew Poelstra * asp11 AT sfu dot ca *
* src/mymem.c, src/mymem.h: Const-correct StripWhiteSpaceAndDup in
mymem.c
2011-09-01 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gtkhid-main.c: hid/gtk: Attempt to fix logic to flip
component / solder group visibility on flip Should get back to better behaviour. I probably broke this somewhat
with commit f903b4be6b85efc110852f7be40edf8245f0a513, which
attempted to re-state the previous logic in a clearer fashon. The logic now should: If flipping sides, and only ONE of the solder / component layers
(groups) is visible, and that layer (group) is _active_, then swap
the visibilities of the component / solder layers (groups), and make
the newly visible layer (group) active. There are still bugs in this code relating to the assumption that
the first entry in the layer group is the one which is being
toggled. This breaks if the first entry in the group is that
corresponding to the silk for that side of the board.
2011-08-31 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/ghid-layer-selector.c: gtk: fix typo preventing layer
selector menu items from working
2011-08-31 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/gui-top-window.c: gtk: remove in_toggle_view
recursion-prevention flag We don't call ToggleView programmatically anywhere, so it is
impossible for there to be recursion.
2011-08-31 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/ghid-main-menu.c: Block signals in
ghid_main_menu_update_toggle_state() The function ghid_main_menu_update_toggle_state() is supposed to
sync the menu checkboxes to the actual state of pcb, by checking the
flags given in the resource file. If this function is emitting signals and changing pcb's state, this
is a bug. Fortunately, this appears not to be the case, so the
effect of this commit is to eliminate one more use of
ghidgui->toggle_holdoff.
2011-08-31 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/gui-top-window.c: gtk: sync visiibility of layer
selector with core state in LayersChanged
2011-08-31 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/ghid-layer-selector.c,
src/hid/gtk/ghid-layer-selector.h: Use signal blocking for
visibility toggling in GHidLayerSelector
2011-08-31 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/gui-config.c: Add call to
ghid_layer_buttons_color_update() when loading new colors
2011-08-30 Andrew Poelstra * asp11 AT sfu dot ca *
* src/change.c: Change change.c to treat text scale as mils
2011-08-30 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/ghid-layer-selector.c: Configure layer selector to
only accept left-clicks Suggested by Kai-Martin Knaak, seconded by me.
2011-08-30 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/gui-top-window.c: Fix invalid free of ~/.pcb/filename
path in gui-top-window.c
2011-08-29 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/ghid-layer-selector.c,
src/hid/gtk/ghid-layer-selector.h: minor: fix comment and forward
declaration in ghid-layer-selector
2011-08-29 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/ghid-layer-selector.c: Remove default layer selection
from ghid-layer-selector.c Having the layer selector select its own first layer is not needed -
pcb does this for us, after making the widget. It's not the sort of
decision a widget should be making on its own, anyway.
2011-08-29 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/ghid-layer-selector.c: Use g_signal_handler_block
instead of flags in ghid-layer-selector.c Thanks to Peter C. for this code-cleanliness tip. Now the two
layer-selection interfaces (menu button and selector widget) set
each other's GUI state but do not raise any signals past the
original.
2011-08-29 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/ghid-layer-selector.c: Add missing free_ldata() in
ghid-layer-selector.c
2011-08-29 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/gui-command-window.c: Disable layer selector's
GtkAccelGroup while in command mode
2011-08-30 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/draw.c: draw.c: Add const qualifiers to some BoxType
*drawn_area parameters
2011-08-30 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/misc.c, src/misc.h: misc.c: Add const qualifier to BoxType *
parameter passed to CountHoles
2011-08-30 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/draw.c: draw.c: Fold DrawLayerCommon() into DrawLayer() Since the last commit, DrawLayer() just calls DrawLayerCommon with
the "clear_pins" argument set to true. The only other
DrawLayerCommon caller passes clear_pins as true, so having
functions is redundant.
2011-08-30 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/draw.c: DrawLayer(): Pass true to clear_pins of
DrawLayerCommon This should not affect any rendering. If the check planes flag is
set, we should only draw polygons, nothing more. Only a handful of
cases draw layers via this code-path, and in all but the exporter
cases, they are not called if CHECKPLANES is set. The exporters which call DrawLayer explicitly clear the CHECKPLANES
flag (since commit 3c01bd38cb59922692408b71cd5d77892dbe6ade), so
nothing should be affected by this argument change.
2011-08-30 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gerber/gerber.c, src/hid/ps/eps.c, src/hid/ps/ps.c:
hid/{ps,eps,gerber}: Clear CHECKPLANESFLAG before exporting Ensure we are in a sensible view state before exporting. This update
those HIDs which cleared other similar renedering flags before
exporting to include the CHECKPLANES flag.
2011-08-30 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/draw.c: draw.c: Have DrawLayerGroup() call DrawPPV for non-gui
exporters This means DrawLayerGroup() can have a void return type as most of
the other drawing functions, and makes things a little neater. Only the GUI renderers special case the pin / pad / via to wait
until a later rendering oass than the layers they reside on.
2011-08-29 Peter Clifton * pcjc2 AT cam dot ac dot uk *
* src/hid/gtk/gtkhid-main.c: hid/gtk: Remove unused "button"
parameter from Popup function. Remove the dead code and comments refering to the fact the
function's second argument indicates a mouse button number.
2011-08-29 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/ghid-layer-selector.c,
src/hid/gtk/ghid-layer-selector.h, src/hid/gtk/ghid-main-menu.c,
src/hid/gtk/ghid-main-menu.h, src/hid/gtk/gui-top-window.c: Link
GHidLayerSelector and GHidMainMenu Layer visibility-toggle and selection menu items now appear in the
main menu. Accelerators work correctly and are reassigned on
deletion/addition of layers to simulate the old behavior.
2011-08-29 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/ghid-layer-selector.c: Clean up layer data handling in
ghid-layer-selector.c
2011-08-29 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/ghid-layer-selector.c: Give GHidLayerSelector an
internal layer structure Before we had various arrays to resize and index; now each row has a
structure associated with it, that is easier to access and maintain.
2011-08-28 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/gtkhid-main.c, src/hid/gtk/gui-command-window.c,
src/hid/gtk/gui-output-events.c, src/hid/gtk/gui-top-window.c,
src/hid/gtk/gui.h: Replace gtk UI manager with GHidMainMenu widget This commit replaces the old UI manager with a customize gtk widget
that builds menus directly from a resource tree. This eliminates the
translate-to-XML step, the ugly hacks used to access individual
actions, and all the associated manual memory management. This will also give us the ability to have more dynamic menus, in
particular layer lists without maximum capacities. Layers and route styles are still not hooked into the menu. This
means that those accelerators DO NOT WORK. (This will be fixed in a
later commit.) Checkboxes have been replaced with radio buttons
where appropriate. There are now tearoffs on the context-menu's
submenus. Other than that, there should be no user-visible changes. ;)
2011-08-28 Andrew Poelstra * asp11 AT sfu dot ca *
* src/Makefile.am, src/hid/gtk/ghid-main-menu.c,
src/hid/gtk/ghid-main-menu.h: Created ghid-main-menu.[ch] Still need to hook up layer selector and route styles.
2011-08-29 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/gui-top-window.c: Fix select-hidden-layer behavior When you select a hidden layer, it should toggle the visibility so
that the currently-selected layer is always visible. We were
toggling twice.
2011-08-29 Andrew Poelstra * asp11 AT sfu dot ca *
* src/hid/gtk/ghid-layer-selector.c, src/hid/gtk/gui-top-window.c:
Prevent recursion in layer selector events
2011-08-29 Andrew Poelstra * asp11 AT sfu dot ca *
* src/Makefile.am, src/hid/gtk/ghid-coord-entry.c,
src/hid/gtk/ghid-coord-entry.h, src/hid/gtk/gtk-pcb-coord-entry.c,
src/hid/gtk/gtk-pcb-coord-entry.h, src/hid/gtk/gui-config.c,
src/hid/gtk/gui-dialog-print.c, src/hid/gtk/gui-dialog-size.c,
src/hid/gtk/gui-utils.c, src/hid/gtk/gui.h: Rename GtkPcbCoordEntry
to GHidCoordEntry
2011-08-29 Andrew Poelstra * asp11 AT sfu dot ca *
* src/Makefile.am, src/hid/gtk/ghid-layer-selector.c,
src/hid/gtk/ghid-layer-selector.h,
src/hid/gtk/gtk-pcb-layer-selector.c,
src/hid/gtk/gtk-pcb-layer-selector.h, src/hid/gtk/gui-top-window.c:
Rename GtkPcbLayerSelector to GHidLayerSelector
2011-08-29 Andrew Poelstra * asp11 AT sfu dot ca *
* src/Makefile.am, src/hid/gtk/ghid-cell-renderer-visibility.c,
src/hid/gtk/ghid-cell-renderer-visibility.h,
src/hid/gtk/gtk-pcb-cell-renderer-visibility.c,
src/hid/gtk/gtk-pcb-cell-renderer-visibility.h,
src/hid/gtk/gtk-pcb-layer-selector.c: Rename
GtkPcbCellRendererVisibility to GHidCellRendererVisibility
2011-08-28 Andrew Poelstra * asp11 AT sfu dot ca *
* src/gpcb-menu.res.in: Add mnemonics to menus in default
gpcb-menu.res.in You can now access the main menu without a mouse, by doing Alt+F,
for example, to select the File menu.