749N/A/*
749N/A* $XConsortium: ClockP.h,v 1.19 89/12/06 15:23:06 kit Exp $
749N/A*/
749N/A
749N/A
749N/A/***********************************************************
749N/ACopyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts,
749N/Aand the Massachusetts Institute of Technology, Cambridge, Massachusetts.
749N/A
749N/A All Rights Reserved
749N/A
749N/APermission to use, copy, modify, and distribute this software and its
749N/Adocumentation for any purpose and without fee is hereby granted,
749N/Aprovided that the above copyright notice appear in all copies and that
749N/Aboth that copyright notice and this permission notice appear in
749N/Asupporting documentation, and that the names of Digital or MIT not be
749N/Aused in advertising or publicity pertaining to distribution of the
749N/Asoftware without specific, written prior permission.
749N/A
749N/ADIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
749N/AALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
749N/ADIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
749N/AANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
749N/AWHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
749N/AARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
749N/ASOFTWARE.
749N/A
749N/A******************************************************************/
749N/A
749N/A#ifndef _XawClockP_h
749N/A#define _XawClockP_h
749N/A
749N/A#include <X11/Xos.h> /* Needed for struct tm. */
749N/A#include <./Xaw3_1Clock.h>
749N/A#include <X11/CoreP.h>
749N/A
749N/A#define SEG_BUFF_SIZE 128
749N/A#define ASCII_TIME_BUFLEN 32 /* big enough for 26 plus slop */
749N/A
749N/A/* New fields for the clock widget instance record */
749N/Atypedef struct {
749N/A Pixel fgpixel; /* color index for text */
749N/A Pixel Hipixel; /* color index for Highlighting */
749N/A Pixel Hdpixel; /* color index for hands */
749N/A XFontStruct *font; /* font for text */
749N/A GC myGC; /* pointer to GraphicsContext */
749N/A GC EraseGC; /* eraser GC */
749N/A GC HandGC; /* Hand GC */
749N/A GC HighGC; /* Highlighting GC */
749N/A/* start of graph stuff */
749N/A int update; /* update frequence */
749N/A Dimension radius; /* radius factor */
749N/A int backing_store; /* backing store type */
749N/A Boolean reverse_video;
749N/A Boolean chime;
749N/A Boolean beeped;
749N/A Boolean analog;
749N/A Boolean show_second_hand;
749N/A Dimension second_hand_length;
749N/A Dimension minute_hand_length;
749N/A Dimension hour_hand_length;
749N/A Dimension hand_width;
749N/A Dimension second_hand_width;
749N/A Position centerX;
749N/A Position centerY;
749N/A int numseg;
749N/A int padding;
749N/A XPoint segbuff[SEG_BUFF_SIZE];
749N/A XPoint *segbuffptr;
749N/A XPoint *hour, *sec;
749N/A struct tm otm ;
749N/A XtIntervalId interval_id;
749N/A char prev_time_string[ASCII_TIME_BUFLEN];
749N/A } ClockPart;
749N/A
749N/A/* Full instance record declaration */
749N/Atypedef struct _ClockRec {
749N/A CorePart core;
749N/A ClockPart clock;
749N/A } ClockRec;
749N/A
749N/A/* New fields for the Clock widget class record */
749N/Atypedef struct {int dummy;} ClockClassPart;
749N/A
749N/A/* Full class record declaration. */
749N/Atypedef struct _ClockClassRec {
749N/A CoreClassPart core_class;
749N/A ClockClassPart clock_class;
749N/A } ClockClassRec;
749N/A
749N/A/* Class pointer. */
749N/Aextern ClockClassRec clockClassRec;
749N/A
749N/A#endif /* _XawClockP_h */