1*234bd5c5SAndrew Rist /************************************************************** 2cdf0e10cSrcweir * 3*234bd5c5SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4*234bd5c5SAndrew Rist * or more contributor license agreements. See the NOTICE file 5*234bd5c5SAndrew Rist * distributed with this work for additional information 6*234bd5c5SAndrew Rist * regarding copyright ownership. The ASF licenses this file 7*234bd5c5SAndrew Rist * to you under the Apache License, Version 2.0 (the 8*234bd5c5SAndrew Rist * "License"); you may not use this file except in compliance 9*234bd5c5SAndrew Rist * with the License. You may obtain a copy of the License at 10*234bd5c5SAndrew Rist * 11*234bd5c5SAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12*234bd5c5SAndrew Rist * 13*234bd5c5SAndrew Rist * Unless required by applicable law or agreed to in writing, 14*234bd5c5SAndrew Rist * software distributed under the License is distributed on an 15*234bd5c5SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*234bd5c5SAndrew Rist * KIND, either express or implied. See the License for the 17*234bd5c5SAndrew Rist * specific language governing permissions and limitations 18*234bd5c5SAndrew Rist * under the License. 19*234bd5c5SAndrew Rist * 20*234bd5c5SAndrew Rist *************************************************************/ 21*234bd5c5SAndrew Rist 22*234bd5c5SAndrew Rist 23cdf0e10cSrcweir 24cdf0e10cSrcweir 25cdf0e10cSrcweir #ifndef _SBXDEF_HXX 26cdf0e10cSrcweir #define _SBXDEF_HXX 27cdf0e10cSrcweir 28cdf0e10cSrcweir 29cdf0e10cSrcweir #ifndef __RSC 30cdf0e10cSrcweir #ifndef _SOLAR_H 31cdf0e10cSrcweir #include <tools/solar.h> 32cdf0e10cSrcweir #endif 33cdf0e10cSrcweir #include "tools/errcode.hxx" 34cdf0e10cSrcweir 35cdf0e10cSrcweir #ifndef _SBX_CLASS_TYPE 36cdf0e10cSrcweir #define _SBX_CLASS_TYPE 37cdf0e10cSrcweir 38cdf0e10cSrcweir enum SbxClassType { // SBX-class-IDs (order is important!) 39cdf0e10cSrcweir SbxCLASS_DONTCARE = 1, // don't care (search, not 0 due to StarBASIC) 40cdf0e10cSrcweir SbxCLASS_ARRAY, // Array of SbxVariables 41cdf0e10cSrcweir SbxCLASS_VALUE, // simple value 42cdf0e10cSrcweir SbxCLASS_VARIABLE, // Variable (from here there is Broadcaster) 43cdf0e10cSrcweir SbxCLASS_METHOD, // Method (Function or Sub) 44cdf0e10cSrcweir SbxCLASS_PROPERTY, // Property 45cdf0e10cSrcweir SbxCLASS_OBJECT // Object 46cdf0e10cSrcweir }; 47cdf0e10cSrcweir 48cdf0e10cSrcweir #endif 49cdf0e10cSrcweir 50cdf0e10cSrcweir #ifndef _SBX_DATA_TYPE 51cdf0e10cSrcweir #define _SBX_DATA_TYPE 52cdf0e10cSrcweir 53cdf0e10cSrcweir enum SbxDataType { 54cdf0e10cSrcweir SbxEMPTY = 0, // * Uninitialized 55cdf0e10cSrcweir SbxNULL = 1, // * Contains no valid data 56cdf0e10cSrcweir SbxINTEGER = 2, // * Integer (sal_Int16) 57cdf0e10cSrcweir SbxLONG = 3, // * Long integer (sal_Int32) 58cdf0e10cSrcweir SbxSINGLE = 4, // * Single-precision floating point number (float) 59cdf0e10cSrcweir SbxDOUBLE = 5, // * Double-precision floating point number (double) 60cdf0e10cSrcweir SbxCURRENCY = 6, // Currency (sal_Int64) 61cdf0e10cSrcweir SbxDATE = 7, // * Date (double) 62cdf0e10cSrcweir SbxSTRING = 8, // * String (StarView) 63cdf0e10cSrcweir SbxOBJECT = 9, // * SbxBase object pointer 64cdf0e10cSrcweir SbxERROR = 10, // * Error (sal_uInt16) 65cdf0e10cSrcweir SbxBOOL = 11, // * Boolean (0 or -1) 66cdf0e10cSrcweir SbxVARIANT = 12, // * Anzeige fuer varianten Datentyp 67cdf0e10cSrcweir SbxDATAOBJECT = 13, // * Common data object w/o ref count 68cdf0e10cSrcweir 69cdf0e10cSrcweir SbxCHAR = 16, // * signed char 70cdf0e10cSrcweir SbxBYTE = 17, // * unsigned char 71cdf0e10cSrcweir SbxUSHORT = 18, // * unsigned short (sal_uInt16) 72cdf0e10cSrcweir SbxULONG = 19, // * unsigned long (sal_uInt32) 73cdf0e10cSrcweir SbxLONG64 = 20, // signed 64-bit int 74cdf0e10cSrcweir SbxULONG64 = 21, // unsigned 64-bit int 75cdf0e10cSrcweir SbxINT = 22, // * signed machine-dependent int 76cdf0e10cSrcweir SbxUINT = 23, // * unsigned machine-dependent int 77cdf0e10cSrcweir SbxVOID = 24, // * no value (= SbxEMPTY) 78cdf0e10cSrcweir SbxHRESULT = 25, // HRESULT 79cdf0e10cSrcweir SbxPOINTER = 26, // generic pointer 80cdf0e10cSrcweir SbxDIMARRAY = 27, // dimensioned array 81cdf0e10cSrcweir SbxCARRAY = 28, // C style array 82cdf0e10cSrcweir SbxUSERDEF = 29, // user defined 83cdf0e10cSrcweir SbxLPSTR = 30, // * null terminated string 84cdf0e10cSrcweir SbxLPWSTR = 31, // wide null terminated string 85cdf0e10cSrcweir SbxCoreSTRING = 32, // AB 10.4.97, fuer GetCoreString(), nur zum Konvertieren 86cdf0e10cSrcweir SbxWSTRING = 33, // AB 4.10.2000 Reimplemented for backwards compatibility (#78919) 87cdf0e10cSrcweir SbxWCHAR = 34, // AB 4.10.2000 Reimplemented for backwards compatibility (#78919) 88cdf0e10cSrcweir SbxSALINT64 = 35, // for UNO hyper 89cdf0e10cSrcweir SbxSALUINT64 = 36, // for UNO unsigned hyper 90cdf0e10cSrcweir SbxDECIMAL = 37, // for UNO/automation Decimal 91cdf0e10cSrcweir 92cdf0e10cSrcweir SbxVECTOR = 0x1000, // simple counted array 93cdf0e10cSrcweir SbxARRAY = 0x2000, // array 94cdf0e10cSrcweir SbxBYREF = 0x4000, // access by reference 95cdf0e10cSrcweir 96cdf0e10cSrcweir SbxSV1 = 128, // first defined data type for StarView 97cdf0e10cSrcweir SbxMEMORYSTREAM, // SvMemoryStream 98cdf0e10cSrcweir SbxSTORAGE, // SvStorage 99cdf0e10cSrcweir 100cdf0e10cSrcweir SbxUSER1 = 256, // first user defined data type 101cdf0e10cSrcweir SbxUSERn = 2047 // last user defined data type 102cdf0e10cSrcweir }; 103cdf0e10cSrcweir 104cdf0e10cSrcweir const sal_uInt32 SBX_TYPE_WITH_EVENTS_FLAG = 0x10000; 105cdf0e10cSrcweir const sal_uInt32 SBX_TYPE_DIM_AS_NEW_FLAG = 0x20000; 106cdf0e10cSrcweir const sal_uInt32 SBX_FIXED_LEN_STRING_FLAG = 0x10000; // same value as above as no conflict possible 107cdf0e10cSrcweir const sal_uInt32 SBX_TYPE_VAR_TO_DIM_FLAG = 0x40000; 108cdf0e10cSrcweir 109cdf0e10cSrcweir #endif 110cdf0e10cSrcweir 111cdf0e10cSrcweir #ifndef _SBX_OPERATOR 112cdf0e10cSrcweir #define _SBX_OPERATOR 113cdf0e10cSrcweir 114cdf0e10cSrcweir enum SbxOperator { 115cdf0e10cSrcweir // Arithmetical: 116cdf0e10cSrcweir SbxEXP, // this ^ var 117cdf0e10cSrcweir SbxMUL, // this * var 118cdf0e10cSrcweir SbxDIV, // this / var 119cdf0e10cSrcweir SbxMOD, // this MOD var 120cdf0e10cSrcweir SbxPLUS, // this + var 121cdf0e10cSrcweir SbxMINUS, // this - var 122cdf0e10cSrcweir SbxNEG, // -this (var is ignored) 123cdf0e10cSrcweir SbxIDIV, // this / var (both operands max. sal_Int32!) 124cdf0e10cSrcweir // Boolean operators (max sal_Int32!): 125cdf0e10cSrcweir SbxAND, // this & var 126cdf0e10cSrcweir SbxOR, // this | var 127cdf0e10cSrcweir SbxXOR, // this ^ var 128cdf0e10cSrcweir SbxEQV, // ~this ^ var 129cdf0e10cSrcweir SbxIMP, // ~this | var 130cdf0e10cSrcweir SbxNOT, // ~this (var is ignored) 131cdf0e10cSrcweir // String-concat: 132cdf0e10cSrcweir SbxCAT, // this & var 133cdf0e10cSrcweir // Comparisons: 134cdf0e10cSrcweir SbxEQ, // this = var 135cdf0e10cSrcweir SbxNE, // this <> var 136cdf0e10cSrcweir SbxLT, // this < var 137cdf0e10cSrcweir SbxGT, // this > var 138cdf0e10cSrcweir SbxLE, // this <= var 139cdf0e10cSrcweir SbxGE // this >= var 140cdf0e10cSrcweir }; 141cdf0e10cSrcweir 142cdf0e10cSrcweir #endif 143cdf0e10cSrcweir 144cdf0e10cSrcweir #ifndef _SBX_NAME_TYPE 145cdf0e10cSrcweir #define _SBX_NAME_TYPE 146cdf0e10cSrcweir 147cdf0e10cSrcweir enum SbxNameType { // Type of the questioned name of a variable 148cdf0e10cSrcweir SbxNAME_NONE, // plain name 149cdf0e10cSrcweir SbxNAME_SHORT, // Name(A,B) 150cdf0e10cSrcweir SbxNAME_SHORT_TYPES, // Name%(A%,B$) 151cdf0e10cSrcweir SbxNAME_LONG_TYPES // Name(A As Integer, B As String) As Integer 152cdf0e10cSrcweir }; 153cdf0e10cSrcweir 154cdf0e10cSrcweir #endif 155cdf0e10cSrcweir 156cdf0e10cSrcweir // AB: 20.3.96: New error messages 157cdf0e10cSrcweir typedef sal_uIntPtr SbxError; // Preserve old type 158cdf0e10cSrcweir 159cdf0e10cSrcweir #endif 160cdf0e10cSrcweir // von #ifndef __RSC 161cdf0e10cSrcweir 162cdf0e10cSrcweir 163cdf0e10cSrcweir // New error codes per define 164cdf0e10cSrcweir #define ERRCODE_SBX_OK ERRCODE_NONE // processed 165cdf0e10cSrcweir #define ERRCODE_SBX_SYNTAX (1UL | ERRCODE_AREA_SBX | \ 166cdf0e10cSrcweir ERRCODE_CLASS_COMPILER) // Syntaxerror in parser (where else could syntax errors happen? ;-) 167cdf0e10cSrcweir #define ERRCODE_SBX_NOTIMP (2UL | ERRCODE_AREA_SBX | \ 168cdf0e10cSrcweir ERRCODE_CLASS_NOTSUPPORTED) // not possible 169cdf0e10cSrcweir #define ERRCODE_SBX_OVERFLOW (3UL | ERRCODE_AREA_SBX | \ 170cdf0e10cSrcweir ERRCODE_CLASS_SBX) // overflow 171cdf0e10cSrcweir #define ERRCODE_SBX_BOUNDS (4UL | ERRCODE_AREA_SBX | \ 172cdf0e10cSrcweir ERRCODE_CLASS_SBX) // Invalid array index 173cdf0e10cSrcweir #define ERRCODE_SBX_ZERODIV (5UL | ERRCODE_AREA_SBX | \ 174cdf0e10cSrcweir ERRCODE_CLASS_SBX) // Division by zero 175cdf0e10cSrcweir #define ERRCODE_SBX_CONVERSION (6UL | ERRCODE_AREA_SBX | \ 176cdf0e10cSrcweir ERRCODE_CLASS_SBX) // wrong data type 177cdf0e10cSrcweir #define ERRCODE_SBX_BAD_PARAMETER (7UL | ERRCODE_AREA_SBX | \ 178cdf0e10cSrcweir ERRCODE_CLASS_RUNTIME) // invalid Parameter 179cdf0e10cSrcweir #define ERRCODE_SBX_PROC_UNDEFINED (8UL | ERRCODE_AREA_SBX | \ 180cdf0e10cSrcweir ERRCODE_CLASS_RUNTIME) // BASIC-Sub or Function undefined 181cdf0e10cSrcweir #define ERRCODE_SBX_ERROR (9UL | ERRCODE_AREA_SBX | \ 182cdf0e10cSrcweir ERRCODE_CLASS_UNKNOWN) // other object-related error 183cdf0e10cSrcweir #define ERRCODE_SBX_NO_OBJECT (10UL | ERRCODE_AREA_SBX | \ 184cdf0e10cSrcweir ERRCODE_CLASS_RUNTIME) // Object variable unassigned 185cdf0e10cSrcweir #define ERRCODE_SBX_CANNOT_LOAD (11UL | ERRCODE_AREA_SBX | \ 186cdf0e10cSrcweir ERRCODE_CLASS_CREATE) // Object cannot be loaded or initialized 187cdf0e10cSrcweir #define ERRCODE_SBX_BAD_INDEX (12UL | ERRCODE_AREA_SBX | \ 188cdf0e10cSrcweir ERRCODE_CLASS_SBX) // Invalid object index 189cdf0e10cSrcweir #define ERRCODE_SBX_NO_ACTIVE_OBJECT (13UL | ERRCODE_AREA_SBX | \ 190cdf0e10cSrcweir ERRCODE_CLASS_ACCESS) // Object ist not activated 191cdf0e10cSrcweir #define ERRCODE_SBX_BAD_PROP_VALUE (14UL | ERRCODE_AREA_SBX | \ 192cdf0e10cSrcweir ERRCODE_CLASS_RUNTIME) // Bad property value 193cdf0e10cSrcweir #define ERRCODE_SBX_PROP_READONLY (15UL | ERRCODE_AREA_SBX | \ 194cdf0e10cSrcweir ERRCODE_CLASS_READ) // Property is read only 195cdf0e10cSrcweir #define ERRCODE_SBX_PROP_WRITEONLY (16UL | ERRCODE_AREA_SBX | \ 196cdf0e10cSrcweir ERRCODE_CLASS_WRITE) // Property is write only 197cdf0e10cSrcweir #define ERRCODE_SBX_INVALID_OBJECT (17UL | ERRCODE_AREA_SBX | \ 198cdf0e10cSrcweir ERRCODE_CLASS_ACCESS) // Invalid object reference 199cdf0e10cSrcweir #define ERRCODE_SBX_NO_METHOD (18UL | ERRCODE_AREA_SBX | \ 200cdf0e10cSrcweir ERRCODE_CLASS_RUNTIME) // Property oder Methode unbekannt 201cdf0e10cSrcweir #define ERRCODE_SBX_INVALID_USAGE_OBJECT (19UL | ERRCODE_AREA_SBX | \ 202cdf0e10cSrcweir ERRCODE_CLASS_ACCESS) // Invalid object usage 203cdf0e10cSrcweir #define ERRCODE_SBX_NO_OLE (20UL | ERRCODE_AREA_SBX | \ 204cdf0e10cSrcweir ERRCODE_CLASS_ACCESS) // No OLE-Object 205cdf0e10cSrcweir #define ERRCODE_SBX_BAD_METHOD (21UL | ERRCODE_AREA_SBX | \ 206cdf0e10cSrcweir ERRCODE_CLASS_RUNTIME) // Method not supported 207cdf0e10cSrcweir #define ERRCODE_SBX_OLE_ERROR (22UL | ERRCODE_AREA_SBX | \ 208cdf0e10cSrcweir ERRCODE_CLASS_RUNTIME) // OLE Automation Error 209cdf0e10cSrcweir #define ERRCODE_SBX_BAD_ACTION (23UL | ERRCODE_AREA_SBX | \ 210cdf0e10cSrcweir ERRCODE_CLASS_NOTSUPPORTED) // Action not supported 211cdf0e10cSrcweir #define ERRCODE_SBX_NO_NAMED_ARGS (24UL | ERRCODE_AREA_SBX | \ 212cdf0e10cSrcweir ERRCODE_CLASS_RUNTIME) // No named arguments 213cdf0e10cSrcweir #define ERRCODE_SBX_BAD_LOCALE (25UL | ERRCODE_AREA_SBX | \ 214cdf0e10cSrcweir ERRCODE_CLASS_NOTSUPPORTED) // Locale settings not supported 215cdf0e10cSrcweir #define ERRCODE_SBX_NAMED_NOT_FOUND (26UL | ERRCODE_AREA_SBX | \ 216cdf0e10cSrcweir ERRCODE_CLASS_RUNTIME) // Unknown named argument 217cdf0e10cSrcweir #define ERRCODE_SBX_NOT_OPTIONAL (27UL | ERRCODE_AREA_SBX | \ 218cdf0e10cSrcweir ERRCODE_CLASS_RUNTIME) // Argument not optional 219cdf0e10cSrcweir #define ERRCODE_SBX_WRONG_ARGS (28UL | ERRCODE_AREA_SBX | \ 220cdf0e10cSrcweir ERRCODE_CLASS_SBX) // Invalid number of arguments 221cdf0e10cSrcweir #define ERRCODE_SBX_NOT_A_COLL (29UL | ERRCODE_AREA_SBX | \ 222cdf0e10cSrcweir ERRCODE_CLASS_RUNTIME) // Object contains no elements 223cdf0e10cSrcweir #define LAST_SBX_ERROR_ID 29UL 224cdf0e10cSrcweir 225cdf0e10cSrcweir 226cdf0e10cSrcweir // Less important for resources 227cdf0e10cSrcweir #ifndef __RSC 228cdf0e10cSrcweir 229cdf0e10cSrcweir // Map old codes to new ones 230cdf0e10cSrcweir #define SbxERR_OK ERRCODE_SBX_OK 231cdf0e10cSrcweir #define SbxERR_SYNTAX ERRCODE_SBX_SYNTAX 232cdf0e10cSrcweir #define SbxERR_NOTIMP ERRCODE_SBX_NOTIMP 233cdf0e10cSrcweir #define SbxERR_OVERFLOW ERRCODE_SBX_OVERFLOW 234cdf0e10cSrcweir #define SbxERR_BOUNDS ERRCODE_SBX_BOUNDS 235cdf0e10cSrcweir #define SbxERR_ZERODIV ERRCODE_SBX_ZERODIV 236cdf0e10cSrcweir #define SbxERR_CONVERSION ERRCODE_SBX_CONVERSION 237cdf0e10cSrcweir #define SbxERR_BAD_PARAMETER ERRCODE_SBX_BAD_PARAMETER 238cdf0e10cSrcweir #define SbxERR_PROC_UNDEFINED ERRCODE_SBX_PROC_UNDEFINED 239cdf0e10cSrcweir #define SbxERR_ERROR ERRCODE_SBX_ERROR 240cdf0e10cSrcweir #define SbxERR_NO_OBJECT ERRCODE_SBX_NO_OBJECT 241cdf0e10cSrcweir #define SbxERR_CANNOT_LOAD ERRCODE_SBX_CANNOT_LOAD 242cdf0e10cSrcweir #define SbxERR_BAD_INDEX ERRCODE_SBX_BAD_INDEX 243cdf0e10cSrcweir #define SbxERR_NO_ACTIVE_OBJECT ERRCODE_SBX_NO_ACTIVE_OBJECT 244cdf0e10cSrcweir #define SbxERR_BAD_PROP_VALUE ERRCODE_SBX_BAD_PROP_VALUE 245cdf0e10cSrcweir #define SbxERR_PROP_READONLY ERRCODE_SBX_PROP_READONLY 246cdf0e10cSrcweir #define SbxERR_PROP_WRITEONLY ERRCODE_SBX_PROP_WRITEONLY 247cdf0e10cSrcweir #define SbxERR_INVALID_OBJECT ERRCODE_SBX_INVALID_OBJECT 248cdf0e10cSrcweir #define SbxERR_NO_METHOD ERRCODE_SBX_NO_METHOD 249cdf0e10cSrcweir #define SbxERR_INVALID_USAGE_OBJECT ERRCODE_SBX_INVALID_USAGE_OBJECT 250cdf0e10cSrcweir #define SbxERR_NO_OLE ERRCODE_SBX_NO_OLE 251cdf0e10cSrcweir #define SbxERR_BAD_METHOD ERRCODE_SBX_BAD_METHOD 252cdf0e10cSrcweir #define SbxERR_OLE_ERROR ERRCODE_SBX_OLE_ERROR 253cdf0e10cSrcweir #define SbxERR_BAD_ACTION ERRCODE_SBX_BAD_ACTION 254cdf0e10cSrcweir #define SbxERR_NO_NAMED_ARGS ERRCODE_SBX_NO_NAMED_ARGS 255cdf0e10cSrcweir #define SbxERR_BAD_LOCALE ERRCODE_SBX_BAD_LOCALE 256cdf0e10cSrcweir #define SbxERR_NAMED_NOT_FOUND ERRCODE_SBX_NAMED_NOT_FOUND 257cdf0e10cSrcweir #define SbxERR_NOT_OPTIONAL ERRCODE_SBX_NOT_OPTIONAL 258cdf0e10cSrcweir #define SbxERR_WRONG_ARGS ERRCODE_SBX_WRONG_ARGS 259cdf0e10cSrcweir #define SbxERR_NOT_A_COLL ERRCODE_SBX_NOT_A_COLL 260cdf0e10cSrcweir 261cdf0e10cSrcweir 262cdf0e10cSrcweir /* Old codes with VB error codes 263cdf0e10cSrcweir enum SbxError { // Ergebnis einer Rechenoperation/Konversion 264cdf0e10cSrcweir SbxERR_OK = 0, // durchgefuehrt 265cdf0e10cSrcweir SbxERR_SYNTAX = 2, // Syntaxfehler im Parser 266cdf0e10cSrcweir SbxERR_NOTIMP = 5, // nicht moeglich 267cdf0e10cSrcweir SbxERR_OVERFLOW = 6, // Ueberlauf 268cdf0e10cSrcweir SbxERR_BOUNDS = 9, // Array-Index ungueltig 269cdf0e10cSrcweir SbxERR_ZERODIV = 11, // Division durch Null 270cdf0e10cSrcweir SbxERR_CONVERSION = 13, // falscher Datentyp 271cdf0e10cSrcweir SbxERR_BAD_PARAMETER = 14, // ung�ltiger Parameter 272cdf0e10cSrcweir SbxERR_PROC_UNDEFINED = 35, // BASIC-Sub oder Function undefiniert 273cdf0e10cSrcweir SbxERR_ERROR = 51, // andere Fehler 274cdf0e10cSrcweir // Objektbezogene Fehler 275cdf0e10cSrcweir SbxERR_NO_OBJECT = 91, // Objektvariable nicht belegt 276cdf0e10cSrcweir SbxERR_CANNOT_LOAD = 323, // Objekt kann nicht geladen/eingerichtet werden 277cdf0e10cSrcweir SbxERR_BAD_INDEX = 341, // Invalid object index 278cdf0e10cSrcweir SbxERR_NO_ACTIVE_OBJECT=366,// Objekt ist nicht aktiviert 279cdf0e10cSrcweir SbxERR_BAD_PROP_VALUE = 380,// Bad property value 280cdf0e10cSrcweir SbxERR_PROP_READONLY = 382, // Property is read only 281cdf0e10cSrcweir SbxERR_PROP_WRITEONLY = 394,// Property is write only 282cdf0e10cSrcweir SbxERR_INVALID_OBJECT = 420,// Invalid object reference 283cdf0e10cSrcweir SbxERR_NO_METHOD = 423, // Property oder Methode unbekannt 284cdf0e10cSrcweir SbxERR_INVALID_USAGE_OBJECT=425,// Falsche Verwendung eines Objekts 285cdf0e10cSrcweir SbxERR_NO_OLE = 430, // Kein OLE-Objekt 286cdf0e10cSrcweir SbxERR_BAD_METHOD = 438, // Methode nicht unterst�tzt 287cdf0e10cSrcweir SbxERR_OLE_ERROR = 440, // OLE Automation-Fehler 288cdf0e10cSrcweir SbxERR_BAD_ACTION = 445, // Aktion nicht unterst�tzt 289cdf0e10cSrcweir SbxERR_NO_NAMED_ARGS = 446, // Keine benannten Argumente 290cdf0e10cSrcweir SbxERR_BAD_LOCALE = 447, // Laenderspezifische Einstellungen nicht unterst�tzt 291cdf0e10cSrcweir SbxERR_NAMED_NOT_FOUND = 448,// Unbekanntes benanntes Argument 292cdf0e10cSrcweir SbxERR_NOT_OPTIONAL = 449, // Argument nicht optional 293cdf0e10cSrcweir SbxERR_WRONG_ARGS = 450, // Falsche Zahl von Argumenten 294cdf0e10cSrcweir SbxERR_NOT_A_COLL = 451 // Objekt enth�lt keine Elemente 295cdf0e10cSrcweir }; 296cdf0e10cSrcweir */ 297cdf0e10cSrcweir 298cdf0e10cSrcweir // Flag-Bits: 299cdf0e10cSrcweir #define SBX_READ 0x0001 // Read permission 300cdf0e10cSrcweir #define SBX_WRITE 0x0002 // Write permission 301cdf0e10cSrcweir #define SBX_READWRITE 0x0003 // Read/Write permission 302cdf0e10cSrcweir #define SBX_DONTSTORE 0x0004 // Don't store object 303cdf0e10cSrcweir #define SBX_MODIFIED 0x0008 // Object was changed 304cdf0e10cSrcweir #define SBX_FIXED 0x0010 // Fixed data type (SbxVariable) 305cdf0e10cSrcweir #define SBX_CONST 0x0020 // Definition of const value 306cdf0e10cSrcweir #define SBX_OPTIONAL 0x0040 // Parameter is optional 307cdf0e10cSrcweir #define SBX_HIDDEN 0x0080 // Element is invisible 308cdf0e10cSrcweir #define SBX_INVISIBLE 0x0100 // Element is not found by Find() 309cdf0e10cSrcweir #define SBX_EXTSEARCH 0x0200 // Object is searched completely 310cdf0e10cSrcweir #define SBX_EXTFOUND 0x0400 // Variable was found through extended search 311cdf0e10cSrcweir #define SBX_GBLSEARCH 0x0800 // Global search via Parents 312cdf0e10cSrcweir #define SBX_RESERVED 0x1000 // reserved 313cdf0e10cSrcweir #define SBX_PRIVATE 0x1000 // #110004, #112015, cannot conflict with SBX_RESERVED 314cdf0e10cSrcweir #define SBX_NO_BROADCAST 0x2000 // No broadcast on Get/Put 315cdf0e10cSrcweir #define SBX_REFERENCE 0x4000 // Parameter is Reference (DLL-call) 316cdf0e10cSrcweir #define SBX_NO_MODIFY 0x8000 // SetModified is suppressed 317cdf0e10cSrcweir #define SBX_WITH_EVENTS 0x0080 // Same value as unused SBX_HIDDEN 318cdf0e10cSrcweir #define SBX_DIM_AS_NEW 0x0800 // Same value as SBX_GBLSEARCH, cannot conflict as one 319cdf0e10cSrcweir // is used for objects, the other for variables only 320cdf0e10cSrcweir #define SBX_VAR_TO_DIM 0x2000 // Same value as SBX_NO_BROADCAST, cannot conflict as 321cdf0e10cSrcweir // used for variables without broadcaster only 322cdf0e10cSrcweir 323cdf0e10cSrcweir // Broadcaster-IDs: 324cdf0e10cSrcweir #define SBX_HINT_DYING SFX_HINT_DYING 325cdf0e10cSrcweir #define SBX_HINT_DATAWANTED SFX_HINT_USER00 326cdf0e10cSrcweir #define SBX_HINT_DATACHANGED SFX_HINT_DATACHANGED 327cdf0e10cSrcweir #define SBX_HINT_CONVERTED SFX_HINT_USER01 328cdf0e10cSrcweir #define SBX_HINT_INFOWANTED SFX_HINT_USER02 329cdf0e10cSrcweir #define SBX_HINT_OBJECTCHANGED SFX_HINT_USER03 330cdf0e10cSrcweir 331cdf0e10cSrcweir // List of all creators for Load/Store 332cdf0e10cSrcweir 333cdf0e10cSrcweir #define SBXCR_SBX 0x20584253 // SBX(blank) 334cdf0e10cSrcweir 335cdf0e10cSrcweir // List of predefined SBX-IDs. New SBX-IDs must be precisly defined so that 336cdf0e10cSrcweir // they are unique within the Stream and appropriate Factory. 337cdf0e10cSrcweir 338cdf0e10cSrcweir #define SBXID_VALUE 0x4E4E // NN: SbxValue 339cdf0e10cSrcweir #define SBXID_VARIABLE 0x4156 // VA: SbxVariable 340cdf0e10cSrcweir #define SBXID_ARRAY 0x5241 // AR: SbxArray 341cdf0e10cSrcweir #define SBXID_DIMARRAY 0x4944 // DI: SbxDimArray 342cdf0e10cSrcweir #define SBXID_OBJECT 0x424F // OB: SbxObject 343cdf0e10cSrcweir #define SBXID_COLLECTION 0x4F43 // CO: SbxCollection 344cdf0e10cSrcweir #define SBXID_FIXCOLLECTION 0x4346 // FC: SbxStdCollection 345cdf0e10cSrcweir #define SBXID_METHOD 0x454D // ME: SbxMethod 346cdf0e10cSrcweir #define SBXID_PROPERTY 0x5250 // PR: SbxProperty 347cdf0e10cSrcweir 348cdf0e10cSrcweir // StarBASIC restricts the base data type to different intervals. 349cdf0e10cSrcweir // These intervals are fixed due to portability and independent 350cdf0e10cSrcweir // of the implementation. Only type double is greedy and takes 351cdf0e10cSrcweir // what it gets. 352cdf0e10cSrcweir 353cdf0e10cSrcweir #define SbxMAXCHAR ((sal_Unicode)65535) 354cdf0e10cSrcweir #define SbxMINCHAR (0) 355cdf0e10cSrcweir #define SbxMAXBYTE ( 255) 356cdf0e10cSrcweir #define SbxMAXINT ( 32767) 357cdf0e10cSrcweir #define SbxMININT (-32768) 358cdf0e10cSrcweir #define SbxMAXUINT ((sal_uInt16) 65535) 359cdf0e10cSrcweir #define SbxMAXLNG ( 2147483647) 360cdf0e10cSrcweir #define SbxMINLNG ((sal_Int32)(-2147483647-1)) 361cdf0e10cSrcweir #define SbxMAXULNG ((sal_uInt32) 0xffffffff) 362cdf0e10cSrcweir 363cdf0e10cSrcweir #define SbxMAXSALINT64 SAL_MAX_INT64 364cdf0e10cSrcweir #define SbxMINSALINT64 SAL_MIN_INT64 365cdf0e10cSrcweir #define SbxMAXSALUINT64 SAL_MAX_UINT64 366cdf0e10cSrcweir 367cdf0e10cSrcweir #define SbxMAXSNG ( 3.402823e+38) 368cdf0e10cSrcweir #define SbxMINSNG (-3.402823e+38) 369cdf0e10cSrcweir #define SbxMAXSNG2 ( 1.175494351e-38) 370cdf0e10cSrcweir #define SbxMINSNG2 (-1.175494351e-38) 371cdf0e10cSrcweir #define SbxMAXCURR ( 922337203685477.5807) 372cdf0e10cSrcweir #define SbxMINCURR (-922337203685477.5808) 373cdf0e10cSrcweir #define CURRENCY_FACTOR 10000 374cdf0e10cSrcweir #define SbxMAXCURRLNG (SbxMAXLNG/CURRENCY_FACTOR) 375cdf0e10cSrcweir #define SbxMINCURRLNG (SbxMINLNG/CURRENCY_FACTOR) 376cdf0e10cSrcweir 377cdf0e10cSrcweir // Max valid offset index of a Sbx-Array (due to 64K limit) 378cdf0e10cSrcweir #define SBX_MAXINDEX 0x3FF0 379cdf0e10cSrcweir #define SBX_MAXINDEX32 SbxMAXLNG 380cdf0e10cSrcweir 381cdf0e10cSrcweir // The numeric values of sal_True and FALSE 382cdf0e10cSrcweir enum SbxBOOL { SbxFALSE = 0, SbxTRUE = -1 }; 383cdf0e10cSrcweir 384cdf0e10cSrcweir #endif // __RSC 385cdf0e10cSrcweir 386cdf0e10cSrcweir #endif 387