Commits

Anonymous committed e306eac

vcl122: #i117746# clean up printer gfx compilation

Comments (0)

Files changed (10)

vcl/Library_vcl.mk

     vcl/unx/generic/printer/jobdata \
     vcl/unx/generic/printer/ppdparser \
     vcl/unx/generic/printer/printerinfomanager \
+    vcl/unx/generic/printergfx/psputil \
+    vcl/unx/generic/printergfx/bitmap_gfx \
+    vcl/unx/generic/printergfx/common_gfx \
+    vcl/unx/generic/printergfx/glyphset \
+    vcl/unx/generic/printergfx/printerjob \
+    vcl/unx/generic/printergfx/text_gfx \
 ))
 endif
 

vcl/Library_vclplug_gen.mk

     vcl/unx/generic/gdi/salprnpsp \
     vcl/unx/generic/gdi/salvd \
     vcl/unx/generic/gdi/xrender_peer \
-    vcl/unx/generic/printergfx/bitmap_gfx \
-    vcl/unx/generic/printergfx/common_gfx \
-    vcl/unx/generic/printergfx/glyphset \
-    vcl/unx/generic/printergfx/printerjob \
-    vcl/unx/generic/printergfx/psputil \
-    vcl/unx/generic/printergfx/text_gfx \
     vcl/unx/generic/window/FWS \
     vcl/unx/generic/window/salframe \
     vcl/unx/generic/window/salobj \

