Kaydet (Commit) 6e7d7d9d authored tarafından Andre Fischer's avatar Andre Fischer

Adaption to recent UAA changes (TextSegment,selectAllAccessibleChildren,COLLAPSED).

üst f1ea6a48
import com.sun.star.accessibility.AccessibleTextType;
import com.sun.star.accessibility.TextSegment;
import com.sun.star.accessibility.XAccessibleContext; import com.sun.star.accessibility.XAccessibleContext;
import com.sun.star.accessibility.XAccessibleText; import com.sun.star.accessibility.XAccessibleText;
import com.sun.star.accessibility.XAccessibleEditableText; import com.sun.star.accessibility.XAccessibleEditableText;
import com.sun.star.accessibility.AccessibleTextType;
import com.sun.star.awt.Rectangle; import com.sun.star.awt.Rectangle;
import com.sun.star.awt.Point; import com.sun.star.awt.Point;
...@@ -171,20 +172,21 @@ class AccessibleTextHandler extends NodeHandler ...@@ -171,20 +172,21 @@ class AccessibleTextHandler extends NodeHandler
// sWord + nStart mark the current word // sWord + nStart mark the current word
// make a node as soon as a new one is found; close the last // make a node as soon as a new one is found; close the last
// one at the end // one at the end
String sWord = xText.getTextAtIndex(0, nTextType); TextSegment sWord = xText.getTextAtIndex(0, nTextType);
String sBefore = xText.getTextBeforeIndex(0, nTextType); TextSegment sBefore = xText.getTextBeforeIndex(0, nTextType);
String sBehind = xText.getTextBehindIndex(0, nTextType); TextSegment sBehind = xText.getTextBehindIndex(0, nTextType);
int nStart = 0; int nStart = 0;
for(int i = 1; i < nLength; i++) for(int i = 1; i < nLength; i++)
{ {
String sTmp = xText.getTextAtIndex(i, nTextType); TextSegment sTmp = xText.getTextAtIndex(i, nTextType);
String sTBef = xText.getTextBeforeIndex(i, nTextType); TextSegment sTBef = xText.getTextBeforeIndex(i, nTextType);
String sTBeh = xText.getTextBehindIndex(i, nTextType); TextSegment sTBeh = xText.getTextBehindIndex(i, nTextType);
if( ! ( sTmp.equals( sWord ) && sTBef.equals( sBefore ) && if( ! ( sTmp.equals( sWord ) && sTBef.equals( sBefore ) &&
sTBeh.equals( sBehind ) ) ) sTBeh.equals( sBehind ) ) )
{ {
aNode.addChild (new StringNode (textAtIndexNodeString( aNode.addChild (new StringNode (textAtIndexNodeString(
nStart, i, sWord, sBefore, sBehind), aNode)); nStart, i,
sWord.SegmentText, sBefore.SegmentText, sBehind.SegmentText), aNode));
sWord = sTmp; sWord = sTmp;
sBefore = sTBef; sBefore = sTBef;
sBehind = sTBeh; sBehind = sTBeh;
...@@ -194,12 +196,13 @@ class AccessibleTextHandler extends NodeHandler ...@@ -194,12 +196,13 @@ class AccessibleTextHandler extends NodeHandler
// don't generate more than 50 children. // don't generate more than 50 children.
if (aNode.getChildCount() > 50) if (aNode.getChildCount() > 50)
{ {
sWord = "..."; sWord.SegmentText = "...";
break; break;
} }
} }
aNode.addChild (new StringNode (textAtIndexNodeString( aNode.addChild (new StringNode (textAtIndexNodeString(
nStart, nLength, sWord, sBefore, sBehind), aNode)); nStart, nLength,
sWord.SegmentText, sBefore.SegmentText, sBehind.SegmentText), aNode));
} }
catch( IndexOutOfBoundsException e ) catch( IndexOutOfBoundsException e )
{ {
...@@ -323,7 +326,7 @@ class AccessibleTextHandler extends NodeHandler ...@@ -323,7 +326,7 @@ class AccessibleTextHandler extends NodeHandler
try try
{ {
aPortion = xText.getTextAtIndex( aPortion = xText.getTextAtIndex(
nIndex, AccessibleTextType.ATTRIBUTE_RUN); nIndex, AccessibleTextType.ATTRIBUTE_RUN).SegmentText;
} }
catch(com.sun.star.lang.IllegalArgumentException e) catch(com.sun.star.lang.IllegalArgumentException e)
{ {
......
...@@ -147,7 +147,7 @@ class SelectionDialog extends JDialog ...@@ -147,7 +147,7 @@ class SelectionDialog extends JDialog
void selectAll() void selectAll()
{ {
mxSelection.selectAllAccessible(); mxSelection.selectAllAccessibleChildren();
} }
void clearSelection() void clearSelection()
......
...@@ -61,6 +61,7 @@ class TopWindowListener ...@@ -61,6 +61,7 @@ class TopWindowListener
*/ */
private void AddTopLevelNode (XAccessible xNewTopLevelObject) private void AddTopLevelNode (XAccessible xNewTopLevelObject)
{ {
System.out.println ("adding top level window");
if (xNewTopLevelObject != null) if (xNewTopLevelObject != null)
{ {
XAccessibleContext xContext = xNewTopLevelObject.getAccessibleContext(); XAccessibleContext xContext = xNewTopLevelObject.getAccessibleContext();
......
...@@ -117,9 +117,12 @@ Tools.clean .SETDIR=tools : ...@@ -117,9 +117,12 @@ Tools.clean .SETDIR=tools :
dist: AccessibilityWorkBench.jar dist: AccessibilityWorkBench.jar
AccessibilityWorkBench.jar: $(JAVA_FILES:b:+".class") jawb.mf AccessibilityWorkBench.jar: $(JAVA_FILES:b:+".class") jawb.mf
+jar -cfm AccessibilityWorkBench.jar jawb.mf *.class +jar -cfm AccessibilityWorkBench.jar jawb.mf *.class ov\*.class tools\*.class
# Example of how to run the work bench. # Example of how to run the work bench.
run: all run: all
+$(JAVA) -classpath $(CLASSPATH) AccessibilityWorkBench -p $(PORT_NUMBER) +$(JAVA) -classpath $(CLASSPATH) AccessibilityWorkBench -p $(PORT_NUMBER)
runjar: all dist
+$(JAVA) -classpath $(CLASSPATH) -jar AccessibilityWorkBench.jar -p $(PORT_NUMBER)
...@@ -179,7 +179,7 @@ class SelectionView ...@@ -179,7 +179,7 @@ class SelectionView
void SelectAll() void SelectAll()
{ {
mxSelection.selectAllAccessible(); mxSelection.selectAllAccessibleChildren();
} }
void ClearSelection() void ClearSelection()
......
...@@ -82,7 +82,7 @@ public class NameProvider ...@@ -82,7 +82,7 @@ public class NameProvider
maStateMap.put (new Integer (AccessibleStateType.ARMED), "ARMED"); maStateMap.put (new Integer (AccessibleStateType.ARMED), "ARMED");
maStateMap.put (new Integer (AccessibleStateType.BUSY), "BUSY"); maStateMap.put (new Integer (AccessibleStateType.BUSY), "BUSY");
maStateMap.put (new Integer (AccessibleStateType.CHECKED), "CHECKED"); maStateMap.put (new Integer (AccessibleStateType.CHECKED), "CHECKED");
maStateMap.put (new Integer (AccessibleStateType.COLLAPSED), "COLLAPSED"); // maStateMap.put (new Integer (AccessibleStateType.COLLAPSED), "COLLAPSED");
maStateMap.put (new Integer (AccessibleStateType.DEFUNC), "DEFUNC"); maStateMap.put (new Integer (AccessibleStateType.DEFUNC), "DEFUNC");
maStateMap.put (new Integer (AccessibleStateType.EDITABLE), "EDITABLE"); maStateMap.put (new Integer (AccessibleStateType.EDITABLE), "EDITABLE");
maStateMap.put (new Integer (AccessibleStateType.ENABLED), "ENABLED"); maStateMap.put (new Integer (AccessibleStateType.ENABLED), "ENABLED");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment