Commit graph

65 commits

Author SHA1 Message Date
nico
7c9765dd65 Updated code broken by a bug fix in NSCell's tracking code;
revised sending of action, double-action; rewritten
double/multi-click support.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5698 72102866-910b-0410-8b05-ffd578937521
2000-01-07 18:33:48 +00:00
nico
4b674378d9 Fix mouse click on empty matrix so it does not crash
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5569 72102866-910b-0410-8b05-ffd578937521
1999-12-17 23:26:51 +00:00
richard
ba0cb39440 Tidy up
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5534 72102866-910b-0410-8b05-ffd578937521
1999-12-16 04:53:50 +00:00
nico
fb54b2d45c Temporaneary fix keyboard handlign so that ESC aborts panels with matrix
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5423 72102866-910b-0410-8b05-ffd578937521
1999-12-09 02:38:30 +00:00
richard
3e52072875 Send double action
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5405 72102866-910b-0410-8b05-ffd578937521
1999-12-07 20:38:59 +00:00
richard
7ff76a1ff8 Fix boundary error in matrix memory
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5325 72102866-910b-0410-8b05-ffd578937521
1999-11-29 15:50:44 +00:00
nico
5a46225a23 Implemented editing.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5305 72102866-910b-0410-8b05-ffd578937521
1999-11-28 16:43:14 +00:00
nico
bb7ea10a97 Added isOpaque; implemented nextText & co. methods.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5215 72102866-910b-0410-8b05-ffd578937521
1999-11-16 23:51:01 +00:00
richard
a89fe7b785 Tidied a little
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5170 72102866-910b-0410-8b05-ffd578937521
1999-11-12 15:41:32 +00:00
richard
092f597b8d Tidied
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5169 72102866-910b-0410-8b05-ffd578937521
1999-11-12 12:29:14 +00:00
richard
d56e7d940d Matrix fix
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5167 72102866-910b-0410-8b05-ffd578937521
1999-11-12 11:55:04 +00:00
richard
b987fd74ec Tidyup
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5126 72102866-910b-0410-8b05-ffd578937521
1999-11-03 06:38:39 +00:00
richard
7cbbb66f90 More optimisation - don't create cells that we are immediately going to
replace.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5123 72102866-910b-0410-8b05-ffd578937521
1999-11-02 21:42:24 +00:00
richard
6e1d7f46a0 NSMatrix rewrite
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5122 72102866-910b-0410-8b05-ffd578937521
1999-11-02 20:59:56 +00:00
nico
b2c4f49fc3 Fixed tiny bug introduced with last changing.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5032 72102866-910b-0410-8b05-ffd578937521
1999-10-18 22:55:51 +00:00
tremblay2
87b0230203 Added core file support in debugapp. Changed default cell size in NSMatrix so it's more automatic. Fixed NSURL scheme typo.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5015 72102866-910b-0410-8b05-ffd578937521
1999-10-16 05:20:52 +00:00
richard
819eaf9716 Fix error in last patch
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4932 72102866-910b-0410-8b05-ffd578937521
1999-09-22 02:47:07 +00:00
richard
6ae0a041b8 Patches for browser and matrix bugs
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4931 72102866-910b-0410-8b05-ffd578937521
1999-09-21 20:03:46 +00:00
richard
98a649c60a 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
55f804b003 Tidyups and fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4836 72102866-910b-0410-8b05-ffd578937521
1999-09-06 05:29:24 +00:00
richard
178e4956bd Access superclass ivars directly.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4786 72102866-910b-0410-8b05-ffd578937521
1999-09-01 08:35:16 +00:00
richard
a0c915eeb0 Fixes for system colors
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4777 72102866-910b-0410-8b05-ffd578937521
1999-08-31 09:19:39 +00:00
richard
0128d03d1b Get selection by rectangle working.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4583 72102866-910b-0410-8b05-ffd578937521
1999-07-14 14:29:12 +00:00
richard
bfb3253bea Send actions as we should
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4343 72102866-910b-0410-8b05-ffd578937521
1999-06-02 20:37:19 +00:00
richard
527a13c7a6 Bugfixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4095 72102866-910b-0410-8b05-ffd578937521
1999-04-18 06:11:29 +00:00
richard
563c98aa8d 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
ee0eb44c06 Minor tidyup.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@3836 72102866-910b-0410-8b05-ffd578937521
1999-03-02 20:01:17 +00:00
richard
07321d77c3 Mouse tracking fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@3832 72102866-910b-0410-8b05-ffd578937521
1999-03-02 12:14:38 +00:00
richard
55b55d3fee 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
michael
233ecebddd * Source/NSBox.m Source/NSButtonCell.m Source/NSCell.m
Source/NSColorWell.m Source/NSMatrix.m Source/NSPrintInfo.m
Source/NSScroller.m Source/NSSliderCell.m: fixed compilation
warnings by including proper includes.

