tdf#130857 qt weld: Support mail merge "Server Auth" dialog
[LibreOffice.git] / toolkit / test / accessibility / AccessibleContextHandler.java
blob62bd4b813261b27685e81ff1acac6effb1e8e555
1 /*
2 * This file is part of the LibreOffice project.
4 * This Source Code Form is subject to the terms of the Mozilla Public
5 * License, v. 2.0. If a copy of the MPL was not distributed with this
6 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 * This file incorporates work covered by the following license notice:
10 * Licensed to the Apache Software Foundation (ASF) under one or more
11 * contributor license agreements. See the NOTICE file distributed
12 * with this work for additional information regarding copyright
13 * ownership. The ASF licenses this file to you under the Apache
14 * License, Version 2.0 (the "License"); you may not use this file
15 * except in compliance with the License. You may obtain a copy of
16 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
19 import com.sun.star.accessibility.XAccessible;
20 import com.sun.star.accessibility.XAccessibleContext;
21 import tools.NameProvider;
23 class AccessibleContextHandler
24 extends NodeHandler
26 @Override
27 public NodeHandler createHandler (XAccessibleContext xContext)
29 if (xContext != null)
30 return new AccessibleContextHandler (xContext);
31 else
32 return null;
35 public AccessibleContextHandler ()
37 super ();
40 private AccessibleContextHandler (XAccessibleContext xContext)
42 super();
43 if (xContext != null)
44 maChildList.setSize (4);
47 @Override
48 public AccessibleTreeNode createChild (AccessibleTreeNode aParent, int nIndex)
50 XAccessibleContext xContext = null;
51 if (aParent instanceof AccTreeNode)
52 xContext = ((AccTreeNode)aParent).getContext();
54 String sChild = "";
55 if (xContext != null)
57 switch( nIndex )
59 case 0:
60 sChild = "Description: " +
61 xContext.getAccessibleDescription();
62 break;
63 case 1:
64 int nRole = xContext.getAccessibleRole();
65 sChild = "Role: " + nRole + " (" + NameProvider.getRoleName(nRole) + ")";
66 break;
67 case 2:
68 XAccessible xParent = xContext.getAccessibleParent();
69 sChild = "Has parent: " + (xParent!=null ? "yes" : "no");
70 break;
71 case 3:
72 sChild = "";
73 long xStateSet = xContext.getAccessibleStateSet();
74 for (short i=0; i<=30; i++)
76 if ((xStateSet & (1<<i)) != 0)
78 if (sChild.compareTo ("") != 0)
79 sChild += ", ";
80 sChild += NameProvider.getStateName(1<<i);
83 sChild = "State set: " + sChild;
86 return new StringNode (sChild, aParent);