summaryrefslogtreecommitdiff
path: root/svx/source/accessibility/ShapeTypeHandler.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'svx/source/accessibility/ShapeTypeHandler.cxx')
-rw-r--r--svx/source/accessibility/ShapeTypeHandler.cxx40
1 files changed, 39 insertions, 1 deletions
diff --git a/svx/source/accessibility/ShapeTypeHandler.cxx b/svx/source/accessibility/ShapeTypeHandler.cxx
index ad6a633215c5..e8f9c693ac0b 100644
--- a/svx/source/accessibility/ShapeTypeHandler.cxx
+++ b/svx/source/accessibility/ShapeTypeHandler.cxx
@@ -31,8 +31,14 @@
#include <vos/mutex.hxx>
#include <vcl/svapp.hxx>
#include <svx/dialmgr.hxx>
-#include "svx/svdstr.hrc"
+//IAccessibility2 Implementation 2009-----
+#include <svx/unoshape.hxx>
+#include <svx/svdoashp.hxx>
+#include "svx/unoapi.hxx"
+//-----IAccessibility2 Implementation 2009
+
+#include "svx/svdstr.hrc"
using namespace ::rtl;
using namespace ::com::sun::star;
@@ -303,6 +309,38 @@ long ShapeTypeHandler::GetSlotId (const uno::Reference<drawing::XShape>& rxShape
case DRAWING_RECTANGLE:
nResourceId = STR_ObjNameSingulRECT;
break;
+ //IAccessibility2 Implementation 2009-----
+ case DRAWING_CUSTOM:
+ {
+ nResourceId = STR_ObjNameSingulCUSTOMSHAPE;
+
+ SvxShape* pShape = SvxShape::getImplementation( rxShape );
+ if (pShape)
+ {
+ SdrObject *pSdrObj = pShape->GetSdrObject();
+ if (pSdrObj)
+ {
+ String aTmp;
+ pSdrObj->TakeObjNameSingul( aTmp );
+ SdrObjCustomShape* pCustomShape = dynamic_cast< SdrObjCustomShape* >(pSdrObj);
+
+ if(pCustomShape)
+ {
+ if (pCustomShape->IsTextPath())
+ {
+ nResourceId = STR_ObjNameSingulFONTWORK;
+ }
+ else
+ {
+ nResourceId = -1;
+ sName = pCustomShape->GetCustomShapeName();
+ }
+ }
+ }
+ }
+ break;
+ }
+ //-----IAccessibility2 Implementation 2009
case DRAWING_TEXT:
nResourceId = STR_ObjNameSingulTEXT;
break;