Commit graph

42 commits

Author SHA1 Message Date
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
Fred Kiefer
0265583240 Use method calls in [initWithCoder:] to get fontification correct.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@15548 72102866-910b-0410-8b05-ffd578937521
2003-01-08 16:36:24 +00:00
Adam Fedor
3f083e4415 flip and audio fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@14623 72102866-910b-0410-8b05-ffd578937521
2002-10-02 03:34:54 +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
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
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
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
371286e8cb Tidyups
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@8304 72102866-910b-0410-8b05-ffd578937521
2000-12-12 16:38:04 +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
Nicola Pero
d7874be6bc Skip 2 points before drawing text
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5755 72102866-910b-0410-8b05-ffd578937521
2000-01-13 23:06:05 +00:00
Nicola Pero
2fee44e357 Optimized initialization
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5694 72102866-910b-0410-8b05-ffd578937521
2000-01-07 18:28:34 +00:00
Nicola Pero
b9da2708db Alternate image support
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5509 72102866-910b-0410-8b05-ffd578937521
1999-12-14 19:06:13 +00:00
Nicola Pero
e615804178 Optimizations
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5495 72102866-910b-0410-8b05-ffd578937521
1999-12-13 19:47:03 +00:00
Nicola Pero
1f33fcfcca Updated for ivars changings in cell and browsercell
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5485 72102866-910b-0410-8b05-ffd578937521
1999-12-13 16:13:00 +00:00
Nicola Pero
9c1de96be4 Optimized by removing the auxiliary cell. Removed some old methods.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5458 72102866-910b-0410-8b05-ffd578937521
1999-12-13 02:36:40 +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
Nicola Pero
e4c31a3a38 Added isOpaque method; removed old garbage editing stuff.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5212 72102866-910b-0410-8b05-ffd578937521
1999-11-16 23:46:58 +00:00
Nicola Pero
80623e752d Reduced the bloat
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5092 72102866-910b-0410-8b05-ffd578937521
1999-10-27 12:16:26 +00:00
Nicola Pero
5bf967cbf4 Added some bloat.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5084 72102866-910b-0410-8b05-ffd578937521
1999-10-26 19:54:21 +00:00
Richard Frith-MacDonald
b462835083 Browser cell and save panel updates.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4937 72102866-910b-0410-8b05-ffd578937521
1999-09-23 16:00:14 +00:00
Richard Frith-MacDonald
82a4893bef Position arrow as on NeXTstep
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4929 72102866-910b-0410-8b05-ffd578937521
1999-09-21 18:52:57 +00:00
Adam Fedor
7088652849 GUI updates
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4928 72102866-910b-0410-8b05-ffd578937521
1999-09-21 15:42:14 +00:00
Richard Frith-MacDonald
dd34792910 Lock focus fixes - get cells to lock focus before drawing themselves.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4924 72102866-910b-0410-8b05-ffd578937521
1999-09-21 05:10:54 +00:00
Richard Frith-MacDonald
25e6b5545e Fix image positioning
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4901 72102866-910b-0410-8b05-ffd578937521
1999-09-16 07:17:49 +00:00
Richard Frith-MacDonald
c112f1be56 Tidied
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4870 72102866-910b-0410-8b05-ffd578937521
1999-09-11 05:48:20 +00:00
Richard Frith-MacDonald
02af1de982 Tidied
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4821 72102866-910b-0410-8b05-ffd578937521
1999-09-04 16:09:17 +00:00
Michael Silva
942b4ac554 Fixes bonaza.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4725 72102866-910b-0410-8b05-ffd578937521
1999-08-19 23:30:03 +00:00
Michael Silva
8c83ccf86e A miriad of changes, look at ChangeLogs.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4497 72102866-910b-0410-8b05-ffd578937521
1999-06-30 03:10:38 +00:00
Michael Silva
db24d2a2f8 Fixes for compilation errors.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4446 72102866-910b-0410-8b05-ffd578937521
1999-06-21 06:43:31 +00:00
Richard Frith-MacDonald
6847940a3e Set backgrounds of images before drawing them.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4184 72102866-910b-0410-8b05-ffd578937521
1999-05-02 18:27:38 +00:00
Richard Frith-MacDonald
d13cc54126 Misc fixes for Tims FileViewer app
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4148 72102866-910b-0410-8b05-ffd578937521
1999-04-27 14:56:43 +00:00
Richard Frith-MacDonald
37f59e1d8c Tidyup
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4033 72102866-910b-0410-8b05-ffd578937521
1999-04-06 14:09:13 +00:00
Richard Frith-MacDonald
dbbeff810a Merged in 'dawn' CVS branch
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@3827 72102866-910b-0410-8b05-ffd578937521
1999-03-02 08:58:30 +00:00
Richard Frith-MacDonald
a57f809bd6 Many bugfixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@3756 72102866-910b-0410-8b05-ffd578937521
1999-02-19 20:19:58 +00:00
Richard Frith-MacDonald
ea05b49ebb Handle flipped views
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@3709 72102866-910b-0410-8b05-ffd578937521
1999-02-15 12:50:49 +00:00
Felipe A. Rodriguez
f29476bc08 * NSWindow.m renmae captureMouse: to _captureMouse: (designate as non OS),
various methods add fieldEditor support.
	* GSContext.m/GSContext.h revert to previous code as solution discussed
	with Adam Fedor regarding backends had problems I had not forseen.
	* NSBrowserCell.h/.m specify text subcell as an NSCell, eliminate image
	cell, copyWithZone: optimize and eliminate use of ASSIGN (fixes serious
	dealloc bug), highlight: eliminate method (fixes dup display bug).
	* NSButtonCell.m copyWithZone: optimize and eliminate use of ASSIGN
	* NSStringDrawing.h/.m remove unimplemented draw methods from Category
	(these are backend specific, can't be defined twice and are already
	implemented in xraw).
	* NSApplication.h redefine initialize_gnustep_backend () per Adam's
	redefinition in the backend.
	* Functions.m/.h remove initialize_gnustep_backend()
 	* NSCell.m preliminary implementation of fieldEditor mechanism,
	copyWithZone: optimize and eliminate use of ASSIGN
	* NSControl.m rename cell class global to _NSCONTROL_CELL_CLASS
	* NSMatrix.m implement NSControl's updateCell: to prevent unecessary
	matrix drawing if possible.
	* NSView.m -resizeWithOldSuperviewSize reverted code to my own once more
	(fewer lines and no if/else logic), changed code to use view frame instead
	of bounds per 3.3/4.2 docs, optimize to avoid floating point math and scale
	adjustment unless view has been scaled.
	* NSScrollView.m define as externs various PS* functions for use in
	drawing, polish drawing, move all backend code to front.
	* Tools/dummy.m define dummy PS* functions employed in gui.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@3454 72102866-910b-0410-8b05-ffd578937521
