forked from lionxing/gnustep-gui
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathChangeLog
19027 lines (14030 loc) · 675 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
2014-01-01 Niels Grewe <[email protected]>
* Headers/Additions/GNUstepGUI/GSDisplayServer.h
* Source/GSDisplayServer.m:
Add a method to get the window identifier used by the
backend (instead of just the window number).
2013-12-31 Fred Kiefer <[email protected]>
* Headers/AppKit/NSAnimation.h
* Headers/AppKit/NSApplication.h
* Headers/AppKit/NSControl.h
* Headers/AppKit/NSPopover.h
* Headers/AppKit/NSSavePanel.h
* Headers/AppKit/NSTableView.h
* Headers/AppKit/NSTextView.h
* Headers/AppKit/NSWindow.h: Use GS_PROTOCOLS_HAVE_OPTIONAL to
protect the @optional keyword in protocol definitions.
Based on base patch by Marcus Mueller <[email protected]>.
2013-12-26 Fred Kiefer <[email protected]>
* Source/NSImage.m: Add description method.
Patch by Johannes Lundberg <[email protected]>.
2013-12-24 Richard Frith-Macdonald <[email protected]>
* Version: bump to 0.24.0
2013-12-23 Fred Kiefer <[email protected]>
* Update release notes to prepare for upcoming release.
2013-12-13 Fred Kiefer <[email protected]>
* Source/GSXibLoader.m: Handle changed keys for XIB 4.6 format.
Based on patch by Marcian Lytwyn <[email protected]>.
* Source/GSXibLoader.m (-parser:...): Warn about unsupported XIB 5 format.
2013-12-13 Fred Kiefer <[email protected]>
* Source/NSTableView.m (-numberOfRows): Return the current number
of rows not the internal cached value.
Replace some occurences of int with NSInteger
and unsigned with NSUInteger.
2013-12-08 Fred Kiefer <[email protected]>
* Source/NSClipView.m (-setBounds:, -setBoundsSize:): Use
-setNeedsDisplay: to redraw areas no longer covered by the
document view.
2013-12-07 Fred Kiefer <[email protected]>
* Source/NSClipView.m (-setDocumentView:): Don't take the
background colour from the document view.
Patch by Jeff Teunissen <[email protected]>.
2013-12-07 Fred Kiefer <[email protected]>
* Source/GSThemeDrawing.m (-drawScrollViewRect:inView:): Use the
scrollview bounds instead of the scroller frame for drawing the border.
Patch by Jeff Teunissen <[email protected]>.
2013-12-06 Fred Kiefer <[email protected]>
* Source/NSBitmapImageRep+JPEG.m: Remove CYGWIN specific define as
it is no longer needed. I leave the code for this in for a while.
Patch by Sebastian Reitenbach <[email protected]>.
2013-12-03 Fred Kiefer <[email protected]>
* Source/NSClipView.m (-setBounds:, -setBoundsSize:): Mark the
documentView as needing redisplay. Fixes #40776.
Based on patch by Jeff Teunissen <[email protected]>.
2013-12-03 Fred Kiefer <[email protected]>
* Source/GSThemeDrawing.m (-drawScrollViewRect:inView:): Use
NSRectFill() instead of line drawing to get sharper separator
lines.
* Source/GSThemeDrawing.m (-drawScrollerRect:...): Don't fill with
window background colour.
* Source/NSScroller.m (-drawRect:): Draw only the knob slot when
disabled.
* Source/NSScroller.m (-mouseDown:): Don't handle mouse down event
when disabled.
2013-12-02 Fred Kiefer <[email protected]>
* Source/NSScroller.m (-drawKnobSlot): Draw the slot even when the
scroller is disabled.
2013-12-01 Fred Kiefer <[email protected]>
* Source/Functions.m (NSFrameRectWithWidth): Use one pixel width
if a value of 0 is given. Fixes bug #40760
* Source/NSScroller.m: Move disable check out of -rectForPart:.
Fixes bug #40761.
2013-12-01 Fred Kiefer <[email protected]>
* Headers/Additions/GNUstepGUI/GSModelLoaderFactory.h,
* Source/GSModelLoaderFactory.m: Add new method +supportedTypes.
* Source/NSBundleAdditions.m: Use this new method to implement NIB
resource detection on top of the base methods instead of doing it here.
2013-11-24 Fred Kiefer <[email protected]>
* Source/NSGradient.m: Rearrange code to avoid duplicate
saveGraphicsState calls.
2013-11-24 Fred Kiefer <[email protected]>
* Source/NSBitmapImageRep+GIF.m: Add define missing in libgif 5.0.
2013-11-24 Fred Kiefer <[email protected]>
* Source/NSBrowser.m (-selectionIndexPaths): Actually do the correction.
2013-11-23 Fred Kiefer <[email protected]>
* Source/NSBrowser.m (-selectionIndexPaths): Correct off by one
error in last change.
Detected by Sebastian Reitenbach <[email protected]>.
2013-11-23 Fred Kiefer <[email protected]>
* configure.ac: Detect new GifQuantizeBuffer function.
* configure: regenerate
* Source/NSBitmapImageRep+GIF.m: Try to handle quantize again for
libgif 5.0.
2013-11-22 Fred Kiefer <[email protected]>
* configure.ac: Try to improve the ICU detection.
* configure: regenerate
* Headers/AppKit/NSTrackingArea.h
* Source/NSTrackingArea.m: Remove compiler warnings.
* Headers/AppKit/NSBrowser.h,
* Source/NSBrowser.m: Add a few new Cocoa methods.
2013-11-22 German Arias <[email protected]>
* NSWindow.m (-sendEvent:): Set _lastPoint only for mouse entered
events. If not, in some cases (i.e. display contextual menus), this
sets the wrong point for the event.
2013-11-08 Riccardo Mottola <[email protected]>
* Source/NSBitmapImageRep+GIF.m:
Adapt for newer libgif versions of EGifOpen and renamed GifMakeMapObject.
2013-11-05 Eric Wasylishen <[email protected]>
* Source/GSThemeDrawing.m (-highlightTableViewSelectionInClipRect:...):
Use color named @"highlightedTableRowBackgroundColor", if present in
the theme, to fill the selected row background.
* Source/GSThemeDrawing.m (-drawTableViewRow:clipRect:inView:):
When the row/column is selected, if the cell is a NSTextFieldCell,
set the text color to @"highlightedTableRowTextColor" before drawing the
cell (only if the theme defines that color).
2013-11-03 Sebastian Reitenbach <[email protected]>
* Source/NSSpellChecker.m
int -> NSInteger transition
2013-11-01 Fred Kiefer <[email protected]>
* Source/GSServicesManager.m: Call the more modern
NSDocumentController methods to open documents.
* Resources/English.lproj/Localizable.strings
* Resources/Esperanto.lproj/Localizable.strings
* Resources/French.lproj/Localizable.strings
* Resources/German.lproj/Localizable.strings
* Resources/Italian.lproj/Localizable.strings
* Resources/Lojban.lproj/Localizable.strings
* Resources/Spanish.lproj/Localizable.strings
Regenerate string files.
2013-10-27 Fred Kiefer <[email protected]>
* Source/GSHorizontalTypesetter.m (-layoutLineNewParagraph:): Only
adjust max_line_height to minimumLineHeight if it isn't zero.
2013-10-26 Fred Kiefer <[email protected]>
* Source/NSTextView.m (-mouseDown:): Use container origin for
attachment cells.
2013-10-26 Fred Kiefer <[email protected]>
* Source/NSMenuView.m (-heightForItem:): Use
-menuItemCellForItemAtIndex: to protect against an index being to
big. This happens when the menu does not send notifications and a
non-existing item gets highlighted.
* Source/NSMenuView.m (-menuItemCellForItemAtIndex:): Protect
against negative index values.
2013-10-20 Fred Kiefer <[email protected]>
* Source/NSBitmapImageRep+PNG.m: Better cleanup on error.
* Source/NSBitmapImageRep.m (_set_bit_value): Correct error in bit
operation. This should allow the code to work with 16 bit images.
2013-10-17 Eric Wasylishen <[email protected]>
* Images/common_SliderHoriz.tiff:
* Images/common_SliderVert.tiff: Bake in the control background
color because the NSSliderCell now draws these without filling
with [NSColor controlBackgroundColor] first.
2013-10-17 Fred Kiefer <[email protected]>
* Headers/AppKit/NSFileWrapper.h,
* Source/NSFileWrapper.m: Add some OSX 10.6 methods.
2013-10-15 Eric Wasylishen <[email protected]>
* Source/GSThemeDrawing.m:
* Source/GSThemeTools.m:
* Headers/Additions/GNUstepGUI/GSTheme.h: Small refactor:
most uses of -[GSTheme fillRect:withTiles:background:] use
[NSColor clearColor], so add a version without the background:
param.
2013-10-15 Eric Wasylishen <[email protected]>
* Source/GSThemeDrawing.m:
* Headers/Additions/GNUstepGUI/GSTheme.h: Add methods
-menuSubmenuHorizontalOverlap and -menuSubmenuVerticalOverlap
wrapping user defaults GSMenuSubmenuHorizontalOverlap and
GSMenuSubmenuVerticalOverlap
* Source/NSMenuView.m (-locationForSubmenu:): Offset calculations
by -[GSTheme menuSubmenuHorizontalOverlap] and
-[GSTheme menuSubmenuVerticalOverlap]
2013-10-15 Eric Wasylishen <[email protected]>
* Source/GSThemePrivate.h:
* Source/GSTheme.m: Add GSStringFromImageFrameStyle
* Source/GSThemeDrawing.m (-drawBorderForImageFrameStyle:...):
Use GSStringFromImageFrameStyle to get tiles, if present
2013-10-15 Eric Wasylishen <[email protected]>
* Source/GSThemeDrawing.m (-drawColorWellBorder:...): Draw inner
border using part GSColorWellInnerBorder
* Source/GSTheme.m:
* Headers/Additions/GNUstepGUI/GSTheme.h: Add GSColorWellInnerBorder
part name
2013-10-15 Eric Wasylishen <[email protected]>
* Source/GSThemePrivate.h:
* Source/GSThemeTools.m:
* Source/GSThemeDrawing.m: Add explicit isFlipped: param to
-[GSDrawTiles contentRectForRect:]
2013-10-15 Eric Wasylishen <[email protected]>
* Headers/Additions/GNUstepGUI/GSTheme.h: Remove GSScrollViewBottomCorner
part name, instead themes should just provide a part called NSScrollView.
Add -scrollViewScrollersOverlapBorders method.
* Source/GSTheme.m: Remove GSScrollViewBottomCorner part name.
* Source/GSThemeDrawing.m: Add -scrollViewScrollersOverlapBorders.
* Source/GSThemeDrawing.m (-drawBrowserRect:...): If
-scrollViewScrollersOverlapBorders is enabled, fill the browser background
with the NSScrollView tile.
* Source/GSThemeDrawing.m (-drawScrollViewRect:...): If
-scrollViewScrollersOverlapBorders is enabled, fill the scroll view background
with the NSScrollView tile.
* Source/NSScroller.m (-rectForPart:): Change the meaning of the
GSScrollerKnobOvershoot default so the knob only overlaps the buttons
by this much (rather than both ends of the track). Turns out this is more
useful for themes.
* Source/NSScrollView.m (-tile): Add support for
-[GSTheme scrollViewScrollersOverlapBorders]
* Source/NSBrowser.m (-tile): Add support for
-[GSTheme scrollViewScrollersOverlapBorders] and
-[GSTheme scrollViewUseBottomCorner]
The overall point of these additions is to support NSScrollView and
NSBrowser looking like: http://jesseross.com/clients/gnustep/ui/concepts/
2013-10-15 Eric Wasylishen <[email protected]>
* Source/NSTableView.m (-tile): Check the GSScrollViewNoInnerBorder
user default to see whether to expand the corner view by 1pt or not.
* Source/GSThemeDrawing.m (-drawTableHeaderRect:inView:): Remove
special case which reduced the width of the last column header by 1pt.
I don't see any reason for doing that and it looks better to me without
the gap, and more uniform for themeing.
2013-10-15 Eric Wasylishen <[email protected]>
* Source/NSButtonCell.m:
* Source/NSMenuItemCell.m: Make a shared -themeControlState in
NSButtonCell and eliminate duplicated code.
* Source/NSPopUpButtonCell.m: Add private declaration for
-[NSButtonCell themeControlState]
2013-10-15 Eric Wasylishen <[email protected]>
* ColorPickers/GSColorSliderCell.m (-drawBarInside:flipped:):
Set alpha to 1 before drawing because the current value could be
not 1, and PSsetrgbcolor doesn't set it.
2013-10-15 Eric Wasylishen <[email protected]>
* Headers/Additions/GNUstepGUI/GSTheme.h: Add -tabViewContentRectForBounds:
method.
* Source/GSThemeDrawing.m:
* Source/NSTabView.m: Move the -contentRect implementation to GSTheme
so we can delegate to GSDrawTiles, if used.
2013-10-15 Eric Wasylishen <[email protected]>
* Source/NSTabViewItem.m (-drawLabel:inRect:): Center label vertically
inside the tab.
2013-10-15 Eric Wasylishen <[email protected]>
* Source/NSTabView.m (-initWithCoder:): Make non-keyed archives
call -selectTabViewItem: to select the current tab at unarchiving
time (keyed archives were already doing this.)
Comment: "N.B.: As a side effect, this discards the subview frame
and sets it to [self contentRect].
This is desirable because the subview frame will be different
depending on whether the arcive is from Cocoa or GNUstep,
and which GNUstep theme was active at save time.
However, it does mean that the tab view contents should be
prepared to resize slightly."
The immediate need for this is tab views were changed to use
flipped coordinates, so the subview frames stored in existing
archives are now in the wrong coordinate system.
This is essentially the same idea as NSScrollView calling -tile at the
end of -initWithCoder: so I hope it makes sense for tab views too.
2013-10-14 Eric Wasylishen <[email protected]>
* Source/GSThemeDrawing.m (-tabHeightForType:): Check for nil
before calling -size on an NSImage, for systems where this
corrupts the stack.
2013-10-14 Eric Wasylishen <[email protected]>
* Source/GSThemeDrawing.m: Change stepper drawing methods to use
images. The stepper is too small to make decomposing it in to
border + bezel + arrow worthwhile; it's simpler to just use images.
* Images/GNUmakefile:
* Images/common_StepperDown.tiff:
* Images/common_StepperDownHighlighted.tiff:
* Images/common_StepperUp.tiff:
* Images/common_StepperUpHighlighted.tiff: Add stepper images
2013-10-14 Eric Wasylishen <[email protected]>
* Headers/Additions/GNUstepGUI/GSTheme.h: Add three new theme
control state: GSThemeFirstResponderState,
GSThemeHighlightedFirstResponderState,
and GSThemeSelectedFirstResponderState. This lets themes draw
custom first responder tiles, if the desired effect can't be
accomplished by drawing on top of an existing button.
* Source/GSThemeDrawing.m (-drawFocusFrame:inRect:):
Use tiles named "NSFocusRing" if available, else draw dotted
rect.
* Source/GSTheme.m:
* Source/NSButtonCell.m: Use new GSTheme*FirstResponderState
states
2013-10-14 Eric Wasylishen <[email protected]>
* Source/GSThemeDrawing.m (-drawTableViewBackgroundInClipRect:...):
Add support for drawing striped table backgrounds, using the colors
returned by [NSColor controlAlternatingRowBackgroundColors].
Currently not used because
-[NSTableView usesAlternatingRowBackgroundColors] is hardcoded to
return NO.
2013-10-13 Eric Wasylishen <[email protected]>
* Source/NSSliderCell.m (-drawKnob:): Don't fill the knob
with a background color before drawing the cell. Seems pointless
- GNUstep's default knob image is opaque, but filling with a solid
color prevents transparent knob images from looking good.
2013-10-13 Eric Wasylishen <[email protected]>
* Panels/English.lproj/GSPageLayout.gorm:
* Panels/Spanish.lproj/GSPageLayout.gorm: Minor visual tweaks:
Turn off "draws background" on the portrait/landscape matrix
so it looks better with themes. Remove 0.5 point offsets on
some views on the second and third tabs to eliminate blurring.
2013-10-13 Eric Wasylishen <[email protected]>
* Headers/Additions/GNUstepGUI/GSTheme.h:
* Source/GSTheme.m: Add GSProgressIndicatorBezel part name
* Source/GSThemeDrawing.m (-drawProgressIndicatorBezel:withClip:):
Use GSProgressIndicatorBezel to draw bezel if available.
2013-10-12 Eric Wasylishen <[email protected]>
* Source/GSThemeTools.m (-initWithNinePatchImage:): Parse the
"optiacal bounds" metadata in 9-patch images. It's stored
in the layoutRect ivar but not used otherwise.
See "Optical bounds layout" section of:
http://developer.android.com/about/versions/android-4.3.html
* Source/GSThemePrivate.h (GSDrawTiles): Add layoutRect ivar
2013-10-11 Eric Wasylishen <[email protected]>
* Source/NSColorWell.m (-drawRect:): Remove incorrect intersection
with clipping rect that was causing artifacts when scrolling a list
of color wells in Thematic.
2013-10-11 Eric Wasylishen <[email protected]>
* Source/GSThemeTools.m: Fix unflipped/flipped coordinates bug
in the 9-patch content rect parsing code. Add some comments.
Simplify contentRectForRect: implementation.
* Source/GSThemeDrawing.m (-browserHeaderDrawingRectForCell:...):
Use -contentRectForRect: to get the content rect instead of
incorrectly reading from ivar. Fixes broken text positioning
in browser header with Nesedah theme.
2013-10-09 German Arias <[email protected]>
* NSWindow.m (-sendEvent:): Fix last commit.
2013-10-09 German Arias <[email protected]>
* NSWindow.m (-sendEvent:): Only send events mouse entered if the
cursor rectangles are valid.
2013-10-09 German Arias <[email protected]>
* NSWindow.m (-sendEvent:): Set _lastPoint after update the cursor.
2013-10-08 Eric Wasylishen <[email protected]>
* Source/GSThemeDrawing.m:
* Source/GSTheme.m:
* Headers/Additions/GNUstepGUI/GSTheme.h: Add part names for
themeing bottom tabs.
2013-10-08 Eric Wasylishen <[email protected]>
* Source/GSThemeDrawing.m (-drawBoxInClipRect:...):
* Source/NSBox.m (-calcSizesAllowingNegative):
Special case for box type NSBoxSeparator to draw a centered line
2013-10-08 Eric Wasylishen <[email protected]>
* Source/NSTabView.m: Fix incorrect content rect now that view
is flipped.
2013-10-08 Eric Wasylishen <[email protected]>
* Source/GSTheme.m (-tilesNamed:state:): Interpret .9.png files
as NinePatch=YES. If a tile isn't listed in GSThemeTiles in the
plist, try to find it in the ThemeTiles directory anyway. This
lets you avoid declaring tiles in the info plist.
2013-10-08 Eric Wasylishen <[email protected]>
* Source/GSThemeDrawing.m (NSBox): If drawing with theme tiles,
use actual clipping to clip a hole in the border, so we can avoid
filling anything with the background color.
* Source/NSBox.m (-isOpaque:): change to NO.
2013-10-08 Eric Wasylishen <[email protected]>
* Source/NSTabView.m: Uncomment - (BOOL) isFlipped { return YES; }
* Source/GSThemeDrawing.m: Change tab drawing to assume flipped
coordinates
2013-10-08 Eric Wasylishen <[email protected]>
* Source/GSThemeDrawing.m: Rewrite tab drawing code to be more
organized, lay out the images in a straightforward way, and
allow themeing the fill part of the tab between the end images.
The output is almost pixel-identical to
the old code (only some unnoticable 1-pixel differences
in where shadows end). It's also organized so that adding support
for left and right tabs should be easy.
* Headers/Additions/GNUstepGUI/GSTheme.h: Add some part names
* Images/common_Tab*.tiff: Tweak to work with the new layout code.
All top images are now the same size, as are all bottom images.
* Images/GNUmakefile:
* Images/common_TabUnSelectToSelectedJunction.tiff: Renamed to
Images/common_TabUnSelectedToSelectedJunction.tiff
* Source/GSThemePrivate.h:
* Source/GSTheme.m: Add GSStringFromTabViewType utility function
2013-10-07 Eric Wasylishen <[email protected]>
* Source/GSThemeDrawing.m (-drawTableViewGridInClipRect:inView:):
Clean up grid drawing code; use rect fills to avoid blurriness.
2013-10-07 Eric Wasylishen <[email protected]>
* Headers/Additions/GNUstepGUI/GSTheme.h:
* Source/GSThemeDrawing.m:
* Source/NSPopUpButtonCell.m:
Remove -[GSTheme drawBorderAndBackgroundForPopUpButtonCell:
withFrame:inView:state:] which I added recently, and just use
-[GSTheme drawButton:in:view:style:state]. This way,
NSPopUpButtonCell automatically supports all of the different
NSBezelStyles.
2013-10-07 Eric Wasylishen <[email protected]>
* Source/GSTitleView.m: Use the GSTheme
-setName:forElement:temporary: mechanism to bind the menu close
button's cell to the name GSMenuCloseButton, so themes can provide
a custom border for this button.
2013-10-06 Eric Wasylishen <[email protected]>
* Documentation/GuiUser/DefaultsSummary.gsdoc:
* Headers/Additions/GNUstepGUI/GSTheme.h:
* Source/GSThemeDrawing.m:
* Source/NSScroller.m: Add defaults GSScrollerScrollsByPage
and GSScrollerArrowsSameEnd to allow customizing scroller
behaviour beyond the combinations provided by NSInterfaceStyle.
2013-10-04 Eric Wasylishen <[email protected]>
* Source/NSColor.m:
* Source/NSColorWell.m: Move code to draw the black and white
triangles background for transparent colors to
-[NSColor drawSwatchInRect:].
2013-10-03 Eric Wasylishen <[email protected]>
* Headers/Additions/GNUstepGUI/GSTheme.h:
* Source/GSThemeDrawing.m:
* Source/NSBrowser.m:
* Source/NSTableHeaderCell.m: Add custom color names
tableHeaderTextColor and browserHeaderTextColor for
table and browser headers.
2013-10-03 Eric Wasylishen <[email protected]>
* Source/NSMenuItemCell.m: If the cell is highlighted, draw
the arrow using NSHighlightedMenuArrow (if available).
2013-10-03 Eric Wasylishen <[email protected]>
* Source/GSThemeDrawing.m: Use new -[GSDrawTiles themeMargins]
to get the margins for draw tiles.
* Source/GSThemePrivate.h:
* Source/GSThemeTools.m: Get the 9-patch content rect support
working from end-to-end.
2013-10-03 Eric Wasylishen <[email protected]>
* Headers/Additions/GNUstepGUI/GSTheme.h:
* Source/GSTheme.m:
* Source/GSThemeDrawing.m:
* Source/NSBox.m: Factor out -[NSBox drawRect:] to GSTheme
method -drawBoxInClipRect:boxType:borderType:inView:.
Add a tiles name GSBoxBorder for themeing the box border.
2013-10-03 Eric Wasylishen <[email protected]>
* Source/NSSliderCell.m: Support themeing the circular slider
with the image @"common_CircularSlider". Draw the dimple
with @"common_Dimple" instead of an NSBezierPath.
2013-10-02 Eric Wasylishen <[email protected]>
* Headers/Additions/GNUstepGUI/GSTheme.h:
* Source/GSTheme.m:
Declare GSSliderHorizontalTrack and GSSliderVerticalTrack
part names for themeing the background of NSSlider
* Source/GSThemeDrawing.m:
Add new drawSliderBorderAndBackground:frame:inCell:isHorizontal:
method to draw the slider border and background.
* Source/GSThemePrivate.h:
* Source/GSThemeTools.m:
Add a -size method on GSDrawTiles which returns the total
original size of the tiles, so we can easily compute a rect
that scales the tiles in only one dimension.
* Source/NSSliderCell.m:
Override _drawBorderAndBackgroundWithFrame: to call new
GSTheme method. Also, tweak the knob drawing code; the knob
is now centered and drawn at its native size. This still looks
correct with the default slider sizes create by Gorm.
2013-10-02 Eric Wasylishen <[email protected]>
* Source/NSMenuView.m (heightForItem:, yOriginForItem:):
Accept negative item indicies, which are passed in when
opening the preferences window in TextEdit. Need to investigate
further why that is happening.
2013-10-02 Eric Wasylishen <[email protected]>
* Headers/Additions/GNUstepGUI/GSTheme.h:
* Source/GSTheme.m:
* Source/GSThemeDrawing.m:
* Source/NSPopUpButtonCell.m: Add a theme part GSPopUpButton
so NSPopUpButtonCell can be drawn with a different background
than NSMenuItemCell.
2013-10-02 Eric Wasylishen <[email protected]>
* Source/NSMenuView.m: Read the menu item/menu bar/separator
height from GSTheme.
* Headers/Additions/GNUstepGUI/GSTheme.h:
* Source/GSThemeDrawing.m: Add -menuBarHeight, -menuItemHeight,
-menuSeparatorHeight. Corresponding defaults are GSMenuBarHeight,
GSMenuItemHeight, GSMenuSeparatorHeight
2013-09-29 Eric Wasylishen <[email protected]>
* Headers/Additions/GNUstepGUI/GSTheme.h:
* Source/NSScrollView.m:
* Source/GSThemeDrawing.m:
* Source/GSTheme.m: Add GSScrollViewUseBottomCorner default,
which themes can set to NO to leave a square gap in the bottom-
left (or bottom-right) corner where the horizontal and vertical
scrollers meet.
2013-09-29 Eric Wasylishen <[email protected]>
* Source/NSBrowser.m: Fix some position calculations from the last
commit
2013-09-29 Eric Wasylishen <[email protected]>
* Source/NSBrowser.m:
* Source/GSThemeDrawing.m:
* Headers/Additions/GNUstepGUI/GSTheme.h: Add GSBrowserUseBezels
user default. Themes can set it to NO to prevent NSBrowser from
drawing any bezels, even if separatesColumns is set to YES.
2013-09-29 Eric Wasylishen <[email protected]>
* Source/NSBrowser.m: Small refactoring to simplify code.
Remove update logic from -setSeparatesColumns: and just use
-tile. Tested by toggling "separates columns" flag in Gorm.
2013-09-29 Eric Wasylishen <[email protected]>
* Source/NSBrowser.m: Change NSBR_COLUMN_SEP and NSBR_VOFFSET
macros to static floats. Cache the values in +initialize and
when GSThemeDidActivateNotification is sent, by calling the
new GSTheme methods.
* Source/GSThemeDrawing.m:
* Headers/Additions/GNUstepGUI/GSTheme.h: Add
-browserColumnSeparation and -browserVerticalPadding methods
which access user defaults GSBrowserColumnSeparation and
GSBrowserVerticalPadding. These determine the padding between
browser columns, and the vertical padding between the bottom
scroller, contents, and headers.
2013-09-29 Fred Kiefer <[email protected]>
* Source/NSImage.m: Better protection against representation being nil.
2013-09-29 German Arias <[email protected]>
* Source/GSAutocompleteWindow.m (-computePosition): Check the scrollview
style to display the autocomplete window.
2013-09-28 Eric Wasylishen <[email protected]>
* Source/GSTheme.m:
* Source/GSTitleView.m:
* Source/GSThemeDrawing.m:
* Headers/Additions/GNUstepGUI/GSTheme.h: Add GSMenuTitleBackground
theme tile for themeing the background of GSTitleView.
NOTE: I removed some code that was in -[GSTitleView drawRect:] for
drawing with a different style when the GSTitleView is NOT owned
by an NSMenu, but by an NSWindow/NSPanel (_ownedByMenu == NO).
If needed, this can be added back, but it doesn't appear to ever
be used in gnustep-gui - GSTitleView is only created in one place,
with NSMenu as the owner.
2013-09-28 Eric Wasylishen <[email protected]>
* Source/NSCell.m (-highlight:withFrame:inView:):
Remove call to [controlView displayRect: cellFrame];
There was a comment saying it should be removed, and when
combined with the -[NSButtonCell isOpaque] change, it
was casuing scroller buttons to stay "stuck" down.
* Source/NSBrowser.m (-isOpaque):
* Source/NSButtonCell.m (-isOpaque):
* Source/NSColorWell.m (-isOpaque):
Force -isOpaque to return NO, because it's
possible to make all of these controls semitransparent with
theme tiles. This was visible with the Narcissus theme
(svn://svn.gna.org/svn/etoile/trunk/Etoile/Themes/Narcissus.theme)
2013-09-28 Eric Wasylishen <[email protected]>
* Source/GSThemeDrawing.m: Add GSScrollerDefaultWidth user default
so non-code themes can change -[GSTheme defaultScrollerWidth]
2013-09-28 Eric Wasylishen <[email protected]>
* Source/NSScroller.m: Add GSScrollerKnobOvershoot default which
allows themes to make the scroller knob overlap the scroller buttons
by a specified amount.
2013-09-27 German Arias <[email protected]>
* Source/NSMenuView.m (-locationForSubmenu:): Don't change the location
of submenu if menu is horizontal and style is NSMacintoshInterfaceStyle.
2013-09-27 Fred Kiefer <[email protected]>
* Source/NSBrowserCell.m (-drawInteriorWithFrame:inView:): Don't
draw string when editing.
* Source/NSBrowserCell.m (-titleRectForBounds:): Implement to
exactly match calculation in -drawInteriorWithFrame:inView:.
2013-09-27 German Arias <[email protected]>
* Source/NSMenuView.m (- _trackWithEvent:startingMenuView:): If menu
is owned by a popup and theme process events, close it if user press
a modifier key.
2013-09-26 German Arias <[email protected]>
* Source/GSThemeMenu.m (-displayPopUpMenu:withCellFrame:...): Revert
last change, this don't prevent users open two or more popups at
same time.
* Source/NSPopUpButtonCell.m (-trackMouse:inRect:ofView:untilMouseUp:):
Don't check here if theme process events, this avoid NSMenuView
process correctly the events.
* Source/NSMenuView.m (- _trackWithEvent:startingMenuView:): Ignore
the first mouse up if is a popup and theme process events.
2013-09-24 German Arias <[email protected]>
* Source/GSThemeMenu.m (-displayPopUpMenu:withCellFrame:...): If the
PopUp (pulldown) is currently displayed and the theme process events,
allow user close it by clicking over the PopUp button.
2013-09-23 Ivan Vucica <[email protected]>
* Source/NSImage.m: Missing -retain inside the method
-compositeToPoint:fromRect:operation:fraction: caused a crash
inside Opal backend.
* Source/NSImage.m: Missing -retain inside the method
-drawInRect:fromRect:... caused a crash inside Opal backend.
2013-09-22 16:52-EDT Gregory John Casamento <[email protected]>
* Headers/AppKit/NSTableView.h: Add formal protocols for
NSTableViewDelegate and NSTableViewDataSource.
2013-09-22 15:59-EDT Gregory John Casamento <[email protected]>
* Headers/AppKit/NSAnimation.h: Add NSAnimationDelegate.
2013-09-18 18:17-EDT Gregory John Casamento <[email protected]>
* Headers/AppKit/AppKit.h: Add NSTrackingArea.h
* Headers/AppKit/NSTrackingArea.h: Add interface for NSTrackingArea
* Source/GNUmakefile: Add NSTrackingArea.[hm] to makefile.
* Source/NSTrackingArea.m: Add implementation for NSTrackingArea
2013-09-17 Riccardo Mottola <[email protected]>
* Source/NSSplitView.m
Silence more warnings.
2013-09-17 16:36-EDT Gregory John Casamento <[email protected]>
* Headers/AppKit/NSWindow.h: Add declaration to remove "attachedSheet"
from protocol. Add declaration to add delegate methods to NSObject.
Some methods in NSWindow call these on self.
2013-09-17 Ivan Vucica <[email protected]>
* Source/NSLayoutManager.m:
advancementbuf[0] was not being filled. Most backends, including cairo,
ignore advancements, so the bug was not immediately apparent until
opal backend started using the advancements.
2013-09-17 16:36-EDT Gregory John Casamento <[email protected]>
* Headers/AppKit/NSMenu.h: Add NSMenuDelegate
* Headers/AppKit/NSWindow.h: Add NSWindowDelegate
2013-09-17 Riccardo Mottola <[email protected]>
* Source/NSAnimation.m
Warning fix.
2013-09-16 Fred Kiefer <[email protected]>
* Source/NSBrowser.m (-setPath:): Fixed a bug where setting the
path to "/" would not deselect the cells.
Based on patch by Frank Le Grand <[email protected]>
2013-09-13 Riccardo Mottola <[email protected]>
* Source/NSBitmapImageRep+GIF.m (-_initBitmapFromGIF:): Prepare for
additional argument to function DGifOpen in newer libgif versions.
2013-08-30 Fred Kiefer <[email protected]>
* Source/NSAttributedString.m (-fixFontAttributeInRange:): In the
absence of a NSFontAttributeName attribute, use a default font to
prevent the substitution from stopping. This fixes a bug where
unicode characters would not get the proper font substitution.
Patch by: Frank Le Grand <[email protected]>
2013-08-30 Fred Kiefer <[email protected]>
* Headers/Additions/GNUstepGUI/GSDisplayServer.h
* Source/GSDisplayServer.m: Add new method -_printEventQueue.
* Source/NSWindow.m (-_checkCursorRectangles:forEvent:): Replace
hack with proper functions that handle cursor rectangles.
2013-08-27 Fred Kiefer <[email protected]>
* Source/NSCursor.m (-mouseEntered:, -mouseExited:):
Add better debug output.
* Source/NSWindow.m (-_checkCursorRectangles:forEvent:): Add hack
that updates cursor rectangles more correctly.
2013-08-19 Fred Kiefer <[email protected]>
* Headers/AppKit/NSTreeController.h,
* Headers/AppKit/NSTreeNode.h: Add method declarations to these files.
* Headers/AppKit/AppKit.h,
* Source/GNUmakefile: Include new files.
* Source/NSObjectController.m (+initialize, -selection): Get basic
binding example working.
* Source/NSTreeController.m: Minimal implementation.
* Source/NSTreeNode.m: Full implementation of this class.
2013-08-17 Fred Kiefer <[email protected]>
* Headers/AppKit/NSStatusBar.h,
* Source/NSStatusBar.m: Add new class implementation.
* Headers/AppKit/AppKit.h: Add new header for NSStatusBar.h
* Source/GNUmakefile: Add new class.
* Headers/AppKit/NSStatusItem.h,
* Source/NSStatusItem.m:
Add code by Nikolaus Schaller <[email protected]>, reformatted and simplified.
2013-08-12 Lubos Dolezel <[email protected]>
* Headers/AppKit/NSSavePanel.h,
* Source/NSSavePanel.m: beginSheetModalForWindow: and
beginWithCompletionHander: implementations
2013-08-08 16:27-EDT Gregory John Casamento <[email protected]>
* Headers/AppKit/AppKit.h: Add new header for NSStatusItem.h
* Headers/AppKit/NSStatusItem.h: Placeholder header.
* Source/NSStatusItem.m: Add new class implementation.
* Source/GNUmakefile: Add new class.
2013-07-22 Quentin Mathe <[email protected]>
* Source/NSImage.m (+_pathForImageNamed:, +_pathForSystemImageNamed:type:,
+_pathForThemeImageNamed:type:, +_resourceNameForImageNamed:type:):
Fixed missing theme images if not listed in the theme bundle Info.plist.
Theme bundles that contain theme images named using either GNUstep or
OPENSTEP names now work properly again (bug introduced in r36836).
Finished to clean and reduce duplication in the image searching code
related to -_pathForImageNamed:.
* Images/nsmapping.strings: Updated documentation.
2013-07-18 German A. Arias <[email protected]>
* Source/NSPopUpButtonCell.m (-attachPopUpWithFrame:inView:): Revert
last change.
* Source/GSThemeMenu.m (-displayPopUpMenu:withCellFrame:...): Add here
the code. This place is more appropriate.
2013-07-17 German A. Arias <[email protected]>
* Source/NSPopUpButtonCell.m (-attachPopUpWithFrame:inView:): Ensure
the window responds when run in modal and should process events.
2013-07-15 Riccardo Mottola <[email protected]>
* Images/nsmapping.strings
Do not remap GNUstep image itself.
2013-07-15 Riccardo Mottola <[email protected]>
* Headers/Additions/GNUstepGUI/GSTheme.h
* Source/GSTheme.m
Add license to the Theme properties.
2013-07-11 German A. Arias <[email protected]>
* Source/NSMenu.m (-displayTransient): Push an arrow cursor when
display transient menus, to not use the current cursor.
2013-07-08 Fred Kiefer <[email protected]>
* Headers/Additions/GNUstepGUI/GSDisplayServer.h
* Source/GSDisplayServer.m: Add new method -setIgnoreMouse:: with
empty implementation.
* Source/NSWindow.m (-setIgnoresMouseEvents:): Use this new method.
2013-07-08 German A. Arias <[email protected]>
* Source/NSMenuView.m (_trackWithEvent:startingMenuView:):
Ignore the first mouse up if is a transient menu and style
is NSWindows95InterfaceStyle.
2013-07-07 German A. Arias <[email protected]>
* Headers/AppKit/NSCursor.h:
* Source/NSCursor.m (-init, -push, -pop): Revert last commit.
2013-07-07 German A. Arias <[email protected]>
* Headers/AppKit/NSCursor.h: Add _windowNum and _cursorRect.
* Source/NSCursor.m (-init, -push, -pop): Store at cursor object the
rect and the window where this is displayed. So the next time the app
request push this cursor, it can compare if currently is displayed for
that rect in that window. To prevent duplicate the cursor.
2013-07-07 Fred Kiefer <[email protected]>
* Source/NSImageRep.m (-guiDrawInRect:...fraction:): Readd special
handling for printing as suggested by Eric Wasylishen
2013-07-04 Quentin Mathe <[email protected]>
* Headers/Additions/GNUstepGUI/GSTheme.h:
* Source/GSTheme.m:
Added new theme image constant image names.
* Source/NSImage.m (+imageNamed:, +_reloadCachedImages,
+_pathForImageNamed:): Added support for providing custom theme control
images in the same way that we support it for tiles. We now support a
GSThemeImages section in the theme Info.plist for all the images stored
inside a ThemeImages directory of the theme bundle.
2013-07-04 Richard Frith-Macdonald <[email protected]>
* config.make.in: Fix error in order of link/include directories
* configure.ac: Change variable names for match make system
* configure: regenerate
* Source/NSView.m: trivial comment format changes
2013-07-03 Eric Wasylishen <[email protected]>
* Source/Functions.m:
* Headers/AppKit/NSGraphics.h: Add NSDrawThreePartImage
2013-07-02 German A. Arias <[email protected]>
* Source/NSCursor.m (-push): Revert last change.
2013-07-02 German A. Arias <[email protected]>
* Source/NSCursor.m (-push): If the cursor is the current cursor,
don't set it again.
* Source/NSWindow.m (-sendEvent:): Don't update the cursor if
the window isn't the key window.
2013-06-22 German A. Arias <[email protected]>
* Source/NSComboBoxCell.m (-initWithContentRect:...):
Fix memory leak in GSComboWindow.
2013-06-20 German A. Arias <[email protected]>
* Source/GNUmakefile: Remove GSAutocompleteWindow.h, isn't
necessary add this here.
* Source/GSAutocompleteWindow.m: Add NSScreen header.
2013-06-19 German A. Arias <[email protected]>
* Source/GSAutocompleteWindow.h:
* Source/GSAutocompleteWindow.m: Add.
* Source/GNUmakefile: Add new files.
* Source/NSTextView.m (-rangeForUserCompletion, -complete:,
-completionsForPartialWordRange:indexOfSelectedItem:,
-insertCompletion:forPartialWordRange:movement:isFinal:):
Implement methods for autocomplete.