Commit graph

174 commits

Author SHA1 Message Date
Gregory John Casamento
53ca2a14c2 Prevent initWithCoder: from calling initWithFrame: in NSView. According to the documentation, initWithFrame: should not be called when the view is unarchiving itself. Similar changes were needed in other classes since they depended on this call to initialize themselves, so some init code was added to initWithCoder:.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@23143 72102866-910b-0410-8b05-ffd578937521
2006-07-07 01:39:16 +00:00
Fabien Vallon
61b554afdc Improved documentation
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@22101 72102866-910b-0410-8b05-ffd578937521
2005-11-25 11:23:28 +00:00
Richard Frith-Macdonald
7971a89c72 Coding style fixups
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@22019 72102866-910b-0410-8b05-ffd578937521
2005-11-16 11:34:25 +00:00
Fabien Vallon
4cfb6e8097 Improve documentation
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@21968 72102866-910b-0410-8b05-ffd578937521
2005-11-08 15:27:06 +00:00
Fred Kiefer
ed11dd4840 Corrected bug 14901.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@21941 72102866-910b-0410-8b05-ffd578937521
2005-11-03 22:26:00 +00:00
Sergii Stoian
7ae7d410bf Fix calculating columns width for unseparated columns
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@21641 72102866-910b-0410-8b05-ffd578937521
2005-08-16 23:21:26 +00:00
Adam Fedor
303dd1baf9 Update FSF Address.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@21259 72102866-910b-0410-8b05-ffd578937521
2005-05-26 02:52:46 +00:00
Fred Kiefer
0aa987bab9 Small keyed decoding improvements.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@20768 72102866-910b-0410-8b05-ffd578937521
2005-02-21 00:59:32 +00:00
Sergii Stoian
7d048ada92 scroler fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@19642 72102866-910b-0410-8b05-ffd578937521
2004-06-28 13:19:32 +00:00
Sergii Stoian
a8d583157b updateScoller fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@19617 72102866-910b-0410-8b05-ffd578937521
2004-06-25 22:31:10 +00:00
Sergii Stoian
a24e83cad5 NSBrowser selection fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@19612 72102866-910b-0410-8b05-ffd578937521
2004-06-24 22:31:46 +00:00
Sergii Stoian
25fe6d035e NSBrowser column and horizontal scroller widths fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@19606 72102866-910b-0410-8b05-ffd578937521
2004-06-23 21:43:54 +00:00
Fred Kiefer
f962706ef0 Use GSDrawingFunctions instead of Function.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@19483 72102866-910b-0410-8b05-ffd578937521
2004-06-07 23:54:25 +00:00
Sergii Stoian
09960c9dc8 [drawRect:] use _bounds instead of rect for NSDrawGrayBezel
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@19328 72102866-910b-0410-8b05-ffd578937521
2004-05-14 20:42:05 +00:00
Alexander Malmberg
3b4a1570d4 (-keyDown:): When the user selects a cell by typing a partial name, make sure all other cells are deselected.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@19090 72102866-910b-0410-8b05-ffd578937521
2004-04-13 22:42:30 +00:00
Fred Kiefer
df3b584a19 Added keyed decoding.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@18510 72102866-910b-0410-8b05-ffd578937521
2004-01-30 19:49:00 +00:00
Sergii Stoian
a6b85fa0ea Better handling of cases with and without horizontalscroller
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@18428 72102866-910b-0410-8b05-ffd578937521
2004-01-17 10:15:45 +00:00
Sergii Stoian
9f9aeb843f Cosmetic changes in drawing of column separators and horizontal scroller border.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@18344 72102866-910b-0410-8b05-ffd578937521
2004-01-09 11:28:56 +00:00
Fred Kiefer
1a92dfe9bb Small graphics cleanups
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@18103 72102866-910b-0410-8b05-ffd578937521
2003-11-22 16:14:01 +00:00
David Ayers
f3785d2cea Fix typo.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@17766 72102866-910b-0410-8b05-ffd578937521
2003-10-02 12:26:28 +00:00
David Ayers
e9a7c38ea7 * Source/NSBrowser.m (-[NSBrowser setDelegate]):
Set _passiveDelegate to YES for 'nil' delegate.
        Use GSObjCRuntime functions to get selector names.
        Update documentation.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@17765 72102866-910b-0410-8b05-ffd578937521
