20#include <com/sun/star/uno/XComponentContext.hpp>
37#define BINARYSETUPMARKER 0x23864691
39#define PROPERTY_Orientation 0
40#define PROPERTY_Horizontal 1
50 : OPropertySetHelper( m_aBHelper )
84 static ::cppu::OPropertyArrayHelper s_PropertyArrayHelper(
85 css::uno::Sequence<css::beans::Property>{
90 return s_PropertyArrayHelper;
95 ::osl::MutexGuard aGuard(
m_aMutex );
97 bool bDifferent =
false;
105 rConvertedValue <<=
n;
116 rConvertedValue <<= b;
124 OSL_FAIL(
"VCLXPrinterPropertySet_Impl::convertFastPropertyValue - invalid Handle" );
132 ::osl::MutexGuard aGuard(
m_aMutex );
148 OSL_FAIL(
"VCLXPrinterPropertySet_Impl::convertFastPropertyValue - invalid Handle" );
167 OSL_FAIL(
"VCLXPrinterPropertySet_Impl::convertFastPropertyValue - invalid Handle" );
175 ::osl::MutexGuard aGuard(
m_aMutex );
177 css::uno::Any aValue;
178 aValue <<= bHorizontal;
184 ::osl::MutexGuard aGuard(
m_aMutex );
187 css::uno::Sequence< OUString > aDescriptions( nPaperBinCount );
188 for ( sal_uInt16
n = 0;
n < nPaperBinCount;
n++ )
192 OUString::number(
n) +
";*;*";
194 aDescriptions.getArray()[
n] = aDescr;
196 return aDescriptions;
201 ::osl::MutexGuard aGuard(
m_aMutex );
203 sal_uInt16 nPaperBin = sal::static_int_cast< sal_uInt16 >(
210 ::osl::MutexGuard aGuard(
m_aMutex );
215 return css::uno::Sequence<sal_Int8>(
static_cast<sal_Int8 const *
>(aMem.
GetData()), aMem.
Tell() );
220 ::osl::MutexGuard aGuard(
m_aMutex );
222 SvMemoryStream aMem(
const_cast<signed char*
>(data.getConstArray()), data.getLength(), StreamMode::READ );
249 ::osl::MutexGuard aGuard(
m_aMutex );
254 mxListener = std::make_shared<vcl::OldStylePrintAdaptor>(mxPrinter,
nullptr);
262 ::osl::MutexGuard aGuard(
m_aMutex );
273 ::osl::MutexGuard aGuard(
m_aMutex );
280 ::osl::MutexGuard aGuard(
m_aMutex );
291 ::osl::MutexGuard aGuard(
m_aMutex );
316 ::osl::MutexGuard aGuard(
m_aMutex );
329 sal_uInt32 nPrinters = rQueues.size();
331 css::uno::Sequence< OUString > aNames( nPrinters );
332 for ( sal_uInt32
n = 0;
n < nPrinters;
n++ )
333 aNames.getArray()[
n] = rQueues[
n];
345 css::uno::Reference< css::awt::XPrinter > xP =
new VCLXPrinter( rPrinterName );
351 css::uno::Reference< css::awt::XInfoPrinter > xP =
new VCLXInfoPrinter( rPrinterName );
357 return "stardiv.Toolkit.VCLXPrinterServer";
367 return css::uno::Sequence<OUString>{
368 "com.sun.star.awt.PrinterServer",
"stardiv.vcl.PrinterServer"};
371extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface *
373 css::uno::XComponentContext *,
374 css::uno::Sequence<css::uno::Any>
const &)
static OUString GetDefaultPrinterName()
bool SetJobSetup(const JobSetup &rSetup)
bool SetPaperBin(sal_uInt16 nPaperBin)
sal_uInt16 GetPaperBinCount() const
static const std::vector< OUString > & GetPrinterQueues()
static void PrintJob(const std::shared_ptr< vcl::PrinterController > &i_pController, const JobSetup &i_rInitSetup)
OUString GetPaperBinName(sal_uInt16 nPaperBin) const
SvStream & WriteUInt32(sal_uInt32 nUInt32)
SvStream & ReadUInt32(sal_uInt32 &rUInt32)
A UNO wrapper for the VCL OutputDevice.
css::uno::Reference< css::awt::XDevice > SAL_CALL createDevice() override
VCLXInfoPrinter(const OUString &rPrinterName)
virtual ~VCLXInfoPrinter() override
css::uno::Reference< css::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo() override
sal_Bool SAL_CALL convertFastPropertyValue(css::uno::Any &rConvertedValue, css::uno::Any &rOldValue, sal_Int32 nHandle, const css::uno::Any &rValue) override
VclPtr< Printer > mxPrinter
Printer * GetPrinter() const
void SAL_CALL setBinarySetup(const css::uno::Sequence< sal_Int8 > &data) override
css::uno::Reference< css::awt::XDevice > mxPrnDevice
css::uno::Reference< css::awt::XDevice > const & GetDevice()
void SAL_CALL setFastPropertyValue_NoBroadcast(sal_Int32 nHandle, const css::uno::Any &rValue) override
css::uno::Sequence< sal_Int8 > SAL_CALL getBinarySetup() override
void SAL_CALL getFastPropertyValue(css::uno::Any &rValue, sal_Int32 nHandle) const override
virtual ~VCLXPrinterPropertySet() override
void SAL_CALL setHorizontal(sal_Bool bHorizontal) override
void SAL_CALL selectForm(const OUString &aFormDescription) override
::cppu::IPropertyArrayHelper &SAL_CALL getInfoHelper() override
css::uno::Sequence< OUString > SAL_CALL getFormDescriptions() override
css::uno::Sequence< OUString > SAL_CALL getPrinterNames() override
OUString SAL_CALL getImplementationName() override
css::uno::Reference< css::awt::XInfoPrinter > SAL_CALL createInfoPrinter(const OUString &printerName) override
sal_Bool SAL_CALL supportsService(OUString const &ServiceName) override
css::uno::Reference< css::awt::XPrinter > SAL_CALL createPrinter(const OUString &printerName) override
css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
OUString SAL_CALL getDefaultPrinterName() override
virtual ~VCLXPrinter() override
void SAL_CALL endPage() override
void SAL_CALL terminate() override
std::shared_ptr< vcl::OldStylePrintAdaptor > mxListener
void SAL_CALL end() override
sal_Bool SAL_CALL start(const OUString &nJobName, sal_Int16 nCopies, sal_Bool nCollate) override
VCLXPrinter(const OUString &rPrinterName)
css::uno::Reference< css::awt::XDevice > SAL_CALL startPage() override
void reset(reference_type *pBody)
virtual void SAL_CALL setFastPropertyValue(sal_Int32 nHandle, const css::uno::Any &rValue) SAL_OVERRIDE
static css::uno::Reference< css::beans::XPropertySetInfo > SAL_CALL createPropertySetInfo(IPropertyArrayHelper &rProperties)
#define DBG_ASSERT(sCon, aError)
SvStream & ReadJobSetup(SvStream &rIStream, JobSetup &rJobSetup)
SvStream & WriteJobSetup(SvStream &rOStream, const JobSetup &rJobSetup)
bool CPPUHELPER_DLLPUBLIC supportsService(css::lang::XServiceInfo *implementation, rtl::OUString const &name)
sal_Int32 toInt32(std::u16string_view str, sal_Int16 radix=10)
std::basic_string_view< charT, traits > getToken(std::basic_string_view< charT, traits > sv, charT delimiter, std::size_t &position)
IMPLEMENT_FORWARD_XINTERFACE2(ORoadmapEntry, ORoadmapEntry_Base, ::comphelper::OPropertyContainer)
IMPLEMENT_FORWARD_XTYPEPROVIDER2(ORoadmapEntry, ORoadmapEntry_Base, ::comphelper::OPropertyContainer)
SAL_DLLPUBLIC_EXPORT css::uno::XInterface * stardiv_Toolkit_VCLXPrinterServer_get_implementation(css::uno::XComponentContext *, css::uno::Sequence< css::uno::Any > const &)
#define PROPERTY_Horizontal
#define BINARYSETUPMARKER
#define PROPERTY_Orientation
::cppu::WeakImplHelper< css::awt::XPrinterPropertySet > VCLXPrinterPropertySet_Base
::cppu::ImplInheritanceHelper< VCLXPrinterPropertySet, css::awt::XPrinter > VCLXPrinter_Base
::cppu::ImplInheritanceHelper< VCLXPrinterPropertySet, css::awt::XInfoPrinter > VCLXInfoPrinter_Base