ftp.nice.ch/Attic/openStep/implementation/gnustep/sources/objcX-0.87.tgz#/objcX-0.87/dpsclient/XtGState.h

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

/* XtGState - Implements graphic state drawing for Xt/Xlib

   Copyright (C) 1995 Free Software Foundation, Inc.

   Written by:  Paul Kunz <Paul_Kunz@SLAC.Stanford.edu>,
	Adam Fedor <fedor@boulder.colorado.edu>
   Date: Nov 1995
   
   This file is part of the GNU Objective C User Interface Library.

   This library is free software; you can redistribute it and/or
   modify it under the terms of the GNU Library General Public
   License as published by the Free Software Foundation; either
   version 2 of the License, or (at your option) any later version.
   
   This library is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Library General Public License for more details.
   
   You should have received a copy of the GNU Library General Public
   License along with this library; if not, write to the Free
   Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
   */

#ifndef _XtGState_h_INCLUDE
#define _XtGState_h_INCLUDE

#include <Foundation/NSObject.h>
#include "xwfriends.h"
#include "cgt.h"

@class View;
@class Stack;
@class XtDrawContext;

@interface XtGState : NSObject
{
    XtDrawContext *ctxt;
    GC		xgcntxt;
    XGCValues	gcv;

    cgt_t	cgt;		/* current matrix */
    float	flip;		/* drawable height - flipping coordinates */
    NSPoint	point;		/* current point (non-flipped) */
    Region	clipregion;
    Stack	*path;		/* current path - FIFO stack */
    device_color_t color;

    Drawable	draw;
    window_device_t window;
    void	*_view;

    BOOL        sharedGC;
    BOOL        update;    /* indicates draw to cache but not screen yet */
    BOOL        didDraw;   /* indicates draw to screen */
}

- initWithDrawContext: (XtDrawContext *)context;
- initWithDrawContext: (XtDrawContext *)context andView: (View *)aView;

- copyWithView: (View *)aView;
- (void) setWindowDevice: (window_device_t)device;
- (void) setWindowDevice: (window_device_t)device andView: (View *)view;
- (void) setColor: (device_color_t)acolor;
- (void) setFont: (Font)fid;

- (window_device_t) windowDevice;

- setNeedsDisplay: (BOOL)flag;
- setDidUpdate;
- (BOOL) needsDisplay;
- (BOOL) didDraw;
- (BOOL) hasDrawable;
- (BOOL) hasGraphicContext;
- (GC) graphicContext;
- (Drawable) drawable;
- (NSRect) clipRect;

- convertPointToDrawable: (NSPoint *)aPoint;
- convertRectToDrawable: (NSRect *)aRect;
- copyDrawable:(Drawable)source fromRect: (NSRect *)aRect;
- copyDrawable:(Drawable)source fromRect: (NSRect *)aRect 
			         toPoint: (NSPoint *)aPoint;
- copyImage: (XImage *)image ofSize: (NSSize *)size;
- (void) flushRect: (NSRect *)frame;
- (void) flushRectIfNeeded: (NSRect *)frame;

@end

#endif /* _XtGState_h_INCLUDE */

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