1*cdf0e10cSrcweir /************************************************************************* 2*cdf0e10cSrcweir * 3*cdf0e10cSrcweir * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4*cdf0e10cSrcweir * 5*cdf0e10cSrcweir * Copyright 2000, 2010 Oracle and/or its affiliates. 6*cdf0e10cSrcweir * 7*cdf0e10cSrcweir * OpenOffice.org - a multi-platform office productivity suite 8*cdf0e10cSrcweir * 9*cdf0e10cSrcweir * This file is part of OpenOffice.org. 10*cdf0e10cSrcweir * 11*cdf0e10cSrcweir * OpenOffice.org is free software: you can redistribute it and/or modify 12*cdf0e10cSrcweir * it under the terms of the GNU Lesser General Public License version 3 13*cdf0e10cSrcweir * only, as published by the Free Software Foundation. 14*cdf0e10cSrcweir * 15*cdf0e10cSrcweir * OpenOffice.org is distributed in the hope that it will be useful, 16*cdf0e10cSrcweir * but WITHOUT ANY WARRANTY; without even the implied warranty of 17*cdf0e10cSrcweir * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18*cdf0e10cSrcweir * GNU Lesser General Public License version 3 for more details 19*cdf0e10cSrcweir * (a copy is included in the LICENSE file that accompanied this code). 20*cdf0e10cSrcweir * 21*cdf0e10cSrcweir * You should have received a copy of the GNU Lesser General Public License 22*cdf0e10cSrcweir * version 3 along with OpenOffice.org. If not, see 23*cdf0e10cSrcweir * <http://www.openoffice.org/license.html> 24*cdf0e10cSrcweir * for a copy of the LGPLv3 License. 25*cdf0e10cSrcweir * 26*cdf0e10cSrcweir ************************************************************************/ 27*cdf0e10cSrcweir 28*cdf0e10cSrcweir package ifc.drawing; 29*cdf0e10cSrcweir 30*cdf0e10cSrcweir import lib.MultiMethodTest; 31*cdf0e10cSrcweir 32*cdf0e10cSrcweir import com.sun.star.drawing.XDrawPage; 33*cdf0e10cSrcweir import com.sun.star.drawing.XDrawPages; 34*cdf0e10cSrcweir import com.sun.star.drawing.XDrawView; 35*cdf0e10cSrcweir import com.sun.star.uno.AnyConverter; 36*cdf0e10cSrcweir import com.sun.star.uno.Type; 37*cdf0e10cSrcweir 38*cdf0e10cSrcweir /** 39*cdf0e10cSrcweir * Testing <code>com.sun.star.drawing.XDrawView</code> 40*cdf0e10cSrcweir * interface methods : 41*cdf0e10cSrcweir * <ul> 42*cdf0e10cSrcweir * <li><code> setCurrentPage()</code></li> 43*cdf0e10cSrcweir * <li><code> getCurrentPage()</code></li> 44*cdf0e10cSrcweir * </ul> <p> 45*cdf0e10cSrcweir * This test needs the following object relations : 46*cdf0e10cSrcweir * <ul> 47*cdf0e10cSrcweir * <li> <code>'Pages'</code> (of type <code>XDrawPages</code>): 48*cdf0e10cSrcweir * needed to have the access to pages collection.</li> 49*cdf0e10cSrcweir * <ul> <p> 50*cdf0e10cSrcweir * Test is <b> NOT </b> multithread compilant. <p> 51*cdf0e10cSrcweir * @see com.sun.star.drawing.XDrawView 52*cdf0e10cSrcweir */ 53*cdf0e10cSrcweir public class _XDrawView extends MultiMethodTest { 54*cdf0e10cSrcweir 55*cdf0e10cSrcweir public XDrawView oObj = null; 56*cdf0e10cSrcweir public XDrawPage the_page = null; 57*cdf0e10cSrcweir 58*cdf0e10cSrcweir /** 59*cdf0e10cSrcweir * This methods gets the current DrawPage.<p> 60*cdf0e10cSrcweir * Has <b> OK </b> status if the returned DrawPage 61*cdf0e10cSrcweir * isn't empty. 62*cdf0e10cSrcweir */ 63*cdf0e10cSrcweir public void _getCurrentPage(){ 64*cdf0e10cSrcweir the_page = oObj.getCurrentPage(); 65*cdf0e10cSrcweir tRes.tested("getCurrentPage()",the_page != null); 66*cdf0e10cSrcweir } // end getCurrentPage 67*cdf0e10cSrcweir 68*cdf0e10cSrcweir /** 69*cdf0e10cSrcweir * This methods sets the current DrawPage<br> 70*cdf0e10cSrcweir * First a new DrawPage is inserted in the document. 71*cdf0e10cSrcweir * Then this DrawPage is set as current Page. 72*cdf0e10cSrcweir * Has <b> OK </b> status if the getCurrentPage() method returns 73*cdf0e10cSrcweir * the DrawPage that was previously set. 74*cdf0e10cSrcweir * @see ifc.drawing._XDrawPages 75*cdf0e10cSrcweir * The following method tests are to be completed successfully before : 76*cdf0e10cSrcweir * <ul> 77*cdf0e10cSrcweir * <li> <code> getCurrentPage() </code> </li> 78*cdf0e10cSrcweir * </ul> 79*cdf0e10cSrcweir */ 80*cdf0e10cSrcweir public void _setCurrentPage(){ 81*cdf0e10cSrcweir requiredMethod("getCurrentPage()"); 82*cdf0e10cSrcweir try { 83*cdf0e10cSrcweir XDrawPages the_pages = (XDrawPages) tEnv.getObjRelation("Pages"); 84*cdf0e10cSrcweir the_pages.insertNewByIndex(0); 85*cdf0e10cSrcweir XDrawPage newPage = (XDrawPage) AnyConverter.toObject( 86*cdf0e10cSrcweir new Type(XDrawPage.class),the_pages.getByIndex(1)); 87*cdf0e10cSrcweir oObj.setCurrentPage(newPage); 88*cdf0e10cSrcweir XDrawPage getting = oObj.getCurrentPage(); 89*cdf0e10cSrcweir boolean eq = newPage.equals(getting); 90*cdf0e10cSrcweir if (!eq) { 91*cdf0e10cSrcweir log.println("Getting: "+getting.hasElements()); 92*cdf0e10cSrcweir log.println("Expected: "+newPage.hasElements()); 93*cdf0e10cSrcweir } 94*cdf0e10cSrcweir //back to the previous page 95*cdf0e10cSrcweir oObj.setCurrentPage(the_page); 96*cdf0e10cSrcweir tRes.tested("setCurrentPage()",eq); 97*cdf0e10cSrcweir } catch (com.sun.star.lang.WrappedTargetException ex) { 98*cdf0e10cSrcweir log.println("Exception occured while checking 'setCurrentPage()'"); 99*cdf0e10cSrcweir ex.printStackTrace(log); 100*cdf0e10cSrcweir tRes.tested("setCurrentPage()",false); 101*cdf0e10cSrcweir } catch (com.sun.star.lang.IndexOutOfBoundsException ex) { 102*cdf0e10cSrcweir log.println("Exception occured while checking 'setCurrentPage()'"); 103*cdf0e10cSrcweir ex.printStackTrace(log); 104*cdf0e10cSrcweir tRes.tested("setCurrentPage()",false); 105*cdf0e10cSrcweir } catch (com.sun.star.lang.IllegalArgumentException ex) { 106*cdf0e10cSrcweir log.println("Exception occured while checking 'setCurrentPage()'"); 107*cdf0e10cSrcweir ex.printStackTrace(log); 108*cdf0e10cSrcweir tRes.tested("setCurrentPage()",false); 109*cdf0e10cSrcweir } 110*cdf0e10cSrcweir } // end setCurrentPage 111*cdf0e10cSrcweir 112*cdf0e10cSrcweir } // end DrawView 113*cdf0e10cSrcweir 114