2003-10-02 11:49:10 +00:00
David Ayers
337e3d3e81 * Source/NSBrowser.m (-[NSBrowser setDelegate]:): Check for
nil object to allow unsetting the delegate.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@17764 72102866-910b-0410-8b05-ffd578937521
2003-10-02 10:15:20 +00:00
Fred Kiefer
e14bb3bc96 Patch by Christopher Culver:
Define empty [sizeToFit] method to override NSControl implementation.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@17747 72102866-910b-0410-8b05-ffd578937521
2003-09-29 21:15:37 +00:00
Alexander Malmberg
0ab3be5eb5 Don't do initialization that requires the shared application object/backend too early (ie. move it from +initialize to other methods). Add some asserts to try to catch these errors in the future.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@17503 72102866-910b-0410-8b05-ffd578937521
2003-08-20 12:43:52 +00:00
Adam Fedor
1f8c6011b3 Broweser, ImageCell fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@17487 72102866-910b-0410-8b05-ffd578937521
2003-08-18 03:28:58 +00:00
Adam Fedor
a3113ee753 * Source/NSDocument.m ([NSDocument -init]): Check the count of the
types array and uses Viewer and Editor NSRoles to set the default
type.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@17485 72102866-910b-0410-8b05-ffd578937521
2003-08-16 17:12:34 +00:00
David Ayers
b18f1c4ac4 Header reorganization - Please refer to ChangeLog
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@17408 72102866-910b-0410-8b05-ffd578937521
2003-07-31 23:52:10 +00:00
Sergii Stoian
42b6ef6744 Border type of column's scroll view fix
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@17082 72102866-910b-0410-8b05-ffd578937521
2003-07-01 13:41:48 +00:00
Adam Fedor
6be9174933 Include <> -> ""
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16917 72102866-910b-0410-8b05-ffd578937521
2003-06-13 15:01:12 +00:00
Fred Kiefer
e5c6ff4ab0 (-setPath:, pathToColumn:, -addColumn):
Removed compiler warning about signed/unsigned comparision.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16888 72102866-910b-0410-8b05-ffd578937521
2003-06-08 00:27:13 +00:00
Alexander Malmberg
09c02037d7 (-_createColumn:): Set the border of the created scroll view explicitly.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15940 72102866-910b-0410-8b05-ffd578937521
2003-02-11 16:57:12 +00:00
Richard Frith-Macdonald
e8ca345d45 Browser setPath: fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15929 72102866-910b-0410-8b05-ffd578937521
2003-02-11 06:43:05 +00:00
Nicola Pero
ba494c7cd9 Lock focus / unlock focus optimizations and fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15839 72102866-910b-0410-8b05-ffd578937521
2003-02-01 05:10:00 +00:00
Adam Fedor
356a824ea8 Document. Fix up NSDebugLogs
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@14727 72102866-910b-0410-8b05-ffd578937521
2002-10-12 03:14:22 +00:00
Adam Fedor
3e452ef940 Minor browser column fix. Change some methods to take void *
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@14663 72102866-910b-0410-8b05-ffd578937521
2002-10-07 17:05:06 +00:00
Adam Fedor
b909bc1fbf Implement non-separated columns.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@14645 72102866-910b-0410-8b05-ffd578937521
2002-10-04 18:47:04 +00:00
Fred Kiefer
6c6703400a Removed unused ivar _numberOfRows from NSBrowserColumn.
Made GSBrowserTitleCell a subclass of NSTableHeaderCell.
Corrected [scrollColumnToVisible:], so that the column becomes
visible but not always last. Adopted [scrollViaScroller:] to this
change. Inlined most private methods and optimized the
code. Reorganized [_performLoadOfColumn:] to remove code
duplication. Set the title of a column here and not each time
when drawing.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@14513 72102866-910b-0410-8b05-ffd578937521
2002-09-22 22:10:50 +00:00
Fred Kiefer
a928378a45 Use _lastColumnLoaded instead of _lastVisibleColumn in
[selectAll:]. Implemented MacOSX [drawTitleOfColumn:inRect:].
Optimized [matrixInColumn:] and use it where suitable.
Moved calls to [_adjustMatrixOfColumn:] inside of [_performLoadOfColumn:]


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@14450 72102866-910b-0410-8b05-ffd578937521
2002-09-15 21:24:32 +00:00
Adam Fedor
9feb05cdf8 Add back +initialize
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@14418 72102866-910b-0410-8b05-ffd578937521
2002-09-08 03:23:31 +00:00
Adam Fedor
864071096e Convert comments for gsdoc. Updated delegate calls. Conformto MacOSX
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@14417 72102866-910b-0410-8b05-ffd578937521
2002-09-08 03:06:45 +00:00
Adam Fedor
8a2511700f Set horizontal scroller frame only if we have one
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@14354 72102866-910b-0410-8b05-ffd578937521
2002-08-27 15:49:06 +00:00
Nicola Pero
a629d66a89 Fixed variable declared with the wrong type
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@13671 72102866-910b-0410-8b05-ffd578937521
2002-05-21 15:59:03 +00:00
Adam Fedor
b9f0e1a9cd Change so rint is only defined when needed.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@13464 72102866-910b-0410-8b05-ffd578937521
2002-04-12 02:15:51 +00:00
Nicola Pero
be371e47d7 Added missing #includes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@13442 72102866-910b-0410-8b05-ffd578937521
2002-04-11 23:17:42 +00:00
Adam Fedor
37f98cebdf Put RINT defs in config.h
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@13420 72102866-910b-0410-8b05-ffd578937521
2002-04-11 02:18:13 +00:00
Pierre-Yves Rivaille
fba144b38e NSBrowserColumn: new methods initWithCoder & encodeWithCoder
now complies to NSCoding
[NSBrowser -initWithCoder:] & [NSBrowser -encodeWithCoder:]: major update
to previous implementation. It is now usable with Gorm and should not
generate memory leaks anymore.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@11807 72102866-910b-0410-8b05-ffd578937521
2001-12-18 13:33:13 +00:00
Adam Fedor
d47e202fbe Markup for autogsdoc
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@11788 72102866-910b-0410-8b05-ffd578937521
2001-12-17 16:51:51 +00:00
Laurent Julliard
03bfda7aa2 colCount and _firstVisible Column must always be decoded
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@11447 72102866-910b-0410-8b05-ffd578937521
2001-11-21 13:28:28 +00:00
Laurent Julliard
e5f5cda54a NSBrowser encoder and decoder added
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@11418 72102866-910b-0410-8b05-ffd578937521
2001-11-15 15:53:31 +00:00
Nicola Pero
b71c370c78 Replaced inefficient call to [matrix sizeToFit] with much more efficient
determination of the browsercell height


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@11348 72102866-910b-0410-8b05-ffd578937521
2001-11-08 22:49:56 +00:00
Nicola Pero
74ce36e003 Updated for change in NSCell API to prevent crashes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@11233 72102866-910b-0410-8b05-ffd578937521
2001-10-24 10:05:56 +00:00
Michael Silva
6036c8b9ba Fixed NSBrowser to not crash upon visualization.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@10853 72102866-910b-0410-8b05-ffd578937521
2001-09-08 21:42:03 +00:00
Pierre-Yves Rivaille
ab5209f426 [NSBrowser -_performLoadOfColumn:] : improved performance when loading
previously unloaded column with a passive delegate


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@10732 72102866-910b-0410-8b05-ffd578937521
2001-08-20 10:12:11 +00:00
Gregory John Casamento
016e021fc1 Added nextKeyView to views withing gmodel to allow user to tab between buttons. Fixed a bug in NSBrowser. Made some corrections to NSSpellChecker and [NSTextView checkSpelling:]
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@10641 72102866-910b-0410-8b05-ffd578937521
2001-08-03 05:16:49 +00:00
Adam Fedor
6fc3726a02 Fixes to compile shared on Windows
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@10611 72102866-910b-0410-8b05-ffd578937521
2001-07-30 21:30:51 +00:00
Pierre-Yves Rivaille
9ee63720bf 2001-07-23 Pierre-Yves <pyrivail@ens-lyon.fr>
* Source/NSBrowser.h: Add instance variables to support alphanumerical
	keys. Add GNUstepExtensions category with alpahnumerical-key-related
	methods (acceptsAlphaNumericalKeys, setAcceptsAlphaNumericalKeys:,
	sendsActionOnAlphaNumericalKeys, setSendsActionOnAlphaNumericalKeys:)
	* Source/NSBrowser.m: Add GNUstepExtensions category methods
	* Source/NSBrowser.m (-initWIthFrame:): initialization of the
	alphanumerical-key-related instance variables.
	* Source/NSBrowser.m (-dealloc): TEST_RELEASE a keyDown internal object
	* Source/NSBrowser.m (-keyDown): support for alphanumerical keys
	* Source/NSBrowser.m (-selectRow:inColumn:): when calling
	[matrix cellAtRow:column:], column should be 0 (not column)


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@10531 72102866-910b-0410-8b05-ffd578937521
2001-07-23 13:52:32 +00:00
Adam Fedor
a56278096e Merge from 0.7.0
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@10329 72102866-910b-0410-8b05-ffd578937521
2001-07-09 02:49:03 +00:00
Nicola Pero
49c22025ea Fixed keyboard navigation with TAB
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@10188 72102866-910b-0410-8b05-ffd578937521
2001-06-16 11:05:16 +00:00
Mirko Viviani
b9d6351bc9 * Source/NSSavePanel.m ([NSSavePanel -_initWithoutGModel]): do not set
the max number of columns for the browser.

