ooo-build r11887 - in trunk: . patches/src680 patches/vba scratch/sc-vba/testvba/TestDocuments
- From: pflin svn gnome org
- To: svn-commits-list gnome org
- Subject: ooo-build r11887 - in trunk: . patches/src680 patches/vba scratch/sc-vba/testvba/TestDocuments
- Date: Thu, 13 Mar 2008 05:30:25 +0000 (GMT)
Author: pflin
Date: Thu Mar 13 05:30:24 2008
New Revision: 11887
URL: http://svn.gnome.org/viewvc/ooo-build?rev=11887&view=rev
Log:
* patches/vba/vba-error-function.diff: error function fix
(not applied currently, need review by Noel)
* scratch/sc-vba/testvba/TestDocuments/error.xls:
test document
* patches/src680/apply.
Added:
trunk/patches/vba/vba-error-function.diff
trunk/scratch/sc-vba/testvba/TestDocuments/error.xls (contents, props changed)
Modified:
trunk/ChangeLog
trunk/patches/src680/apply
Modified: trunk/patches/src680/apply
==============================================================================
--- trunk/patches/src680/apply (original)
+++ trunk/patches/src680/apply Thu Mar 13 05:30:24 2008
@@ -1600,7 +1600,8 @@
vba-getattr-function.diff, n#294187, Fong
# Fomat function enhancement for VBA
vba-format-function.diff, n#294187, Fong
-
+# Error function compatible with VBA
+vba-error-function.diff, n#294187, Fong
# Is function only valid for objects
#vba-is-behaviour.diff
Added: trunk/patches/vba/vba-error-function.diff
==============================================================================
--- (empty file)
+++ trunk/patches/vba/vba-error-function.diff Thu Mar 13 05:30:24 2008
@@ -0,0 +1,135 @@
+diff -urp basic.bak/source/classes/sb.cxx basic/source/classes/sb.cxx
+--- basic.bak/source/classes/sb.cxx 2008-03-11 11:03:51.000000000 +0800
++++ basic/source/classes/sb.cxx 2008-03-13 11:19:43.000000000 +0800
+@@ -1142,6 +1142,27 @@ USHORT StarBASIC::GetVBErrorCode( SbErro
+ {
+ USHORT nRet = 0;
+
++ if( SbiRuntime::isVBAEnabled() )
++ {
++ switch( nError )
++ {
++ case SbERR_BASIC_ARRAY_FIX:
++ return 10;
++ case SbERR_BASIC_STRING_OVERFLOW:
++ return 14;
++ case SbERR_BASIC_EXPR_TOO_COMPLEX:
++ return 16;
++ case SbERR_BASIC_OPER_NOT_PERFORM:
++ return 17;
++ case SbERR_BASIC_TOO_MANY_DLL:
++ return 47;
++ case SbERR_BASIC_LOOP_NOT_INIT:
++ return 92;
++ default:
++ nRet = 0;
++ }
++ }
++
+ // Suchschleife
+ const SFX_VB_ErrorItem* pErrItem;
+ USHORT nIndex = 0;
+@@ -1163,7 +1184,33 @@ SbError StarBASIC::GetSfxFromVBError( US
+ {
+ SbError nRet = 0L;
+
+- // Suchschleife
++ if( SbiRuntime::isVBAEnabled() )
++ {
++ switch( nError )
++ {
++ case 1:
++ case 2:
++ case 4:
++ case 8:
++ case 12:
++ case 73:
++ return 0L;
++ case 10:
++ return SbERR_BASIC_ARRAY_FIX;
++ case 14:
++ return SbERR_BASIC_STRING_OVERFLOW;
++ case 16:
++ return SbERR_BASIC_EXPR_TOO_COMPLEX;
++ case 17:
++ return SbERR_BASIC_OPER_NOT_PERFORM;
++ case 47:
++ return SbERR_BASIC_TOO_MANY_DLL;
++ case 92:
++ return SbERR_BASIC_LOOP_NOT_INIT;
++ default:
++ nRet = 0L;
++ }
++ }
+ const SFX_VB_ErrorItem* pErrItem;
+ USHORT nIndex = 0;
+ do
+diff -urp basic.bak/source/classes/sb.src basic/source/classes/sb.src
+--- basic.bak/source/classes/sb.src 2008-03-11 11:03:51.000000000 +0800
++++ basic/source/classes/sb.src 2008-03-12 16:50:42.000000000 +0800
+@@ -578,6 +578,30 @@ Resource RID_BASIC_START
+ Text [ en-US ] = "$(ARG1)." ;
+ Text [ x-comment ] = " ";
+ };
++ String ERRCODE_BASIC_ARRAY_FIX & ERRCODE_RES_MASK
++ {
++ Text [ en-US ] = "This array is fixed or temporarily locked." ;
++ };
++ String ERRCODE_BASIC_STRING_OVERFLOW & ERRCODE_RES_MASK
++ {
++ Text [ en-US ] = "Out of string space." ;
++ };
++ String ERRCODE_BASIC_EXPR_TOO_COMPLEX & ERRCODE_RES_MASK
++ {
++ Text [ en-US ] = "Expression Too Complex." ;
++ };
++ String ERRCODE_BASIC_OPER_NOT_PERFORM & ERRCODE_RES_MASK
++ {
++ Text [ en-US ] = "Can't perform requested operation." ;
++ };
++ String ERRCODE_BASIC_TOO_MANY_DLL & ERRCODE_RES_MASK
++ {
++ Text [ en-US ] = "Too many DLL application clients." ;
++ };
++ String ERRCODE_BASIC_LOOP_NOT_INIT & ERRCODE_RES_MASK
++ {
++ Text [ en-US ] = "For loop not initialized." ;
++ };
+ };
+ // Hinweis: IDS_SBERR_TERMINATED = IDS_SBERR_START+2000.
+ String IDS_SBERR_TERMINATED
+diff -urp basic.bak/inc/basic/sberrors.hxx basic/inc/basic/sberrors.hxx
+--- basic.bak/inc/basic/sberrors.hxx 2008-03-11 11:03:50.000000000 +0800
++++ basic/inc/basic/sberrors.hxx 2008-03-12 16:52:58.000000000 +0800
+@@ -285,6 +285,18 @@ typedef ULONG SbError;
+ #define ERRCODE_BASMGR_UNLOADLIB (LAST_SBX_ERROR_ID+102UL) | ERRCODE_AREA_SBX
+
+ #define ERRCODE_BASIC_COMPAT ((LAST_SBX_ERROR_ID+103UL)| ERRCODE_AREA_SBX | ERRCODE_CLASS_RUNTIME)
++#define ERRCODE_BASIC_ARRAY_FIX ((LAST_SBX_ERROR_ID+104UL) | ERRCODE_AREA_SBX | \
++ ERRCODE_CLASS_COMPILER) // This array is fixed
++#define ERRCODE_BASIC_STRING_OVERFLOW ((LAST_SBX_ERROR_ID+105UL) | ERRCODE_AREA_SBX | \
++ ERRCODE_CLASS_COMPILER) // Out of string space
++#define ERRCODE_BASIC_EXPR_TOO_COMPLEX ((LAST_SBX_ERROR_ID+106UL) | ERRCODE_AREA_SBX | \
++ ERRCODE_CLASS_COMPILER) // Expression too complex
++#define ERRCODE_BASIC_OPER_NOT_PERFORM ((LAST_SBX_ERROR_ID+107UL) | ERRCODE_AREA_SBX | \
++ ERRCODE_CLASS_COMPILER) // Can't perform requested operation
++#define ERRCODE_BASIC_TOO_MANY_DLL ((LAST_SBX_ERROR_ID+108UL) | ERRCODE_AREA_SBX | \
++ ERRCODE_CLASS_COMPILER) // Too many dll application clients
++#define ERRCODE_BASIC_LOOP_NOT_INIT ((LAST_SBX_ERROR_ID+109UL) | ERRCODE_AREA_SBX | \
++ ERRCODE_CLASS_COMPILER) // For loop not initialized
+
+ // Alte Codes auf neue mappen
+ #define SbERR_SYNTAX ERRCODE_BASIC_SYNTAX
+@@ -410,6 +422,12 @@ typedef ULONG SbError;
+ #define SbERR_NO_STRINGS_ARRAYS ERRCODE_BASIC_NO_STRINGS_ARRAYS
+ #define SbERR_BASIC_EXCEPTION ERRCODE_BASIC_EXCEPTION
+ #define SbERR_BASIC_COMPAT ERRCODE_BASIC_COMPAT
++#define SbERR_BASIC_ARRAY_FIX ERRCODE_BASIC_ARRAY_FIX
++#define SbERR_BASIC_STRING_OVERFLOW ERRCODE_BASIC_STRING_OVERFLOW
++#define SbERR_BASIC_EXPR_TOO_COMPLEX ERRCODE_BASIC_EXPR_TOO_COMPLEX
++#define SbERR_BASIC_OPER_NOT_PERFORM ERRCODE_BASIC_OPER_NOT_PERFORM
++#define SbERR_BASIC_TOO_MANY_DLL ERRCODE_BASIC_TOO_MANY_DLL
++#define SbERR_BASIC_LOOP_NOT_INIT ERRCODE_BASIC_LOOP_NOT_INIT
+ // #define SbERR_COMPILER_END ERRCODE_BASIC_COMPILER_END
+
+ /* ALT
Added: trunk/scratch/sc-vba/testvba/TestDocuments/error.xls
==============================================================================
Binary file. No diff available.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]