ftp.nice.ch/pub/next/developer/resources/classes/TabCell.s.tar.gz#/TabCell/MyController.m

This is MyController.m in view mode; [Download] [Up]

#import "TabSelectionCell.h"

#import "MyController.h"

@implementation MyController

- appDidInit:sender
{
	NXRect	backgroundRect,matrixRect;

	/* Set backgroundView to be flipped ('cause Matrices are flipped) */
	[backgroundView setFlipped:YES];
	
	/* Get the backgroundView's dimensions */
	[backgroundView getBounds:&backgroundRect];

	/* Set up the matrix bounds */
	matrixRect = backgroundRect;
	matrixRect.origin.y = NX_MAXY(&matrixRect) - 17.0;

	/* Prepare a matrix to go inside the backgroundView */
	tabMatrix = [[Matrix allocFromZone:[self zone]] initFrame:&matrixRect 
								mode:NX_RADIOMODE
								cellClass:[TabSelectionCell class]
								numRows:1
								numCols:4];
	
	/* Set the background gray of tabMatrix to NX_DKGRAY */
	[tabMatrix setBackgroundGray:NX_DKGRAY];
	
	/* Set the autosizing and autoscrolling attributes of the matrix */
    [tabMatrix setAutosizing:NX_WIDTHSIZABLE|NX_HEIGHTSIZABLE];
	[tabMatrix setAutoscroll:YES];

	/* Stick the matrix in our scrollView */
	[backgroundView addSubview:tabMatrix];

	/* Set our target and single-click actions */
	[tabMatrix setTarget:self];
	[tabMatrix setAction:@selector(tabMatrixAction:)];

	/* Size tabMatrix to its cells and display it */
	[tabMatrix sizeToCells];
	[tabMatrix display];

	return self;
}

- tabMatrixAction:sender
{
	/* Put a cool action here (probably something like switching views
		underneath the tabs) */
	return self;
}

@end

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.