Adding new NSComboBox inspector

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/gorm/trunk@15094 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Gregory John Casamento 2002-11-25 03:55:11 +00:00
parent 3bb991f44f
commit 941ef0858c
5 changed files with 301 additions and 11 deletions

View file

@ -1,3 +1,11 @@
2002-11-24 Gregory John Casamento <greg_casamento@yahoo.com>
* NOTE: Added a patch submitted by Fabien Vallon to
add functionality to the combo box inspector. Thanks.
* Palettes/4Data/GormNSComboBoxInspector.gorm: added.
* Palettes/4Data/inspectors.m: Patched.
2002-11-24 Gregory John Casamento <greg_casamento@yahoo.com>
* Gorm.m: -[GormObjectProxy classInspectorClassName]

View file

@ -30,7 +30,7 @@ PALETTE_NAME = 4Data
4Data_RESOURCE_FILES = DataPalette.tiff \
GormImageViewInspector.gorm \
GormTextViewInspector.gorm \
GormComboBoxInspector.gorm \
GormNSComboBoxInspector.gorm \
GormDateFormatterInspector.gorm \
GormNumberFormatterInspector.gorm

View file

@ -0,0 +1,228 @@
{
FirstResponder = {
Actions = (
"activateContextHelpMode:",
"alignCenter:",
"alignJustified:",
"alignLeft:",
"alignRight:",
"arrangeInFront:",
"cancel:",
"capitalizeWord:",
"changeColor:",
"changeFont:",
"checkSpelling:",
"close:",
"complete:",
"copy:",
"copyFont:",
"copyRuler:",
"cut:",
"delete:",
"deleteBackward:",
"deleteForward:",
"deleteToBeginningOfLine:",
"deleteToBeginningOfParagraph:",
"deleteToEndOfLine:",
"deleteToEndOfParagraph:",
"deleteToMark:",
"deleteWordBackward:",
"deleteWordForward:",
"deminiaturize:",
"deselectAll:",
"fax:",
"hide:",
"hideOtherApplications:",
"indent:",
"loosenKerning:",
"lowerBaseline:",
"lowercaseWord:",
"makeKeyAndOrderFront:",
"miniaturize:",
"miniaturizeAll:",
"moveBackward:",
"moveBackwardAndModifySelection:",
"moveDown:",
"moveDownAndModifySelection:",
"moveForward:",
"moveForwardAndModifySelection:",
"moveLeft:",
"moveRight:",
"moveToBeginningOfDocument:",
"moveToBeginningOfLine:",
"moveToBeginningOfParagraph:",
"moveToEndOfDocument:",
"moveToEndOfLine:",
"moveToEndOfParagraph:",
"moveUp:",
"moveUpAndModifySelection:",
"moveWordBackward:",
"moveWordBackwardAndModifySelection:",
"moveWordForward:",
"moveWordForwardAndModifySelection:",
"newDocument:",
"ok:",
"openDocument:",
"orderBack:",
"orderFront:",
"orderFrontColorPanel:",
"orderFrontDataLinkPanel:",
"orderFrontHelpPanel:",
"orderFrontStandardAboutPanel:",
"orderFrontStandardInfoPanel:",
"orderOut:",
"pageDown:",
"pageUp:",
"paste:",
"pasteAsPlainText:",
"pasteAsRichText:",
"pasteFont:",
"pasteRuler:",
"performClose:",
"performMiniaturize:",
"performZoom:",
"print:",
"raiseBaseline:",
"revertDocumentToSaved:",
"runPageLayout:",
"runToolbarCustomizationPalette:",
"saveAllDocuments:",
"saveDocument:",
"saveDocumentAs:",
"saveDocumentTo:",
"scrollLineDown:",
"scrollLineUp:",
"scrollPageDown:",
"scrollPageUp:",
"scrollViaScroller:",
"selectAll:",
"selectLine:",
"selectNextKeyView:",
"selectParagraph:",
"selectPreviousKeyView:",
"selectText:",
"selectText:",
"selectToMark:",
"selectWord:",
"showContextHelp:",
"showGuessPanel:",
"showHelp:",
"showWindow:",
"stop:",
"subscript:",
"superscript:",
"swapWithMark:",
"takeDoubleValueFrom:",
"takeFloatValueFrom:",
"takeIntValueFrom:",
"takeObjectValueFrom:",
"takeStringValueFrom:",
"terminate:",
"tightenKerning:",
"toggle:",
"toggleContinuousSpellChecking:",
"toggleRuler:",
"toggleToolbarShown:",
"toggleTraditionalCharacterShape:",
"transpose:",
"transposeWords:",
"turnOffKerning:",
"turnOffLigatures:",
"underline:",
"unhide:",
"unhideAllApplications:",
"unscript:",
"uppercaseWord:",
"useAllLigatures:",
"useStandardKerning:",
"useStandardLigatures:",
"yank:",
"zoom:"
);
Super = NSObject;
};
GormComboBoxInspector = {
Actions = (
);
Outlets = (
alignmentMatrix,
backgroundColorWell,
itemBrowser,
itemField,
optionMatrix,
textColorWell,
visibleItemsForm,
itemTxt,
addButton,
removeButton,
itemTableView
);
Super = IBInspector;
};
IBInspector = {
Actions = (
"ok:",
"revert:",
"touch:"
);
Outlets = (
window
);
Super = NSObject;
};
NSApplication = {
Outlets = (
delegate
);
Super = NSResponder;
};
NSButton = {
Super = NSControl;
};
NSControl = {
Actions = (
"takeDoubleValueFrom:",
"takeFloatValueFrom:",
"takeIntValueFrom:",
"takeObjectValueFrom:",
"takeStringValueFrom:"
);
Outlets = (
target
);
Super = NSView;
};
NSMenu = {
Super = NSObject;
};
NSMenuItem = {
Outlets = (
target
);
Super = NSObject;
};
NSPanel = {
Super = NSWindow;
};
NSResponder = {
Super = NSObject;
};
NSSlider = {
Super = NSControl;
};
NSTextField = {
Outlets = (
delegate
);
Super = NSControl;
};
NSView = {
Super = NSResponder;
};
NSWindow = {
Outlets = (
delegate
);
Super = NSResponder;
};
}

