[setFrame:display:] set the frame of _wv directly if deferred.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@7698 72102866-910b-0410-8b05-ffd578937521
* 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
Keep lists of deactivated/hidden windows in application.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@5251 72102866-910b-0410-8b05-ffd578937521
* Source/NSWindow.m ([NSWindow -setFrameTopLeftPoint:]): Corrected
positioning of window's top left point. X coordinate was ignored
and Y coordinate was computed in wrong way.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4770 72102866-910b-0410-8b05-ffd578937521
selectWithFrame: preliminary implementation.
* NSButton.m: acceptsFirstResponder implement.
* NSText.m: shouldDrawInsertionPoint test for field editor status.
* NSTextField.m: mouseDown: use field editor instead of previous non OS
text field cell editor code, textShouldEndEditing: implement.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@3466 72102866-910b-0410-8b05-ffd578937521
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
* GNUAlertPanel.m NSGetAlertPanel() replace centering code with call to
center method, change window style mask, add class initialize.
* libgnustep-gui.m rename to Functions.m.
* Functions.m add new file as location for generic NS* and GS* functions,
move backend NSEventMaskFromType() into it.
* NSApplication.m discardEventsMatchingMask:.. rewrite (fix bugs),
runModalSession: dump all events not for modal window (fixes modal panel
button display bug), arrangeInFront: preliminary implemenation.
* NSCell.m: Polish.
* NSWindow.m: center remove display invocation per 4.2 docs.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@3426 72102866-910b-0410-8b05-ffd578937521
* TrackingRectangle.m/.h rename class to GS* prefix (GSTrackingRect).
* NSView.m resizeWithOldSuperviewSize: floor possibly fractional results.
displayIfNeededIgnoringOpacity: rewrite to fix obscure bugs in auto
display. Minor tweaks in other display methods for same reasons.
* NSView.h rename invalidatedRectangle to invalidRect.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@3421 72102866-910b-0410-8b05-ffd578937521
* 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
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
Add NSWindowView which is a specialized view that handles drawing a
window's decorations and background color.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@2638 72102866-910b-0410-8b05-ffd578937521
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
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
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
Many bug fixes for NSMatrix.
Assign values for global exception and notification strings.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@1842 72102866-910b-0410-8b05-ffd578937521
Library now requires tiff and DPSclient libraries.
Remove a number of functions which should be implemented in backend.
Correct many method definitions that should use NSNotification.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@1762 72102866-910b-0410-8b05-ffd578937521
Changes to utilize the TIFF library.
Uncomment some code now that NSException and NSNotification* classes exist.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@1654 72102866-910b-0410-8b05-ffd578937521
Corrections to NSWindow for key and main window notification and
first responder handling.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@1642 72102866-910b-0410-8b05-ffd578937521