Commit graph

241 commits

Author SHA1 Message Date
Riccardo Mottola
28fff5bc13 Add license to the Theme properties
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36889 72102866-910b-0410-8b05-ffd578937521
2013-07-15 13:20:41 +00:00
Fred Kiefer
32299abf5b * Headers/Additions/GNUstepGUI/GSDisplayServer.h
* Source/GSDisplayServer.m: Add new method -setIgnoreMouse::
        * with
        empty implementation.
        * Source/NSWindow.m (-setIgnoresMouseEvents:): Use this new
        * method.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36854 72102866-910b-0410-8b05-ffd578937521
2013-07-08 20:42:49 +00:00
Quentin Mathe
da2351d2b2 Added support for providing custom theme control images (e.g. checkbox) in the same way we support it for tiles
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36836 72102866-910b-0410-8b05-ffd578937521
2013-07-04 15:46:11 +00:00
Fred Kiefer
270baf4037 More CGFloat, NSUInteger and NSInteger changes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36148 72102866-910b-0410-8b05-ffd578937521
2013-02-16 00:08:33 +00:00
Fred Kiefer
340c7eb879 Change DPS/PS functions to CGFloat and NSInteger.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36063 72102866-910b-0410-8b05-ffd578937521
2013-02-05 19:18:49 +00:00
David Chisnall
4850a9feac Fix all current compiler warnings on FreeBSD/x86-64.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36038 72102866-910b-0410-8b05-ffd578937521
2013-01-30 09:48:54 +00:00
Fred Kiefer
a612305757 First set of NSInteger/NSUInteger cleanup in gui.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36029 72102866-910b-0410-8b05-ffd578937521
2013-01-27 20:28:35 +00:00
Wolfgang Lux
0d760caf50 Disable to support to create gif image representations when giflib
does not define QuantizeBuffer. Fixes #38024.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@35958 72102866-910b-0410-8b05-ffd578937521
2013-01-13 13:47:51 +00:00
Fred Kiefer
89fed0244c * Headers/Additions/GNUstepGUI/GSLayoutManager_internal.h: Make
-_invalidateEverything visible.
        * Source/GSLayoutManager.m
        * (-invalidateGlyphsForCharacterRange:...): Call
        -_invalidateEverything when the whole character range is
invalidated.
        * Source/NSStringDrawing.m: Remove workarounds for full layout
        * invalidation.
        Move initialisation check into cache_lock().
        Extract size match code in function.
        Put #ifdef around all statistics code.
        Use same LARGE_SIZE value as Apple does.
        Make the methods taking options the main ones.
        * Source/GSHorizontalTypesetter.m (-fullJustifyLine::,
        -rightAlignLine::, -centerAlignLine::): Don't align when the
line
        width is bigger than 1e7.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@35925 72102866-910b-0410-8b05-ffd578937521
2012-12-30 15:48:21 +00:00
Gregory John Casamento
f248bc9988 * Headers/Additions/GNUstepGUI/GSTheme.h: Add declaration
for method setKeyEquivalent:forButtonCell:
	* Source/GSThemeDrawing.m: Add implementation for method
	setKeyEquivalent:forButtonCell:
	* Source/NSButtonCell.m: Add call to new method.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@35702 72102866-910b-0410-8b05-ffd578937521
