Commit graph

3524 commits

Author SHA1 Message Date
stoyan
4f53bd35bc * Source/GSTheme.m (-drawButton:view:style:state:): Call
[drawButton:withClip:] instead of [drawGreyBezel:withClip:] if
  state is highlighted (e.g. scroller buttons).



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24388 72102866-910b-0410-8b05-ffd578937521
2007-01-19 20:13:04 +00:00
fredkiefer
89b1a1133c Handle the keyboard selection of first entry in popup. Patch by Phillipe
Roussel <p.o.roussel@free.fr>


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24386 72102866-910b-0410-8b05-ffd578937521
2007-01-19 13:01:38 +00:00
rfm
417d610c39 fix include path
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24383 72102866-910b-0410-8b05-ffd578937521
2007-01-19 08:37:42 +00:00
fedor
cd20fc29db Check for invalid image size
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24381 72102866-910b-0410-8b05-ffd578937521
2007-01-18 20:28:50 +00:00
fredkiefer
aa68ca06dc Added MacOSX 10.4 methods to NSControl and reworked the whole cell
editing mechanism.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24380 72102866-910b-0410-8b05-ffd578937521
2007-01-18 17:24:33 +00:00
fredkiefer
9a71af08ad Added MacOS 10.4 methods for NSDocument, NSDocumentController,
NSPrintOperation, NSResponder and NSCell.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24378 72102866-910b-0410-8b05-ffd578937521
2007-01-17 12:09:41 +00:00
rfm
6f754401c4 Document some typedefs
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24351 72102866-910b-0410-8b05-ffd578937521
2007-01-15 10:18:24 +00:00
ratmice
bf0b1921cf * Source/NSMatrix.m (_selectCell:atRow:column:): Call setNextState
when in Track or Highlight mode.
        (-keyDown:): Call -selectCellAtRow:column: in Track or Highlight mode.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24345 72102866-910b-0410-8b05-ffd578937521
2007-01-14 00:40:05 +00:00
ratmice
e2375f3601 * Source/NSTableView.m (rectOfColumn:): Use the height of the rows,
not the bounds.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24290 72102866-910b-0410-8b05-ffd578937521
2006-12-28 23:18:44 +00:00
ratmice
260f8e7d58 * Source/NSSecureTextFieldCell (-drawInteriorWithFrame:): Draw
disabled cell with controlBackgroundColor.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24289 72102866-910b-0410-8b05-ffd578937521
2006-12-28 21:33:22 +00:00
ratmice
aca4927b57 * Source/NSTextFieldCell.m (-drawInteriorWithFrame:): Draw disabled
cell background with controlBackgroundColor.
        * Source/NSCell.m (-drawInteriorWithFrame:): Draw disabled cell text
        with disabledControlTextColor.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24288 72102866-910b-0410-8b05-ffd578937521
2006-12-28 21:26:10 +00:00
rfm
b5e970268a Minor theming updates.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24268 72102866-910b-0410-8b05-ffd578937521
2006-12-27 11:35:48 +00:00
fredkiefer
7ed2390b2e Added a basic implementation for undo in NSTextView.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24232 72102866-910b-0410-8b05-ffd578937521
2006-12-24 09:37:16 +00:00
fredkiefer
02c8c21ee3 dded basic support for the controller classes from Cocoa.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24218 72102866-910b-0410-8b05-ffd578937521
2006-12-19 18:35:16 +00:00
rfm
2f1b6de391 Patch to left alight long (multi-line) messages
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24213 72102866-910b-0410-8b05-ffd578937521
2006-12-18 15:16:14 +00:00
tracy454
13cf685b28 Autogsdoc comments for Source/NSBitmapImageRep.m
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24196 72102866-910b-0410-8b05-ffd578937521
2006-12-10 09:46:21 +00:00
rfm
902f903b5f fix for bug #18483
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24192 72102866-910b-0410-8b05-ffd578937521
2006-12-08 08:56:38 +00:00
ratmice
d3cc92e01c * Source/NSTextView.m: Don't update the selection when dragging a
NSColorPboardType.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24191 72102866-910b-0410-8b05-ffd578937521
2006-12-06 23:58:36 +00:00
ratmice
fb31d82947 * Source/NSWindowController.m (_windowDidLoad:): Pass an NSZeroPoint to
cascadeTopLeftFromPoint: on the first call.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24157 72102866-910b-0410-8b05-ffd578937521
2006-11-24 13:58:37 +00:00
ratmice
51ea5d2e9c * Source/NSTableView.m (_trackCellAtColumn:row:withEvent:):
Remove check for column editablity.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24152 72102866-910b-0410-8b05-ffd578937521
2006-11-23 11:57:03 +00:00
ratmice
110369a500 * Source/NSWindow.m (sendEvent:): Fix dragging for views which accept
dragging with subviews which accept dragging.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24143 72102866-910b-0410-8b05-ffd578937521
2006-11-21 13:46:18 +00:00
tracy454
fe851e6710 Change Log
Mon. 20-Nov-2006 Mark Tracy <tracy454 at concentric dot net>
Many changes related to bitmap images