* Source/NSBrowser.m ([NSBrowser -tile]): control column width and
recalculate number of visible columns.
([NSBrowser -setMaxVisibleColumns:]): moved code in -tile.
([NSBrowser -displayAllColumns]): removed redundant methods.
([NSBrowser -initWithFrame:]): set _minColumnWidth to 100.0
([NSBrowser -numberOfVisibleColumns]): fixed. Return the number or
_visible_ columns. (not number of all loaded columns)
([NSBrowser -scrollColumnToVisible:]): use -numberOfVisibleColumns
instead of _maxVisibleColumns that could be 0.
([NSBrowser -updateScroller]): likewise.
([NSBrowser -scrollViaScroller:]): likewise.
([NSBrowser -_unloadFromColumn:]): likewise.
Removed all the fprintf() debug.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@10166 72102866-910b-0410-8b05-ffd578937521
2001-06-11 20:28:02 +00:00
Nicola Pero
c20baa2698 Fixed bugs in resizing
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@10157 72102866-910b-0410-8b05-ffd578937521
2001-06-10 17:38:19 +00:00
Nicola Pero
4555623c83 Tidied indentation
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@10156 72102866-910b-0410-8b05-ffd578937521
2001-06-10 17:35:35 +00:00
Mirko Viviani
078c761daa * configure.in: added /usr/local/include and /usr/local/lib for
FreeBSD. Use ADDITIONAL_LIB_DIRS instead of ADDITIONAL_LD_FLAGS.
* config.make.in (ADDITIONAL_LIB_DIRS): renamed.
* config.guess: new file.
* config.sub: new file.
* install-sh: new file.

