1/* 2 * Copyright 2003-2008, Haiku. All rights reserved. 3 * Distributed under the terms of the MIT License. 4 * 5 * Authors: 6 * Philippe Houdoin 7 * Simon Gauvin 8 * Michael Pfeiffer 9 * Dr. Hartmut Reh 10 * julun <host.haiku@gmx.de> 11 */ 12 13#ifndef PAGESETUPWINDOW_H 14#define PAGESETUPWINDOW_H 15 16 17#include "BlockingWindow.h" 18#include "PrintUtils.h" 19 20 21#include <String.h> 22 23 24class BMessage; 25class BMenuField; 26class BTextControl; 27class MarginView; 28 29 30class PageSetupWindow : public BlockingWindow 31{ 32public: 33 PageSetupWindow(BMessage *msg, const char *printerName = NULL); 34 virtual void MessageReceived(BMessage *msg); 35 36 enum { 37 OK_MSG = 'ok__', 38 CANCEL_MSG = 'cncl', 39 PAGE_SIZE_CHANGED = 'pgsz', 40 ORIENTATION_CHANGED = 'ornt' 41 }; 42private: 43 void UpdateSetupMessage(); 44 45private: 46 BMessage * fSetupMsg; 47 BMenuField * fPageSizeMenu; 48 BMenuField * fOrientationMenu; 49 BTextControl * fScaleControl; 50 MarginView * fMarginView; 51 BString fPrinterDirName; 52 int32 fCurrentOrientation; 53}; 54 55#endif 56