mirror of
https://github.com/gnustep/libs-gui.git
synced 2025-04-23 03:11:18 +00:00
Fix problems where the string value of a text field control might not
be updated while its cell is edited and where the save panel's text form ignores the file name passed to -runModalForDirectory:file:. git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@27059 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
d71b76e768
commit
db8e30700b
4 changed files with 29 additions and 1 deletions
13
ChangeLog
13
ChangeLog
|
@ -1,3 +1,16 @@
|
|||
2008-11-15 Wolfgang Lux <wolfgang.lux@gmail.com>
|
||||
|
||||
* Source/NSSavePanel.m (-_setupForDirectory:file:): Abort editing
|
||||
for the file name's text cell before setting the passed in file
|
||||
name.
|
||||
|
||||
* Source/NSDocument.m (-runModalSavePanel:withAccessoryView:):
|
||||
When the document has been saved already pass its file name to the
|
||||
save panel like on Mac OS X.
|
||||
|
||||
* Source/NSControl.m (-drawRect): Make sure the cell's control
|
||||
view is always set up.
|
||||
|
||||
2008-11-14 Fred Kiefer <FredKiefer@gmx.de>
|
||||
|
||||
* Source/NSScrollView.m (-setContentView:): Replaced last change
|
||||
|
|
|
@ -634,6 +634,11 @@ static NSNotificationCenter *nc;
|
|||
*/
|
||||
if ([self currentEditor] != nil)
|
||||
{
|
||||
/* Make sure the cell's control view is always set up.
|
||||
* FIXME Need to draw the cell's border which is not covered by
|
||||
* the field editor if the cell is bordered.
|
||||
*/
|
||||
[_cell setControlView: self];
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -671,7 +676,7 @@ static NSNotificationCenter *nc;
|
|||
{
|
||||
if (_cell == aCell)
|
||||
{
|
||||
[_cell setState: 1];
|
||||
[_cell setState: NSOnState];
|
||||
[self setNeedsDisplay: YES];
|
||||
}
|
||||
}
|
||||
|
|
|
@ -965,10 +965,18 @@ originalContentsURL: (NSURL *)orig
|
|||
- (int)runModalSavePanel: (NSSavePanel *)savePanel
|
||||
withAccessoryView: (NSView *)accessoryView
|
||||
{
|
||||
NSString *directory, *file;
|
||||
|
||||
if (accessoryView)
|
||||
{
|
||||
[savePanel setAccessoryView: accessoryView];
|
||||
}
|
||||
if ([self fileName])
|
||||
{
|
||||
directory = [[self fileName] stringByDeletingLastPathComponent];
|
||||
file = [[self fileName] lastPathComponent];
|
||||
return [savePanel runModalForDirectory: directory file: file];
|
||||
}
|
||||
return [savePanel runModal];
|
||||
}
|
||||
|
||||
|
|
|
@ -564,6 +564,8 @@ selectCellWithString: (NSString*)title
|
|||
setPath(_browser, _fullFileName);
|
||||
|
||||
[self _selectCellName: filename];
|
||||
[_form abortEditing]; // FIXME This is necessary because we cannot set a
|
||||
// cell's value while it is being edited.
|
||||
[[_form cellAtIndex: 0] setStringValue: filename];
|
||||
[_form selectTextAtIndex: 0];
|
||||
[_form setNeedsDisplay: YES];
|
||||
|
|
Loading…
Reference in a new issue