2012-10-16 21:23:48 +00:00
Gregory John Casamento
f8c5c4673d * Source/GSXibLoader.m:
Added NSMenu (XibCompatibility) category with method: _isMainMenu
	Added NSMenu (XibCompatibility) category implementation.
        Modified setting main menu in awake:inContainer:withContext:
	Fixes bug #36427
	Committed by: gcasa



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@35159 72102866-910b-0410-8b05-ffd578937521
2012-05-21 17:56:05 +00:00
Richard Frith-MacDonald
28460f68e4 Cleanup/simplify code for handling theme names in defaults system
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@34527 72102866-910b-0410-8b05-ffd578937521
2012-01-14 16:10:48 +00:00
Quentin Mathe
96aad93e0f Improved the menu theming to support some common menu look variations.
Fixed bug #34792 too.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@34174 72102866-910b-0410-8b05-ffd578937521
2011-11-16 10:32:15 +00:00
Eric Wasylishen
60674d5076 * Headers/AppKit/NSImageCell.h:
* Headers/AppKit/NSCell.h: Move NSImageScaling constants to NSCell
* Source/NSImageCell.m:
* Source/NSCell.m: Refactor the image scaling logic to a private
method in NSCell, -_scaleImageWithSize:toFitInSize:scalingType:
which can be share by NSImageCell, NSButtonCell, and any other
cell classes that need it.
* Source/NSButtonCell.m:
* Headers/AppKit/NSButtonCell.h: Implement -imageScaling and
-setImageScaling methods. 
* Source/GSThemeDrawing.m:
* Headers/Additions/GNUstepGUI/GSTheme.h: Remove the
-drawImage:inButtonCell:withFrame:position: API intended
to let themes substitute images right before drawing,
as IMHO it's the wrong place to hook in new images (by
the time this method was caleld, sizing/positionging
was already done).


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@34160 72102866-910b-0410-8b05-ffd578937521
2011-11-11 23:10:15 +00:00
Fred Kiefer
407da1b829 Add decoding of class IBInitialTabViewItemAttribute.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@34124 72102866-910b-0410-8b05-ffd578937521
2011-11-05 17:45:09 +00:00
Quentin Mathe
e2967ab5bc Made separator menu item themable, by moving the drawing code from
NSMenuItemCell to a new method in GSThemeDrawing.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@34079 72102866-910b-0410-8b05-ffd578937521
2011-10-28 09:40:41 +00:00
Fred Kiefer
6aafb3c0e6 Integrate XIB loading methods used in Gorm.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@34055 72102866-910b-0410-8b05-ffd578937521
2011-10-25 09:06:01 +00:00
Fred Kiefer
a47199291f Big improvement of XIB loading. Now all XIB files from the bug reports
get loaded.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@34050 72102866-910b-0410-8b05-ffd578937521
2011-10-24 14:44:29 +00:00
Fred Kiefer
8ce0cd8e60 Add forward declaration for NSNibBindingConnector.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33935 72102866-910b-0410-8b05-ffd578937521
2011-10-03 20:28:51 +00:00
Fred Kiefer
23b1ff3f36 Fix XIB loading bug reported by Julian Mayer as bug #34454.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33931 72102866-910b-0410-8b05-ffd578937521
2011-10-03 12:48:15 +00:00
Eric Wasylishen
01c4a0be63 * Headers/Additions/GNUstepGUI/GSTheme.h: New GSThemeMargins struct.
Rename buttonBorderForCell:style:state: to buttonMarginsForCell:style:state:
and return the top/bottom/left/right margins instead of just two values.
(This is a theme API break.)
* Source/GSThemeDrawing.m: Implement buttonMarginsForCell:style:state:.
Also reduce the top and left margin of the default button by 1 pt, to
better reflect the button's appearance.
* Source/GSGuiPrivate.h: Add a GSRoundTowardsNegativeInfinity function
* Source/NSButtonCell.m (-drawImage:withFrame:inView:): Round the image
position down and to the right, as this seems to look the best.
* Source/NSButtonCell.m (-cellSize): Call new buttonMarginsForCell: method
* Source/NSButtonCell.m (-drawingRectForBounds:): Call new
buttonMarginsForCell: method


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33743 72102866-910b-0410-8b05-ffd578937521
2011-08-15 23:12:37 +00:00
Eric Wasylishen
5d897881e4 * Source/GSLayoutManager.m:
* Source/GSHorizontalTypesetter.m:
* Headers/Additions/GNUstepGUI/GSLayoutManager_internal.h:
* Headers/Additions/GNUstepGUI/GSLayoutManager.h: Store
glyph advances in the runs in GSLayoutManager. Extend the
NSGlyphStorage protocol to support a case where the glyph
generator provides the glyph advances.

I'm hoping to use this in the future to implement (optional)
glyph generators which are wrappers around HarfBuzz or the ICU
OpenType layout engine.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33684 72102866-910b-0410-8b05-ffd578937521
2011-08-02 23:34:06 +00:00
Eric Wasylishen
896c6d73a3 Add a new character picker panel. It's accessible
via a button in the font panel.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33470 72102866-910b-0410-8b05-ffd578937521
2011-07-06 18:39:49 +00:00
Eric Wasylishen
7a47a5e929 * Source/GSDisplayServer.m:
* Headers/Additions/GNUstepGUI/GSDisplayServer.h: Add a new API for taking
screenshots: -contentsOfScreen:inRect:


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33442 72102866-910b-0410-8b05-ffd578937521
2011-07-03 23:43:07 +00:00
Eric Wasylishen
7f4e569c47 * Headers/Additions/GNUstepGUI/GSImageMagickImageRep.h:
* Source/GNUmakefile:
* Source/NSImageRep.m:
* Source/GSImageMagickImageRep.m:
* configure.ac: New ImageMagick-based NSBitmapImageRep subclass


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33399 72102866-910b-0410-8b05-ffd578937521
2011-06-29 03:35:25 +00:00
Eric Wasylishen
f79e17387b * Source/GSGhostscriptImageRep.m:
* Headers/Additions/GNUstepGUI/GSGhostscriptImageRep.h:
* Source/GNUmakefile:
* Source/NSImageRep.m: New image rep which attempts to
invoke Ghostscript to rasterize PS/EPS/PDF images. It needs
some polishing but basically works.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33389 72102866-910b-0410-8b05-ffd578937521
2011-06-27 05:45:40 +00:00
Eric Wasylishen
5f73c3f623 * Source/NSLayoutManager.m:
* Source/NSGraphicsContext.m:
* Headers/AppKit/DPSOperators.h:
* Headers/AppKit/NSGraphicsContext.h:
* Headers/Additions/GNUstepGUI/GSMethodTable.h:
New GSShowGlyphsWithAdvances, which replaces
GSShowGlyphs as the primitive text drawing method.
(used by -[NSLayoutManager drawGlyphsForGlyphRange:atPoint:])

Requires r33121 in -back.