View file

@ -49,11 +49,15 @@ extern NSArray *predefinedDateFormats, *predefinedNumberFormats;
{
id alignmentMatrix;
id backgroundColorWell;
id itemBrowser;
id itemField;
id optionMatrix;
id textColorWell;
id visibleItemsForm;
id itemTableView;
id itemTxt;
id addButton;
id removeButton;
NSMutableArray *itemsArray;
}
@end
@ -61,7 +65,6 @@ extern NSArray *predefinedDateFormats, *predefinedNumberFormats;
- (void) _setValuesFromControl: control
{
if (control == backgroundColorWell)
{
[object setBackgroundColor: [control color]];
@ -89,19 +92,35 @@ extern NSArray *predefinedDateFormats, *predefinedNumberFormats;
{
[object setNumberOfVisibleItems: [[control cellAtIndex: 0] intValue]];
}
else if (control == itemBrowser)
else if (control == itemField )
{
// To be done
}
else if (control == itemField)
else if (control == addButton)
{
// To be done
if ( ! [[itemTxt stringValue] isEqualToString:@""] )
{
[itemsArray addObject:[itemTxt stringValue]];
[itemTableView reloadData];
[object addItemWithObjectValue:[itemTxt stringValue]];
}
}
else if (control == removeButton)
{
int selected = [itemTableView selectedRow];
if ( selected != -1 )
{
[itemsArray removeObjectAtIndex: selected];
[itemTxt setStringValue:@""];
[itemTableView reloadData];
[object removeItemAtIndex:selected];
}
}
}
- (void) _getValuesFromObject: anObject
{
int i;
if (anObject != object)
{
return;
@ -119,10 +138,18 @@ extern NSArray *predefinedDateFormats, *predefinedNumberFormats;
[optionMatrix selectCellAtRow: 1 column: 0];
if ([anObject usesDataSource])
[optionMatrix selectCellAtRow: 2 column: 0];
if ([anObject numberOfItems] > 0 )
{
for (i=0;i<[anObject numberOfItems];i++)
{
NSLog(@"plop => %i",i);
[itemsArray insertObject:[anObject itemObjectValueAtIndex:i] atIndex:i];
}
[itemTableView reloadData];
}
[[visibleItemsForm cellAtIndex: 0]
setIntValue: [anObject numberOfVisibleItems]];
}
@ -132,11 +159,12 @@ extern NSArray *predefinedDateFormats, *predefinedNumberFormats;
{
return nil;
}
if ([NSBundle loadNibNamed: @"GormComboBoxInspector" owner: self] == NO)
if ([NSBundle loadNibNamed: @"GormNSComboBoxInspector" owner: self] == NO)
{
NSLog(@"Could not gorm GormComboBoxInspector");
NSLog(@"Could not gorm GormNSComboBoxInspector");
return nil;
}
itemsArray=[[NSMutableArray alloc] initWithCapacity:1];
return self;
}
@ -152,6 +180,32 @@ extern NSArray *predefinedDateFormats, *predefinedNumberFormats;
[self _getValuesFromObject: anObject];
}
// TableView DataSource
- (int)numberOfRowsInTableView:(NSTableView *)aTableView
{
if (aTableView == itemTableView )
return [itemsArray count];
else
return 0;
}
- (id)tableView:(NSTableView *)aTableView
objectValueForTableColumn:(NSTableColumn *)aTableColumn
row:(int)rowIndex
{
if (aTableView == itemTableView )
return [itemsArray objectAtIndex:rowIndex];
}
//TableView delegate
- (BOOL)tableView:(NSTableView *)aTableView shouldSelectRow:(int)rowIndex
{
if ( aTableView == itemTableView )
[itemTxt setStringValue:[itemsArray objectAtIndex:rowIndex]];
}
@end