* Source/NSSavePanel.m ([NSSavePanel -setDelegate:]): check for -panel:
userEnteredFilename:confirmed:
([NSSavePanel -ok:]): call delegate method -panel:userEnteredFilename:
confirmed: (MacOS X). Run an alert panel if the filename already exists
([NSSavePanel -browser:selectCellWithString:inColumn:]): removed
keyboard handling.

* Headers/gnustep/gui/NSSavePanel.h: added ivar.

* Source/NSBrowserCell.m ([NSBrowserCell -highlightColorInView:]):
return the highlight color of the cell. (Mac OS X)
([NSBrowserCell -drawInteriorWithFrame:inView:]): use highlight color
from previous method.

* Headers/gnustep/gui/NSBrowserCell.h: added method.

* Source/NSMatrix.m ([NSMatrix -_mouseDownNonListMode:]): when
tracking the mouse use cell's +prefersTrackingUntilMouseUp
([NSMatrix -_move:]): new private method.
Fixed deselection of cells in NSRadioModeMatrix and NSListModeMatrix.
([NSMatrix -moveUp:]): use _move: to reduce maintance.
([NSMatrix -moveDown:]): likewise.
([NSMatrix -moveLeft:]): likewise.
([NSMatrix -moveRight:]): likewise.
([NSMatrix -getRow:column:ofCell:]): if cell does not exist set row and
column to -1.
([NSMatrix -mouseDown:]): does not select and highlight a cell at the
same time. Ensure that only a cell at a time has the dotted outile.

* Source/NSBrowser.m ([NSBrowser -addColumn]): load a column and scroll
if necessary.
([NSBrowser -doClick:]): rearranged for the new -addColumn
([NSBrowser -setPath:]): likewise and removed additional redisplay.
([NSBrowser -_createColumn]): method to create a new NSBrowserColumn.
([NSBrowser -setMaxVisibleColumns:]): use _createColumn
([NSBrowser -initWithFrame:]): likewise.
([NSBrowser -doClick:]): fixed selection problems.
([NSBrowser -selectRow:inColumn:]): fixed cell selection and perform
load of column if cell is not a leaf.
([NSBrowser -loadColumnZero]): use -addColumn to load column zero.
([NSBrowser -setLastColumn:]): check for min value of column.
([NSBrowser -reloadColumn:]): check with _lastColumnLoaded instead in
the column browser.
([NSBrowser -moveLeft:]): fixed an index out of bound exception when
it was selected the first column.
([NSBrowser -moveRight:]): does nothing if multiple cells are selected
or if the cell is a leaf.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@9938 72102866-910b-0410-8b05-ffd578937521
2001-05-13 20:59:21 +00:00
Mirko Viviani
f005f68b2c * Source/NSButtonCell.m ([NSButtonCell -drawInteriorWithFrame:
inView:]): fix mask if cell is highlighted and it isn't in off state.

* Source/NSCell.m ([NSCell -trackMouse:inRect:ofView:untilMouseUp:]):
set next cell state and send action after -stopTracking:

* Source/NSBrowser.m ([NSBrowser -keyDown:]): does nothing for arrow up
and down.
([NSBrowser -moveUp:]): removed.
([NSBrowser -moveDown:]): removed.
([NSBrowser -_performLoadOfColumn:]): fix matrix creation, enable
matrix autoscroll.
([NSBrowser -_performLoadOfColumn:]): implemented reusesColumns.