* Tools/Functions.m: Defined NSRectClip(). Fixes fatal linking
errors in Tools/


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@3712 72102866-910b-0410-8b05-ffd578937521
1999-02-15 19:35:02 +00:00
richard
772881652e Coordinate system fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@3691 72102866-910b-0410-8b05-ffd578937521
1999-02-11 14:56:30 +00:00
richard
8fe11620e6 Fixed typo
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@3528 72102866-910b-0410-8b05-ffd578937521
1999-01-05 21:27:31 +00:00
richard
8ffe5e9f10 Bugfixes suggested by stark@easynet.fr
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@3525 72102866-910b-0410-8b05-ffd578937521
1999-01-05 18:42:33 +00:00
far
22040ec62b * 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
far
2d4079f2cf * 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
far
4d2ffb9522 gui changes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@3260 72102866-910b-0410-8b05-ffd578937521
1998-11-20 02:14:22 +00:00
fedor
5808de175b Preliminary drawing engine
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@3222 72102866-910b-0410-8b05-ffd578937521
1998-11-16 20:32:48 +00:00
far
748f6b3661 * NSApplication.m minor optimiztions.
* NSAttributedString.m sizeWithAttributes: implement tab support.
	* NSStringDrawing.m sizeWithAttributes: implement tab support.
	* NSScroller.m trackScrollButtons: add temporary hack in support of XRAW's
		heavily optimized scrolling machinery.
	* NSScroller.m remove sendAction:to:
	* NSScrolView.m _doScroll: implement scroller update when scrolling via
		buttons
	* NSScrolView.m reflectScrolledClipView comment out setNeedsDisplay as it
		causes display flicker.
	* NSText.m add changes from Daniel B�hringer, set initFrame to default
		values to prevent infinite loop in rebuildLineLayout, minor tweaks
	* NSView.m minor optimiztions.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@3071 72102866-910b-0410-8b05-ffd578937521
1998-10-15 12:04:53 +00:00
fedor
30dc8b0b15 Update docs. Redo MIN,MAX macros
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@2982 72102866-910b-0410-8b05-ffd578937521
1998-09-18 13:51:00 +00:00
far
24eac4c538 * NSMenu.m->NSMenuMatrix in insertItemWithTitle: removed call to
_resizeMenuForCellSize for performance reasons.  _resizeMenuForCellSize
		is called later on a sizeToFit.
	* NSMenu.m->NSMenuMatrix in removeItem: removed call to
		_resizeMenuForCellSize for performance reasons.  _resizeMenuForCellSize
		is called later on a sizeToFit.
	* NSMenu.m->NSMenu in insertItemWithTitle: replaced call to _menuChanged
		with menuHasChanged=YES for performance reasons.
	* NSMenu.m->NSMenu in removeItem: replaced call to _menuChanged with
		menuHasChanged=YES for performance reasons.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@2973 72102866-910b-0410-8b05-ffd578937521
1998-09-08 21:50:33 +00:00
far
48b8e5aa73 * NSApplication.h added windows_need_update as autodisplay ivar.
* NSApplication.m in init set default for main_menu, windows_need_update.
	* NSApplication.m in run added support for OPENSTEP autodisplay mechanism.
	* NSApplication.m _eventMatchingMask: reformat.
	* NSApplication.m nextEventMatchingMask:untilDate:inMode:dequeue:
		move calls to _flushWindows to XDPS backend.
	* NSApplication.m implemented updateWindows.
	* NSApplication.m implemented setWindowsNeedUpdate:.
	* NSApplication.m setMainMenu: test for menu prior to release.
	* NSActionCell.m removed setState: method.
	* NSActionCell.m copyWithZone: optimized ivar copying.
	* NSButtonCell.m added _init and moved common defaults to this method.
	* NSButtonCell.m initImageCell: and initTextCell: minor optimizations.
	* NSButtonCell.m setAlternateTitle: optimize and use ASSIGN macro.
	* NSButtonCell.m setKeyEquivalent: remove [copy release].
	* NSButtonCell.m setKeyEquivalentFont:size: optimize.
	* NSButtonCell.m copyWithZone: optimized ivar copying where possible.
	* NSCell.m _init removed call to [super init].
	* NSCell.m initTextCell: removed duplicate default initializers.
	* NSCell.m setImage: rewrote to use ASSIGN macro.
	* NSCell.m setDoubleValue: rewrote to use ASSIGN macro.
	* NSCell.m setFloatValue: rewrote to use ASSIGN macro.
	* NSCell.m setIntValue: rewrote to use ASSIGN macro.
	* NSCell.m setStringValue: rewrote to use ASSIGN macro.
	* NSCell.m setFont: rewrote to use ASSIGN macro.
	* NSCell.m setRepresentedObject: rewrote to use ASSIGN macro.
	* NSCell.m copyWithZone: optimized ivar copying where possible.
	* NSClipView.m viewBoundsChanged: minor optimization.
	* NSClipView.m viewFrameChanged: minor optimization.
	* NSClipView.m scaleUnitSquareToSize: minor optimization.
	* NSClipView.m setBoundsOrigin: minor optimization.
	* NSClipView.m setBoundsSize: minor optimization.
	* NSClipView.m setFrameSize: minor optimization.
	* NSClipView.m setFrameOrigin: minor optimization.
	* NSClipView.m setFrame: minor optimization.
	* NSClipView.m translateOriginToPoint: minor optimization.
	* NSMatrix.m eliminate retain/release of selected cell via ASSIGN.
	* NSMatrix.m initWithFrame: remove duplicate setting of selected row and
		column.
	* NSMatrix.m removeColumn: rewrite so that col is removed before new
		selection is attempted (needed because selected cell is not retained).
	* NSMatrix.m removeRow: rewrite so that row is removed before new
		selection is attempted (needed because selected cell is not retained).
	* NSMatrix.m deselectAllCells per OS spec try to select a cell at end
		if empty selection is not allowed.
	* NSMatrix.m deselectSelectedCell set default selected row/col to 0.
	* NSMatrix.m mouseDown: optimize for new drawing behaviour.
	* NSMenu.m setSelectedCell: eliminate use of retain/release of selected
		cell via ASSIGN.
	* NSMenuItem.m copyWithZone: optimized ivar copying where possible.
	* NSMenuItem.m dealloc minor optimization.
	* NSMenuItem.m setTarget: minor optimization.
	* NSScroller.m trackScrollButtons: heavily optimized.
	* NSScroller.m sendAction: reimplemented to use sendAction: per spec also
		optimized.
	* NSText.m implemented init method.
	* NSText.m initWithFrame: fixed initialization of ivars which are released
		to retain.
	* NSText.m dealloc add release of retained ivars.
	* NSView.m dealloc add release of retained ivars.
	* NSView.m displayRect: and _addSubviewForNeedingDisplay reformatted code
		and rewrote comments.
	* NSWindow.m setFrame:display: rewrote for clarity.
	* NSWindow.m implemented update method per OPENSTEP spec.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@2941 72102866-910b-0410-8b05-ffd578937521
