ftp.nice.ch/pub/next/developer/objc/api/intuitiv3d_API.s.tar.gz#/i3dApi/Headers/i3d/CX3DAttributeInsp.h

This is CX3DAttributeInsp.h in view mode; [Download] [Up]

/*
 * Copyright 1993 by Cub'x Systemes
 * 
 * All Rights Reserved
 *
 * Permission to use, copy, and distribute this software and its
 * documentation for the  purpose of making new intuitiv'3d modules.
 * This copyright notice must appears in all copies that you distribute.
 * The name of Cub'x Systeme should not be used in advertising or publicity
 * without specific, written prior permission. 
 * CUB'X SYSTEMES DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
 * ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
 * CUB'X SYSTEMES BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
 * ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
 * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
 * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
 * SOFTWARE.
 */
/******************************************************************************* 
 *                                                                             *
 *     Project intuitiv'3d                                                     *
 *     -------------------                                                     *
 *                                                                             *
 *                                                                             *
 *     File: CX3DAttributeInsp.h                                               *
 *                                                                             *
 *                                                                             *
 *     Creation date: Mon Jul 26 17:59:00 GMT+0200 1993                        *
 *                                                                             *
 *                                                                             *
 *     Contents: A generic inspector for object attributes                     *
 *                                                                             *
 *                                                                             *
 *******************************************************************************/

#import <i3d/InspectorView.h>


/*****************************************************************************
 *                                                                           *
 *                     Parameter type definition                             *
 *                                                                           *
 *****************************************************************************/

#define INTER_OBJECT_SPACE 10.0

/*
 *  Type of parameters
 */
#define AIP_NULL  0 /* A null parameter for the end of the list */
#define AIP_FLOAT 1 /* A float parameter                        */
#define AIP_POINT 2 /* A point in the x y z space               */
#define AIP_ANGLE 3 /* An angle                                 */
#define AIP_COLOR 4 /* A color                                  */
#define AIP_BOOL  5 /* A boolean value                          */

typedef struct _aiparameter
{
  int type;          /* Type of the parameter                   */
  BOOL dynamicBound; /* YES if the inspector must evaluate bounds 
		        every time the value changes            */
  char parameterName[128];
  union
    {
      struct __floatp
	{
	  SEL setValueMethod;
	  SEL getValueMethod;
	  SEL getMinValueMethod;
	  SEL getMaxValueMethod;
	} floatp;
      struct __pointp
	{
	  SEL setXValueMethod;
	  SEL getXValueMethod;
	  SEL getXMinValueMethod;
	  SEL getXMaxValueMethod;
	  SEL setYValueMethod;
	  SEL getYValueMethod;
	  SEL getYMinValueMethod;
	  SEL getYMaxValueMethod;
	  SEL setZValueMethod;
	  SEL getZValueMethod;
	  SEL getZMinValueMethod;
	  SEL getZMaxValueMethod;
	} pointp;
      struct __colorp
	{
	  SEL setRedValueMethod;
	  SEL setGreenValueMethod;
	  SEL setBlueValueMethod;
	  SEL getRedValueMethod;
	  SEL getGreenValueMethod;
	  SEL getBlueValueMethod;
	} colorp;
      struct __boolp
	{
	  SEL setBoolValue;
	  SEL getBoolValue;
	  char trueTitle[128];
	  char falseTitle[128];
	} boolp;
    } data;
} AIParameter;

@interface AttributeInsp : InspectorView
{
  /*
   *  List of objects
   */
  id currentClass;
  id interLst; /* List of IAIParameter */
}


+ (const char*)nibName;
+ (BOOL) sameParameters: (AIParameter*) p1 : (AIParameter*) p2;

/*****************************************************************************
 *                                                                           *
 *                     Dynamic interface manipulation                        *
 *                                                                           *
 *****************************************************************************/

- reevaluateBounds;
- buildInterfaceForObject: anObject;
- unbuildInterface;

/*****************************************************************************
 *                                                                           *
 * Methods to be compatible with the main inspector                          *
 *                                                                           *
 *****************************************************************************/

- sendAllValueToObject: anObject;
- receiveAllValueFromObject: anObject;
- (const char*) title;

/*****************************************************************************
 *                                                                           *
 *                     Methods implemented by the inspected object           *
 *                                                                           *
 *****************************************************************************/

- (AIParameter*) AIparameters;
- (const char*) inspectorName;
@end

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