Note that the advances aren't actually used by -back yet so
text output should be unchanged.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33122 72102866-910b-0410-8b05-ffd578937521
2011-05-26 03:55:55 +00:00
Gregory John Casamento
828bc672f6 Add method to ask if the menu should show the icon. In some themes it
is redundant.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@32829 72102866-910b-0410-8b05-ffd578937521
2011-04-10 20:14:53 +00:00
Fred Kiefer
02d5a28637 Remove unused ivars found by static analyser.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@32528 72102866-910b-0410-8b05-ffd578937521
2011-03-10 22:18:42 +00:00
Fred Kiefer
d4d795bdb2 Change the way the image for the cursor gets passed on to the backend.
The old way could only work for 8 bit data.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@32491 72102866-910b-0410-8b05-ffd578937521
2011-03-07 19:45:04 +00:00
Fred Kiefer
c67cd8b4f8 Remove the GSFusedSilica files as they are obsolete now.
The Opal library is a more complete replacement for CoreGraphics.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@32251 72102866-910b-0410-8b05-ffd578937521
2011-02-20 20:10:57 +00:00
Fred Kiefer
03bc4d79d6 Define new cursor backend methods replacing -setcursorcolor:::. And use
these.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@32179 72102866-910b-0410-8b05-ffd578937521
2011-02-15 22:54:23 +00:00
Wolfgang Lux
da2407140a Add some support for help links and markers in RTF documents. These
end up as dedicated attachments in attributed strings.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31828 72102866-910b-0410-8b05-ffd578937521
2011-01-03 11:48:57 +00:00
Wolfgang Lux
07e61a136c Improve implementation of NSWorkspace methods querying volume and file
system information.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31795 72102866-910b-0410-8b05-ffd578937521
2010-12-29 13:03:20 +00:00
Fred Kiefer
de9abfb7ee Correct the definition of NSDragOperation and all its usages.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31754 72102866-910b-0410-8b05-ffd578937521
2010-12-22 16:16:14 +00:00
Fred Kiefer
cdb08be089 Implement glyph attribute handling.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31730 72102866-910b-0410-8b05-ffd578937521
2010-12-13 21:26:15 +00:00
Gregory John Casamento
64516b7af5 Additional table view methods for themeing.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31679 72102866-910b-0410-8b05-ffd578937521
2010-11-28 03:55:58 +00:00
Gregory John Casamento
529856ef33 Added NSTableView to the drawing methods for GSTheme.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31678 72102866-910b-0410-8b05-ffd578937521
2010-11-28 00:05:46 +00:00
Gregory John Casamento
be0954d2ac Change to GSThemeDrawing to implement drawTableHeaderRect:inView:
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31673 72102866-910b-0410-8b05-ffd578937521
2010-11-27 18:17:49 +00:00
Gregory John Casamento
942841a1d4 Added methods for drawing tableheader cell.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31668 72102866-910b-0410-8b05-ffd578937521
2010-11-27 03:51:13 +00:00
Gregory John Casamento
5751234b4b Adding methods to draw knob and bar to theme.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31666 72102866-910b-0410-8b05-ffd578937521
2010-11-26 22:48:46 +00:00
Gregory John Casamento
03ef6c2fb5 Correction for previous commit
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31664 72102866-910b-0410-8b05-ffd578937521
2010-11-26 21:41:19 +00:00
Gregory John Casamento
72963b2f49 Added theming for NSMenuView into GSTheme.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31660 72102866-910b-0410-8b05-ffd578937521
2010-11-26 20:28:45 +00:00
Gregory John Casamento
eac1ad07ad Adding theme method for NSBrowser drawing.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31658 72102866-910b-0410-8b05-ffd578937521
2010-11-26 19:49:04 +00:00
Gregory John Casamento
538432c72f Added method to draw scroller using theme.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31656 72102866-910b-0410-8b05-ffd578937521
2010-11-26 19:16:46 +00:00
Gregory John Casamento
8ed87de2f2 Added method to draw tab view to theme.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31654 72102866-910b-0410-8b05-ffd578937521
2010-11-26 18:08:58 +00:00
Fred Kiefer
49fdc602ba Remove a few compiler warnings.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31587 72102866-910b-0410-8b05-ffd578937521
2010-11-03 20:26:30 +00:00
Wolfgang Lux
a8e617e01f Correct serious nib loading bug on big endian machines.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@30472 72102866-910b-0410-8b05-ffd578937521
2010-05-29 08:32:02 +00:00
Gregory John Casamento
dae9464580 Add Xib loading header so that the classes in the GSXibLoader can be used by applications.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@30467 72102866-910b-0410-8b05-ffd578937521
2010-05-29 05:27:04 +00:00
Gregory John Casamento
70ab53498d * Headers/Additions/GNUstepGUI/GSTheme.h: Added method
displayPopUpMenu:... to handle the display of the popup menus for
	themes.
	* Source/GSThemeMenu.m: Added default implementation.
	* Source/NSPopUpButtonCell.m: Call the displayPopUpMenu:... method
	in the method attachPopUpWithFrame:inView:.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@30433 72102866-910b-0410-8b05-ffd578937521
2010-05-20 08:09:08 +00:00