1.  NSBitmapImateRep attribute global strings were not defined
    Fix: add definitions to externs.h, and declarations to NSBitmapImageRep.h
    Comment: Two strings defined in Cocoa were commented out: NSImageColorSyncData
      is proprietary to Apple, and NSImageEXIFData has no support elsewhere in
      GNUstep. I propose adding GSImageICCProfileData if and when color management
      is added to GNUstep.

2.  LZW compression in TIFF was disabled for lack of a test of its availability
    Fix: Implement NSTiffIsCodecConfigured(codec) in tiff.m
    Comment: As of libtiff-3.7.0, there is a function call in the API to test
      availability at runtime. For libtiff-3.6.0 (earlier?) there are macros
      #defined in tiffconf.h. The implementation check the library version at
      compile time, and uses one of the two methods. I have not tested the 
      second method for lack of an installation of an old libtiff.

3.  -canCompressUsing: relied on a static list of capabilities
    Fix: Use the new NSTiffIsCodecConfigured(codec) in NSBitmapImageRep.m
    Comment: The static list could be wrong, as it was on my system. Also
      eliminate the supports_lzw_compression flag.

4.  +getTIFFCompressionTypes:count: relied on a static list of compressors.
    Fix: Use the new NSTiffIsCodecConfigured(codec) in NSBitmapImageRep.m
    Comment: Compares GNUstep supported compressors against actual availability.
      Also change the private instance methods _localFromCompressionType and 
      _compressionTypeFromLocal to private class methods so that they can be used
      in -initWithTIFFImage:number: and -TIFFRepresentationUsingCompression:factor:
      and +getTIFFCompressionTypes:count: This is probably a clumsy implementation
      but it works.

5.  -setProperty:toValue: and -valueForProperty: were not implemented
    Fix: Add a new instance variable NSMutableDictionary * _properties to 
      NSBitmapImageRep.h and implemented accessors in NSBitmapImageRep.m. Patch
      -_initFromTIFFImage to set compression type and factor in _properties.
    Comment: This feature is used to pass options to and from JPEG, PNG, TIFF, and
      GIF in Cocoa, although the docs are kind of vague. In one case the Cocoa docs
      said the properties were set when reading a TIFF, but the implementation
      didn't; I chose to implement the docs. Cocoa does use properties when 
      exporting bitmaps, so I implemented that.

6.  Checked and updated NSBitmapImageFileType in NSBitmapImageRep.h
    Fix: confirmed the enumeration values against Cocoa, and added 
      NSJPEG2000FileType = 5
    Comment: JPEG-2000 is not implemented, just reserved a space for it.

7.  -representationUsingType:properties: was not implemented
    Fix: Implement export of TIFF, JPEG, GIF and PNG in NSBitmapImage.m
    Comment: See the change notes for JPEG, GIF, and PNG for more. BMP and JPEG-2000
      are not implemented; they just log a message to that effect. As apparently
      Cocoa does it this way, if you pass nil for properties, it falls back to 
      the internal _properties, and if that is empty, there are some safe defaults.

8.  +representationfOfImageRepsInArray:UsingType:properties: was not implemented
    Fix: Partially implement in NSBitmapImageRep.m
    Comment: I just stole the incomplete code from
      +TIFFRepresentationOfImageRepsInArray: since I have yet to find an explanation
      of how this really ought to work.

9.  JPEG export didn't handle alpha channel, properties or errors.
    Fix: Add -_JPEGRepresentationWithProperties:errorMessage: to
      NSBitmapImageRep+JPEG.h and greatly rework Nicolas Roard's code in
      NSBitmapImageRep+JPEG.m. Patch -_initBitmapFromJPEG:errorMessage to
      write properties.
    Comment: Major rewrite of Nicolas Roard's JPEG export code. 
    To do: Support for planar bitmaps and support for colorspaces other than
      RGB(A).

10. PNG export not implemented
    Fix: Add -_PNGRepresentationWithProperties: to
      NSBitmapImageRep+PNG.h and implement NSBitmapImageRep+PNG.m
    Comment: No support yet for planar bitmaps. Only supports 
      NS*WhiteColorSpace and NS*RGBColorSpace. Does support alpha. Support for
      reading and writing NSImageGamma is experimental. In keeping with Cocoa,
      the property NSImageGamma ranges from 0.0 to 1.0; representing the range
      of minimum supported gamma to maximum supported gamma, in this case 1.0
      to 2.5. This is in contrast to GNUstep where by convention the property
      would range from 0.0 to 255.0.
    To do: proper error message support

11. GIF export not implemented
    Fix: Add -_GIFRepresentationWithPropterties:errorMessage: to
      NSBitmapImageRep+GIF.h and implement in NSBitmapImageRep+GIF.m
    Comments: Supports only RGB(A) colorspaces, but ignores alpha. Supports
      planar or interleaved bitmaps. Supports properties NSImageRGBColorTable.

12. -_initBitmapFromGIF:errorMessage: did not support transparency
    Fix: Don't ignore control blocks in NSBitmapImageRep+GIF.m; check for
      transparency.
    Comment: If a transparent color is found, it adds an alpha channel to the 
      bitmap. Also, save the color table in properties.

13. -_initBitmapFromGIF:errorMessage: would show the last image in a 
      multi-image GIF file
    Fix: Break the parsing loop after the first image in NSBitmapImageRep+GIF.m
    Comment: Also check for frame duration, and set that property. There is not
      yet any support for animated GIF. This will require some additional 
      infrastructure, and I won't do it unless asked.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24140 72102866-910b-0410-8b05-ffd578937521
2006-11-21 06:36:26 +00:00
ratmice
d3895d8f14 * Source/NSTextView_actions.m: Change cursor movement implementations
when collapsing a selection.
        * Source/NSParagraphStyle.m (-setBaseWritingDirection:): Add comment.
        * Source/NSAttributedString: Add and remove characters in the word
        break character set.
        * KeyBindings/DefaultKeyBindings.dict: Change control-f and control-b
        to moveForward: and moveBackward:



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24136 72102866-910b-0410-8b05-ffd578937521
2006-11-20 16:20:15 +00:00
rfm
65f7efa8fd Move main part of affine transform code to base for MacOS-X compatibility
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24133 72102866-910b-0410-8b05-ffd578937521
2006-11-19 11:32:51 +00:00
rfm
ae92dd8ca2 Adjust to fix corner view for scroillers on right.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24128 72102866-910b-0410-8b05-ffd578937521
2006-11-18 14:56:09 +00:00
rfm
8854f61fe3 Merge in some theming changes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24120 72102866-910b-0410-8b05-ffd578937521
2006-11-17 08:54:20 +00:00
nicola
445af8595d Updated to use GNUSTEP_INSTALLATION_DOMAIN instead of GNUSTEP_INSTALLATION_DIR; DESTDIR instead of INSTALL_ROOT_DIR; and fixed some makefile installation bugs
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24094 72102866-910b-0410-8b05-ffd578937521
2006-11-15 16:59:32 +00:00
ratmice
c591ede518 * Source/NSTableView.m (-noteNumberOfRowsChanged:): Post selection
is and did change notifications if changing the selected rows.
        * Source/NSSliderCell.m (-copyWithZone:): Make a little clearer.
        * Source/NSMatrix.m (-_rebuildLayoutAfterResize): Don't change the
        intercell spacing if not autosizing cells.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24080 72102866-910b-0410-8b05-ffd578937521
2006-11-13 05:23:24 +00:00
ratmice
7f655aeb97 * Source/NSSliderCell.m: Implement copyWithZone:.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24075 72102866-910b-0410-8b05-ffd578937521
2006-11-11 18:11:21 +00:00
ratmice
84a779733b * Source/NSOutlineView.m: Handle rowAtPoint: returning -1.
* Source/NSTableView.m (drawRect:): Only call
        -highlightSelectionInClipRect: and -drawGridInClipRect: once.
        (-drawGridInClipRect:): Constrain the vertical grid line to the last
	 row drawn in the rect.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24071 72102866-910b-0410-8b05-ffd578937521
2006-11-10 19:12:32 +00:00
ratmice
8a63fd2e1d * Source/NSTableView.m (rowAtPoint:): Return -1 if the point is under
the last row.
        (mouseDown:): Handle rowAtPoint: returning -1.
        (rectOfRows:): Ditto.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24070 72102866-910b-0410-8b05-ffd578937521
2006-11-10 17:05:20 +00:00
ratmice
df9d0fdc7f * Source/NSTableView.m (mouseDown:): Rename some local variables
to be less ambiguous.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24068 72102866-910b-0410-8b05-ffd578937521
2006-11-10 14:35:31 +00:00
ratmice
8bc0cabc6b * Headers/AppKit/NSTableView.h: Add ivar for
verticalMotionCanBeginDrag.
        * Source/NSTableView.m: Implement verticalMotionCanBeginDrag
        bump class version.
        * Source/NSTextView_actions.m: Fix method name from previous changes.
        * KeyBindings/DefaultKeyBindings.dict: Add new key bindings.
        * ChangeLog: Add to description of a previous change.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24067 72102866-910b-0410-8b05-ffd578937521
2006-11-10 13:40:28 +00:00
ratmice
dbd3ed1d29 * Source/NSTableView.m (selectContiguousRegion): Remove usage of
offsets.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24060 72102866-910b-0410-8b05-ffd578937521
2006-11-09 12:59:04 +00:00
ratmice
3aeb6dd710 * Source/NSTableView.m: Implement keyboard navigation/selection.
Fixes bug #11942.
        (-selectRow:byExtendingSelection:): Update _clickedRow.
        (-mouseDown:): Ditto.
        * Source/NSSlider.m (keyDown:): Call supers implementation if we don't
        use the key stroke.




git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24054 72102866-910b-0410-8b05-ffd578937521
2006-11-09 01:28:58 +00:00
ratmice
959f0eaff3 * Source/NSTableView.m: Whitespace changes to conform to coding
standards.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24049 72102866-910b-0410-8b05-ffd578937521
2006-11-07 10:46:10 +00:00
ratmice
21acbeb85f * Source/NSTableView.m (-mouseDown): Only call editWithFrame: from a
double click. Don't track cells from a mouse dragged.
        Add comments.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24048 72102866-910b-0410-8b05-ffd578937521
2006-11-07 10:26:57 +00:00
ratmice
619d967ebc * Source/NSTextView_actions.m: Fix keyboard movement scrolling.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24037 72102866-910b-0410-8b05-ffd578937521
2006-11-06 16:04:12 +00:00
ratmice
c4945b1c51 * Source/NSTextView_actions.m: Remove hack from previous patch.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24036 72102866-910b-0410-8b05-ffd578937521
2006-11-06 15:30:44 +00:00
rfm
30182a3f19 documentation cleanups
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24035 72102866-910b-0410-8b05-ffd578937521
2006-11-06 13:58:37 +00:00
ratmice
f111ea9e46 * Source/NSTextView_actions.m: Implement some undocumented key
binding actions.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24033 72102866-910b-0410-8b05-ffd578937521
2006-11-06 10:56:48 +00:00
ratmice
b913f96dc2 * Source/NSTextView_actions.m:
* Source/NSOpenPanel.m:
        * Source/GSLayoutManager.m:
        * Source/NSLayoutManager.m:
        * Source/NSSavePanel.m:
        * Source/NSTextView.m:
        * Source/NSStringDrawing.m:
        * Headers/Additions/GNUstepGUI/GSLayoutManager_internal.h:
        * Headers/AppKit/NSTextView.h: Remove underscores from category names
        as they can confuse the debugger.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24032 72102866-910b-0410-8b05-ffd578937521
2006-11-06 10:19:20 +00:00
ratmice
490db23477 * Source/NSSlider.m (-keyDown:): Implement, Fixes bug #14000.
* Source/NSSliderCell.m (-trackMouse:...): Fix allows tick marks
        only mouse tracking.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24031 72102866-910b-0410-8b05-ffd578937521
2006-11-05 19:22:00 +00:00
ratmice
9b293b4147 * Source/NSColorPanel.m: Implement -worksWhenModal:. Fixes bug #9417.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24030 72102866-910b-0410-8b05-ffd578937521
2006-11-05 11:13:29 +00:00
ratmice
8c4d95eaed * Source/NSTableView (_editNextCellAfterRow:inColumn:):
Wrap around when number of rows is exceeded.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24019 72102866-910b-0410-8b05-ffd578937521
2006-11-03 09:44:05 +00:00
rfm
c7ab9084e8 merge in some theme branch changes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24017 72102866-910b-0410-8b05-ffd578937521
2006-11-02 19:42:42 +00:00
ratmice
67bbe5ea4b * Source/NSTableView.m:
(-editColumn:row:withEvent:select:): Raise when passed an unselected
        row.
        (-textDidEndEditing:): Handle NSReturnTextMovement.
        (_editNextCellAfterRow:inColumn:): New private method.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24008 72102866-910b-0410-8b05-ffd578937521
2006-11-01 10:17:55 +00:00
ratmice
c8a1031081 * Source/NSTableView.m: Add new private methods.
(-mouseDown:): Reorganize and don't track cells until dragging
        has been ruled out.
        * Source/NSCell.m (trackMouse:inRect:ofView:untilMouseUp:):
        Handle events no longer in the queue.
        * Source/GSDragView.m: Change NSLog to NSDebugLLog.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24007 72102866-910b-0410-8b05-ffd578937521
2006-11-01 09:50:00 +00:00
ratmice
e2b7911921 * Tools/gopen.m
*  Source/NSView.m
        *  Source/GSPDFPrintOperation.m
        *  Source/NSHelpManager.m
        *  Source/GSHelpManagerPanel.m: Add missing includes.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24006 72102866-910b-0410-8b05-ffd578937521
2006-10-31 13:38:00 +00:00
rfm
e4701144ee Add missing include
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24004 72102866-910b-0410-8b05-ffd578937521
2006-10-31 13:14:59 +00:00