mirror of
https://github.com/gnustep/libs-gdl2.git
synced 2025-04-23 05:00:46 +00:00
* DBModeler/Inspectors/AttributeInspector.h/m: implement
valueType pop-up button, and add macro to clean up some code. * DBModeler/Inspectors/AttributeInspector.gorm: Ditto. git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gdl2/trunk@23535 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
554b600357
commit
05f8a3e375
5 changed files with 66 additions and 16 deletions
|
@ -9,6 +9,10 @@
|
|||
* DBModeler/GNUmakefile: Add new file.
|
||||
* DBModeler/DefaultColumnProvider.m: Set column header image.
|
||||
|
||||
* DBModeler/Inspectors/AttributeInspector.h/m: implement valueType
|
||||
pop-up button, and add macro to clean up some code.
|
||||
* DBModeler/Inspectors/AttributeInspector.gorm: Ditto.
|
||||
|
||||
2006-09-16 David Ayers <ayers@fsfe.org>
|
||||
|
||||
* EOAccess/EOAttribute.[hm]: Add documentation.
|
||||
|
|
|
@ -12,7 +12,8 @@
|
|||
"setInitArgument:",
|
||||
"setPrecision:",
|
||||
"setWidth:",
|
||||
"setTimeZone:"
|
||||
"setTimeZone:",
|
||||
"setValueType:"
|
||||
);
|
||||
Outlets = (
|
||||
_extNameField,
|
||||
|
@ -37,7 +38,8 @@
|
|||
_data_width,
|
||||
_decimal_precision,
|
||||
_decimal_width,
|
||||
_date_tz
|
||||
_date_tz,
|
||||
_valueTypeSelect
|
||||
);
|
||||
Super = EOMInspector;
|
||||
};
|
||||
|
@ -52,7 +54,7 @@
|
|||
};
|
||||
FirstResponder = {
|
||||
Actions = (
|
||||
"setTimeZone:",
|
||||
"setValueType:",
|
||||
"setClassName:",
|
||||
"setConversionMethod:",
|
||||
"setExternalName:",
|
||||
|
@ -61,6 +63,7 @@
|
|||
"setInitArgument:",
|
||||
"setName:",
|
||||
"setPrecision:",
|
||||
"setTimeZone:",
|
||||
"setValueClassNameAndType:",
|
||||
"setWidth:"
|
||||
);
|
||||
|
|
Binary file not shown.
|
@ -12,6 +12,7 @@
|
|||
{
|
||||
IBOutlet NSTextField *_extNameField;
|
||||
IBOutlet NSTextField *_extTypeField;
|
||||
IBOutlet NSPopUpButton *_valueTypeSelect;
|
||||
IBOutlet NSPopUpButton *_flipSelect;// select which valueClassName/flip
|
||||
IBOutlet NSBox *_flipView; // gets replaced with a *Flip...
|
||||
IBOutlet NSBox *_internalData;
|
||||
|
@ -21,7 +22,9 @@
|
|||
NSDictionary *_classTitleDict;
|
||||
NSDictionary *_titleClassDict;
|
||||
NSDictionary *_valueTypeTitleDict;
|
||||
|
||||
NSDictionary *_valueTypeDict;
|
||||
NSDictionary *_typeValueDict;
|
||||
|
||||
IBOutlet NSBox *_customFlip; // default
|
||||
IBOutlet NSBox *_dataFlip;
|
||||
IBOutlet NSBox *_dateFlip;
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
#include "AttributeInspector.h"
|
||||
#include <Foundation/NSObjCRuntime.h>
|
||||
|
||||
#define NO_ZEROS(x, i) i ? [x setIntValue:i] : [x setStringValue:@""];
|
||||
|
||||
@implementation AttributeInspector
|
||||
- (void) awakeFromNib
|
||||
{
|
||||
|
@ -15,7 +17,40 @@
|
|||
_doubleFlip, @"Double",
|
||||
_integerFlip, @"Integer",
|
||||
nil];
|
||||
|
||||
|
||||
_valueTypeDict =
|
||||
[[NSDictionary alloc] initWithObjectsAndKeys:
|
||||
@"", @"",
|
||||
@"c", @"char",
|
||||
@"C", @"unsigned char",
|
||||
@"s", @"short",
|
||||
@"S", @"unsigned short",
|
||||
@"i", @"int",
|
||||
@"I", @"unsigned int",
|
||||
@"l", @"long",
|
||||
@"L", @"unsigned long",
|
||||
@"u", @"long long",
|
||||
@"U", @"unsigned long long",
|
||||
@"f", @"float",
|
||||
@"d", @"double",
|
||||
nil];
|
||||
_typeValueDict =
|
||||
[[NSDictionary alloc] initWithObjectsAndKeys:
|
||||
@"", @"",
|
||||
@"char", @"c",
|
||||
@"unsigned char", @"C",
|
||||
@"short", @"s",
|
||||
@"unsigned short", @"S",
|
||||
@"int", @"i",
|
||||
@"unsigned int", @"I",
|
||||
@"long", @"l",
|
||||
@"unsigned long", @"L",
|
||||
@"long long", @"u",
|
||||
@"unsigned long long", @"U",
|
||||
@"float", @"f",
|
||||
@"double", @"d",
|
||||
nil];
|
||||
|
||||
/*
|
||||
* class name = key, pop-up item = value,
|
||||
* "Custom" is not found,
|
||||
|
@ -129,10 +164,14 @@
|
|||
EOAttribute *obj = [self selectedObject];
|
||||
NSString *title = [self _titleForPopUp];
|
||||
NSBox *flipTo = [self _viewForTitle:title];
|
||||
|
||||
NSString *valType = [obj valueType];
|
||||
NSString *valueTypeName =
|
||||
[_typeValueDict objectForKey: valType ? valType : @""];
|
||||
|
||||
[_nameField setStringValue:[obj name]];
|
||||
[_extNameField setStringValue:[obj columnName]];
|
||||
[_extTypeField setStringValue:[obj externalType]];
|
||||
[_valueTypeSelect selectItemWithTitle:valueTypeName];
|
||||
[_flipSelect selectItemWithTitle:title];
|
||||
[flipTo setFrame: [_flipView frame]];
|
||||
[_internalData replaceSubview:_flipView with:flipTo];
|
||||
|
@ -145,8 +184,7 @@
|
|||
{
|
||||
int tmp;
|
||||
tmp = [[self selectedObject] width];
|
||||
tmp ? [_string_width setIntValue:tmp]
|
||||
: [_string_width setStringValue:@""];
|
||||
NO_ZEROS(_string_width,tmp);
|
||||
}
|
||||
|
||||
- (void) updateCustom
|
||||
|
@ -154,8 +192,7 @@
|
|||
EOAttribute *obj = [self selectedObject];
|
||||
int tmp;
|
||||
tmp = [obj width];
|
||||
tmp ? [_custom_width setIntValue:tmp]
|
||||
: [_custom_width setStringValue:@""];
|
||||
NO_ZEROS(_custom_width, tmp);
|
||||
[_custom_class setStringValue:[obj valueClassName]];
|
||||
[_custom_factory setStringValue:[obj valueFactoryMethodName]];
|
||||
[_custom_conversion setStringValue:[obj adaptorValueConversionMethodName]];
|
||||
|
@ -169,11 +206,9 @@
|
|||
int tmp;
|
||||
|
||||
tmp = [obj width];
|
||||
tmp ? [_decimal_width setIntValue:tmp]
|
||||
: [_decimal_width setStringValue:@""];
|
||||
NO_ZEROS(_decimal_width, tmp);
|
||||
tmp = [obj precision];
|
||||
tmp ? [_decimal_precision setIntValue:[obj width]]
|
||||
: [_decimal_precision setStringValue:@""];
|
||||
NO_ZEROS(_decimal_precision, tmp);
|
||||
|
||||
}
|
||||
|
||||
|
@ -191,8 +226,7 @@
|
|||
int tmp;
|
||||
|
||||
tmp = [[self selectedObject] width];
|
||||
tmp ? [_data_width setIntValue:tmp]
|
||||
: [_data_width setStringValue:@""];
|
||||
NO_ZEROS(_data_width, tmp);
|
||||
}
|
||||
|
||||
- (void) updateDouble;
|
||||
|
@ -205,6 +239,12 @@
|
|||
return [obj isKindOfClass:[EOAttribute class]];
|
||||
}
|
||||
|
||||
- (IBAction) setValueType:(id)sender
|
||||
{
|
||||
id valueType = [_valueTypeDict objectForKey:[sender titleOfSelectedItem]];
|
||||
[(EOAttribute *)[self selectedObject] setValueType:valueType];
|
||||
}
|
||||
|
||||
- (IBAction) setTimeZone:(id)sender;
|
||||
{
|
||||
// fixme
|
||||
|
|
Loading…
Reference in a new issue