* Source/NSMatrix.m ([NSMatrix -keyDown:]): implemented keyboard
navigation.
([NSMatrix -moveUp:]): likewise.
([NSMatrix -moveDown:]): likewise.
([NSMatrix -moveLeft:]): likewise.
([NSMatrix -moveRight:]): likewise.
([NSMatrix -performClick:]): implemented.
([NSMatrix -mouseDown:]): scroll rect only if autoscroll is enabled,
do not hightlight a cell directly but use the matrix method.
Now it handles only NSListModeMatrix mode to reduce complexity
introduced by other modes.
([NSMatrix -_mouseDownNonListMode:]): fixed.
([NSMatrix -highlightCell:atRow:column:]): enable the cell dotted
outline.
([NSMatrix -drawCellAtRow:column:]): likewise.
([NSMatrix -drawRect:]): removed drawing of dotted outline. Rewritten
due to changes in -getRow:column:forPoint:
([NSMatrix -getRow:column:forPoint:]): set row and column to -1 if
point is not inside a cell.
([NSMatrix -_selectCell:atRow:column:]): use mnemonic value for cell
state, does not enable dotted outline and check for nil aCell.
([NSMatrix -selectTextAtRow:column:]): likewise.
([NSMatrix -_setState:highlight:startIndex:endIndex:]): use matrix
highlightCell: method and mnemonic for cell state.
([NSMatrix -deselectAllCells]): likewise.
([NSMatrix -selectAll:]): likewise.
([NSMatrix -setSelectionFrom:to:anchor:highlight:]): likewise.
([NSMatrix -performKeyEquivalent:]): select next cell state.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@9594 72102866-910b-0410-8b05-ffd578937521
2001-04-16 19:52:52 +00:00
Mirko Viviani
631fba3e97 * Source/NSBrowser.m ([NSBrowser -_unloadFromColumn:]): fix index out
of bound (patch by Enrico Sersale <enrico@imago.ro>)


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@9474 72102866-910b-0410-8b05-ffd578937521
2001-03-22 16:38:24 +00:00
Mirko Viviani
60b8f20ce4 * Source/NSButtonCell.m ([NSButtonCell -setCellAttribute:to:]):
implemented.
([NSButtonCell -cellAttribute:]): implemented.

* Source/NSPopUpButton.m ([NSPopUpButton -keyDown:]): implemented
keyboard selection.
([NSPopUpButton -resignFirstResponder]): implemented.
([NSPopUpButton -resignKeyWindow]): implemented.

* Source/NSPopUpButtonCell.m ([NSPopUpButtonCell
-drawInteriorWithFrame:inView:]): from -drawWithFrame:inView:

* Source/NSButton.m ([NSButton -becomeFirstResponder]): set cell first
responder.
([NSButton -resignFirstResponder]): likewise.
([NSButton -becomeKeyWindow]): likewise.
([NSButton -resignKeyWindow]): likewise.

* Source/NSBrowserCell.m ([NSBrowserCell -drawInteriorWithFrame:
inView:]): draw correct dotted box.

* Source/NSBrowser.m ([NSBrowser -becomeFirstResponder]): make first
responder the latest column.
([NSBrowser -acceptsFirstResponder]): accepts first responder status.
([NSBrowser -keyDown:]): handle tabs to select next/previous key view.
([NSBrowser -moveRight:]): make browser column the first responder.
([NSBrowser -moveUp:]): likewise.
([NSBrowser -moveDown:]): likewise.
([NSBrowser -moveLeft:]): likewise.
([NSBrowser -_unloadFromColumn:]): remove columns from superview and
array.
([NSBrowser -_remapColumnSubviews:]): set the correct first responder.

* Source/NSWindow.m ([NSWindow -sendEvent:]): retain/release first
responder for keyUp/keyDown events. Discard NSLeftMouseDown for closed
windows.
([NSWindow -dealloc]): release _originalResponder

* Source/NSView.m ([NSView -removeSubview:]): remove next responder.

* Source/NSCell.m ([NSCell -setUpFieldEditorAttributes:]): clear
selected range.
([NSCell -editWithFrame:inView:editor:delegate:event:]): redisplay
textObject after invoking mouseDown:
([NSCell -drawInteriorWithFrame:inView:]): draw dotted-line outline
when first responder.
([NSCell -setCellAttribute:to:]): implemented.

* Source/NSTextView.m ([NSTextView -moveUp:]): don't call
_illegalMovement: for the text field editor.
([NSTextView -moveDown:]): likewise.
([NSTextView -moveLeft:]): likewise.
([NSTextView -moveRight:]): likewise.

* Source/NSTextField.m ([NSTextField -textDidEndEditing:]): fixed
return/tab/backtab text movement code.

