Implemented get_accChildCount().
This commit is contained in:
parent
96ef6635e7
commit
6729c96c1d
|
@ -200,16 +200,27 @@ static HRESULT STDMETHODCALLTYPE tableAccget_accParent(IAccessible *this, IDispa
|
||||||
|
|
||||||
static HRESULT STDMETHODCALLTYPE tableAccget_accChildCount(IAccessible *this, long *pcountChildren)
|
static HRESULT STDMETHODCALLTYPE tableAccget_accChildCount(IAccessible *this, long *pcountChildren)
|
||||||
{
|
{
|
||||||
if (TA->t == NULL || TA->std == NULL) {
|
if (pcountChildren == NULL)
|
||||||
// TODO set values on error
|
return E_POINTER;
|
||||||
|
// TODO set pcountChildren to zero?
|
||||||
|
if (TA->t == NULL || TA->std == NULL)
|
||||||
return RPC_E_DISCONNECTED;
|
return RPC_E_DISCONNECTED;
|
||||||
|
switch (TA->what.role) {
|
||||||
|
case ROLE_SYSTEM_TABLE:
|
||||||
|
// TODO header row
|
||||||
|
*pcountChildren = (long) (TA->t->count);
|
||||||
|
return S_OK;
|
||||||
|
case ROLE_SYSTEM_ROW:
|
||||||
|
*pcountChildren = (long) (TA->t->nColumns);
|
||||||
|
return S_OK;
|
||||||
|
case ROLE_SYSTEM_CELL:
|
||||||
|
*pcountChildren = 0;
|
||||||
|
return S_OK;
|
||||||
}
|
}
|
||||||
//TODO
|
// TODO actually do this right
|
||||||
if (pcountChildren == NULL)
|
// TODO un-GetLastError() this
|
||||||
return E_POINTER;
|
panic("impossible blah blah blah TODO write this");
|
||||||
*pcountChildren = 0;
|
return E_FAIL;
|
||||||
return S_OK;
|
|
||||||
return IAccessible_get_accChildCount(TA->std, pcountChildren);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO [EDGE CASE/NOT DOCUMENTED/CHECK SAMPLE] what happens if CHILDID_SELF is passed?
|
// TODO [EDGE CASE/NOT DOCUMENTED/CHECK SAMPLE] what happens if CHILDID_SELF is passed?
|
||||||
|
|
Loading…
Reference in New Issue