1998-08-30 16:06:47 +00:00
far
85583b8e23 * NSView.h added specific values and comments to resize constants enum.
* NSView.m implemented resizeWithOldSuperviewSize (needs work).
	* NSMatrix.m mousedown clarified description comment.
	* NSSavePanel.m integrated source from Daniel B�hringer into premliminary
		implementations provided by Scott Christley.
	* NSSavePanel.h integrated source from Daniel B�hringer into premliminary
		implementations provided by Scott Christley.
	* NSOpenPanel.m integrated source from Daniel B�hringer into premliminary
		implementations provided by Scott Christley.
	* NSOpenPanel.h integrated source from Daniel B�hringer into premliminary
		implementations provided by Scott Christley.
	* NSStringDrawing.h defined NSAttributedString portion of extension.
	* NSAttributedString.h created preliminary implementation of extension.
	* Appkit.h added includes for NSAttributedString and NSStringDrawing.
	* NSPasteboard.h added extern NSRTFDPboardType define.
	* externs.m defined NSRTFDPboardType.
	* NSText.h integrated source from Daniel B�hringer
	* NSTextView.m preliminary implementation from Daniel B�hringer
	* NSTextView.h preliminary implementation from Daniel B�hringer
	* NSSplitView.m in drawRect use NSRectFill()


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@2934 72102866-910b-0410-8b05-ffd578937521
1998-08-19 09:00:26 +00:00
far
6dead11c87 * NSSplitView in initWithFrame changed default back color to light gray.
* NSSavePanel modified to inherit from NSPanel per OS spec.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@2896 72102866-910b-0410-8b05-ffd578937521
1998-08-04 08:33:31 +00:00
far
fb68347d27 * NSMatrix.m in mouseDown adjusted the selection process when in List mode
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@2877 72102866-910b-0410-8b05-ffd578937521
1998-07-29 10:28:36 +00:00
far
430b72325a * NSScroller.m in trackScrollButtons method added code to highlight cell
prior to calling trackMouse.  In keeping with new behaviour of NSCell.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@2867 72102866-910b-0410-8b05-ffd578937521
1998-07-28 09:30:51 +00:00
far
05fcf354f4 * NSCell.m: changed implementation of trackMouse method so that it does
not hightlight the cell.  The new behavior is as described in the spec
		for NSControl, NSMatrix and NSCell.  According to the spec it is the
		responsibility of the control to highlight the cell prior to calling
		cell's track method.
	* NSMatrix.m: rewrote mousedown to more closely mimic the NS/OS behavior.
	* NSButton.m: modified to support new behavior of NSCell's track mode.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@2865 72102866-910b-0410-8b05-ffd578937521
1998-07-26 01:15:17 +00:00
far
98e2fbfa63 change in NSBrowser because oldmatrix was getting released twice
various changes to NSMatrix's mousedown to support double clicks
added field editor instance variable to NSWindow


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@2830 72102866-910b-0410-8b05-ffd578937521
1998-07-10 18:44:18 +00:00
scottc
5592d9996b 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
ovidiu
ebc08715e3 Update the documentation.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@2509 72102866-910b-0410-8b05-ffd578937521
1997-10-16 00:12:18 +00:00
ovidiu
3d00ac5471 Removed unnecessary code in NSMatrix.m
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@2502 72102866-910b-0410-8b05-ffd578937521
1997-10-13 23:34:06 +00:00