Commit graph

3551 commits

Author SHA1 Message Date
Sergii Stoian
871735a3a6 * Source/NSTextView.m:
(drawRect:): Draw insertion point using _drawInsertionPointNow
ivar. Cleanup code.
(_blink:): Enable disabled insertion point blinking code.
(updateInsertionPointStateAndRestartTimer:): Implement insertion 
point blinking. Removed TODO.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24594 72102866-910b-0410-8b05-ffd578937521
2007-02-16 01:35:22 +00:00
Sergii Stoian
4b9e32d057 NSLayoutManager
(insertionPointRectForCharacterIndex:inTextContainer:): Remove
insertion point rectangle correction.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24572 72102866-910b-0410-8b05-ffd578937521
2007-02-14 17:54:00 +00:00
Sergii Stoian
f8cc62e978 (_insertionPointRectForCharacterIndex:textContainer:): Use
default font height for insertion point height if there is
no characters.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24571 72102866-910b-0410-8b05-ffd578937521
2007-02-14 17:42:07 +00:00
Sergii Stoian
02beced9a5 (menuBarHeight): Fix calculation. Set minimum height to 22.
(setFont:): Fix calculation default cell size.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24570 72102866-910b-0410-8b05-ffd578937521
2007-02-14 17:23:59 +00:00
Nicola Pero
f47b4c1754 Update for new gnustep-make
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24550 72102866-910b-0410-8b05-ffd578937521
2007-02-14 12:13:46 +00:00
Adam Fedor
3f70810790 * TextConverters/RTF/GNUmakefile.preamble: Add BUNDLE_LIBS.
* Source/NSImage.m: Move documentation from here.
* Header/AppKit/NSImage.h: To here.
* Headers/AppKit/NSImageRep.h, : Add documentation. (patch #5714).


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24495 72102866-910b-0410-8b05-ffd578937521
2007-02-10 03:45:22 +00:00
Fred Kiefer
ca4bba22ab Install header NSKeyValueBinding.h
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24492 72102866-910b-0410-8b05-ffd578937521
2007-02-09 09:39:43 +00:00
Fred Kiefer
98a1e3d934 Added NSLevelIndicator, code by Nikolaus Schaller <hns@computer.org>.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24489 72102866-910b-0410-8b05-ffd578937521
2007-02-07 15:43:39 +00:00
Matt Rice
ac14777bba * Source/NSBrowser.m (-doClick:): Don't reselect the selected cells.
Fixes bug #18881
        * Source/NSMatrix.m (-_selectPreviousSelectableCellBeforeRow:column):
        Update _selectedCells for the new selection.
        (-_selectNextSelectableCellAfterRow:column:):
        Ditto.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24483 72102866-910b-0410-8b05-ffd578937521
2007-02-06 10:13:43 +00:00
Matt Rice
7030dbfbb9 * Source/NSTableView.m (-_numRows): New quasi private method.
(-noteNumberOfRowsChanged:): Call _numRows instead of data source
        method.
        * Source/NSOutlineView.m (-noteNumberOfRowsChanged:): Don't override
        supers.
        (-_numRows): Implement.
        (-collapseItem:collapseChildren:): Remove use of _selectedObjects.
        (-expandItem:expandChildren:): Ditto.
        (-_removeChildren:): Ditto.
        (-initWithFrame:): Don't initialize _selectedObjects.
        (-initWithCoder:): Ditto.
        * Headers/AppKit/NSOutlineView.h: Mark _selectedObjects as unused.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24478 72102866-910b-0410-8b05-ffd578937521
2007-02-06 01:07:44 +00:00
Matt Rice
81252d87b5 * Source/NSOutlineView (-mouseDown:): Check item expandability before
expanding or collapsing.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24477 72102866-910b-0410-8b05-ffd578937521
2007-02-05 18:06:03 +00:00
Fred Kiefer
3df40fcbc7 Add Mac OS 10.3 methods and ivars.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24470 72102866-910b-0410-8b05-ffd578937521
2007-02-05 11:01:03 +00:00
Matt Rice
1c2821470e * Source/NSTableView (-mouseDown:): Release oldSelectedRows.
Mark done as yes instead of returning early, and avoid sending action
        multiple times.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24469 72102866-910b-0410-8b05-ffd578937521
2007-02-05 08:04:10 +00:00
Matt Rice
2d12498c2e * Source/NSTableView (-mouseDown:): Compute the selection immediately
instead of at the end of the loop.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24468 72102866-910b-0410-8b05-ffd578937521
2007-02-05 06:15:42 +00:00
Richard Frith-MacDonald
a39fcf72a5 minor dragging offset fix
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24466 72102866-910b-0410-8b05-ffd578937521
2007-02-04 13:00:15 +00:00
Matt Rice
16fcaeab83 * Source/NSTableView.m (-mouseDown:): Return early after tracking a
cell which prefersTrackingUntilMouseUp.
        * Source/NSPopUpButtonCell.m (+prefersTrackingUntilMouseUp:): Return
        yes.
        (-trackMouse:inRect:ofView:untilMouseUp:): Return yes or no
        depending on whether the mouse went up inside the menu or not.
        Fixes bug #18946



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24465 72102866-910b-0410-8b05-ffd578937521
2007-02-04 12:53:49 +00:00
Richard Frith-MacDonald
5dcabf4505 Add stubs for more font info.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24443 72102866-910b-0410-8b05-ffd578937521
2007-01-31 14:36:42 +00:00
Fred Kiefer
eb5e01cf4f Revert change to _setupTextWithFrame:..., now we again use always a clip
view, but with a different size, depending if the text should be
scrollable.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24433 72102866-910b-0410-8b05-ffd578937521
2007-01-30 13:39:57 +00:00
Matt Rice
0a9783724b * Source/NSTableView.m: Revert previous patch.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24431 72102866-910b-0410-8b05-ffd578937521
2007-01-30 03:37:11 +00:00
Matt Rice
c222792abd * Source/NSTableView.m (-textDidEndEditing:): Add missing break
to previous commit.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24426 72102866-910b-0410-8b05-ffd578937521
2007-01-28 21:00:11 +00:00
Matt Rice
a4eddcb158 * Source/NSTableView.m (-textDidEndEditing:): Handle
NSIllegalTextMovement.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24425 72102866-910b-0410-8b05-ffd578937521
2007-01-28 18:20:54 +00:00
Fred Kiefer
ff86a899ad Removed duplicate ivar _backgroundColor and started to clean up code in
this file. Better support for key equivalent display.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24420 72102866-910b-0410-8b05-ffd578937521
2007-01-27 14:15:20 +00:00
Fred Kiefer
0530b571da Draw round and circular bezel borders for button cells. Code by Nikolaus
Schaller <hns@computer.org>.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24415 72102866-910b-0410-8b05-ffd578937521
2007-01-25 13:11:49 +00:00
Fred Kiefer
91dccc4280 Mark for redisplay when selecting or deselecting the whole table.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24403 72102866-910b-0410-8b05-ffd578937521
2007-01-23 15:46:42 +00:00
Fred Kiefer
3ed672d301 Documentation patch by <stefanbidi@gmail.com>.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24401 72102866-910b-0410-8b05-ffd578937521
2007-01-23 14:44:35 +00:00
Fred Kiefer
e344345023 Add MaxOS 10.4 methods and required ivars to NSButtonCell, implemented
then and use this methods. Also adjusted subclasses tothis changes.
Split off theming code for buttons into two methods.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24400 72102866-910b-0410-8b05-ffd578937521
2007-01-23 14:17:02 +00:00
Matt Rice
3aa639828d * Source/NSWindow.m (-_lossOfKeyOrMainWindow): Use GSOrderedWindows.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24399 72102866-910b-0410-8b05-ffd578937521
2007-01-23 13:16:00 +00:00
Sergii Stoian
be6dee6f99 * 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
Fred Kiefer
8abc5f845a 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
Richard Frith-MacDonald
30fd0153be 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
Adam Fedor
b7aff57102 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
Fred Kiefer
ebc0de97f3 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
Fred Kiefer
34b0abf4d0 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
Richard Frith-MacDonald
bc34ad5f62 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
Matt Rice
88facd444e * 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
Matt Rice
a61f6e5479 * 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
Matt Rice
24f6989433 * 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
Matt Rice
d6fb03e8c5 * 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
Richard Frith-MacDonald
920dd174a8 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
Fred Kiefer
a24c80f048 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
Fred Kiefer
2eaf22ccb4 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
Richard Frith-MacDonald
1eefe4bf31 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
Mark Tracy
311911e218 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
Richard Frith-MacDonald
f92574fca1 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
Matt Rice
0c74ad4ec6 * 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
Matt Rice
9e50ac657d * 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
Matt Rice
640612f030 * 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
Matt Rice
8e09c9de77 * 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
Mark Tracy
9f633f60f6 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
Matt Rice
abfea70cf8 * 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