1*b1cdbd2cSJim Jagielski /************************************************************** 2*b1cdbd2cSJim Jagielski * 3*b1cdbd2cSJim Jagielski * Licensed to the Apache Software Foundation (ASF) under one 4*b1cdbd2cSJim Jagielski * or more contributor license agreements. See the NOTICE file 5*b1cdbd2cSJim Jagielski * distributed with this work for additional information 6*b1cdbd2cSJim Jagielski * regarding copyright ownership. The ASF licenses this file 7*b1cdbd2cSJim Jagielski * to you under the Apache License, Version 2.0 (the 8*b1cdbd2cSJim Jagielski * "License"); you may not use this file except in compliance 9*b1cdbd2cSJim Jagielski * with the License. You may obtain a copy of the License at 10*b1cdbd2cSJim Jagielski * 11*b1cdbd2cSJim Jagielski * http://www.apache.org/licenses/LICENSE-2.0 12*b1cdbd2cSJim Jagielski * 13*b1cdbd2cSJim Jagielski * Unless required by applicable law or agreed to in writing, 14*b1cdbd2cSJim Jagielski * software distributed under the License is distributed on an 15*b1cdbd2cSJim Jagielski * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*b1cdbd2cSJim Jagielski * KIND, either express or implied. See the License for the 17*b1cdbd2cSJim Jagielski * specific language governing permissions and limitations 18*b1cdbd2cSJim Jagielski * under the License. 19*b1cdbd2cSJim Jagielski * 20*b1cdbd2cSJim Jagielski *************************************************************/ 21*b1cdbd2cSJim Jagielski 22*b1cdbd2cSJim Jagielski 23*b1cdbd2cSJim Jagielski 24*b1cdbd2cSJim Jagielski package ifc.drawing; 25*b1cdbd2cSJim Jagielski 26*b1cdbd2cSJim Jagielski import lib.MultiMethodTest; 27*b1cdbd2cSJim Jagielski import util.ValueChanger; 28*b1cdbd2cSJim Jagielski 29*b1cdbd2cSJim Jagielski import com.sun.star.awt.Point; 30*b1cdbd2cSJim Jagielski import com.sun.star.beans.XPropertySet; 31*b1cdbd2cSJim Jagielski import com.sun.star.lang.XServiceInfo; 32*b1cdbd2cSJim Jagielski import com.sun.star.uno.UnoRuntime; 33*b1cdbd2cSJim Jagielski 34*b1cdbd2cSJim Jagielski 35*b1cdbd2cSJim Jagielski public class _LineShapeDescriptor extends MultiMethodTest { 36*b1cdbd2cSJim Jagielski 37*b1cdbd2cSJim Jagielski public XPropertySet oObj = null; // oObj filled by MultiMethodTest 38*b1cdbd2cSJim Jagielski 39*b1cdbd2cSJim Jagielski _LineColor()40*b1cdbd2cSJim Jagielski public void _LineColor() { 41*b1cdbd2cSJim Jagielski XServiceInfo xInfo = (XServiceInfo) 42*b1cdbd2cSJim Jagielski UnoRuntime.queryInterface(XServiceInfo.class, oObj); 43*b1cdbd2cSJim Jagielski if ( ! xInfo.supportsService 44*b1cdbd2cSJim Jagielski ("com.sun.star.drawing.LineShapeDescriptor")) { 45*b1cdbd2cSJim Jagielski log.println("Service not available !!!!!!!!!!!!!"); 46*b1cdbd2cSJim Jagielski tRes.tested("Supported", false); 47*b1cdbd2cSJim Jagielski } 48*b1cdbd2cSJim Jagielski changeProp("LineColor"); 49*b1cdbd2cSJim Jagielski } 50*b1cdbd2cSJim Jagielski _LineDash()51*b1cdbd2cSJim Jagielski public void _LineDash() { 52*b1cdbd2cSJim Jagielski changeProp("LineDash"); 53*b1cdbd2cSJim Jagielski } _LineEnd()54*b1cdbd2cSJim Jagielski public void _LineEnd() { 55*b1cdbd2cSJim Jagielski changeProp("LineEnd"); 56*b1cdbd2cSJim Jagielski } _LineEndCenter()57*b1cdbd2cSJim Jagielski public void _LineEndCenter() { 58*b1cdbd2cSJim Jagielski changeProp("LineEndCenter"); 59*b1cdbd2cSJim Jagielski } _LineEndWidth()60*b1cdbd2cSJim Jagielski public void _LineEndWidth() { 61*b1cdbd2cSJim Jagielski changeProp("LineEndWidth"); 62*b1cdbd2cSJim Jagielski } _LineJoint()63*b1cdbd2cSJim Jagielski public void _LineJoint() { 64*b1cdbd2cSJim Jagielski changeProp("LineJoint"); 65*b1cdbd2cSJim Jagielski } _LineStart()66*b1cdbd2cSJim Jagielski public void _LineStart() { 67*b1cdbd2cSJim Jagielski changeProp("LineStart"); 68*b1cdbd2cSJim Jagielski } _LineStartCenter()69*b1cdbd2cSJim Jagielski public void _LineStartCenter() { 70*b1cdbd2cSJim Jagielski changeProp("LineStartCenter"); 71*b1cdbd2cSJim Jagielski } _LineStartWidth()72*b1cdbd2cSJim Jagielski public void _LineStartWidth() { 73*b1cdbd2cSJim Jagielski changeProp("LineStartWidth"); 74*b1cdbd2cSJim Jagielski } _LineStyle()75*b1cdbd2cSJim Jagielski public void _LineStyle() { 76*b1cdbd2cSJim Jagielski changeProp("LineStyle"); 77*b1cdbd2cSJim Jagielski } _LineTransparence()78*b1cdbd2cSJim Jagielski public void _LineTransparence() { 79*b1cdbd2cSJim Jagielski changeProp("LineTransparence"); 80*b1cdbd2cSJim Jagielski } _LineWidth()81*b1cdbd2cSJim Jagielski public void _LineWidth() { 82*b1cdbd2cSJim Jagielski changeProp("LineWidth"); 83*b1cdbd2cSJim Jagielski } 84*b1cdbd2cSJim Jagielski changeProp(String name)85*b1cdbd2cSJim Jagielski public void changeProp(String name) { 86*b1cdbd2cSJim Jagielski 87*b1cdbd2cSJim Jagielski Object gValue = null; 88*b1cdbd2cSJim Jagielski Object sValue = null; 89*b1cdbd2cSJim Jagielski Object ValueToSet = null; 90*b1cdbd2cSJim Jagielski 91*b1cdbd2cSJim Jagielski try { 92*b1cdbd2cSJim Jagielski //waitForAllThreads(); 93*b1cdbd2cSJim Jagielski gValue = oObj.getPropertyValue(name); 94*b1cdbd2cSJim Jagielski //waitForAllThreads(); 95*b1cdbd2cSJim Jagielski if ( (name.equals("LineEnd")) || (name.equals("LineStart")) ) { 96*b1cdbd2cSJim Jagielski if (gValue == null) gValue = newPoints(null); 97*b1cdbd2cSJim Jagielski ValueToSet = newPoints( (Point[]) gValue); 98*b1cdbd2cSJim Jagielski } 99*b1cdbd2cSJim Jagielski else { 100*b1cdbd2cSJim Jagielski ValueToSet = ValueChanger.changePValue(gValue); 101*b1cdbd2cSJim Jagielski } 102*b1cdbd2cSJim Jagielski //waitForAllThreads(); 103*b1cdbd2cSJim Jagielski oObj.setPropertyValue(name,ValueToSet); 104*b1cdbd2cSJim Jagielski sValue = oObj.getPropertyValue(name); 105*b1cdbd2cSJim Jagielski 106*b1cdbd2cSJim Jagielski 107*b1cdbd2cSJim Jagielski //check get-set methods 108*b1cdbd2cSJim Jagielski if (gValue.equals(sValue)) { 109*b1cdbd2cSJim Jagielski log.println("Value for '"+name+"' hasn't changed"); 110*b1cdbd2cSJim Jagielski tRes.tested(name, false); 111*b1cdbd2cSJim Jagielski } 112*b1cdbd2cSJim Jagielski else { 113*b1cdbd2cSJim Jagielski log.println("Property '"+name+"' OK"); 114*b1cdbd2cSJim Jagielski tRes.tested(name, true); 115*b1cdbd2cSJim Jagielski } 116*b1cdbd2cSJim Jagielski } catch (Exception e) { 117*b1cdbd2cSJim Jagielski log.println("Exception occured while testing property '" + 118*b1cdbd2cSJim Jagielski name + "'"); 119*b1cdbd2cSJim Jagielski e.printStackTrace(log); 120*b1cdbd2cSJim Jagielski tRes.tested(name, false); 121*b1cdbd2cSJim Jagielski } 122*b1cdbd2cSJim Jagielski 123*b1cdbd2cSJim Jagielski 124*b1cdbd2cSJim Jagielski } // end of ChangeProp 125*b1cdbd2cSJim Jagielski newPoints(Point[] old)126*b1cdbd2cSJim Jagielski public Point[] newPoints(Point[] old) { 127*b1cdbd2cSJim Jagielski 128*b1cdbd2cSJim Jagielski Point [] newP = new Point[3]; 129*b1cdbd2cSJim Jagielski 130*b1cdbd2cSJim Jagielski if (old == null) { 131*b1cdbd2cSJim Jagielski newP[0] = new Point(0, 2); 132*b1cdbd2cSJim Jagielski newP[1] = new Point(2, 0); 133*b1cdbd2cSJim Jagielski newP[2] = new Point(0, -2); 134*b1cdbd2cSJim Jagielski } 135*b1cdbd2cSJim Jagielski else { 136*b1cdbd2cSJim Jagielski newP = old; 137*b1cdbd2cSJim Jagielski newP[0].X += 1; 138*b1cdbd2cSJim Jagielski newP[1].X += 1; 139*b1cdbd2cSJim Jagielski newP[2].X += 1; 140*b1cdbd2cSJim Jagielski } 141*b1cdbd2cSJim Jagielski return newP; 142*b1cdbd2cSJim Jagielski } 143*b1cdbd2cSJim Jagielski 144*b1cdbd2cSJim Jagielski } 145*b1cdbd2cSJim Jagielski 146*b1cdbd2cSJim Jagielski 147