vcl/Library_vclplug_svp.mk

 ))
 
 $(eval $(call gb_Library_add_exception_objects,vclplug_svp,\
-    vcl/unx/generic/printergfx/bitmap_gfx \
-    vcl/unx/generic/printergfx/common_gfx \
-    vcl/unx/generic/printergfx/glyphset \
-    vcl/unx/generic/printergfx/printerjob \
-    vcl/unx/generic/printergfx/psputil \
-    vcl/unx/generic/printergfx/text_gfx \
     vcl/unx/headless/svpbmp \
     vcl/unx/headless/svpdummies \
     vcl/unx/headless/svpelement \

vcl/inc/printergfx.hxx

  *      vcl/unx/source/gdi/salgdi2.cxx
  */
 
-class PrinterBmp
+class VCL_PLUGIN_PUBLIC PrinterBmp
 {
 public:
 
 
 class Font3;
 
-class PrinterGfx
+class VCL_PLUGIN_PUBLIC PrinterGfx
 {
 private:            
     

vcl/inc/printerjob.hxx

 class PrinterGfx;
 
 
-class PrinterJob 
+class VCL_PLUGIN_PUBLIC PrinterJob 
 {
 private:            // private data
 

vcl/inc/psputil.hxx

+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * 
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org.  If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef _PSPRINT_PRINTERUTIL_HXX_
+#define _PSPRINT_PRINTERUTIL_HXX_
+
+#include "osl/file.hxx"
+
+#include "rtl/ustring.hxx"
+#include "rtl/string.hxx"
+#include "rtl/tencinfo.h"
+#include "rtl/textcvt.h"
+
+#include <map>
+
+namespace psp {
+
+/* 
+ *  string convenience routines
+ *  sizeof(pBuffer) must be at least 2 Bytes, 0x00 <= nValue <= 0xFF, 
+ *  effective buffer of get*ValueOf() is NOT NULL-terminated 
+ */
+sal_Int32   getHexValueOf (sal_Int32 nValue, sal_Char* pBuffer);
+sal_Int32   getAlignedHexValueOf (sal_Int32 nValue, sal_Char* pBuffer);
+sal_Int32   getValueOf    (sal_Int32 nValue, sal_Char* pBuffer);
+sal_Int32   appendStr     (const sal_Char* pSrc, sal_Char* pDst);
+
+sal_Bool    WritePS (osl::File* pFile, const sal_Char* pString);
+sal_Bool    WritePS (osl::File* pFile, const sal_Char* pString, sal_uInt64 nInLength);
+sal_Bool    WritePS (osl::File* pFile, const rtl::OString &rString);
+sal_Bool    WritePS (osl::File* pFile, const rtl::OUString &rString);
+
+class ConverterFactory 
+{
+
+public:
+    ConverterFactory();
+    ~ConverterFactory();
+    rtl_UnicodeToTextConverter  Get (rtl_TextEncoding nEncoding);
+    sal_Size                    Convert (const sal_Unicode *pText, int nTextLen,
+                                         sal_uChar *pBuffer, sal_Size nBufferSize, 
+                                         rtl_TextEncoding nEncoding);
+private:
+
+    std::map< rtl_TextEncoding, rtl_UnicodeToTextConverter >		m_aConverters;
+};
+
+ConverterFactory* GetConverterFactory ();
+
+}  /* namespace psp */
+
+#endif /* _PSPRINT_PRINTERUTIL_HXX_ */
+

vcl/inc/saldatabasic.hxx

 namespace psp
 {
     class PrinterInfoManager;
+    class ConverterFactory;
 }
 
 class VCL_PLUGIN_PUBLIC SalData
     SalInstance*		          m_pInstance; // pointer to instance
     oslModule		   	          m_pPlugin;   // plugin library handle
     psp::PrinterInfoManager*      m_pPIManager;
+    psp::ConverterFactory*        m_pConverterFactory;
 
     SalData();
     virtual ~SalData();

vcl/unx/generic/plugadapt/salplug.cxx

 #include "salinst.hxx"
 #include "unx/saldata.hxx"
 #include "vcl/printerinfomanager.hxx"
+#include "psputil.hxx"
 
 #include <cstdio>
 #include <unistd.h>
 SalData::SalData() :
     m_pInstance(NULL),
     m_pPlugin(NULL),
-    m_pPIManager(NULL)
+    m_pPIManager(NULL),
+    m_pConverterFactory(NULL)
 {
 }
 
 SalData::~SalData()
 {
     psp::PrinterInfoManager::release();
+    delete m_pConverterFactory, m_pConverterFactory = NULL;
 }

vcl/unx/generic/printergfx/psputil.cxx

 #include <string.h>
 
 #include "psputil.hxx"
+#include "saldatabasic.hxx"
 
 #include "tools/debug.hxx"
 
 ConverterFactory*
 GetConverterFactory ()
 {
-    static ConverterFactory* pCvt = NULL;
+    SalData* pSalData = GetSalData();
 
-    if (pCvt == NULL)
-        pCvt = new ConverterFactory;
+    if (pSalData->m_pConverterFactory == NULL)
+        pSalData->m_pConverterFactory = new ConverterFactory;
 
-    return pCvt;
+    return pSalData->m_pConverterFactory;
 }
 
 

vcl/unx/generic/printergfx/psputil.hxx

-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- * 
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org.  If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef _PSPRINT_PRINTERUTIL_HXX_
-#define _PSPRINT_PRINTERUTIL_HXX_
-
-#include "osl/file.hxx"
-
-#include "rtl/ustring.hxx"
-#include "rtl/string.hxx"
-#include "rtl/tencinfo.h"
-#include "rtl/textcvt.h"
-
-#include <map>
-
-namespace psp {
-
-/* 
- *  string convenience routines
- *  sizeof(pBuffer) must be at least 2 Bytes, 0x00 <= nValue <= 0xFF, 
- *  effective buffer of get*ValueOf() is NOT NULL-terminated 
- */
-sal_Int32   getHexValueOf (sal_Int32 nValue, sal_Char* pBuffer);
-sal_Int32   getAlignedHexValueOf (sal_Int32 nValue, sal_Char* pBuffer);
-sal_Int32   getValueOf    (sal_Int32 nValue, sal_Char* pBuffer);
-sal_Int32   appendStr     (const sal_Char* pSrc, sal_Char* pDst);
-
-sal_Bool    WritePS (osl::File* pFile, const sal_Char* pString);
-sal_Bool    WritePS (osl::File* pFile, const sal_Char* pString, sal_uInt64 nInLength);
-sal_Bool    WritePS (osl::File* pFile, const rtl::OString &rString);
-sal_Bool    WritePS (osl::File* pFile, const rtl::OUString &rString);
-
-class ConverterFactory 
-{
-
-public:
-    ConverterFactory();
-    ~ConverterFactory();
-    rtl_UnicodeToTextConverter  Get (rtl_TextEncoding nEncoding);
-    sal_Size                    Convert (const sal_Unicode *pText, int nTextLen,
-                                         sal_uChar *pBuffer, sal_Size nBufferSize, 
-                                         rtl_TextEncoding nEncoding);
-private:
-
-    std::map< rtl_TextEncoding, rtl_UnicodeToTextConverter >		m_aConverters;
-};
-
-ConverterFactory* GetConverterFactory ();
-
-}  /* namespace psp */
-
-#endif /* _PSPRINT_PRINTERUTIL_HXX_ */
-