* Headers/gnustep/gui/NSGraphics.h: added NSDottedFrameRect prototype.

* Headers/gnustep/gui/NSMatrix.h: added ivars for dotted frame rect.
* Source/NSMatrix.m ([NSMatrix -selectCell:]): implemented.
([NSMatrix -_selectCell:atRow:column:]): new method.
([NSMatrix -selectCellAtRow:column:]): call _selectCell:atRow:column:
([NSMatrix -selectCellWithTag:]): likewise.
([NSMatrix -selectAll:]): Do not select disabled or editable cells.
([NSMatrix -textDidEndEditing:]): fixed return/tab/backtab text
movement code.
([NSMatrix -_selectNextSelectableCellAfterRow:column:]): don't select
disabled cells.
([NSMatrix -_selectPreviousSelectableCellBeforeRow:column:]): likewise.
([NSMatrix -_privateFrame:mode:numberOfRows:numberOfColumns:]): set
dottedRow and dottedColumn.
([NSMatrix -insertRow:withCells:]): likewise.
([NSMatrix -removeColumn:]): likewise.
([NSMatrix -removeRow:]): likewise.
([NSMatrix -mouseDown:]): likewise and discard disabled cells.
([NSMatrix -drawRect:]): set shows cell first responder.
([NSMatrix -becomeFirstResponder]): draw dotted box for cell.
([NSMatrix -resignFirstResponder]): likewise.
([NSMatrix -becomeKeyWindow]): likewise.
([NSMatrix -resignKeyWindow]): likewise.
([NSMatrix -_setNeedsDisplayDottedCell]): likewise.
([NSMatrix -selectTextAtRow:column:]): set shows cell first responder.
([NSMatrix -setState:atRow:column:]): likewise. Deselect previous
selected cell in radio mode.

* Source/NSSavePanel.m (createRowsForColumn:): use _gsSavePanelCompare:
and check extension against _requiredFileType and not "app", "bundle",
etc.
([NSString -_gsSavePanelCompare:]): filename compare.
([NSSavePanel -_initWithoutGModel]): set key view for keyboard
interaction.
([NSSavePanel -keyDown:]): removed.
([NSSavePanel -controlTextDidEndEditing:]): removed.

* Source/NSOpenPanel.m ([NSOpenPanel -_shouldShowExtension:isDir:]):
added isDir argument.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@9473 72102866-910b-0410-8b05-ffd578937521
2001-03-22 00:27:37 +00:00
Nicola Pero
15ee05af34 Restore the selected cells in reload column
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@9046 72102866-910b-0410-8b05-ffd578937521
2001-02-07 23:13:32 +00:00
Nicola Pero
695d12c014 Tidied
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@9045 72102866-910b-0410-8b05-ffd578937521
2001-02-07 22:39:09 +00:00
Nicola Pero
28c73b4f89 Tidied
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@9044 72102866-910b-0410-8b05-ffd578937521
2001-02-07 22:32:54 +00:00
Nicola Pero
e212ad5013 Removed hack no longer needed
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@8845 72102866-910b-0410-8b05-ffd578937521
2001-01-28 03:12:23 +00:00
Nicola Pero
5816f7b5c4 Tidied comment
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@8843 72102866-910b-0410-8b05-ffd578937521
2001-01-27 15:14:51 +00:00
Nicola Pero
5e64aba48d Fixed position of new matrix
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@8841 72102866-910b-0410-8b05-ffd578937521
2001-01-27 15:12:50 +00:00
Nicola Pero
5c29115a94 Sized fixing for nextish look
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@8818 72102866-910b-0410-8b05-ffd578937521
2001-01-27 00:02:16 +00:00
Nicola Pero
fda6234a57 Fixed bug in getting path when a column had nothing selected in it
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@8615 72102866-910b-0410-8b05-ffd578937521
2001-01-16 12:32:19 +00:00
Fred Kiefer
c2f8b2e407 Adopted to changes in NSCell.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@8265 72102866-910b-0410-8b05-ffd578937521
2000-12-07 00:20:17 +00:00
Mirko Viviani
05a9cab8f7 2000-09-13 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* Source/NSBrowser.m ([NSBrowser -_performLoadOfColumn:]): fixed
	intercell space values.

	* Source/NSText.m ([NSText -keyDown:]): removed forward for illegal
	text field events.

	* Source/NSSavePanel.m ([NSSavePanel -controlTextDidEndEditing:]):
	implemented for text field movement.
	([NSSavePanel -_performReturn:]): new private method.
	([NSSavePanel -_initWithoutGModel]): set form cell action to
	_performReturn:

	* Source/NSOpenPanel.m ([NSOpenPanel -controlTextDidEndEditing:]): call
	super.
	([NSOpenPanel -_selectCellName:]):,
	([NSOpenPanel -controlTextDidChange:]): enable okButton if there is
	text in the text field.
	([NSOpenPanel -ok:]): returns if nothing selected.

	* Tools/gpbs.m ([PasteboardEntry -lostOwnership]): removed workaround.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@7506 72102866-910b-0410-8b05-ffd578937521
