Alphabetical Class Index   Compound Members   File List  

HIOUtilityGDIOutput.h
00001 //
00002 // Copyright (c) 2000 by Tech Soft 3D, LLC.
00003 // The information contained herein is confidential and proprietary to
00004 // Tech Soft 3D, LLC., and considered a trade secret as defined under
00005 // civil and criminal statutes.  Tech Soft 3D shall pursue its civil
00006 // and criminal remedies in the event of unauthorized use or misappropriation
00007 // of its trade secrets.  Use of this information by anyone other than
00008 // authorized employees of Tech Soft 3D, LLC. is granted only under a
00009 // written non-disclosure agreement, expressly prescribing the scope and
00010 // manner of such use.
00011 //
00012 
00016 #ifndef _HIO_UTILITY_GDIOUTPUT_H
00017 #define _HIO_UTILITY_GDIOUTPUT_H
00018 
00019 #include "HTools.h"
00020 #include "HIOManager.h"
00021 
00022 
00027 #define HMFC_API 
00028 // msw driver specific driver_option debug flags
00029 
00037 #define DEBUG_FORCE_FULL_COLOR              0x00000010
00038 
00043 #define DEBUG_NO_WINDOWS_HOOK               0x00000040 
00044 
00050 #define DEBUG_SFB_COPY_TO_CLIPBOARD         0x00004000
00051 
00056 #define DEBUG_NO_RASTERS_IN_PRINTING        0x00020000
00057 
00062 #define DEBUG_PRINTING_MODE                 0x00040000
00063 
00068 #define DEBUG_CLIPBOARD_MODE                0x00080000
00069 
00070 
00076 #define DEBUG_PRINT_NOT_FRAMEBUFFER_MODE    0x00020000
00077 
00078 
00083 #define DEBUG_PRINT_NOT_RASTER_REDUCTION    0x00200000
00084 
00089 #define DEBUG_FORCE_SOFTWARE                0x01000000
00090 
00096 #define DEBUG_NO_PAINTERS_PANELLING 0x00000008
00097 
00098 
00103 typedef struct GDIExportInformation {
00104             HDC deviceContext;  
00105             HDC attribDC;       
00106             bool rasterOutput;  
00107             bool clipBoard;     
00108             void* windowID;     
00109         } GDIExportInformation; 
00110 
00111 
00113 
00126 class HMFC_API HIOUtilityGDIOutput: public HOutputHandler
00127 {
00128 
00129 public:
00130 
00131     HIOUtilityGDIOutput() {
00132         SetOutputOps(HOutputOpFileOutputByKey);
00133     };
00134     virtual ~HIOUtilityGDIOutput() {;};
00135 
00137     void RegisterOutputHandlerTypes() {
00138         HIORegisterOutputType("emf", this);
00139     }
00140 
00144     const char * GetOutputTypesString() {return "emf";};
00145 
00146 
00147     const char * GetOutputName() { return "HIOUtilityGDIOutput"; }
00148 
00152     HOutputHandlerStyle GetOutputStyle() {return HOutputHandlerStyleModel;};
00153 
00163     HFileOutputResult FileOutputByKey(const char * FileName, HC_KEY key, HOutputHandlerOptions * options);
00164     
00165     HFileOutputResult FileOutputByKey(const __wchar_t * FileName, HC_KEY key, HOutputHandlerOptions * options)
00166     {
00167         return FileOutputByKey(H_ASCII_TEXT(FileName), key, options);
00168         
00169     }
00170 
00171 
00172 private:
00173 
00174 };
00175 
00176 
00177 
00178 #endif
00179 
00180 
00181