1 /** 2 * 3 * $Id: DesktopP.h,v 1.1 2004/08/28 19:23:24 dannybackx Exp $ 4 * 5 * Copyright (C) 1995 Free Software Foundation, Inc. 6 * Copyright (C) 1995-2000 LessTif Development Team 7 * 8 * This file is part of the GNU LessTif Library. 9 * 10 * This library is free software; you can redistribute it and/or 11 * modify it under the terms of the GNU Library General Public 12 * License as published by the Free Software Foundation; either 13 * version 2 of the License, or (at your option) any later version. 14 * 15 * This library is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 18 * Library General Public License for more details. 19 * 20 * You should have received a copy of the GNU Library General Public 21 * License along with this library; if not, write to the Free 22 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 23 * 24 **/ 25 26 #ifndef _XM_DESKTOPP_H 27 #define _XM_DESKTOPP_H 28 29 #include <Xm/ExtObjectP.h> 30 31 #ifdef __cplusplus 32 extern "C" { 33 #endif 34 35 #ifndef XmIsDesktopObject 36 #define XmIsDesktopObject(w) XtIsSubclass(w, xmDesktopClass) 37 #endif 38 39 typedef struct _XmDesktopRec *XmDesktopObject; 40 typedef struct _XmDesktopClassRec *XmDesktopObjectClass; 41 XMLIBEXPORT extern WidgetClass xmDesktopClass; 42 43 typedef struct _XmDesktopClassPart { 44 WidgetClass child_class; 45 XtWidgetProc insert_child; 46 XtWidgetProc delete_child; 47 XtPointer extension; 48 } XmDesktopClassPart, *XmDesktopClassPartPtr; 49 50 typedef struct _XmDesktopClassRec { 51 ObjectClassPart object_class; 52 XmExtClassPart ext_class; 53 XmDesktopClassPart desktop_class; 54 } XmDesktopClassRec; 55 56 typedef struct { 57 Widget parent; 58 Widget *children; 59 Cardinal num_children; 60 Cardinal num_slots; 61 } XmDesktopPart, *XmDesktopPartPtr; 62 63 XMLIBEXPORT extern XmDesktopClassRec xmDesktopClassRec; 64 65 typedef struct _XmDesktopRec { 66 ObjectPart object; 67 XmExtPart ext; 68 XmDesktopPart desktop; 69 } XmDesktopRec; 70 71 /* 72 * protos 73 */ 74 XMLIBEXPORT extern WidgetClass _XmGetActualClass(Display *display, 75 WidgetClass w_class); 76 XMLIBEXPORT extern void _XmSetActualClass(Display *display, 77 WidgetClass w_class, 78 WidgetClass actualClass); 79 80 #ifdef __cplusplus 81 } 82 #endif 83 84 #endif /* _XM_DESKTOPP_H */ 85