2000-09-13 20:18:01 +00:00
Mirko Viviani
be7706ee71 2000-09-11 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* Source/NSBrowser.m ([NSBrowser -_performLoadOfColumn:]): set
	intercell spacing to 0.
	* Source/NSMatrix.m ([NSMatrix -mouseDown:]): in NSRadioModeMatrix
	deselect the previous selected cell only if the cell is valid.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@7471 72102866-910b-0410-8b05-ffd578937521
2000-09-11 15:09:27 +00:00
Mirko Viviani
df00948e11 2000-09-10 Mirko Viviani <mirko.viviani@rccr.cremona.it>
* Tools/gpbs.m ([PasteboardEntry -lostOwnership]): workaround to avoid
	core dump due to NSConnection bug.

	* Source/NSWindow.m ([NSWindow -keyDown:]): discard and do not perform
	key equivalent for null character events. Triggered return key for
	default button cell.
	([NSWindow -defaultButtonCell]), ([NSWindow -setDefaultButtonCell:]),
	([NSWindow -disableKeyEquivalentForDefaultButtonCell]),
	([NSWindow -enableKeyEquivalentForDefaultButtonCell]): implemented.
	([NSWindow -dealloc]): release _defaultButtonCell

	* Headers/AppKit/NSWindow.h: added ivar and flag.

	* Source/NSOpenPanel.m ([NSOpenPanel -controlTextDidEndEditing:]),
	([NSOpenPanel -controlTextDidChange:]), ([NSOpenPanel -ok:]):
	implemented keyboard navigation.
	([NSOpenPanel -runModalForDirectory:file:types:]): do not allow
	branch selection if can't choose directories.
	([NSOpenPanel -_selectTextInColumn:]),
	([NSOpenPanel -_selectCellName:]): new private methods.
	([NSOpenPanel -filenames]): change for choose dirs.

	* Source/NSText.m ([NSText -keyDown:]): forwards text field illegal
	events to the next responder.

	* Source/NSBrowser.m ([NSBrowser -moveUp:]), ([NSBrowser -moveDown:]),
	([NSBrowser -moveLeft:]), ([NSBrowser -moveRight:]),
	([NSBrowser -keyDown:]): implemented keyboard navigation
	([NSBrowser -selectedCell]), ([NSBrowser -selectedCells]),
	([NSBrowser -columnOfMatrix:]), ([NSBrowser -selectedColumn]):
	changed return value from NSNotFound to -1 to conforms to NSMatrix
	([NSBrowser -doClick:]): fix for new return values, added support for
	multiple and branch selection.
	([NSBrowser -setLastColumn:]): mark column titles need display
	([NSBrowser -_getTitleOfColumn:]): fix for multiple selection.

	* Source/NSCell.m ([NSCell -setState:]): bug fix: set value to
	NSOnState if someone try to set NSMixedState in a two state cell.
	([NSCell -performClick:]): do not perform click if the cell is
	disabled.

	* Source/NSMatrix.m ([NSMatrix
	-_privateFrame:mode:numberOfRows:numberOfColumns:]),
	([NSMatrix -deselectAllCells]), ([NSMatrix -deselectSelectedCell]),
	([NSMatrix -selectAll:]): bug fix: set _selectRow and _selectColumn
	to -1 when no cells are selected
	([NSMatrix -performKeyEquivalent:]): saves _selectedRow and
	_selectedColumn.
	([NSMatrix -getRow:column:ofCell:]): check for null values for row and
	column.
	([NSMatrix -selectCellAtRow:column:]): deselect the current selection
	only in NSRadioModeMatrix mode.
	([NSMatrix -mouseDown:]): use the new code also for NSRadioModeMatrix
	and fix for this mode.

	* Source/NSSavePanel.m ([NSSavePanel -selectCellWithString:]): select
	text of the cell and enable okButton.
	([NSSavePanel -controlTextDidChange:]): implemented.
	([NSSavePanel -controlTextDidEndEditing:]): removed.
	([NSSavePanel -browser:createRowsForColumn:inMatrix:]): follows
	symbolic links.
	([NSSavePanel -_initWithoutGModel]): set browser doubleAction to
	performClick: of the _okButton. Set _okButton as default window button.
	Disable _okButton.
	([NSSavePanel -browser:selectCellWithString:inColumn:]),
	([NSSavePanel -selectText:]), ([NSSavePanel -keyDown:]): implemented
	keyboard navigation.
	([NSSavePanel -runModalForDirectory:file:]): enable _okButton if
	filename is valid.
	([NSSavePanel -_selectTextInColumn:]), ([NSSavePanel -_selectText:]),
	([NSSavePanel -_selectCellName:]): new private methods.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@7468 72102866-910b-0410-8b05-ffd578937521
