summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPietro Gagliardi <[email protected]>2015-02-15 03:14:04 -0500
committerPietro Gagliardi <[email protected]>2015-02-15 03:14:04 -0500
commitd3d231fddd8c52a7fd3c5d220a5fe309fa232636 (patch)
tree8395adc851f299a54ae404a2cfc47db360b38dde
parent14eb77660c50ebd5d9218a6bad1fac0f1acbc108 (diff)
Implemented accDoDefaultAction() for Table.
-rw-r--r--wintable/accessibility.h15
1 files changed, 11 insertions, 4 deletions
diff --git a/wintable/accessibility.h b/wintable/accessibility.h
index a6cbfd0..787c2bb 100644
--- a/wintable/accessibility.h
+++ b/wintable/accessibility.h
@@ -360,11 +360,18 @@ static HRESULT STDMETHODCALLTYPE tableAccaccHitTest(IAccessible *this, long xLef
static HRESULT STDMETHODCALLTYPE tableAccaccDoDefaultAction(IAccessible *this, VARIANT varChild)
{
- if (TA->t == NULL || TA->std == NULL) {
- // TODO set values on error
+ HRESULT hr;
+ tableAccWhat what;
+
+ if (TA->t == NULL || TA->std == NULL)
return RPC_E_DISCONNECTED;
- }
- return IAccessible_accDoDefaultAction(TA->std, varChild);
+ what = TA->what;
+ hr = normalizeWhat(TA, varChild, &what);
+ if (hr != S_OK)
+ return hr;
+ if (what.role == ROLE_SYSTEM_CELL)
+ ; // TODO implement this for checkbox cells?
+ return DISP_E_MEMBERNOTFOUND;
}
static HRESULT STDMETHODCALLTYPE tableAccput_accName(IAccessible *this, VARIANT varChild, BSTR szName)