1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: ScAutoFormatFieldObj.java,v $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
33 import java
.io
.PrintWriter
;
35 import lib
.StatusException
;
37 import lib
.TestEnvironment
;
38 import lib
.TestParameters
;
39 import com
.sun
.star
.container
.XIndexAccess
;
40 import com
.sun
.star
.lang
.XMultiServiceFactory
;
41 import com
.sun
.star
.uno
.AnyConverter
;
42 import com
.sun
.star
.uno
.Type
;
43 import com
.sun
.star
.uno
.UnoRuntime
;
44 import com
.sun
.star
.uno
.XInterface
;
47 * Test for object which is represented by service
48 * <code>com.sun.star.sheet.TableAutoFormatField</code>.
49 * In StarCalc application there is a collection of autoformats
50 * for tables (you can select a predefined format for a
51 * table or create your own). Each autoformat has a number
52 * of fields with definitions of font parameters, number
53 * formats etc. for different parts of a table (column and
54 * row names, footers, data). This object represents the
55 * field of the same kind. <p>
56 * Object implements the following interfaces :
58 * <li> <code>com::sun::star::sheet::TableAutoFormatField</code></li>
59 * <li> <code>com::sun::star::beans::XPropertySet</code></li>
61 * This object test <b> is NOT </b> designed to be run in several
62 * threads concurently.
63 * @see com.sun.star.sheet.TableAutoFormatField
64 * @see com.sun.star.beans.XPropertySet
65 * @see ifc.sheet._TableAutoFormatField
66 * @see ifc.beans._XPropertySet
68 public class ScAutoFormatFieldObj
extends TestCase
{
71 * Creating a Testenvironment for the interfaces to be tested.
72 * Using SOffice ServiceManager an instance of
73 * <code>com.sun.star.sheet.TableAutoFormatField</code> service
74 * is created. From this collection one Format is retrieved
75 * and then from this format one of its compound fields is
78 public synchronized TestEnvironment createTestEnvironment
79 ( TestParameters Param
, PrintWriter log
) throws StatusException
{
81 XInterface oObj
= null;
85 log
.println ("create Object ...") ;
86 // creation of testobject here
87 XInterface formats
= (XInterface
)((XMultiServiceFactory
)Param
.getMSF()).createInstance
88 ("com.sun.star.sheet.TableAutoFormats");
89 XIndexAccess formatsIndex
= (XIndexAccess
)UnoRuntime
.queryInterface
90 (XIndexAccess
.class, formats
);
91 XInterface format
= (XInterface
) AnyConverter
.toObject(
92 new Type(XInterface
.class),formatsIndex
.getByIndex(0));
93 XIndexAccess formatIndex
= (XIndexAccess
) UnoRuntime
.queryInterface
94 (XIndexAccess
.class, format
);
95 oObj
= (XInterface
) AnyConverter
.toObject(
96 new Type(XInterface
.class),formatIndex
.getByIndex(0));
98 } catch (com
.sun
.star
.uno
.Exception e
) {
99 log
.println ("Exception occured while creating test Object.") ;
100 e
.printStackTrace(log
) ;
103 TestEnvironment tEnv
= new TestEnvironment(oObj
) ;
108 } // finish class ScAutoFormatFieldObj