2000-09-10 21:55:17 +00:00
Nicola Pero
3e1d117119 Fixed memory leak; do not retain delegate; cache scrollerWidth; use nil
instead of empty view


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@7422 72102866-910b-0410-8b05-ffd578937521
2000-09-06 15:28:46 +00:00
Nicola Pero
c5dea351d3 Minor speedups in drawing; release the matrix columns sooner
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@7353 72102866-910b-0410-8b05-ffd578937521
2000-09-03 19:22:08 +00:00
Fred Kiefer
a3333bd2e3 Changed system fonts of size 12 to 0. This will use Nicolas font
cache and keep font sizes consistent when changed.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@7347 72102866-910b-0410-8b05-ffd578937521
2000-09-02 17:16:26 +00:00
Nicola Pero
884295b104 Fixed memory leak
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@7325 72102866-910b-0410-8b05-ffd578937521
2000-09-01 20:35:22 +00:00
Adam Fedor
8298410a10 Merge 0.6.6 branch into main.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@7188 72102866-910b-0410-8b05-ffd578937521
2000-08-07 22:06:04 +00:00
Adam Fedor
b734a85d04 New backend access methods
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@6489 72102866-910b-0410-8b05-ffd578937521
2000-04-20 22:17:42 +00:00
Adam Fedor
b33bb418f4 Merge from 0.6.5
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@6040 72102866-910b-0410-8b05-ffd578937521
2000-02-19 00:40:47 +00:00
Richard Frith-MacDonald
037d8637e3 Minor fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5790 72102866-910b-0410-8b05-ffd578937521
2000-01-15 12:40:34 +00:00
Nicola Pero
b9dda03313 Updated for change in NSView ivar names; tidyup
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5722 72102866-910b-0410-8b05-ffd578937521
2000-01-10 02:12:10 +00:00
Richard Frith-MacDonald
7066241590 Minor fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5584 72102866-910b-0410-8b05-ffd578937521
1999-12-20 11:02:47 +00:00
Nicola Pero
1bceb8ee25 Tiny optms in GSBrowserTitleCell
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5484 72102866-910b-0410-8b05-ffd578937521
1999-12-13 16:12:01 +00:00
Nicola Pero
5bcfbc4a80 Updated for new way of getting borders
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5457 72102866-910b-0410-8b05-ffd578937521
1999-12-13 02:35:01 +00:00
Richard Frith-MacDonald
16e8e9c790 Minor browser fix
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5401 72102866-910b-0410-8b05-ffd578937521
1999-12-07 07:02:58 +00:00
Adam Fedor
135cf168a5 NSBrowser rewrite.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5339 72102866-910b-0410-8b05-ffd578937521
1999-11-30 22:15:25 +00:00
Richard Frith-MacDonald
9f2b81c6f2 Better fix for opening directories
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5326 72102866-910b-0410-8b05-ffd578937521
1999-11-29 17:22:39 +00:00
Nicola Pero
47beac49d9 Added isOpaque method and irrelevant optimization.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5211 72102866-910b-0410-8b05-ffd578937521
1999-11-16 23:46:02 +00:00
Nicola Pero
b8f0540e43 I had forgotten to update an ivar name.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5168 72102866-910b-0410-8b05-ffd578937521
1999-11-12 12:13:40 +00:00
Lyndon Tremblay
96696de22c *** empty log message ***
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5166 72102866-910b-0410-8b05-ffd578937521
1999-11-12 07:41:24 +00:00
Nicola Pero
64236c4b45 Updated code which had been broken by the recent fixes in NSMatrix.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5143 72102866-910b-0410-8b05-ffd578937521
1999-11-09 20:57:15 +00:00
Nicola Pero
7b6c3a3c31 Fixed missing drawing of the horizontal scroller border
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5096 72102866-910b-0410-8b05-ffd578937521
1999-10-27 13:33:03 +00:00
Nicola Pero
5c267c8f81 Fixed bug in horizontal scroller not being resized on resize
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5088 72102866-910b-0410-8b05-ffd578937521
1999-10-26 22:37:36 +00:00
Nicola Pero
c8894602a5 Fixed drawing of titles.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5071 72102866-910b-0410-8b05-ffd578937521
1999-10-25 03:14:56 +00:00
Nicola Pero
b9263b5b2c Fixed drawing of title background
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5069 72102866-910b-0410-8b05-ffd578937521
1999-10-25 00:22:15 +00:00