1998-12-14 09:54:38 +00:00
Felipe A. Rodriguez
4dd58372f6 * move DPSOperators.h to XDPS.
* move GPS headers into a new backend.
	* define GSContext.h/GSContext.m as abstract super for all drawing
		destinations (eliminates the need for DPS, GPS, DGS at the root of
		the AppKit) add appropriate defintion to various classes.
	* NSMatrix.m add abstract backend code from xraw (eliminate backend).
	* NSSlider.m add abstract backend code from xraw (eliminate backend).
	* NSSliderCell.m add abstract backend code from xraw (eliminate backend).
	* NSSplitView.m add abstract backend code from xraw (eliminate backend).
		replace private divider highlight method with NSHighlightRect()
	* NSWindow.m add class method to create backend specific window view.
	* NSTextField.m add abstract backend code from xraw (eliminate backend).
	* NSForm.m add abstract backend code from xraw (eliminate backend).
	* NSFormCell.m add abstract backend code from xraw (eliminate backend).
	* NSColorWell.m add abstract backend code from xraw (eliminate backend).
	* NSButton.m add abstract backend code from xraw (eliminate backend).
	* NSControl.m add abstract backend code from xraw (eliminate backend).
	* NSBox.m add abstract backend code from xraw (eliminate backend).
	* NSBrowser.m add abstract backend code from xraw (eliminate backend).
	* NSBrowserCell.m add abstract backend code from xraw (eliminate backend).


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@3321 72102866-910b-0410-8b05-ffd578937521
1998-11-25 17:16:48 +00:00
Scott Christley
8b0975e122 Initial implementation of NSBrowser and NSBrowserCell.
Numerous bug fixes.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@2596 72102866-910b-0410-8b05-ffd578937521
1997-10-31 01:24:08 +00:00
Scott Christley
aee90a695e Convert to the GNUstep makefile package.
The config.h files should not be installed with the other
header files; it is only used for compilation, so the source
files should include it not the header files.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@2439 72102866-910b-0410-8b05-ffd578937521
1997-09-23 22:43:24 +00:00
Scott Christley
151bf11e2c Header files reorganized. All the definitions were moved in appropiate files.
Each header file includes only the header files it needs and it uses
@class to forward reference a class.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@2189 72102866-910b-0410-8b05-ffd578937521
1997-02-18 00:29:25 +00:00
Scott Christley
50604fcf31 Corrected FSF address and moved comment about NET-Community
support into SUPPORT file.
Additional NSImage work.
Added resources for common TIFF images.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@1869 72102866-910b-0410-8b05-ffd578937521
1996-10-18 17:14:13 +00:00
GNUstep Maintainer
4faed08751 Initial revision
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@1580 72102866-910b-0410-8b05-ffd578937521
1996-05-30 20:03:15 +00:00