This is UHLineShapeInspector.m in view mode; [Download] [Up]
#import "UHLineShapeInspector.h"
#import "UHLineShape.h"
@implementation UHLineShapeInspector
- init
{
char buf[MAXPATHLEN + 1];
id bundle;
[super init];
bundle = [NXBundle bundleForClass:[UHLineShape class]];
[bundle getPath:buf
forResource:"UHLineShapeInspector"
ofType:"nib"];
[NXApp loadNibFile:buf
owner:self
withNames:NO
fromZone:[self zone]];
return self;
}
- setUpAngleBox
{
if (choice == UH_VARIABLESLOPE){
[[angleBox cell] setEnabled:YES];
[angleSlider setFloatValue:[object angle]];
[angleSlider setEnabled:YES];
[angleText setFloatValue:[object angle]];
[angleText setEditable:YES];
[angleText setBackgroundGray:NX_WHITE];
[minAngle setTextGray:NX_BLACK];
[maxAngle setTextGray:NX_BLACK];
}
else {
[[angleBox cell] setEnabled:NO];
[angleSlider setFloatValue:0.0];
[angleSlider setEnabled:NO];
[angleText setStringValue:""];
[angleText setEditable:NO];
[angleText setBackgroundGray:NX_LTGRAY];
[minAngle setTextGray:NX_DKGRAY];
[maxAngle setTextGray:NX_DKGRAY];
}
return self;
}
- revert:sender
{
[lineWidthSlider setFloatValue:[object lineWidth]];
[lineWidthText setFloatValue:[object lineWidth]];
[lineColorWell setColor: [object lineColor]];
[tagText setIntValue:[object tag]];
/* Set popuplist to reflect the correct choice of line type. */
choice=[object choice];
[choiceButton setTitle:[[choiceMenu findCellWithTag:choice] title]];
[self setUpAngleBox];
return [super revert:sender];
}
- lineChoice:sender
{
choice = [sender selectedTag];
[object setChoice:choice];
[self setUpAngleBox];
[super ok:sender];
return self;
}
- ok:sender
{
if(sender==lineWidthSlider){
[lineWidthText setFloatValue:[sender floatValue]];
[object setLineWidth:[sender floatValue]];
}
if(sender==lineWidthText){
[lineWidthSlider setFloatValue:[sender floatValue]];
[object setLineWidth:[sender floatValue]];
}
if(sender==angleSlider){
[angleText setFloatValue:[sender floatValue]];
[object setAngle:[sender floatValue]];
}
if(sender==angleText){
[angleSlider setFloatValue:[sender floatValue]];
[object setAngle:[sender floatValue]];
}
if(sender==tagText)[object setTag:[tagText intValue]];
if(sender==lineColorWell)[object setLineColor:[lineColorWell color]];
return [super ok:sender];
}
- (BOOL)wantsButtons
{
return NO;
}
@end
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.