1 /** 2 * 3 * $Header: /cvsroot/lesstif/lesstif/include/Motif-2.1/Xm/PrintSP.h,v 1.9 2004/06/07 20:01:50 dannybackx Exp $ 4 * 5 * Copyright � 2000,2001,2002 Free Software Foundation, Inc. 6 * 7 * This file is part of the GNU LessTif Library. 8 * 9 * This library is free software; you can redistribute it and/or 10 * modify it under the terms of the GNU Library General Public 11 * License as published by the Free Software Foundation; either 12 * version 2 of the License, or (at your option) any later version. 13 * 14 * This library is distributed in the hope that it will be useful, 15 * but WITHOUT ANY WARRANTY; without even the implied warranty of 16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 17 * Library General Public License for more details. 18 * 19 * You should have received a copy of the GNU Library General Public 20 * License along with this library; if not, write to the Free 21 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 22 * 23 **/ 24 25 #ifndef _XM_PRINTSP_H 26 #define _XM_PRINTSP_H 27 28 #include <Xm/Xm.h> 29 #include <X11/ShellP.h> 30 31 #ifdef __cplusplus 32 extern "C" { 33 #endif 34 35 /* New fields for the XmPrintShell widget class record */ 36 37 typedef struct { 38 XtPointer extension; /* pointer to extension record */ 39 } XmPrintShellClassPart; 40 41 typedef struct XmPrintShellClassRec { 42 CoreClassPart core_class; 43 CompositeClassPart composite_class; 44 ShellClassPart shell_class; 45 WMShellClassPart wm_shell_class; 46 VendorShellClassPart vendor_shell_class; 47 TopLevelShellClassPart top_level_shell_class; 48 ApplicationShellClassPart application_shell_class; 49 XmPrintShellClassPart print_shell_class; 50 } XmPrintShellClassRec; 51 52 XMLIBEXPORT extern XmPrintShellClassRec xmPrintShellClassRec; 53 54 /* New fields for the XmPrint shell widget */ 55 56 typedef struct { 57 XtCallbackList start_job_callback, 58 end_job_callback, 59 page_setup_callback, 60 pdm_notification_callback; 61 Dimension min_x, 62 min_y, 63 max_x, 64 max_y; 65 unsigned short default_pixmap_resolution; 66 int print_resolution; 67 Boolean last_page; 68 } XmPrintShellPart; 69 70 typedef struct XmPrintShellRec { 71 CorePart core; 72 CompositePart composite; 73 ShellPart shell; 74 WMShellPart wm; 75 VendorShellPart vendor; 76 TopLevelShellPart topLevel; 77 ApplicationShellPart application; 78 XmPrintShellPart print; 79 } XmPrintShellRec; 80 XMLIBEXPORT extern WidgetClass xmPrintShellWidgetClass; 81 82 #define PS_StartJobCallback(w) \ 83 (((XmPrintShellWidget) (w))->print.start_job_callback) 84 #define PS_EndJobCallback(w) \ 85 (((XmPrintShellWidget) (w))->print.end_job_callback) 86 #define PS_PageSetupCallback(w) \ 87 (((XmPrintShellWidget) (w))->print.page_setup_callback) 88 #define PS_PdmNotificationCallback(w) \ 89 (((XmPrintShellWidget) (w))->print.pdm_notification_callback) 90 #define PS_MinX(w) \ 91 (((XmPrintShellWidget) (w))->print.min_x) 92 #define PS_MinY(w) \ 93 (((XmPrintShellWidget) (w))->print.min_y) 94 #define PS_MaxX(w) \ 95 (((XmPrintShellWidget) (w))->print.max_x) 96 #define PS_MaxY(w) \ 97 (((XmPrintShellWidget) (w))->print.max_y) 98 #define PS_DefaultPixmapResolution(w) \ 99 (((XmPrintShellWidget) (w))->print.default_pixmap_resolution) 100 #define PS_PrintResolution(w) \ 101 (((XmPrintShellWidget) (w))->print.print_resolution) 102 #define PS_LastPage(w) \ 103 (((XmPrintShellWidget) (w))->print.last_page) 104 105 #ifdef __cplusplus 106 } 107 #endif 108 109 #endif /* _XM_PRINTSP_H */ 110