51# include <Inventor/Win/SoWinPrintDialog.h>
54#ifndef SO_XT_PRINT_DIALOG_
55#define SO_XT_PRINT_DIALOG_
57#include <X11/Intrinsic.h>
60#include <Inventor/SbBasic.h>
61#include <Inventor/Xt/SoXtComponent.h>
62#include <Inventor/misc/SoCallbackList.h>
146 SoWidget parent = NULL,
147 const char *name = NULL,
148 SbBool buildInsideParent = TRUE);
154 SoWidget parent = NULL,
155 const char *name = NULL,
156 SbBool buildInsideParent = TRUE);
207 SoXtPrintDialogCB *f,
208 void *userData = NULL);
216 SoXtPrintDialogCB *f,
217 void *userData = NULL);
231 virtual SbString getDefaultWidgetName()
const;
232 virtual SbString getDefaultTitle()
const;
233 virtual SbString getDefaultIconTitle()
const;
240 SbBool printerOutput, postScriptOutput;
243 SoWidget messageWidget, printButton, quitButton;
244 SoWidget messageLabelWidget, fileFormatWidget;
245 SoWidget toPrinterWidget, toPostScriptFileWidget, toRGBFileWidget;
246 SoWidget printerHorizSize, printerVertSize;
247 SoWidget postScriptHorizSize, postScriptVertSize;
248 SoWidget rgbHorizSize, rgbVertSize;
249 SoWidget printerDPIField, postScriptDPIField;
250 SoWidget rgbFilenameWidget, postScriptFilenameWidget;
252 char *defaultPrinter;
260 void getPrinterList();
261 void printToPostScript(
SoNode *,
char *,
int,
int );
264 void buildToPrinterWidget( SoWidget parent );
265 void buildToPostScriptFileWidget( SoWidget parent );
266 void buildToRGBFileWidget( SoWidget parent );
268 void buildRadioButton(
char *,
char *,
char *,
int,
int,
269 SoWidget, XtCallbackProc );
270 void buildSizeFields(
char *,
int, SoWidget, SoWidget &, SoWidget &,
271 XtCallbackProc, XtCallbackProc );
272 void buildDPIField(
int, SoWidget, SoWidget &, XtCallbackProc );
273 void updateTextports();
279 XmAnyCallbackStruct * );
281 XmAnyCallbackStruct * );
283 XmAnyCallbackStruct * );
285 XmAnyCallbackStruct * );
287 XmAnyCallbackStruct * );
289 XmAnyCallbackStruct * );
291 XmAnyCallbackStruct * );
293 XmAnyCallbackStruct * );
295 XmAnyCallbackStruct * );
297 XmAnyCallbackStruct * );
299 XmAnyCallbackStruct * );
301 XmAnyCallbackStruct * );
303 XmAnyCallbackStruct * );
305 XmAnyCallbackStruct * );
307 XmAnyCallbackStruct * );
310 SoWidget styleButton;
315 SoWidget buildWidget(SoWidget parent);
318 void constructorCommon(
SbBool buildNow);
326 SoXtPrintDialogCB *f,
330 beforeList.
addCallback((SoCallbackListCB *) f, userData);
335 SoXtPrintDialogCB *f,
339 afterList.
addCallback((SoCallbackListCB *) f, userData);
List of generic (void *) pointers.
Class for smart character strings.
Manages a list of callbacks and associated data.
void addCallback(SoCallbackListCB *f, void *userData=NULL)
Adds a function to the list of callback functions.
void clearCallbacks()
Clears all callback functions from the list.
Renders a scene graph using Open Inventor's Render Engine.
Abstract base class for all database nodes.
Path that points to a list of hierarchical nodes.
Abstract base class for all Open Inventor components.
Dialog box for controlling printing.
SoGLRenderAction * getGLRenderAction()
Gets the render action to be used when printing.
void setAfterPrintCallback(SoXtPrintDialogCB *f, void *userData=NULL)
Two callbacks are maintained, one which gets called just before a print is executed,...
void setPrintSize(const SbVec2f &inches)
Sets the size of the printed image in inches.
SoPath * getSceneGraphPath()
Gets the path to nodes to be used for printing.
void SoXtPrintDialogCB(void *userData, SoXtPrintDialog *dialog)
void setBeforePrintCallback(SoXtPrintDialogCB *f, void *userData=NULL)
Two callbacks are maintained, one which gets called just before a print is executed,...
SoXtPrintDialog(SoWidget parent=NULL, const char *name=NULL, SbBool buildInsideParent=TRUE)
Constructor.
void setGLRenderAction(const SoGLRenderAction *act)
Sets the render action to be used when printing.
void setPrintSize(const SbVec2s &pixels)
Sets the size of the printed image in pixels.
~SoXtPrintDialog()
Destructor.
SoXtPrintDialog(SoGLRenderAction *act, SoWidget parent=NULL, const char *name=NULL, SbBool buildInsideParent=TRUE)
Constructor that takes a render action.
SoNode * getSceneGraph()
Gets the root node to be used for printing.
void setSceneGraph(SoNode *root)
Sets the root node to be used for printing.
void setSceneGraph(SoPath *path)
Sets the path to nodes to be used for printing.