1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * This file is part of OpenOffice.org.
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org. If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
26 ************************************************************************/
30 import com
.sun
.star
.awt
.Point
;
31 import com
.sun
.star
.beans
.PropertyValue
;
32 import com
.sun
.star
.drawing
.PolygonFlags
;
33 //import util.BitmapLoader;
34 import com
.sun
.star
.uno
.Enum
;
35 import java
.lang
.reflect
.Field
;
36 import java
.lang
.reflect
.Method
;
37 import java
.lang
.reflect
.Modifier
;
38 import java
.lang
.reflect
.Array
;
39 import com
.sun
.star
.uno
.Any
;
40 import com
.sun
.star
.uno
.AnyConverter
;
43 public class ValueChanger
{
46 // Method to change a Value, thought for properties
47 public static Object
changePValue( Object oldValue
) {
49 Object newValue
= null;
51 if (oldValue
instanceof com
.sun
.star
.uno
.Any
) {
53 oldValue
= AnyConverter
.toObject(((Any
) oldValue
).getType(),oldValue
);
54 } catch (com
.sun
.star
.lang
.IllegalArgumentException iae
) {
61 if (oldValue
instanceof Boolean
) {
62 boolean oldbool
= ((Boolean
) oldValue
).booleanValue();
63 newValue
= new Boolean(!oldbool
);
66 if (oldValue
instanceof Integer
) {
67 int oldint
= ((Integer
) oldValue
).intValue();
68 newValue
= new Integer(oldint
+5);
71 if (oldValue
instanceof Long
) {
72 long oldlong
= ((Long
) oldValue
).longValue();
73 newValue
= new Long(oldlong
+ 15);
76 if (oldValue
instanceof Short
) {
77 short oldshort
= ((Short
) oldValue
).shortValue();
78 newValue
= new Short((short) (oldshort
+ 1));
81 if (oldValue
instanceof Byte
) {
82 byte oldbyte
= ((Byte
) oldValue
).byteValue();
83 newValue
= new Byte((byte) (oldbyte
+ 1));
86 if (oldValue
instanceof Float
) {
87 float oldfloat
= ((Float
) oldValue
).floatValue();
88 newValue
= new Float((float) (oldfloat
+ 16.7));
91 if (oldValue
instanceof Double
) {
92 double olddouble
= ((Double
) oldValue
).doubleValue();
93 newValue
= new Double(olddouble
+ 17.8);
96 if (oldValue
instanceof String
) {
97 String oldString
= (String
) oldValue
;
98 newValue
= oldString
+ "New";
102 if (oldValue
instanceof com
.sun
.star
.chart
.ChartAxisArrangeOrderType
) {
103 Object AO1
= com
.sun
.star
.chart
.ChartAxisArrangeOrderType
.AUTO
;
104 Object AO2
= com
.sun
.star
.chart
.ChartAxisArrangeOrderType
.SIDE_BY_SIDE
;
105 Object AO3
= com
.sun
.star
.chart
.ChartAxisArrangeOrderType
.STAGGER_EVEN
;
106 Object AO4
= com
.sun
.star
.chart
.ChartAxisArrangeOrderType
.STAGGER_ODD
;
108 if (oldValue
.equals(AO1
)) newValue
= AO2
;
109 if (oldValue
.equals(AO2
)) newValue
= AO3
;
110 if (oldValue
.equals(AO3
)) newValue
= AO4
;
111 if (oldValue
.equals(AO4
)) newValue
= AO1
;
114 if (oldValue
instanceof com
.sun
.star
.view
.PaperOrientation
) {
115 Object OR1
= com
.sun
.star
.view
.PaperOrientation
.LANDSCAPE
;
116 Object OR2
= com
.sun
.star
.view
.PaperOrientation
.PORTRAIT
;
118 if (oldValue
.equals(OR1
)) newValue
= OR2
;
122 if (oldValue
instanceof com
.sun
.star
.lang
.Locale
) {
123 Object Loc1
= new com
.sun
.star
.lang
.Locale("en","US","");
124 Object Loc2
= new com
.sun
.star
.lang
.Locale("de","DE","");
126 if (oldValue
.equals(Loc1
)) newValue
= Loc2
;
127 else newValue
= Loc1
;
130 if (oldValue
instanceof com
.sun
.star
.style
.ParagraphAdjust
) {
131 Object PA1
= com
.sun
.star
.style
.ParagraphAdjust
.LEFT
;
132 Object PA2
= com
.sun
.star
.style
.ParagraphAdjust
.CENTER
;
134 if (oldValue
.equals(PA1
)) newValue
= PA2
;
138 if (oldValue
instanceof com
.sun
.star
.style
.LineSpacing
) {
139 com
.sun
.star
.style
.LineSpacing LS
= new com
.sun
.star
.style
.LineSpacing();
140 com
.sun
.star
.style
.LineSpacing LSold
= (com
.sun
.star
.style
.LineSpacing
) oldValue
;
141 LS
.Height
= (short) ((LSold
.Height
)+1);
142 LS
.Mode
= (short) ((LSold
.Mode
)+1);
146 if (oldValue
instanceof com
.sun
.star
.drawing
.Direction3D
) {
147 com
.sun
.star
.drawing
.Direction3D D3D
= new com
.sun
.star
.drawing
.Direction3D();
148 com
.sun
.star
.drawing
.Direction3D D3Dold
= (com
.sun
.star
.drawing
.Direction3D
) oldValue
;
149 D3D
.DirectionX
= D3Dold
.DirectionX
+ .5;
150 D3D
.DirectionY
= D3Dold
.DirectionY
+ .5;
151 D3D
.DirectionZ
= D3Dold
.DirectionZ
+ .5;
155 if (oldValue
instanceof com
.sun
.star
.style
.GraphicLocation
) {
156 Object GL1
= com
.sun
.star
.style
.GraphicLocation
.AREA
;
157 Object GL2
= com
.sun
.star
.style
.GraphicLocation
.LEFT_BOTTOM
;
159 if (oldValue
.equals(GL1
)) newValue
= GL2
;
163 if (oldValue
instanceof com
.sun
.star
.style
.TabStop
) {
164 com
.sun
.star
.style
.TabStop TS
= new com
.sun
.star
.style
.TabStop();
165 com
.sun
.star
.style
.TabStop TSold
= (com
.sun
.star
.style
.TabStop
) oldValue
;
166 com
.sun
.star
.style
.TabAlign TA1
= com
.sun
.star
.style
.TabAlign
.CENTER
;
167 com
.sun
.star
.style
.TabAlign TA2
= com
.sun
.star
.style
.TabAlign
.RIGHT
;
169 if ((TSold
.Alignment
).equals(TA1
)) TS
.Alignment
= TA2
;
170 else TS
.Alignment
= TA1
;
172 TS
.Position
= ((TSold
.Position
)+1);
177 if (oldValue
instanceof com
.sun
.star
.style
.DropCapFormat
) {
178 com
.sun
.star
.style
.DropCapFormat DCF
= new com
.sun
.star
.style
.DropCapFormat();
179 com
.sun
.star
.style
.DropCapFormat DCFold
= (com
.sun
.star
.style
.DropCapFormat
) oldValue
;
180 DCF
.Count
= (byte) ((DCFold
.Count
)+1);
181 DCF
.Distance
= (short) ((DCFold
.Distance
)+1);
182 DCF
.Lines
= (byte) ((DCFold
.Lines
)+1);
186 if (oldValue
instanceof com
.sun
.star
.text
.TextContentAnchorType
) {
187 com
.sun
.star
.text
.TextContentAnchorType TCAT1
= com
.sun
.star
.text
.TextContentAnchorType
.AS_CHARACTER
;
188 com
.sun
.star
.text
.TextContentAnchorType TCAT2
= com
.sun
.star
.text
.TextContentAnchorType
.AT_CHARACTER
;
189 com
.sun
.star
.text
.TextContentAnchorType TCAT3
= com
.sun
.star
.text
.TextContentAnchorType
.AT_FRAME
;
190 com
.sun
.star
.text
.TextContentAnchorType TCAT4
= com
.sun
.star
.text
.TextContentAnchorType
.AT_PAGE
;
191 com
.sun
.star
.text
.TextContentAnchorType TCAT5
= com
.sun
.star
.text
.TextContentAnchorType
.AT_PARAGRAPH
;
192 if (oldValue
.equals(TCAT1
)) newValue
= TCAT2
;
193 if (oldValue
.equals(TCAT2
)) newValue
= TCAT3
;
194 if (oldValue
.equals(TCAT3
)) newValue
= TCAT4
;
195 if (oldValue
.equals(TCAT4
)) newValue
= TCAT5
;
196 if (oldValue
.equals(TCAT5
)) newValue
= TCAT1
;
199 if (oldValue
instanceof com
.sun
.star
.text
.WrapTextMode
) {
200 com
.sun
.star
.text
.WrapTextMode WTM1
= com
.sun
.star
.text
.WrapTextMode
.DYNAMIC
;
201 com
.sun
.star
.text
.WrapTextMode WTM2
= com
.sun
.star
.text
.WrapTextMode
.LEFT
;
202 com
.sun
.star
.text
.WrapTextMode WTM3
= com
.sun
.star
.text
.WrapTextMode
.NONE
;
203 com
.sun
.star
.text
.WrapTextMode WTM4
= com
.sun
.star
.text
.WrapTextMode
.PARALLEL
;
204 com
.sun
.star
.text
.WrapTextMode WTM5
= com
.sun
.star
.text
.WrapTextMode
.RIGHT
;
205 com
.sun
.star
.text
.WrapTextMode WTM6
= com
.sun
.star
.text
.WrapTextMode
.THROUGHT
;
206 if (oldValue
.equals(WTM1
)) newValue
= WTM2
;
207 if (oldValue
.equals(WTM2
)) newValue
= WTM3
;
208 if (oldValue
.equals(WTM3
)) newValue
= WTM4
;
209 if (oldValue
.equals(WTM4
)) newValue
= WTM5
;
210 if (oldValue
.equals(WTM5
)) newValue
= WTM6
;
211 if (oldValue
.equals(WTM6
)) newValue
= WTM1
;
214 if (oldValue
instanceof com
.sun
.star
.awt
.Size
) {
215 com
.sun
.star
.awt
.Size oldSize
= (com
.sun
.star
.awt
.Size
) oldValue
;
216 com
.sun
.star
.awt
.Size newSize
= new com
.sun
.star
.awt
.Size();
217 newSize
.Height
= oldSize
.Height
+1;
218 newSize
.Width
= oldSize
.Width
+1;
222 if (oldValue
instanceof com
.sun
.star
.awt
.Rectangle
) {
223 com
.sun
.star
.awt
.Rectangle oldRectangle
= (com
.sun
.star
.awt
.Rectangle
) oldValue
;
224 com
.sun
.star
.awt
.Rectangle newRectangle
= new com
.sun
.star
.awt
.Rectangle();
225 newRectangle
.Height
=oldRectangle
.Height
+1;
226 newRectangle
.Width
= oldRectangle
.Width
+1;
227 newRectangle
.X
=oldRectangle
.Y
+1;
228 newRectangle
.Y
= oldRectangle
.X
+1;
229 newValue
= newRectangle
;
232 if (oldValue
instanceof com
.sun
.star
.awt
.Point
) {
233 com
.sun
.star
.awt
.Point oldPoint
= (com
.sun
.star
.awt
.Point
) oldValue
;
234 com
.sun
.star
.awt
.Point newPoint
= new com
.sun
.star
.awt
.Point();
235 newPoint
.X
= oldPoint
.X
+1;
236 newPoint
.Y
= oldPoint
.Y
+1;
240 if (oldValue
instanceof com
.sun
.star
.table
.ShadowFormat
) {
241 com
.sun
.star
.table
.ShadowFormat SF
= new com
.sun
.star
.table
.ShadowFormat();
242 com
.sun
.star
.table
.ShadowFormat SFold
= (com
.sun
.star
.table
.ShadowFormat
) oldValue
;
243 SF
.IsTransparent
= (! SFold
.IsTransparent
);
244 SF
.ShadowWidth
= (short) ((SFold
.ShadowWidth
)+1);
248 if (oldValue
instanceof com
.sun
.star
.awt
.FontSlant
) {
249 com
.sun
.star
.awt
.FontSlant FS1
= com
.sun
.star
.awt
.FontSlant
.DONTKNOW
;
250 com
.sun
.star
.awt
.FontSlant FS2
= com
.sun
.star
.awt
.FontSlant
.ITALIC
;
251 com
.sun
.star
.awt
.FontSlant FS3
= com
.sun
.star
.awt
.FontSlant
.NONE
;
252 com
.sun
.star
.awt
.FontSlant FS4
= com
.sun
.star
.awt
.FontSlant
.OBLIQUE
;
253 com
.sun
.star
.awt
.FontSlant FS5
= com
.sun
.star
.awt
.FontSlant
.REVERSE_ITALIC
;
254 com
.sun
.star
.awt
.FontSlant FS6
= com
.sun
.star
.awt
.FontSlant
.REVERSE_OBLIQUE
;
255 if (oldValue
.equals(FS1
)) newValue
= FS2
;
256 if (oldValue
.equals(FS2
)) newValue
= FS3
;
257 if (oldValue
.equals(FS3
)) newValue
= FS4
;
258 if (oldValue
.equals(FS4
)) newValue
= FS5
;
259 if (oldValue
.equals(FS5
)) newValue
= FS6
;
260 if (oldValue
.equals(FS6
)) newValue
= FS1
;
263 if (oldValue
instanceof com
.sun
.star
.table
.CellHoriJustify
) {
264 com
.sun
.star
.table
.CellHoriJustify CHJ1
= com
.sun
.star
.table
.CellHoriJustify
.BLOCK
;
265 com
.sun
.star
.table
.CellHoriJustify CHJ2
= com
.sun
.star
.table
.CellHoriJustify
.CENTER
;
266 com
.sun
.star
.table
.CellHoriJustify CHJ3
= com
.sun
.star
.table
.CellHoriJustify
.LEFT
;
267 com
.sun
.star
.table
.CellHoriJustify CHJ4
= com
.sun
.star
.table
.CellHoriJustify
.REPEAT
;
268 com
.sun
.star
.table
.CellHoriJustify CHJ5
= com
.sun
.star
.table
.CellHoriJustify
.RIGHT
;
269 com
.sun
.star
.table
.CellHoriJustify CHJ6
= com
.sun
.star
.table
.CellHoriJustify
.STANDARD
;
270 if (oldValue
.equals(CHJ1
)) newValue
= CHJ2
;
271 if (oldValue
.equals(CHJ2
)) newValue
= CHJ3
;
272 if (oldValue
.equals(CHJ3
)) newValue
= CHJ4
;
273 if (oldValue
.equals(CHJ4
)) newValue
= CHJ5
;
274 if (oldValue
.equals(CHJ5
)) newValue
= CHJ6
;
275 if (oldValue
.equals(CHJ6
)) newValue
= CHJ1
;
278 if (oldValue
instanceof com
.sun
.star
.table
.CellVertJustify
) {
279 com
.sun
.star
.table
.CellVertJustify CVJ1
= com
.sun
.star
.table
.CellVertJustify
.BOTTOM
;
280 com
.sun
.star
.table
.CellVertJustify CVJ2
= com
.sun
.star
.table
.CellVertJustify
.CENTER
;
281 com
.sun
.star
.table
.CellVertJustify CVJ3
= com
.sun
.star
.table
.CellVertJustify
.STANDARD
;
282 com
.sun
.star
.table
.CellVertJustify CVJ4
= com
.sun
.star
.table
.CellVertJustify
.TOP
;
283 if (oldValue
.equals(CVJ1
)) newValue
= CVJ2
;
284 if (oldValue
.equals(CVJ2
)) newValue
= CVJ3
;
285 if (oldValue
.equals(CVJ3
)) newValue
= CVJ4
;
286 if (oldValue
.equals(CVJ4
)) newValue
= CVJ1
;
289 if (oldValue
instanceof com
.sun
.star
.table
.CellOrientation
) {
290 com
.sun
.star
.table
.CellOrientation CO1
= com
.sun
.star
.table
.CellOrientation
.BOTTOMTOP
;
291 com
.sun
.star
.table
.CellOrientation CO2
= com
.sun
.star
.table
.CellOrientation
.STACKED
;
292 com
.sun
.star
.table
.CellOrientation CO3
= com
.sun
.star
.table
.CellOrientation
.STANDARD
;
293 com
.sun
.star
.table
.CellOrientation CO4
= com
.sun
.star
.table
.CellOrientation
.TOPBOTTOM
;
294 if (oldValue
.equals(CO1
)) newValue
= CO2
;
295 if (oldValue
.equals(CO2
)) newValue
= CO3
;
296 if (oldValue
.equals(CO3
)) newValue
= CO4
;
297 if (oldValue
.equals(CO4
)) newValue
= CO1
;
300 if (oldValue
instanceof com
.sun
.star
.util
.CellProtection
) {
301 com
.sun
.star
.util
.CellProtection CP
= new com
.sun
.star
.util
.CellProtection();
302 com
.sun
.star
.util
.CellProtection CPold
= (com
.sun
.star
.util
.CellProtection
) oldValue
;
303 CP
.IsFormulaHidden
= (! CPold
.IsFormulaHidden
);
304 CP
.IsHidden
= (! CPold
.IsHidden
);
305 CP
.IsLocked
= (! CPold
.IsLocked
);
306 CP
.IsPrintHidden
= (! CPold
.IsPrintHidden
);
310 if (oldValue
instanceof com
.sun
.star
.table
.TableBorder
) {
311 com
.sun
.star
.table
.TableBorder TBold
= (com
.sun
.star
.table
.TableBorder
) oldValue
;
312 com
.sun
.star
.table
.TableBorder TB
= new com
.sun
.star
.table
.TableBorder();
313 TB
.IsBottomLineValid
= (! TBold
.IsBottomLineValid
);
314 TB
.IsDistanceValid
= (! TBold
.IsDistanceValid
);
315 TB
.IsRightLineValid
= (! TBold
.IsRightLineValid
);
316 TB
.IsTopLineValid
= (! TBold
.IsTopLineValid
);
320 if (oldValue instanceof com.sun.star.awt.XBitmap) {
321 newValue = new BitmapLoader();
324 if (oldValue
instanceof com
.sun
.star
.drawing
.FillStyle
) {
325 com
.sun
.star
.drawing
.FillStyle FS1
= com
.sun
.star
.drawing
.FillStyle
.NONE
;
326 com
.sun
.star
.drawing
.FillStyle FS2
= com
.sun
.star
.drawing
.FillStyle
.SOLID
;
327 com
.sun
.star
.drawing
.FillStyle FS3
= com
.sun
.star
.drawing
.FillStyle
.GRADIENT
;
328 com
.sun
.star
.drawing
.FillStyle FS4
= com
.sun
.star
.drawing
.FillStyle
.HATCH
;
329 com
.sun
.star
.drawing
.FillStyle FS5
= com
.sun
.star
.drawing
.FillStyle
.BITMAP
;
330 if (oldValue
.equals(FS1
)) newValue
= FS2
;
331 if (oldValue
.equals(FS2
)) newValue
= FS3
;
332 if (oldValue
.equals(FS3
)) newValue
= FS4
;
333 if (oldValue
.equals(FS4
)) newValue
= FS5
;
334 if (oldValue
.equals(FS5
)) newValue
= FS1
;
337 if (oldValue
instanceof com
.sun
.star
.awt
.Gradient
){
338 com
.sun
.star
.awt
.Gradient _newValue
= (com
.sun
.star
.awt
.Gradient
)oldValue
;
339 _newValue
.Angle
+= 10;
340 _newValue
.Border
+= 1;
341 _newValue
.EndColor
+= 1000;
342 _newValue
.EndIntensity
-= 10;
343 _newValue
.StartColor
+= 500;
344 _newValue
.StartIntensity
+= 10;
345 _newValue
.StepCount
+= 50;
346 _newValue
.Style
= com
.sun
.star
.awt
.GradientStyle
.RADIAL
;
347 _newValue
.XOffset
+= 10;
348 _newValue
.YOffset
+= 10;
349 newValue
= _newValue
;
352 if (oldValue
instanceof com
.sun
.star
.text
.GraphicCrop
){
353 com
.sun
.star
.text
.GraphicCrop _newValue
= (com
.sun
.star
.text
.GraphicCrop
)oldValue
;
354 _newValue
.Bottom
+= 10;
355 _newValue
.Left
+= 10;
356 _newValue
.Right
+= 10;
358 newValue
= _newValue
;
361 if (oldValue
instanceof com
.sun
.star
.drawing
.BitmapMode
){
362 com
.sun
.star
.drawing
.BitmapMode bm1
= com
.sun
.star
.drawing
.BitmapMode
.NO_REPEAT
;
363 com
.sun
.star
.drawing
.BitmapMode bm2
= com
.sun
.star
.drawing
.BitmapMode
.REPEAT
;
364 com
.sun
.star
.drawing
.BitmapMode bm3
= com
.sun
.star
.drawing
.BitmapMode
.STRETCH
;
365 if (oldValue
.equals(bm1
)) newValue
= bm2
;
366 if (oldValue
.equals(bm2
)) newValue
= bm3
;
367 if (oldValue
.equals(bm3
)) newValue
= bm3
;
370 if (oldValue
instanceof com
.sun
.star
.drawing
.TextAdjust
){
371 com
.sun
.star
.drawing
.TextAdjust TA1
= com
.sun
.star
.drawing
.TextAdjust
.BLOCK
;
372 com
.sun
.star
.drawing
.TextAdjust TA2
= com
.sun
.star
.drawing
.TextAdjust
.CENTER
;
373 com
.sun
.star
.drawing
.TextAdjust TA3
= com
.sun
.star
.drawing
.TextAdjust
.LEFT
;
374 com
.sun
.star
.drawing
.TextAdjust TA4
= com
.sun
.star
.drawing
.TextAdjust
.RIGHT
;
375 com
.sun
.star
.drawing
.TextAdjust TA5
= com
.sun
.star
.drawing
.TextAdjust
.STRETCH
;
376 if (oldValue
.equals(TA1
)) newValue
= TA2
;
377 if (oldValue
.equals(TA2
)) newValue
= TA3
;
378 if (oldValue
.equals(TA3
)) newValue
= TA4
;
379 if (oldValue
.equals(TA4
)) newValue
= TA5
;
380 if (oldValue
.equals(TA5
)) newValue
= TA1
;
382 if (oldValue
instanceof com
.sun
.star
.drawing
.TextFitToSizeType
){
383 com
.sun
.star
.drawing
.TextFitToSizeType TF1
= com
.sun
.star
.drawing
.TextFitToSizeType
.ALLLINES
;
384 com
.sun
.star
.drawing
.TextFitToSizeType TF2
= com
.sun
.star
.drawing
.TextFitToSizeType
.NONE
;
385 com
.sun
.star
.drawing
.TextFitToSizeType TF3
= com
.sun
.star
.drawing
.TextFitToSizeType
.PROPORTIONAL
;
386 com
.sun
.star
.drawing
.TextFitToSizeType TF4
= com
.sun
.star
.drawing
.TextFitToSizeType
.RESIZEATTR
;
387 if (oldValue
.equals(TF1
)) newValue
= TF2
;
388 if (oldValue
.equals(TF2
)) newValue
= TF3
;
389 if (oldValue
.equals(TF3
)) newValue
= TF4
;
390 if (oldValue
.equals(TF4
)) newValue
= TF1
;
392 if (oldValue
instanceof com
.sun
.star
.drawing
.TextAnimationKind
){
393 com
.sun
.star
.drawing
.TextAnimationKind AK1
= com
.sun
.star
.drawing
.TextAnimationKind
.NONE
;
394 com
.sun
.star
.drawing
.TextAnimationKind AK2
= com
.sun
.star
.drawing
.TextAnimationKind
.SLIDE
;
395 com
.sun
.star
.drawing
.TextAnimationKind AK3
= com
.sun
.star
.drawing
.TextAnimationKind
.SCROLL
;
396 com
.sun
.star
.drawing
.TextAnimationKind AK4
= com
.sun
.star
.drawing
.TextAnimationKind
.BLINK
;
397 com
.sun
.star
.drawing
.TextAnimationKind AK5
= com
.sun
.star
.drawing
.TextAnimationKind
.ALTERNATE
;
399 if (oldValue
.equals(AK1
)) newValue
= AK2
;
400 if (oldValue
.equals(AK2
)) newValue
= AK3
;
401 if (oldValue
.equals(AK3
)) newValue
= AK4
;
402 if (oldValue
.equals(AK4
)) newValue
= AK5
;
403 if (oldValue
.equals(AK5
)) newValue
= AK1
;
405 if (oldValue
instanceof com
.sun
.star
.drawing
.TextAnimationDirection
){
406 com
.sun
.star
.drawing
.TextAnimationDirection AD1
= com
.sun
.star
.drawing
.TextAnimationDirection
.LEFT
;
407 com
.sun
.star
.drawing
.TextAnimationDirection AD2
= com
.sun
.star
.drawing
.TextAnimationDirection
.RIGHT
;
408 com
.sun
.star
.drawing
.TextAnimationDirection AD3
= com
.sun
.star
.drawing
.TextAnimationDirection
.DOWN
;
409 com
.sun
.star
.drawing
.TextAnimationDirection AD4
= com
.sun
.star
.drawing
.TextAnimationDirection
.UP
;
410 if (oldValue
.equals(AD1
)) newValue
= AD2
;
411 if (oldValue
.equals(AD2
)) newValue
= AD3
;
412 if (oldValue
.equals(AD3
)) newValue
= AD4
;
413 if (oldValue
.equals(AD4
)) newValue
= AD1
;
415 if (oldValue
instanceof com
.sun
.star
.drawing
.LineStyle
){
416 com
.sun
.star
.drawing
.LineStyle LS1
= com
.sun
.star
.drawing
.LineStyle
.NONE
;
417 com
.sun
.star
.drawing
.LineStyle LS2
= com
.sun
.star
.drawing
.LineStyle
.DASH
;
418 com
.sun
.star
.drawing
.LineStyle LS3
= com
.sun
.star
.drawing
.LineStyle
.SOLID
;
419 if (oldValue
.equals(LS1
)) newValue
= LS2
;
420 if (oldValue
.equals(LS2
)) newValue
= LS3
;
421 if (oldValue
.equals(LS3
)) newValue
= LS1
;
423 if (oldValue
instanceof com
.sun
.star
.drawing
.LineJoint
){
424 com
.sun
.star
.drawing
.LineJoint LJ1
= com
.sun
.star
.drawing
.LineJoint
.BEVEL
;
425 com
.sun
.star
.drawing
.LineJoint LJ2
= com
.sun
.star
.drawing
.LineJoint
.MIDDLE
;
426 com
.sun
.star
.drawing
.LineJoint LJ3
= com
.sun
.star
.drawing
.LineJoint
.MITER
;
427 com
.sun
.star
.drawing
.LineJoint LJ4
= com
.sun
.star
.drawing
.LineJoint
.NONE
;
428 com
.sun
.star
.drawing
.LineJoint LJ5
= com
.sun
.star
.drawing
.LineJoint
.ROUND
;
429 if (oldValue
.equals(LJ1
)) newValue
= LJ2
;
430 if (oldValue
.equals(LJ2
)) newValue
= LJ3
;
431 if (oldValue
.equals(LJ3
)) newValue
= LJ4
;
432 if (oldValue
.equals(LJ4
)) newValue
= LJ5
;
433 if (oldValue
.equals(LJ5
)) newValue
= LJ1
;
435 if (oldValue
instanceof com
.sun
.star
.drawing
.LineDash
){
436 com
.sun
.star
.drawing
.LineDash _newValue
= (com
.sun
.star
.drawing
.LineDash
)oldValue
;
437 _newValue
.Dashes
+= 1;
438 _newValue
.DashLen
+= 10;
439 _newValue
.Distance
+= 20;
440 _newValue
.DotLen
+= 10;
441 _newValue
.Dots
+= 10;
442 _newValue
.Style
= com
.sun
.star
.drawing
.DashStyle
.RECT
;
443 newValue
= _newValue
;
445 if (oldValue
instanceof com
.sun
.star
.drawing
.Hatch
){
446 com
.sun
.star
.drawing
.Hatch _newValue
= (com
.sun
.star
.drawing
.Hatch
) oldValue
;
447 _newValue
.Angle
+= 10;
448 _newValue
.Color
+= 1000;
449 _newValue
.Distance
+= 10;
450 _newValue
.Style
= com
.sun
.star
.drawing
.HatchStyle
.DOUBLE
;
452 if (oldValue
instanceof com
.sun
.star
.drawing
.RectanglePoint
){
453 com
.sun
.star
.drawing
.RectanglePoint RP1
= com
.sun
.star
.drawing
.RectanglePoint
.LEFT_BOTTOM
;
454 com
.sun
.star
.drawing
.RectanglePoint RP2
= com
.sun
.star
.drawing
.RectanglePoint
.LEFT_MIDDLE
;
455 com
.sun
.star
.drawing
.RectanglePoint RP3
= com
.sun
.star
.drawing
.RectanglePoint
.LEFT_TOP
;
456 com
.sun
.star
.drawing
.RectanglePoint RP4
= com
.sun
.star
.drawing
.RectanglePoint
.MIDDLE_BOTTOM
;
457 com
.sun
.star
.drawing
.RectanglePoint RP5
= com
.sun
.star
.drawing
.RectanglePoint
.MIDDLE_MIDDLE
;
458 com
.sun
.star
.drawing
.RectanglePoint RP6
= com
.sun
.star
.drawing
.RectanglePoint
.MIDDLE_TOP
;
459 com
.sun
.star
.drawing
.RectanglePoint RP7
= com
.sun
.star
.drawing
.RectanglePoint
.RIGHT_BOTTOM
;
460 com
.sun
.star
.drawing
.RectanglePoint RP8
= com
.sun
.star
.drawing
.RectanglePoint
.RIGHT_MIDDLE
;
461 com
.sun
.star
.drawing
.RectanglePoint RP9
= com
.sun
.star
.drawing
.RectanglePoint
.RIGHT_TOP
;
463 if (oldValue
.equals(RP1
)) newValue
= RP2
;
464 if (oldValue
.equals(RP2
)) newValue
= RP3
;
465 if (oldValue
.equals(RP3
)) newValue
= RP4
;
466 if (oldValue
.equals(RP4
)) newValue
= RP5
;
467 if (oldValue
.equals(RP5
)) newValue
= RP6
;
468 if (oldValue
.equals(RP6
)) newValue
= RP7
;
469 if (oldValue
.equals(RP7
)) newValue
= RP8
;
470 if (oldValue
.equals(RP8
)) newValue
= RP9
;
471 if (oldValue
.equals(RP9
)) newValue
= RP1
;
474 if (oldValue
instanceof com
.sun
.star
.chart
.ChartErrorCategory
){
475 com
.sun
.star
.chart
.ChartErrorCategory CC1
= com
.sun
.star
.chart
.ChartErrorCategory
.CONSTANT_VALUE
;
476 com
.sun
.star
.chart
.ChartErrorCategory CC2
= com
.sun
.star
.chart
.ChartErrorCategory
.ERROR_MARGIN
;
477 com
.sun
.star
.chart
.ChartErrorCategory CC3
= com
.sun
.star
.chart
.ChartErrorCategory
.NONE
;
478 com
.sun
.star
.chart
.ChartErrorCategory CC4
= com
.sun
.star
.chart
.ChartErrorCategory
.PERCENT
;
479 com
.sun
.star
.chart
.ChartErrorCategory CC5
= com
.sun
.star
.chart
.ChartErrorCategory
.STANDARD_DEVIATION
;
480 com
.sun
.star
.chart
.ChartErrorCategory CC6
= com
.sun
.star
.chart
.ChartErrorCategory
.VARIANCE
;
481 if (oldValue
.equals(CC1
)) newValue
= CC2
;
482 if (oldValue
.equals(CC2
)) newValue
= CC3
;
483 if (oldValue
.equals(CC3
)) newValue
= CC4
;
484 if (oldValue
.equals(CC4
)) newValue
= CC5
;
485 if (oldValue
.equals(CC5
)) newValue
= CC6
;
486 if (oldValue
.equals(CC6
)) newValue
= CC1
;
488 if (oldValue
instanceof com
.sun
.star
.chart
.ChartErrorIndicatorType
){
489 com
.sun
.star
.chart
.ChartErrorIndicatorType IT1
= com
.sun
.star
.chart
.ChartErrorIndicatorType
.LOWER
;
490 com
.sun
.star
.chart
.ChartErrorIndicatorType IT2
= com
.sun
.star
.chart
.ChartErrorIndicatorType
.NONE
;
491 com
.sun
.star
.chart
.ChartErrorIndicatorType IT3
= com
.sun
.star
.chart
.ChartErrorIndicatorType
.TOP_AND_BOTTOM
;
492 com
.sun
.star
.chart
.ChartErrorIndicatorType IT4
= com
.sun
.star
.chart
.ChartErrorIndicatorType
.UPPER
;
493 if (oldValue
.equals(IT1
)) newValue
= IT2
;
494 if (oldValue
.equals(IT2
)) newValue
= IT3
;
495 if (oldValue
.equals(IT3
)) newValue
= IT4
;
496 if (oldValue
.equals(IT4
)) newValue
= IT1
;
498 if (oldValue
instanceof com
.sun
.star
.chart
.ChartRegressionCurveType
){
499 com
.sun
.star
.chart
.ChartRegressionCurveType CT1
= com
.sun
.star
.chart
.ChartRegressionCurveType
.EXPONENTIAL
;
500 com
.sun
.star
.chart
.ChartRegressionCurveType CT2
= com
.sun
.star
.chart
.ChartRegressionCurveType
.LINEAR
;
501 com
.sun
.star
.chart
.ChartRegressionCurveType CT3
= com
.sun
.star
.chart
.ChartRegressionCurveType
.LOGARITHM
;
502 com
.sun
.star
.chart
.ChartRegressionCurveType CT4
= com
.sun
.star
.chart
.ChartRegressionCurveType
.NONE
;
503 com
.sun
.star
.chart
.ChartRegressionCurveType CT5
= com
.sun
.star
.chart
.ChartRegressionCurveType
.POLYNOMIAL
;
504 com
.sun
.star
.chart
.ChartRegressionCurveType CT6
= com
.sun
.star
.chart
.ChartRegressionCurveType
.POWER
;
505 if (oldValue
.equals(CT1
)) newValue
= CT2
;
506 if (oldValue
.equals(CT2
)) newValue
= CT3
;
507 if (oldValue
.equals(CT3
)) newValue
= CT4
;
508 if (oldValue
.equals(CT4
)) newValue
= CT5
;
509 if (oldValue
.equals(CT5
)) newValue
= CT6
;
510 if (oldValue
.equals(CT6
)) newValue
= CT1
;
513 if (oldValue
instanceof com
.sun
.star
.chart
.ChartDataRowSource
){
514 com
.sun
.star
.chart
.ChartDataRowSource RS1
= com
.sun
.star
.chart
.ChartDataRowSource
.COLUMNS
;
515 com
.sun
.star
.chart
.ChartDataRowSource RS2
= com
.sun
.star
.chart
.ChartDataRowSource
.ROWS
;
516 if (oldValue
.equals(RS1
)) newValue
= RS2
;
517 if (oldValue
.equals(RS2
)) newValue
= RS1
;
519 if (oldValue
instanceof com
.sun
.star
.awt
.FontDescriptor
){
520 com
.sun
.star
.awt
.FontDescriptor _newValue
= (com
.sun
.star
.awt
.FontDescriptor
)oldValue
;
521 _newValue
.CharacterWidth
+= 5;
522 _newValue
.CharSet
= com
.sun
.star
.awt
.CharSet
.ANSI
;
523 _newValue
.Family
= com
.sun
.star
.awt
.FontFamily
.DECORATIVE
;
524 _newValue
.Height
+= 2;
525 _newValue
.Kerning
= !_newValue
.Kerning
;
526 _newValue
.Name
= "Courier";
527 _newValue
.Orientation
+= 45;
528 _newValue
.Pitch
= com
.sun
.star
.awt
.FontPitch
.VARIABLE
;
529 _newValue
.Slant
= com
.sun
.star
.awt
.FontSlant
.REVERSE_ITALIC
;
530 _newValue
.Strikeout
= com
.sun
.star
.awt
.FontStrikeout
.X
;
531 _newValue
.StyleName
= "Bold";
532 _newValue
.Type
= com
.sun
.star
.awt
.FontType
.SCALABLE
;
533 _newValue
.Underline
= com
.sun
.star
.awt
.FontUnderline
.BOLDDASHDOTDOT
;
534 _newValue
.Weight
+= 5;
535 _newValue
.Width
+= 6;
536 _newValue
.WordLineMode
= !_newValue
.WordLineMode
;
538 newValue
= _newValue
;
540 if (oldValue
instanceof com
.sun
.star
.form
.NavigationBarMode
){
541 com
.sun
.star
.form
.NavigationBarMode BM1
= com
.sun
.star
.form
.NavigationBarMode
.CURRENT
;
542 com
.sun
.star
.form
.NavigationBarMode BM2
= com
.sun
.star
.form
.NavigationBarMode
.NONE
;
543 com
.sun
.star
.form
.NavigationBarMode BM3
= com
.sun
.star
.form
.NavigationBarMode
.PARENT
;
544 if (oldValue
.equals(BM1
)) newValue
= BM2
;
545 if (oldValue
.equals(BM2
)) newValue
= BM3
;
546 if (oldValue
.equals(BM3
)) newValue
= BM1
;
548 if (oldValue
instanceof com
.sun
.star
.form
.FormSubmitEncoding
){
549 com
.sun
.star
.form
.FormSubmitEncoding SE1
= com
.sun
.star
.form
.FormSubmitEncoding
.MULTIPART
;
550 com
.sun
.star
.form
.FormSubmitEncoding SE2
= com
.sun
.star
.form
.FormSubmitEncoding
.TEXT
;
551 com
.sun
.star
.form
.FormSubmitEncoding SE3
= com
.sun
.star
.form
.FormSubmitEncoding
.URL
;
552 if (oldValue
.equals(SE1
)) newValue
= SE2
;
553 if (oldValue
.equals(SE2
)) newValue
= SE3
;
554 if (oldValue
.equals(SE3
)) newValue
= SE1
;
556 if (oldValue
instanceof com
.sun
.star
.form
.FormSubmitMethod
){
557 com
.sun
.star
.form
.FormSubmitMethod FM1
= com
.sun
.star
.form
.FormSubmitMethod
.GET
;
558 com
.sun
.star
.form
.FormSubmitMethod FM2
= com
.sun
.star
.form
.FormSubmitMethod
.POST
;
559 if (oldValue
.equals(FM1
)) newValue
= FM2
;
560 if (oldValue
.equals(FM2
)) newValue
= FM1
;
563 if (oldValue
instanceof com
.sun
.star
.text
.SectionFileLink
){
564 com
.sun
.star
.text
.SectionFileLink _newValue
=
565 new com
.sun
.star
.text
.SectionFileLink();
567 _newValue
.FileURL
= util
.utils
.getFullTestURL("SwXTextSection.sdw");
571 if (oldValue
instanceof com
.sun
.star
.table
.BorderLine
){
572 com
.sun
.star
.table
.BorderLine _newValue
= (com
.sun
.star
.table
.BorderLine
)oldValue
;
573 _newValue
.Color
+= 2;
574 _newValue
.InnerLineWidth
+= 2;
575 _newValue
.LineDistance
+= 2;
576 _newValue
.OuterLineWidth
+= 3;
580 if (oldValue
instanceof com
.sun
.star
.text
.XTextColumns
){
581 com
.sun
.star
.text
.XTextColumns _newValue
= (com
.sun
.star
.text
.XTextColumns
)oldValue
;
582 _newValue
.setColumnCount((short)1);
586 if (oldValue
instanceof com
.sun
.star
.form
.FormButtonType
){
587 com
.sun
.star
.form
.FormButtonType BT1
= com
.sun
.star
.form
.FormButtonType
.PUSH
;
588 com
.sun
.star
.form
.FormButtonType BT2
= com
.sun
.star
.form
.FormButtonType
.RESET
;
589 com
.sun
.star
.form
.FormButtonType BT3
= com
.sun
.star
.form
.FormButtonType
.SUBMIT
;
590 com
.sun
.star
.form
.FormButtonType BT4
= com
.sun
.star
.form
.FormButtonType
.URL
;
592 if (oldValue
.equals(BT1
)) newValue
= BT2
;
593 if (oldValue
.equals(BT2
)) newValue
= BT3
;
594 if (oldValue
.equals(BT3
)) newValue
= BT4
;
595 if (oldValue
.equals(BT4
)) newValue
= BT1
;
598 if (oldValue
instanceof com
.sun
.star
.form
.ListSourceType
){
599 com
.sun
.star
.form
.ListSourceType ST1
= com
.sun
.star
.form
.ListSourceType
.QUERY
;
600 com
.sun
.star
.form
.ListSourceType ST2
= com
.sun
.star
.form
.ListSourceType
.SQL
;
601 com
.sun
.star
.form
.ListSourceType ST3
= com
.sun
.star
.form
.ListSourceType
.SQLPASSTHROUGH
;
602 com
.sun
.star
.form
.ListSourceType ST4
= com
.sun
.star
.form
.ListSourceType
.TABLE
;
603 com
.sun
.star
.form
.ListSourceType ST5
= com
.sun
.star
.form
.ListSourceType
.TABLEFIELDS
;
604 com
.sun
.star
.form
.ListSourceType ST6
= com
.sun
.star
.form
.ListSourceType
.VALUELIST
;
605 if (oldValue
.equals(ST1
)) newValue
= ST2
;
606 if (oldValue
.equals(ST2
)) newValue
= ST3
;
607 if (oldValue
.equals(ST3
)) newValue
= ST4
;
608 if (oldValue
.equals(ST4
)) newValue
= ST5
;
609 if (oldValue
.equals(ST5
)) newValue
= ST6
;
610 if (oldValue
.equals(ST6
)) newValue
= ST1
;
612 if (oldValue
instanceof com
.sun
.star
.table
.BorderLine
){
613 com
.sun
.star
.table
.BorderLine _newValue
= (com
.sun
.star
.table
.BorderLine
)oldValue
;
614 _newValue
.Color
+= 1000;
615 _newValue
.InnerLineWidth
+= 2;
616 _newValue
.LineDistance
+=3;
617 _newValue
.OuterLineWidth
+= 3;
618 newValue
= _newValue
;
620 if (oldValue
instanceof com
.sun
.star
.sheet
.DataPilotFieldOrientation
) {
621 com
.sun
.star
.sheet
.DataPilotFieldOrientation FO1
= com
.sun
.star
.sheet
.DataPilotFieldOrientation
.PAGE
;
622 com
.sun
.star
.sheet
.DataPilotFieldOrientation FO2
= com
.sun
.star
.sheet
.DataPilotFieldOrientation
.COLUMN
;
623 com
.sun
.star
.sheet
.DataPilotFieldOrientation FO3
= com
.sun
.star
.sheet
.DataPilotFieldOrientation
.DATA
;
624 com
.sun
.star
.sheet
.DataPilotFieldOrientation FO4
= com
.sun
.star
.sheet
.DataPilotFieldOrientation
.HIDDEN
;
625 com
.sun
.star
.sheet
.DataPilotFieldOrientation FO5
= com
.sun
.star
.sheet
.DataPilotFieldOrientation
.ROW
;
626 if (oldValue
.equals(FO1
)) newValue
= FO2
;
627 if (oldValue
.equals(FO2
)) newValue
= FO3
;
628 if (oldValue
.equals(FO3
)) newValue
= FO4
;
629 if (oldValue
.equals(FO4
)) newValue
= FO5
;
630 if (oldValue
.equals(FO5
)) newValue
= FO1
;
632 if (oldValue
instanceof com
.sun
.star
.sheet
.GeneralFunction
) {
633 com
.sun
.star
.sheet
.GeneralFunction GF1
= com
.sun
.star
.sheet
.GeneralFunction
.NONE
;
634 com
.sun
.star
.sheet
.GeneralFunction GF2
= com
.sun
.star
.sheet
.GeneralFunction
.AVERAGE
;
635 com
.sun
.star
.sheet
.GeneralFunction GF3
= com
.sun
.star
.sheet
.GeneralFunction
.COUNT
;
636 com
.sun
.star
.sheet
.GeneralFunction GF4
= com
.sun
.star
.sheet
.GeneralFunction
.COUNTNUMS
;
637 com
.sun
.star
.sheet
.GeneralFunction GF5
= com
.sun
.star
.sheet
.GeneralFunction
.MAX
;
638 com
.sun
.star
.sheet
.GeneralFunction GF6
= com
.sun
.star
.sheet
.GeneralFunction
.MIN
;
639 com
.sun
.star
.sheet
.GeneralFunction GF7
= com
.sun
.star
.sheet
.GeneralFunction
.AUTO
;
640 com
.sun
.star
.sheet
.GeneralFunction GF8
= com
.sun
.star
.sheet
.GeneralFunction
.PRODUCT
;
641 com
.sun
.star
.sheet
.GeneralFunction GF9
= com
.sun
.star
.sheet
.GeneralFunction
.STDEV
;
642 com
.sun
.star
.sheet
.GeneralFunction GF10
= com
.sun
.star
.sheet
.GeneralFunction
.STDEVP
;
643 com
.sun
.star
.sheet
.GeneralFunction GF11
= com
.sun
.star
.sheet
.GeneralFunction
.SUM
;
644 com
.sun
.star
.sheet
.GeneralFunction GF12
= com
.sun
.star
.sheet
.GeneralFunction
.VAR
;
645 com
.sun
.star
.sheet
.GeneralFunction GF13
= com
.sun
.star
.sheet
.GeneralFunction
.VARP
;
647 if (oldValue
.equals(GF1
)) newValue
= GF2
;
648 if (oldValue
.equals(GF2
)) newValue
= GF3
;
649 if (oldValue
.equals(GF3
)) newValue
= GF4
;
650 if (oldValue
.equals(GF4
)) newValue
= GF5
;
651 if (oldValue
.equals(GF5
)) newValue
= GF6
;
652 if (oldValue
.equals(GF6
)) newValue
= GF7
;
653 if (oldValue
.equals(GF7
)) newValue
= GF8
;
654 if (oldValue
.equals(GF8
)) newValue
= GF9
;
655 if (oldValue
.equals(GF9
)) newValue
= GF10
;
656 if (oldValue
.equals(GF10
)) newValue
= GF11
;
657 if (oldValue
.equals(GF11
)) newValue
= GF12
;
658 if (oldValue
.equals(GF12
)) newValue
= GF13
;
659 if (oldValue
.equals(GF13
)) newValue
= GF1
;
662 if (oldValue
instanceof com
.sun
.star
.table
.CellAddress
){
663 com
.sun
.star
.table
.CellAddress _newValue
= (com
.sun
.star
.table
.CellAddress
)oldValue
;
664 _newValue
.Column
+= 1;
666 newValue
= _newValue
;
669 if (oldValue
instanceof com
.sun
.star
.table
.TableOrientation
){
670 com
.sun
.star
.table
.TableOrientation TO1
= com
.sun
.star
.table
.TableOrientation
.COLUMNS
;
671 com
.sun
.star
.table
.TableOrientation TO2
= com
.sun
.star
.table
.TableOrientation
.ROWS
;
672 if (oldValue
.equals(TO1
)) newValue
= TO2
; else newValue
= TO1
;
675 if (oldValue
instanceof com
.sun
.star
.sheet
.DataImportMode
){
676 com
.sun
.star
.sheet
.DataImportMode DIM1
= com
.sun
.star
.sheet
.DataImportMode
.NONE
;
677 com
.sun
.star
.sheet
.DataImportMode DIM2
= com
.sun
.star
.sheet
.DataImportMode
.QUERY
;
678 com
.sun
.star
.sheet
.DataImportMode DIM3
= com
.sun
.star
.sheet
.DataImportMode
.SQL
;
679 com
.sun
.star
.sheet
.DataImportMode DIM4
= com
.sun
.star
.sheet
.DataImportMode
.TABLE
;
681 if (oldValue
.equals(DIM1
)) newValue
= DIM2
;
682 if (oldValue
.equals(DIM2
)) newValue
= DIM3
;
683 if (oldValue
.equals(DIM3
)) newValue
= DIM4
;
684 if (oldValue
.equals(DIM4
)) newValue
= DIM1
;
688 // if (oldValue instanceof com.sun.star.text.TableColumnSeparator[]){
689 // com.sun.star.text.TableColumnSeparator[] _newValue = (com.sun.star.text.TableColumnSeparator[]) oldValue;
690 // com.sun.star.text.TableColumnSeparator sep = new com.sun.star.text.TableColumnSeparator();
691 // sep.IsVisible = ! _newValue[0].IsVisible;
692 // _newValue[0] = sep;
693 // newValue = _newValue;
696 if (oldValue
instanceof com
.sun
.star
.style
.BreakType
){
697 com
.sun
.star
.style
.BreakType BT1
= com
.sun
.star
.style
.BreakType
.COLUMN_AFTER
;
698 com
.sun
.star
.style
.BreakType BT2
= com
.sun
.star
.style
.BreakType
.COLUMN_BEFORE
;
699 com
.sun
.star
.style
.BreakType BT3
= com
.sun
.star
.style
.BreakType
.COLUMN_BOTH
;
700 com
.sun
.star
.style
.BreakType BT4
= com
.sun
.star
.style
.BreakType
.PAGE_AFTER
;
701 com
.sun
.star
.style
.BreakType BT5
= com
.sun
.star
.style
.BreakType
.PAGE_BEFORE
;
702 com
.sun
.star
.style
.BreakType BT6
= com
.sun
.star
.style
.BreakType
.PAGE_BOTH
;
703 com
.sun
.star
.style
.BreakType BT7
= com
.sun
.star
.style
.BreakType
.NONE
;
704 if (oldValue
.equals(BT1
)) newValue
= BT2
;
705 if (oldValue
.equals(BT2
)) newValue
= BT3
;
706 if (oldValue
.equals(BT3
)) newValue
= BT4
;
707 if (oldValue
.equals(BT4
)) newValue
= BT5
;
708 if (oldValue
.equals(BT6
)) newValue
= BT6
;
709 if (oldValue
.equals(BT6
)) newValue
= BT7
;
710 if (oldValue
.equals(BT7
)) newValue
= BT1
;
712 if (oldValue
instanceof PropertyValue
){
713 PropertyValue newVal
= new PropertyValue();
714 newVal
.Name
= ((PropertyValue
)oldValue
).Name
;
715 newVal
.Value
= changePValue(((PropertyValue
)oldValue
).Value
);
718 if (oldValue
instanceof com
.sun
.star
.sheet
.ValidationAlertStyle
){
719 com
.sun
.star
.sheet
.ValidationAlertStyle VAS1
= com
.sun
.star
.sheet
.ValidationAlertStyle
.INFO
;
720 com
.sun
.star
.sheet
.ValidationAlertStyle VAS2
= com
.sun
.star
.sheet
.ValidationAlertStyle
.MACRO
;
721 com
.sun
.star
.sheet
.ValidationAlertStyle VAS3
= com
.sun
.star
.sheet
.ValidationAlertStyle
.STOP
;
722 com
.sun
.star
.sheet
.ValidationAlertStyle VAS4
= com
.sun
.star
.sheet
.ValidationAlertStyle
.WARNING
;
724 if (oldValue
.equals(VAS1
)) newValue
= VAS2
;
725 if (oldValue
.equals(VAS2
)) newValue
= VAS3
;
726 if (oldValue
.equals(VAS3
)) newValue
= VAS4
;
727 if (oldValue
.equals(VAS4
)) newValue
= VAS1
;
730 if (oldValue
instanceof com
.sun
.star
.sheet
.ValidationType
){
731 com
.sun
.star
.sheet
.ValidationType VT1
= com
.sun
.star
.sheet
.ValidationType
.ANY
;
732 com
.sun
.star
.sheet
.ValidationType VT2
= com
.sun
.star
.sheet
.ValidationType
.CUSTOM
;
733 com
.sun
.star
.sheet
.ValidationType VT3
= com
.sun
.star
.sheet
.ValidationType
.DATE
;
734 com
.sun
.star
.sheet
.ValidationType VT4
= com
.sun
.star
.sheet
.ValidationType
.DECIMAL
;
735 com
.sun
.star
.sheet
.ValidationType VT5
= com
.sun
.star
.sheet
.ValidationType
.LIST
;
736 com
.sun
.star
.sheet
.ValidationType VT6
= com
.sun
.star
.sheet
.ValidationType
.TEXT_LEN
;
737 com
.sun
.star
.sheet
.ValidationType VT7
= com
.sun
.star
.sheet
.ValidationType
.TIME
;
738 com
.sun
.star
.sheet
.ValidationType VT8
= com
.sun
.star
.sheet
.ValidationType
.WHOLE
;
740 if (oldValue
.equals(VT1
)) newValue
= VT2
;
741 if (oldValue
.equals(VT2
)) newValue
= VT3
;
742 if (oldValue
.equals(VT3
)) newValue
= VT4
;
743 if (oldValue
.equals(VT4
)) newValue
= VT5
;
744 if (oldValue
.equals(VT5
)) newValue
= VT6
;
745 if (oldValue
.equals(VT6
)) newValue
= VT7
;
746 if (oldValue
.equals(VT7
)) newValue
= VT8
;
747 if (oldValue
.equals(VT8
)) newValue
= VT1
;
750 if (oldValue
instanceof com
.sun
.star
.text
.WritingMode
){
751 if (oldValue
.equals(com
.sun
.star
.text
.WritingMode
.LR_TB
)) {
752 newValue
= com
.sun
.star
.text
.WritingMode
.TB_RL
;
754 newValue
= com
.sun
.star
.text
.WritingMode
.LR_TB
;
757 if (oldValue
instanceof com
.sun
.star
.uno
.Enum
) {
758 // universal changer for Enumerations
760 Class enumClass
= oldValue
.getClass() ;
761 Field
[] flds
= enumClass
.getFields() ;
765 for (int i
= 0; i
< flds
.length
; i
++) {
766 if (Enum
.class.equals(flds
[i
].getType().getSuperclass())) {
768 Enum value
= (Enum
) flds
[i
].get(null) ;
769 if (newValue
== null && !value
.equals(oldValue
)) {
775 } catch (Exception e
) {
776 System
.err
.println("Exception occured while changing Enumeration value:") ;
777 e
.printStackTrace(System
.err
) ;
779 if (newValue
== null) newValue
= oldValue
;
782 if (oldValue
instanceof com
.sun
.star
.style
.TabStop
[]){
783 com
.sun
.star
.style
.TabStop
[] _newValue
= (com
.sun
.star
.style
.TabStop
[]) oldValue
;
784 if (_newValue
.length
== 0) {
785 _newValue
= new com
.sun
.star
.style
.TabStop
[1];
787 com
.sun
.star
.style
.TabStop sep
= new com
.sun
.star
.style
.TabStop();
790 newValue
= _newValue
;
792 if (oldValue
instanceof short[]){
793 short[] oldArr
= (short[])oldValue
;
794 int len
= oldArr
.length
;
795 short[] newArr
= new short[len
+ 1];
796 for (int i
= 0; i
< len
; i
++) {
797 newArr
[i
] = (short)(oldArr
[i
] + 1);
802 if (oldValue
instanceof String
[]){
803 String
[] oldArr
= (String
[])oldValue
;
804 int len
= oldArr
.length
;
805 String
[] newArr
= new String
[len
+ 1];
806 for (int i
= 0; i
< len
; i
++) {
807 newArr
[i
] = "_" + oldArr
[i
];
809 newArr
[len
] = "_dummy";
812 if (oldValue
instanceof PropertyValue
){
813 PropertyValue newVal
= new PropertyValue();
814 newVal
.Name
= ((PropertyValue
)oldValue
).Name
;
815 newVal
.Value
= changePValue(((PropertyValue
)oldValue
).Value
);
818 if (oldValue
instanceof com
.sun
.star
.util
.DateTime
) {
819 com
.sun
.star
.util
.DateTime oldDT
= (com
.sun
.star
.util
.DateTime
) oldValue
;
820 com
.sun
.star
.util
.DateTime newDT
= new com
.sun
.star
.util
.DateTime();
821 newDT
.Day
= (short) (oldDT
.Day
+(short) 1);
822 newDT
.Hours
= (short) (oldDT
.Hours
+(short) 1);
825 if (oldValue
instanceof com
.sun
.star
.text
.TableColumnSeparator
) {
826 com
.sun
.star
.text
.TableColumnSeparator oldTCS
= (com
.sun
.star
.text
.TableColumnSeparator
) oldValue
;
827 com
.sun
.star
.text
.TableColumnSeparator newTCS
= new com
.sun
.star
.text
.TableColumnSeparator();
828 newTCS
.IsVisible
= !(oldTCS
.IsVisible
);
829 newTCS
.Position
= (short) (oldTCS
.Position
+(short) 1);
832 if (oldValue
instanceof com
.sun
.star
.drawing
.HomogenMatrix3
) {
833 com
.sun
.star
.drawing
.HomogenMatrix3 oldHM
= (com
.sun
.star
.drawing
.HomogenMatrix3
) oldValue
;
834 com
.sun
.star
.drawing
.HomogenMatrix3 newHM
= new com
.sun
.star
.drawing
.HomogenMatrix3();
835 newHM
.Line1
.Column1
= oldHM
.Line1
.Column1
+1;
836 newHM
.Line2
.Column2
= oldHM
.Line2
.Column2
+1;
837 newHM
.Line3
.Column3
= oldHM
.Line3
.Column3
+1;
841 if (oldValue
instanceof com
.sun
.star
.drawing
.PolyPolygonBezierCoords
) {
842 com
.sun
.star
.drawing
.PolyPolygonBezierCoords oldPPC
= (com
.sun
.star
.drawing
.PolyPolygonBezierCoords
) oldValue
;
843 com
.sun
.star
.drawing
.PolyPolygonBezierCoords newPPC
= new com
.sun
.star
.drawing
.PolyPolygonBezierCoords();
844 newPPC
.Coordinates
= oldPPC
.Coordinates
;
845 newPPC
.Flags
= oldPPC
.Flags
;
846 PolygonFlags
[][] fArray
= new PolygonFlags
[1][1];
847 PolygonFlags
[] flags
= new PolygonFlags
[1];
848 flags
[0] = PolygonFlags
.NORMAL
;
850 Point
[][] pArray
= new Point
[1][1];
851 Point
[] points
= new Point
[1];
852 Point aPoint
= new Point();
857 if ( oldPPC
.Coordinates
.length
== 0 ) {
858 newPPC
.Coordinates
= pArray
;
859 newPPC
.Flags
= fArray
;
861 if ( oldPPC
.Coordinates
[0].length
== 0 ) {
862 newPPC
.Coordinates
= pArray
;
863 newPPC
.Flags
= fArray
;
865 newPPC
.Coordinates
[0][0].X
= oldPPC
.Coordinates
[0][0].X
+1;
866 newPPC
.Coordinates
[0][0].Y
= oldPPC
.Coordinates
[0][0].Y
+1;
871 if (oldValue
.getClass().isArray()) {
872 // changer for arrays : changes all elements
873 Class arrType
= oldValue
.getClass().getComponentType() ;
874 newValue
= Array
.newInstance(arrType
, Array
.getLength(oldValue
)) ;
875 for (int i
= 0; i
< Array
.getLength(newValue
); i
++) {
876 if (!arrType
.isPrimitive()) {
877 Object elem
= changePValue(Array
.get(oldValue
, i
)) ;
878 Array
.set(newValue
, i
, elem
);
880 if (Boolean
.TYPE
.equals(arrType
)) {
881 Array
.setBoolean(newValue
, i
, !Array
.getBoolean(oldValue
, i
));
883 if (Byte
.TYPE
.equals(arrType
)) {
884 Array
.setByte(newValue
, i
,
885 (byte) (Array
.getByte(oldValue
, i
) + 1));
887 if (Character
.TYPE
.equals(arrType
)) {
888 Array
.setChar(newValue
, i
,
889 (char) (Array
.getChar(oldValue
, i
) + 1));
891 if (Double
.TYPE
.equals(arrType
)) {
892 Array
.setDouble(newValue
, i
, Array
.getDouble(oldValue
, i
) + 1);
894 if (Float
.TYPE
.equals(arrType
)) {
895 Array
.setFloat(newValue
, i
, Array
.getFloat(oldValue
, i
) + 1);
897 if (Integer
.TYPE
.equals(arrType
)) {
898 Array
.setInt(newValue
, i
, Array
.getInt(oldValue
, i
) + 1);
900 if (Long
.TYPE
.equals(arrType
)) {
901 Array
.setLong(newValue
, i
, Array
.getLong(oldValue
, i
) + 1);
903 if (Short
.TYPE
.equals(arrType
)) {
904 Array
.setShort(newValue
, i
,
905 (short) (Array
.getShort(oldValue
, i
) + 1));
910 if (isStructure(oldValue
)) {
911 // universal changer for structures
912 Class clazz
= oldValue
.getClass() ;
914 newValue
= clazz
.newInstance() ;
915 Field
[] fields
= clazz
.getFields();
916 for (int i
= 0; i
< fields
.length
; i
++) {
917 if ((fields
[i
].getModifiers() & Modifier
.PUBLIC
) != 0) {
918 Class fType
= fields
[i
].getType() ;
919 Field field
= fields
[i
] ;
920 if (!fType
.isPrimitive()) {
921 field
.set(newValue
, changePValue(field
.get(oldValue
)));
923 if (Boolean
.TYPE
.equals(fType
)) {
924 field
.setBoolean(newValue
, !field
.getBoolean(oldValue
));
926 if (Byte
.TYPE
.equals(fType
)) {
927 field
.setByte(newValue
, (byte) (field
.getByte(oldValue
) + 1));
929 if (Character
.TYPE
.equals(fType
)) {
930 field
.setChar(newValue
, (char) (field
.getChar(oldValue
) + 1));
932 if (Double
.TYPE
.equals(fType
)) {
933 field
.setDouble(newValue
, field
.getDouble(oldValue
) + 1);
935 if (Float
.TYPE
.equals(fType
)) {
936 field
.setFloat(newValue
, field
.getFloat(oldValue
) + 1);
938 if (Integer
.TYPE
.equals(fType
)) {
939 field
.setInt(newValue
, field
.getInt(oldValue
) + 1);
941 if (Long
.TYPE
.equals(fType
)) {
942 field
.setLong(newValue
, field
.getLong(oldValue
) + 1);
944 if (Short
.TYPE
.equals(fType
)) {
945 field
.setShort(newValue
, (short) (field
.getShort(oldValue
) + 1));
950 } catch (IllegalAccessException e
) {
951 e
.printStackTrace() ;
952 } catch (InstantiationException e
) {
953 e
.printStackTrace() ;
958 System
.out
.println("ValueChanger don't know type " + oldValue
.getClass());
963 } // end of Change PValue
966 * Checks if the passed value is the API structure.
967 * The value assumed to be a structure if there are no public
968 * methods, and all public fields are not static or final.
970 * @param val the value to be checked.
971 * @return <code>true</code> if the value is acssumed to be a
974 private static boolean isStructure(Object val
) {
975 boolean result
= true ;
977 Class clazz
= val
.getClass() ;
979 Method
[] meth
= clazz
.getDeclaredMethods() ;
980 for (int i
= 0; i
< meth
.length
; i
++) {
981 result
&= (meth
[i
].getModifiers() & Modifier
.PUBLIC
) == 0 ;
984 Field
[] fields
= clazz
.getDeclaredFields() ;
985 for (int i
= 0; i
< fields
.length
; i
++) {
986 int mod
= fields
[i
].getModifiers() ;
987 // If the field is PUBLIC it must not be STATIC or FINAL
988 result
&= ((mod
& Modifier
.PUBLIC
) == 0) ||
989 (((mod
& Modifier
.STATIC
) == 0) && ((mod
& Modifier
.FINAL
) == 0)) ;