summaryrefslogtreecommitdiff
path: root/include/vcl
diff options
context:
space:
mode:
Diffstat (limited to 'include/vcl')
-rw-r--r--include/vcl/cvtgrf.hxx4
-rw-r--r--include/vcl/errcode.hxx392
-rw-r--r--include/vcl/errinf.hxx22
-rw-r--r--include/vcl/graphicfilter.hxx28
-rw-r--r--include/vcl/print.hxx4
5 files changed, 241 insertions, 209 deletions
diff --git a/include/vcl/cvtgrf.hxx b/include/vcl/cvtgrf.hxx
index a615951b5094..b4d7641a0dd8 100644
--- a/include/vcl/cvtgrf.hxx
+++ b/include/vcl/cvtgrf.hxx
@@ -39,8 +39,8 @@ public:
GraphicConverter();
~GraphicConverter();
- static sal_uLong Import( SvStream& rIStm, Graphic& rGraphic, ConvertDataFormat nFormat = ConvertDataFormat::Unknown );
- static sal_uLong Export( SvStream& rOStm, const Graphic& rGraphic, ConvertDataFormat nFormat );
+ static ErrCode Import( SvStream& rIStm, Graphic& rGraphic, ConvertDataFormat nFormat = ConvertDataFormat::Unknown );
+ static ErrCode Export( SvStream& rOStm, const Graphic& rGraphic, ConvertDataFormat nFormat );
void SetFilterHdl( const Link<ConvertData&,bool>& rLink ) { maFilterHdl = rLink; }
const Link<ConvertData&,bool>& GetFilterHdl() const { return maFilterHdl; }
diff --git a/include/vcl/errcode.hxx b/include/vcl/errcode.hxx
index ecd7c788c0cd..1ea3b304e8c9 100644
--- a/include/vcl/errcode.hxx
+++ b/include/vcl/errcode.hxx
@@ -21,12 +21,13 @@
#define INCLUDED_VCL_ERRCODE_HXX
#ifndef __RSC
+#include <rtl/ustring.hxx>
#include <tools/solar.h>
-#define CAST_TO_UINT32(a) ((sal_uInt32)(a))
-#else
-#define CAST_TO_UINT32(a) (a)
+#include <tools/toolsdllapi.h>
+#include <ostream>
#endif
+
/*
01234567012345670123456701234567
@@ -46,65 +47,134 @@ Warning || || |
Code
*/
-#define ERRCODE_ERROR_MASK 0x3fffffffUL
-#define ERRCODE_WARNING_MASK 0x80000000UL
-#define ERRCODE_RES_MASK 0x7fff
-
-#define ERRCODE_CLASS_SHIFT 8
-#define ERRCODE_AREA_SHIFT 13
-#define ERRCODE_DYNAMIC_SHIFT 26
-
-#define ERRCODE_CLASS_MASK CAST_TO_UINT32(31UL <<ERRCODE_CLASS_SHIFT)
-
-#define ERRCODE_DYNAMIC_START CAST_TO_UINT32(1UL <<ERRCODE_DYNAMIC_SHIFT)
-#define ERRCODE_DYNAMIC_COUNT 31UL
-#define ERRCODE_DYNAMIC_MASK CAST_TO_UINT32(31UL <<ERRCODE_DYNAMIC_SHIFT)
+#define ERRCODE_ERROR_MASK 0x3fffffffUL
+#define ERRCODE_WARNING_MASK 0x80000000UL
+#define ERRCODE_RES_MASK 0x7fff
-#ifdef __RSC
+#define ERRCODE_CLASS_SHIFT 8
+#define ERRCODE_AREA_SHIFT 13
+#define ERRCODE_DYNAMIC_SHIFT 26
-#define ERRCODE_TOERROR(x) \
- ((x & ERRCODE_WARNING_MASK) ? 0 : (x & ERRCODE_ERROR_MASK))
+#define ERRCODE_CLASS_MASK (31UL << ERRCODE_CLASS_SHIFT)
-#else
+#define ERRCODE_DYNAMIC_START ( 1UL << ERRCODE_DYNAMIC_SHIFT)
+#define ERRCODE_DYNAMIC_COUNT 31UL
+#define ERRCODE_DYNAMIC_MASK (31UL << ERRCODE_DYNAMIC_SHIFT)
-typedef sal_uInt32 ErrCode;
+/** we get included in contexts that don't have access to config_typesizes.h or C++11 */
+#ifndef __RSC
-inline sal_uInt32 ERRCODE_TOERROR( ErrCode x )
+class ErrCode final
+{
+public:
+ explicit constexpr ErrCode(sal_uInt32 value) : m_value(value) {}
+ constexpr ErrCode() : m_value(0) {}
+
+ explicit operator sal_uInt32() const { return m_value; }
+ explicit operator bool() const { return m_value != 0; }
+
+ bool operator<(ErrCode const & other) const { return m_value < other.m_value; }
+ bool operator<=(ErrCode const & other) const { return m_value <= other.m_value; }
+ bool operator>(ErrCode const & other) const { return m_value > other.m_value; }
+ bool operator>=(ErrCode const & other) const { return m_value >= other.m_value; }
+ bool operator==(ErrCode const & other) const { return m_value == other.m_value; }
+ bool operator!=(ErrCode const & other) const { return m_value != other.m_value; }
+
+ /** convert to ERRCODE_NONE if it's a warning, else return the error */
+ ErrCode IgnoreWarning() const {
+ return (m_value & ERRCODE_WARNING_MASK)
+ ? ErrCode(0UL)
+ : ErrCode(static_cast<sal_uInt32>(m_value & ERRCODE_ERROR_MASK));
+ }
+
+ bool IsWarning() const {
+ return m_value & ERRCODE_WARNING_MASK;
+ }
+
+ ErrCode MakeWarning() const {
+ return ErrCode(m_value & ERRCODE_WARNING_MASK);
+ }
+
+ bool IsError() {
+ return m_value && !IsWarning();
+ }
+
+ bool IsDynamic() const {
+ return m_value & ERRCODE_DYNAMIC_MASK;
+ }
+
+ sal_uInt32 GetDynamic() const {
+ return (m_value & ERRCODE_DYNAMIC_MASK) >> ERRCODE_DYNAMIC_SHIFT;
+ }
+
+ ErrCode StripDynamic() const {
+ return ErrCode(m_value & ~ERRCODE_DYNAMIC_MASK);
+ }
+
+ sal_uInt16 GetRest() const {
+ return m_value & ERRCODE_RES_MASK;
+ }
+
+ sal_uInt32 GetClass() const {
+ return m_value & ERRCODE_CLASS_MASK;
+ }
+
+ OUString toHexString() const {
+ return "0x" + OUString::number(m_value, 16);
+ }
+
+ bool anyOf(ErrCode v) const {
+ return *this == v;
+ }
+
+ template<typename... Args>
+ bool anyOf(ErrCode first, Args... args) const {
+ return *this == first || anyOf(args...);
+ }
+private:
+ sal_uInt32 m_value;
+};
+
+inline std::ostream& operator<<(std::ostream& os, const ErrCode& err)
{
- return ((x & ERRCODE_WARNING_MASK) ? 0 : (x & ERRCODE_ERROR_MASK));
+ os << sal_uInt32(err); return os;
}
+#else
+#define ErrCode(X) (X)
#endif
-#define ERRCODE_AREA_TOOLS CAST_TO_UINT32(0UL << ERRCODE_AREA_SHIFT)
-#define ERRCODE_AREA_SV CAST_TO_UINT32(1UL << ERRCODE_AREA_SHIFT)
-#define ERRCODE_AREA_SFX CAST_TO_UINT32(2UL << ERRCODE_AREA_SHIFT)
-#define ERRCODE_AREA_INET CAST_TO_UINT32(3UL << ERRCODE_AREA_SHIFT)
-#define ERRCODE_AREA_IO ERRCODE_AREA_TOOLS
-#define ERRCODE_AREA_VCL CAST_TO_UINT32(4UL << ERRCODE_AREA_SHIFT)
+#define ERRCODE_AREA_TOOLS (0 << ERRCODE_AREA_SHIFT)
+#define ERRCODE_AREA_SV (1 << ERRCODE_AREA_SHIFT)
+#define ERRCODE_AREA_SFX (2 << ERRCODE_AREA_SHIFT)
+#define ERRCODE_AREA_INET (3 << ERRCODE_AREA_SHIFT)
+#define ERRCODE_AREA_IO ERRCODE_AREA_TOOLS
+#define ERRCODE_AREA_VCL (4 << ERRCODE_AREA_SHIFT)
-#define ERRCODE_AREA_LIB1 CAST_TO_UINT32(8UL << ERRCODE_AREA_SHIFT)
+#define ERRCODE_AREA_LIB1 (8 << ERRCODE_AREA_SHIFT)
#define ERRCODE_AREA_SVX ERRCODE_AREA_LIB1
#define ERRCODE_AREA_SVX_END (ERRCODE_AREA_SO-1)
-#define ERRCODE_AREA_SO CAST_TO_UINT32(9UL << ERRCODE_AREA_SHIFT)
+#define ERRCODE_AREA_SO (9 << ERRCODE_AREA_SHIFT)
#define ERRCODE_AREA_SO_END (ERRCODE_AREA_SBX-1)
-#define ERRCODE_AREA_SBX CAST_TO_UINT32(10UL << ERRCODE_AREA_SHIFT)
-#define ERRCODE_AREA_SBX_END CAST_TO_UINT32((11UL << ERRCODE_AREA_SHIFT) - 1)
-#define ERRCODE_AREA_DB CAST_TO_UINT32(11UL << ERRCODE_AREA_SHIFT)
-#define ERRCODE_AREA_DB_END CAST_TO_UINT32((12UL << ERRCODE_AREA_SHIFT) - 1)
-#define ERRCODE_AREA_JAVA CAST_TO_UINT32(12UL << ERRCODE_AREA_SHIFT)
-#define ERRCODE_AREA_JAVA_END CAST_TO_UINT32((13UL << ERRCODE_AREA_SHIFT) - 1)
-#define ERRCODE_AREA_UUI CAST_TO_UINT32(13UL << ERRCODE_AREA_SHIFT)
-#define ERRCODE_AREA_UUI_END CAST_TO_UINT32((14UL << ERRCODE_AREA_SHIFT) - 1)
-#define ERRCODE_AREA_LIB2 CAST_TO_UINT32(14UL << ERRCODE_AREA_SHIFT)
-#define ERRCODE_AREA_LIB2_END CAST_TO_UINT32((15UL << ERRCODE_AREA_SHIFT) - 1)
-
-#define ERRCODE_AREA_APP1 CAST_TO_UINT32(32UL << ERRCODE_AREA_SHIFT)
-#define ERRCODE_AREA_APP2 CAST_TO_UINT32(40UL << ERRCODE_AREA_SHIFT)
-#define ERRCODE_AREA_APP3 CAST_TO_UINT32(48UL << ERRCODE_AREA_SHIFT)
-#define ERRCODE_AREA_APP4 CAST_TO_UINT32(56UL << ERRCODE_AREA_SHIFT)
-#define ERRCODE_AREA_APP5 CAST_TO_UINT32(64UL << ERRCODE_AREA_SHIFT)
-#define ERRCODE_AREA_APP6 CAST_TO_UINT32(72UL << ERRCODE_AREA_SHIFT)
+#define ERRCODE_AREA_SBX (10 << ERRCODE_AREA_SHIFT)
+#define ERRCODE_AREA_SBX_END ((11 << ERRCODE_AREA_SHIFT) - 1)
+#define ERRCODE_AREA_DB (11 << ERRCODE_AREA_SHIFT)
+#define ERRCODE_AREA_DB_END ((12 << ERRCODE_AREA_SHIFT) - 1)
+#define ERRCODE_AREA_JAVA (12 << ERRCODE_AREA_SHIFT)
+#define ERRCODE_AREA_JAVA_END ((13 << ERRCODE_AREA_SHIFT) - 1)
+#define ERRCODE_AREA_UUI (13 << ERRCODE_AREA_SHIFT)
+#define ERRCODE_AREA_UUI_END ((14 << ERRCODE_AREA_SHIFT) - 1)
+#define ERRCODE_AREA_LIB2 (14 << ERRCODE_AREA_SHIFT)
+#define ERRCODE_AREA_LIB2_END ((15 << ERRCODE_AREA_SHIFT) - 1)
+#define ERRCODE_AREA_CHAOS (15 << ERRCODE_AREA_SHIFT)
+#define ERRCODE_AREA_CHAOS_END ((16 << ERRCODE_AREA_SHIFT) - 1)
+
+#define ERRCODE_AREA_APP1 (32 << ERRCODE_AREA_SHIFT)
+#define ERRCODE_AREA_APP2 (40 << ERRCODE_AREA_SHIFT)
+#define ERRCODE_AREA_APP3 (48 << ERRCODE_AREA_SHIFT)
+#define ERRCODE_AREA_APP4 (56 << ERRCODE_AREA_SHIFT)
+#define ERRCODE_AREA_APP5 (64 << ERRCODE_AREA_SHIFT)
+#define ERRCODE_AREA_APP6 (72 << ERRCODE_AREA_SHIFT)
#define ERRCODE_AREA_SC ERRCODE_AREA_APP1
#define ERRCODE_AREA_SC_END (ERRCODE_AREA_APP2-1)
@@ -117,150 +187,112 @@ inline sal_uInt32 ERRCODE_TOERROR( ErrCode x )
#define ERRCODE_AREA_OFA_END (ERRCODE_AREA_APP6-1)
-#define ERRCODE_CLASS_NONE CAST_TO_UINT32(0UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_ABORT CAST_TO_UINT32(1UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_GENERAL CAST_TO_UINT32(2UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_NOTEXISTS CAST_TO_UINT32(3UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_ALREADYEXISTS CAST_TO_UINT32(4UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_ACCESS CAST_TO_UINT32(5UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_PATH CAST_TO_UINT32(6UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_LOCKING CAST_TO_UINT32(7UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_PARAMETER CAST_TO_UINT32(8UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_SPACE CAST_TO_UINT32(9UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_NOTSUPPORTED CAST_TO_UINT32(10UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_READ CAST_TO_UINT32(11UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_WRITE CAST_TO_UINT32(12UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_UNKNOWN CAST_TO_UINT32(13UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_VERSION CAST_TO_UINT32(14UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_FORMAT CAST_TO_UINT32(15UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_CREATE CAST_TO_UINT32(16UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_IMPORT CAST_TO_UINT32(17UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_EXPORT CAST_TO_UINT32(18UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_FILTER CAST_TO_UINT32(19UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_SO CAST_TO_UINT32(20UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_SBX CAST_TO_UINT32(21UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_RUNTIME CAST_TO_UINT32(22UL << ERRCODE_CLASS_SHIFT)
-#define ERRCODE_CLASS_COMPILER CAST_TO_UINT32(23UL << ERRCODE_CLASS_SHIFT)
-
-#define ERRCODE_NONE CAST_TO_UINT32(0UL)
-#define ERRCODE_ABORT ERRCODE_IO_ABORT
-
-#define ERRCODE_IO_MISPLACEDCHAR CAST_TO_UINT32(1UL |ERRCODE_CLASS_PARAMETER|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_NOTEXISTS CAST_TO_UINT32(2UL |ERRCODE_CLASS_NOTEXISTS|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_ALREADYEXISTS CAST_TO_UINT32(3UL |ERRCODE_CLASS_ALREADYEXISTS|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_NOTADIRECTORY CAST_TO_UINT32(4UL |ERRCODE_CLASS_PARAMETER|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_NOTAFILE CAST_TO_UINT32(5UL |ERRCODE_CLASS_PARAMETER|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_INVALIDDEVICE CAST_TO_UINT32(6UL |ERRCODE_CLASS_PATH|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_ACCESSDENIED CAST_TO_UINT32(7UL |ERRCODE_CLASS_ACCESS|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_LOCKVIOLATION CAST_TO_UINT32(8UL |ERRCODE_CLASS_LOCKING|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_OUTOFSPACE CAST_TO_UINT32(9UL |ERRCODE_CLASS_SPACE|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_ISWILDCARD CAST_TO_UINT32(11UL|ERRCODE_CLASS_PARAMETER|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_NOTSUPPORTED CAST_TO_UINT32(12UL|ERRCODE_CLASS_NOTSUPPORTED|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_GENERAL CAST_TO_UINT32(13UL|ERRCODE_CLASS_GENERAL|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_TOOMANYOPENFILES CAST_TO_UINT32(14UL|ERRCODE_CLASS_SPACE|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_CANTREAD CAST_TO_UINT32(15UL|ERRCODE_CLASS_READ|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_CANTWRITE CAST_TO_UINT32(16UL|ERRCODE_CLASS_WRITE|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_OUTOFMEMORY CAST_TO_UINT32(17UL|ERRCODE_CLASS_SPACE|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_CANTSEEK CAST_TO_UINT32(18UL|ERRCODE_CLASS_GENERAL|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_CANTTELL CAST_TO_UINT32(19UL|ERRCODE_CLASS_GENERAL|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_WRONGVERSION CAST_TO_UINT32(20UL|ERRCODE_CLASS_VERSION|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_WRONGFORMAT CAST_TO_UINT32(21UL|ERRCODE_CLASS_FORMAT|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_INVALIDCHAR CAST_TO_UINT32(22UL|ERRCODE_CLASS_PARAMETER|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_UNKNOWN CAST_TO_UINT32(23UL|ERRCODE_CLASS_UNKNOWN|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_INVALIDACCESS CAST_TO_UINT32(24UL|ERRCODE_CLASS_ACCESS|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_CANTCREATE CAST_TO_UINT32(25UL|ERRCODE_CLASS_CREATE|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_INVALIDPARAMETER CAST_TO_UINT32(26UL|ERRCODE_CLASS_PARAMETER|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_ABORT CAST_TO_UINT32(27UL|ERRCODE_CLASS_ABORT|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_NOTEXISTSPATH CAST_TO_UINT32(28UL |ERRCODE_CLASS_NOTEXISTS|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_PENDING CAST_TO_UINT32(29UL |ERRCODE_CLASS_NOTEXISTS|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_RECURSIVE CAST_TO_UINT32(30UL |ERRCODE_CLASS_PARAMETER|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_NAMETOOLONG CAST_TO_UINT32(31UL |ERRCODE_CLASS_PARAMETER|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_INVALIDLENGTH CAST_TO_UINT32(32UL |ERRCODE_CLASS_PARAMETER|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_CURRENTDIR CAST_TO_UINT32(33UL |ERRCODE_CLASS_PARAMETER|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_NOTSAMEDEVICE CAST_TO_UINT32(34UL |ERRCODE_CLASS_PARAMETER|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_DEVICENOTREADY CAST_TO_UINT32(35UL |ERRCODE_CLASS_READ|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_BADCRC CAST_TO_UINT32(36UL |ERRCODE_CLASS_READ|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_WRITEPROTECTED CAST_TO_UINT32(37UL |ERRCODE_CLASS_ACCESS|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_BROKENPACKAGE CAST_TO_UINT32(38UL |ERRCODE_CLASS_FORMAT|\
- ERRCODE_AREA_IO)
-#define ERRCODE_IO_NOTSTORABLEINBINARYFORMAT CAST_TO_UINT32(39UL |ERRCODE_CLASS_FORMAT|\
- ERRCODE_AREA_IO)
+#define ERRCODE_CLASS_NONE ( 0 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_ABORT ( 1 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_GENERAL ( 2 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_NOTEXISTS ( 3 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_ALREADYEXISTS ( 4 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_ACCESS ( 5 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_PATH ( 6 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_LOCKING ( 7 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_PARAMETER ( 8 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_SPACE ( 9 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_NOTSUPPORTED (10 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_READ (11 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_WRITE (12 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_UNKNOWN (13 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_VERSION (14 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_FORMAT (15 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_CREATE (16 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_IMPORT (17 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_EXPORT (18 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_SO (20 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_SBX (21 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_RUNTIME (22 << ERRCODE_CLASS_SHIFT)
+#define ERRCODE_CLASS_COMPILER (23 << ERRCODE_CLASS_SHIFT)
+
+#define ERRCODE_NONE ErrCode(0UL)
+
+#define ERRCODE_IO_MISPLACEDCHAR ErrCode(1UL | ERRCODE_CLASS_PARAMETER | ERRCODE_AREA_IO)
+#define ERRCODE_IO_NOTEXISTS ErrCode(2UL | ERRCODE_CLASS_NOTEXISTS | ERRCODE_AREA_IO)
+#define ERRCODE_IO_ALREADYEXISTS ErrCode(3UL | ERRCODE_CLASS_ALREADYEXISTS | ERRCODE_AREA_IO)
+#define ERRCODE_IO_NOTADIRECTORY ErrCode(4UL | ERRCODE_CLASS_PARAMETER | ERRCODE_AREA_IO)
+#define ERRCODE_IO_NOTAFILE ErrCode(5UL | ERRCODE_CLASS_PARAMETER | ERRCODE_AREA_IO)
+#define ERRCODE_IO_INVALIDDEVICE ErrCode(6UL | ERRCODE_CLASS_PATH | ERRCODE_AREA_IO)
+#define ERRCODE_IO_ACCESSDENIED ErrCode(7UL | ERRCODE_CLASS_ACCESS | ERRCODE_AREA_IO)
+#define ERRCODE_IO_LOCKVIOLATION ErrCode(8UL | ERRCODE_CLASS_LOCKING | ERRCODE_AREA_IO)
+#define ERRCODE_IO_OUTOFSPACE ErrCode(9UL | ERRCODE_CLASS_SPACE | ERRCODE_AREA_IO)
+#define ERRCODE_IO_ISWILDCARD ErrCode(11UL | ERRCODE_CLASS_PARAMETER | ERRCODE_AREA_IO)
+#define ERRCODE_IO_NOTSUPPORTED ErrCode(12UL | ERRCODE_CLASS_NOTSUPPORTED | ERRCODE_AREA_IO)
+#define ERRCODE_IO_GENERAL ErrCode(13UL | ERRCODE_CLASS_GENERAL | ERRCODE_AREA_IO)
+#define ERRCODE_IO_TOOMANYOPENFILES ErrCode(14UL | ERRCODE_CLASS_SPACE | ERRCODE_AREA_IO)
+#define ERRCODE_IO_CANTREAD ErrCode(15UL | ERRCODE_CLASS_READ | ERRCODE_AREA_IO)
+#define ERRCODE_IO_CANTWRITE ErrCode(16UL | ERRCODE_CLASS_WRITE | ERRCODE_AREA_IO)
+#define ERRCODE_IO_OUTOFMEMORY ErrCode(17UL | ERRCODE_CLASS_SPACE | ERRCODE_AREA_IO)
+#define ERRCODE_IO_CANTSEEK ErrCode(18UL | ERRCODE_CLASS_GENERAL | ERRCODE_AREA_IO)
+#define ERRCODE_IO_CANTTELL ErrCode(19UL | ERRCODE_CLASS_GENERAL | ERRCODE_AREA_IO)
+#define ERRCODE_IO_WRONGVERSION ErrCode(20UL | ERRCODE_CLASS_VERSION | ERRCODE_AREA_IO)
+#define ERRCODE_IO_WRONGFORMAT ErrCode(21UL | ERRCODE_CLASS_FORMAT | ERRCODE_AREA_IO)
+#define ERRCODE_IO_INVALIDCHAR ErrCode(22UL | ERRCODE_CLASS_PARAMETER | ERRCODE_AREA_IO)
+#define ERRCODE_IO_UNKNOWN ErrCode(23UL | ERRCODE_CLASS_UNKNOWN | ERRCODE_AREA_IO)
+#define ERRCODE_IO_INVALIDACCESS ErrCode(24UL | ERRCODE_CLASS_ACCESS | ERRCODE_AREA_IO)
+#define ERRCODE_IO_CANTCREATE ErrCode(25UL | ERRCODE_CLASS_CREATE | ERRCODE_AREA_IO)
+#define ERRCODE_IO_INVALIDPARAMETER ErrCode(26UL | ERRCODE_CLASS_PARAMETER | ERRCODE_AREA_IO)
+#define ERRCODE_IO_ABORT ErrCode(27UL | ERRCODE_CLASS_ABORT | ERRCODE_AREA_IO)
+#define ERRCODE_IO_NOTEXISTSPATH ErrCode(28UL | ERRCODE_CLASS_NOTEXISTS | ERRCODE_AREA_IO)
+#define ERRCODE_IO_PENDING ErrCode(29UL | ERRCODE_CLASS_NOTEXISTS | ERRCODE_AREA_IO)
+#define ERRCODE_IO_RECURSIVE ErrCode(30UL | ERRCODE_CLASS_PARAMETER | ERRCODE_AREA_IO)
+#define ERRCODE_IO_NAMETOOLONG ErrCode(31UL | ERRCODE_CLASS_PARAMETER | ERRCODE_AREA_IO)
+#define ERRCODE_IO_INVALIDLENGTH ErrCode(32UL | ERRCODE_CLASS_PARAMETER | ERRCODE_AREA_IO)
+#define ERRCODE_IO_CURRENTDIR ErrCode(33UL | ERRCODE_CLASS_PARAMETER | ERRCODE_AREA_IO)
+#define ERRCODE_IO_NOTSAMEDEVICE ErrCode(34UL | ERRCODE_CLASS_PARAMETER | ERRCODE_AREA_IO)
+#define ERRCODE_IO_DEVICENOTREADY ErrCode(35UL | ERRCODE_CLASS_READ | ERRCODE_AREA_IO)
+#define ERRCODE_IO_BADCRC ErrCode(36UL | ERRCODE_CLASS_READ | ERRCODE_AREA_IO)
+#define ERRCODE_IO_WRITEPROTECTED ErrCode(37UL | ERRCODE_CLASS_ACCESS | ERRCODE_AREA_IO)
+#define ERRCODE_IO_BROKENPACKAGE ErrCode(38UL | ERRCODE_CLASS_FORMAT | ERRCODE_AREA_IO)
+#define ERRCODE_IO_NOTSTORABLEINBINARYFORMAT ErrCode(39UL | ERRCODE_CLASS_FORMAT | ERRCODE_AREA_IO)
// StreamErrorCodes
-#define SVSTREAM_GENERALERROR ERRCODE_IO_GENERAL
-#define SVSTREAM_FILE_NOT_FOUND ERRCODE_IO_NOTEXISTS
-#define SVSTREAM_PATH_NOT_FOUND ERRCODE_IO_NOTEXISTSPATH
-#define SVSTREAM_TOO_MANY_OPEN_FILES ERRCODE_IO_TOOMANYOPENFILES
-#define SVSTREAM_ACCESS_DENIED ERRCODE_IO_ACCESSDENIED
-#define SVSTREAM_SHARING_VIOLATION ERRCODE_IO_LOCKVIOLATION
-#define SVSTREAM_LOCKING_VIOLATION ERRCODE_IO_LOCKVIOLATION
-#define SVSTREAM_SHARE_BUFF_EXCEEDED ERRCODE_IO_LOCKVIOLATION
+#define SVSTREAM_GENERALERROR ERRCODE_IO_GENERAL
+#define SVSTREAM_FILE_NOT_FOUND ERRCODE_IO_NOTEXISTS
+#define SVSTREAM_PATH_NOT_FOUND ERRCODE_IO_NOTEXISTSPATH
+#define SVSTREAM_TOO_MANY_OPEN_FILES ERRCODE_IO_TOOMANYOPENFILES
+#define SVSTREAM_ACCESS_DENIED ERRCODE_IO_ACCESSDENIED
+#define SVSTREAM_SHARING_VIOLATION ERRCODE_IO_LOCKVIOLATION
+#define SVSTREAM_LOCKING_VIOLATION ERRCODE_IO_LOCKVIOLATION
+#define SVSTREAM_SHARE_BUFF_EXCEEDED ERRCODE_IO_LOCKVIOLATION
-#define SVSTREAM_INVALID_ACCESS ERRCODE_IO_INVALIDACCESS
-#define SVSTREAM_INVALID_HANDLE ERRCODE_IO_GENERAL
-#define SVSTREAM_CANNOT_MAKE ERRCODE_IO_CANTCREATE
-#define SVSTREAM_INVALID_PARAMETER ERRCODE_IO_INVALIDPARAMETER
+#define SVSTREAM_INVALID_ACCESS ERRCODE_IO_INVALIDACCESS
+#define SVSTREAM_INVALID_HANDLE ERRCODE_IO_GENERAL
+#define SVSTREAM_CANNOT_MAKE ERRCODE_IO_CANTCREATE
+#define SVSTREAM_INVALID_PARAMETER ERRCODE_IO_INVALIDPARAMETER
-#define SVSTREAM_READ_ERROR ERRCODE_IO_CANTREAD
-#define SVSTREAM_WRITE_ERROR ERRCODE_IO_CANTWRITE
-#define SVSTREAM_SEEK_ERROR ERRCODE_IO_CANTSEEK
+#define SVSTREAM_READ_ERROR ERRCODE_IO_CANTREAD
+#define SVSTREAM_WRITE_ERROR ERRCODE_IO_CANTWRITE
+#define SVSTREAM_SEEK_ERROR ERRCODE_IO_CANTSEEK
-#define SVSTREAM_OUTOFMEMORY ERRCODE_IO_OUTOFMEMORY
+#define SVSTREAM_OUTOFMEMORY ERRCODE_IO_OUTOFMEMORY
-#define SVSTREAM_FILEFORMAT_ERROR ERRCODE_IO_WRONGFORMAT
-#define SVSTREAM_WRONGVERSION ERRCODE_IO_WRONGVERSION
+#define SVSTREAM_FILEFORMAT_ERROR ERRCODE_IO_WRONGFORMAT
+#define SVSTREAM_WRONGVERSION ERRCODE_IO_WRONGVERSION
-#define SVSTREAM_DISK_FULL ERRCODE_IO_OUTOFSPACE
+#define SVSTREAM_DISK_FULL ERRCODE_IO_OUTOFSPACE
// For the EditEngine:
-#define SVSTREAM_ERRBASE_USER ERRCODE_AREA_LIB1
+#define SVSTREAM_ERRBASE_USER ERRCODE_AREA_LIB1
+
+#define PRINTER_ABORT ERRCODE_IO_ABORT
+#define PRINTER_GENERALERROR ERRCODE_IO_GENERAL
-#define PRINTER_ABORT ERRCODE_IO_ABORT
-#define PRINTER_GENERALERROR ERRCODE_IO_GENERAL
+#define ERRCODE_ABORT ERRCODE_IO_ABORT
-#define ERRCODE_INET_NAME_RESOLVE (ERRCODE_AREA_INET | ERRCODE_CLASS_READ | 1)
-#define ERRCODE_INET_CONNECT (ERRCODE_AREA_INET | ERRCODE_CLASS_READ | 2)
-#define ERRCODE_INET_READ (ERRCODE_AREA_INET | ERRCODE_CLASS_READ | 3)
-#define ERRCODE_INET_WRITE (ERRCODE_AREA_INET | ERRCODE_CLASS_WRITE| 4)
-#define ERRCODE_INET_GENERAL (ERRCODE_AREA_INET | ERRCODE_CLASS_WRITE |5)
-#define ERRCODE_INET_OFFLINE (ERRCODE_AREA_INET | ERRCODE_CLASS_READ |6)
+#define ERRCODE_INET_NAME_RESOLVE ErrCode(ERRCODE_AREA_INET | ERRCODE_CLASS_READ | 1)
+#define ERRCODE_INET_CONNECT ErrCode(ERRCODE_AREA_INET | ERRCODE_CLASS_READ | 2)
+#define ERRCODE_INET_READ ErrCode(ERRCODE_AREA_INET | ERRCODE_CLASS_READ | 3)
+#define ERRCODE_INET_WRITE ErrCode(ERRCODE_AREA_INET | ERRCODE_CLASS_WRITE| 4)
+#define ERRCODE_INET_GENERAL ErrCode(ERRCODE_AREA_INET | ERRCODE_CLASS_WRITE| 5)
+#define ERRCODE_INET_OFFLINE ErrCode(ERRCODE_AREA_INET | ERRCODE_CLASS_READ | 6)
#endif
diff --git a/include/vcl/errinf.hxx b/include/vcl/errinf.hxx
index c55011dd0b5d..996afd23f8f1 100644
--- a/include/vcl/errinf.hxx
+++ b/include/vcl/errinf.hxx
@@ -131,8 +131,8 @@ public:
@return what sort of dialog to use, with what buttons
*/
- static DialogMask HandleError(sal_uInt32 nId, DialogMask nMask = DialogMask::MAX);
- static bool GetErrorString(sal_uInt32 nId, OUString& rStr);
+ static DialogMask HandleError(ErrCode nId, DialogMask nMask = DialogMask::MAX);
+ static bool GetErrorString(ErrCode nId, OUString& rStr);
protected:
virtual bool CreateString(const ErrorInfo*, OUString &) const = 0;
@@ -142,16 +142,16 @@ protected:
class SAL_WARN_UNUSED VCL_DLLPUBLIC ErrorInfo
{
public:
- ErrorInfo(sal_uInt32 nArgUserId) :
+ ErrorInfo(ErrCode nArgUserId) :
nUserId(nArgUserId) {}
virtual ~ErrorInfo();
- sal_uInt32 GetErrorCode() const { return nUserId; }
+ ErrCode GetErrorCode() const { return nUserId; }
- static ErrorInfo* GetErrorInfo(sal_uInt32);
+ static ErrorInfo* GetErrorInfo(ErrCode);
private:
- sal_uInt32 nUserId;
+ ErrCode nUserId;
};
class SAL_WARN_UNUSED VCL_DLLPUBLIC DynamicErrorInfo : public ErrorInfo
@@ -159,10 +159,10 @@ class SAL_WARN_UNUSED VCL_DLLPUBLIC DynamicErrorInfo : public ErrorInfo
friend class ImplDynamicErrorInfo;
public:
- DynamicErrorInfo(sal_uInt32 nUserId, DialogMask nMask);
+ DynamicErrorInfo(ErrCode nUserId, DialogMask nMask);
virtual ~DynamicErrorInfo() override;
- operator sal_uInt32() const;
+ operator ErrCode() const;
DialogMask GetDialogMask() const;
private:
@@ -173,7 +173,7 @@ private:
class SAL_WARN_UNUSED VCL_DLLPUBLIC StringErrorInfo : public DynamicErrorInfo
{
public:
- StringErrorInfo(sal_uInt32 nUserId,
+ StringErrorInfo(ErrCode nUserId,
const OUString& aStringP,
DialogMask nMask = DialogMask::NONE);
@@ -187,7 +187,7 @@ private:
class SAL_WARN_UNUSED VCL_DLLPUBLIC TwoStringErrorInfo: public DynamicErrorInfo
{
public:
- TwoStringErrorInfo(sal_uInt32 nUserID, const OUString & rTheArg1,
+ TwoStringErrorInfo(ErrCode nUserID, const OUString & rTheArg1,
const OUString & rTheArg2, DialogMask nMask):
DynamicErrorInfo(nUserID, nMask), aArg1(rTheArg1), aArg2(rTheArg2) {}
@@ -210,7 +210,7 @@ public:
ErrorContext(vcl::Window *pWin);
virtual ~ErrorContext();
- virtual bool GetString(sal_uInt32 nErrId, OUString& rCtxStr) = 0;
+ virtual bool GetString(ErrCode nErrId, OUString& rCtxStr) = 0;
vcl::Window* GetParent();
static ErrorContext* GetContext();
diff --git a/include/vcl/graphicfilter.hxx b/include/vcl/graphicfilter.hxx
index fa112d71066c..d67237975ae1 100644
--- a/include/vcl/graphicfilter.hxx
+++ b/include/vcl/graphicfilter.hxx
@@ -36,13 +36,13 @@ class SvStream;
struct WMF_EXTERNALHEADER;
struct ConvertData;
-#define ERRCODE_GRFILTER_OPENERROR (ERRCODE_AREA_VCL | ERRCODE_CLASS_GENERAL | 1)
-#define ERRCODE_GRFILTER_IOERROR (ERRCODE_AREA_VCL | ERRCODE_CLASS_GENERAL | 2)
-#define ERRCODE_GRFILTER_FORMATERROR (ERRCODE_AREA_VCL | ERRCODE_CLASS_GENERAL | 3)
-#define ERRCODE_GRFILTER_VERSIONERROR (ERRCODE_AREA_VCL | ERRCODE_CLASS_GENERAL | 4)
-#define ERRCODE_GRFILTER_FILTERERROR (ERRCODE_AREA_VCL | ERRCODE_CLASS_GENERAL | 5)
-#define ERRCODE_GRFILTER_ABORT (ERRCODE_AREA_VCL | ERRCODE_CLASS_GENERAL | 6)
-#define ERRCODE_GRFILTER_TOOBIG (ERRCODE_AREA_VCL | ERRCODE_CLASS_GENERAL | 7)
+#define ERRCODE_GRFILTER_OPENERROR ErrCode(ERRCODE_AREA_VCL | ERRCODE_CLASS_GENERAL | 1)
+#define ERRCODE_GRFILTER_IOERROR ErrCode(ERRCODE_AREA_VCL | ERRCODE_CLASS_GENERAL | 2)
+#define ERRCODE_GRFILTER_FORMATERROR ErrCode(ERRCODE_AREA_VCL | ERRCODE_CLASS_GENERAL | 3)
+#define ERRCODE_GRFILTER_VERSIONERROR ErrCode(ERRCODE_AREA_VCL | ERRCODE_CLASS_GENERAL | 4)
+#define ERRCODE_GRFILTER_FILTERERROR ErrCode(ERRCODE_AREA_VCL | ERRCODE_CLASS_GENERAL | 5)
+#define ERRCODE_GRFILTER_ABORT ErrCode(ERRCODE_AREA_VCL | ERRCODE_CLASS_GENERAL | 6)
+#define ERRCODE_GRFILTER_TOOBIG ErrCode(ERRCODE_AREA_VCL | ERRCODE_CLASS_GENERAL | 7)
#define GRFILTER_OUTHINT_GREY 1
@@ -220,9 +220,9 @@ public:
/** Information about errors during the GraphicFilter operation. */
struct FilterErrorEx
{
- sal_uLong nStreamError;
+ ErrCode nStreamError;
- FilterErrorEx() : nStreamError( 0UL ) {}
+ FilterErrorEx() : nStreamError( ERRCODE_NONE ) {}
};
/** Class to import and export graphic formats. */
@@ -271,11 +271,11 @@ public:
sal_uInt16 nFormat = GRFILTER_FORMAT_DONTKNOW,
sal_uInt16 * pDeterminedFormat = nullptr, GraphicFilterImportFlags nImportFlags = GraphicFilterImportFlags::NONE );
- sal_uInt16 CanImportGraphic( const OUString& rPath, SvStream& rStream,
+ ErrCode CanImportGraphic( const OUString& rPath, SvStream& rStream,
sal_uInt16 nFormat,
sal_uInt16 * pDeterminedFormat);
- sal_uInt16 ImportGraphic( Graphic& rGraphic, const OUString& rPath,
+ ErrCode ImportGraphic( Graphic& rGraphic, const OUString& rPath,
SvStream& rStream,
sal_uInt16 nFormat = GRFILTER_FORMAT_DONTKNOW,
sal_uInt16 * pDeterminedFormat = nullptr, GraphicFilterImportFlags nImportFlags = GraphicFilterImportFlags::NONE,
@@ -298,12 +298,12 @@ public:
const Link<ConvertData&,bool> GetFilterCallback() const;
static GraphicFilter& GetGraphicFilter();
- static int LoadGraphic( const OUString& rPath, const OUString& rFilter,
+ static ErrCode LoadGraphic( const OUString& rPath, const OUString& rFilter,
Graphic& rGraphic,
GraphicFilter* pFilter = nullptr,
sal_uInt16* pDeterminedFormat = nullptr );
- sal_uInt16 compressAsPNG(const Graphic& rGraphic, SvStream& rOutputStream);
+ ErrCode compressAsPNG(const Graphic& rGraphic, SvStream& rOutputStream);
protected:
OUString aFilterPath;
@@ -311,7 +311,7 @@ protected:
private:
void ImplInit();
- sal_uLong ImplSetError( sal_uLong nError, const SvStream* pStm = nullptr );
+ ErrCode ImplSetError( ErrCode nError, const SvStream* pStm = nullptr );
ErrCode ImpTestOrFindFormat( const OUString& rPath, SvStream& rStream, sal_uInt16& rFormat );
DECL_LINK( FilterCallback, ConvertData&, bool );
diff --git a/include/vcl/print.hxx b/include/vcl/print.hxx
index 90faa219190b..4de18652f0a8 100644
--- a/include/vcl/print.hxx
+++ b/include/vcl/print.hxx
@@ -193,7 +193,7 @@ private:
JobSetup maJobSetup;
Point maPageOffset;
Size maPaperSize;
- sal_uLong mnError;
+ ErrCode mnError;
sal_uInt16 mnPageQueueSize;
sal_uInt16 mnCopyCount;
bool mbDefPrinter;
@@ -215,7 +215,7 @@ private:
SAL_DLLPRIVATE bool StartJob( const OUString& rJobName, std::shared_ptr<vcl::PrinterController>& );
- static SAL_DLLPRIVATE sal_uLong
+ static SAL_DLLPRIVATE ErrCode
ImplSalPrinterErrorCodeToVCL( sal_uLong nError );
private: