diff options
Diffstat (limited to 'winaccessibility/source/UAccCOM/acccommon.h')
-rw-r--r-- | winaccessibility/source/UAccCOM/acccommon.h | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/winaccessibility/source/UAccCOM/acccommon.h b/winaccessibility/source/UAccCOM/acccommon.h new file mode 100644 index 000000000000..4c0451a65b0e --- /dev/null +++ b/winaccessibility/source/UAccCOM/acccommon.h @@ -0,0 +1,95 @@ +/************************************************************** + * + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + * + *************************************************************/ + +#ifndef __ACCCOMMON_H_ +#define __ACCCOMMON_H_ + + +//using namespace com::sun::star::accessibility; +//using namespace com::sun::star::uno; + + +//for MAccessible.cxx +struct ltComp +{ + bool operator()(REFGUID rguid1, REFGUID rguid2) const + { + if(((PLONG) &rguid1)[0] < ((PLONG) &rguid2)[0]) + return TRUE; + else if(((PLONG) &rguid1)[0] > ((PLONG) &rguid2)[0]) + return FALSE; + if(((PLONG) &rguid1)[1] < ((PLONG) &rguid2)[1]) + return TRUE; + else if(((PLONG) &rguid1)[1] > ((PLONG) &rguid2)[1]) + return FALSE; + if(((PLONG) &rguid1)[2] < ((PLONG) &rguid2)[2]) + return TRUE; + else if(((PLONG) &rguid1)[2] > ((PLONG) &rguid2)[2]) + return FALSE; + if(((PLONG) &rguid1)[3] < ((PLONG) &rguid2)[3]) + return TRUE; + else if(((PLONG) &rguid1)[3] > ((PLONG) &rguid2)[3]) + return FALSE; + return FALSE; + } +}; + +#define BEGIN_AGGOBJECT_MAP(x) \ + static _UNO_AGGMAP_ENTRY* WINAPI _GetAggEntries() { \ + static _UNO_AGGMAP_ENTRY _aggentries[] = { +#define END_AGGOBJECT_MAP() {NULL, NULL,NULL}}; \ + return _aggentries;} +#define AGGOBJECT_ENTRY(iid, clsid, ifindex) {&iid, \ + CComAggregateCreator< CComObject<CMAccessible>, &clsid >::CreateInstance,\ + XI_##ifindex}, + +enum DM_NIR { + DM_FIRSTCHILD = 0x00, + DM_LASTCHILD = 0x01, + DM_NEXTCHILD = 0x02, + DM_PREVCHILD = 0x03 +}; + +inline BOOL ImplIsEqualGUID(REFGUID rguid1, REFGUID rguid2) +{ + return ( + ((PLONG) &rguid1)[0] == ((PLONG) &rguid2)[0] && + ((PLONG) &rguid1)[1] == ((PLONG) &rguid2)[1] && + ((PLONG) &rguid1)[2] == ((PLONG) &rguid2)[2] && + ((PLONG) &rguid1)[3] == ((PLONG) &rguid2)[3]); +} +#define InlineIsEqualGUID ImplIsEqualGUID +//End + +//for AccAction.cxx +#define CODEENTRY(key) \ + {KEYCODE_##key, L#key} +#define countof(x) (sizeof(x)/sizeof(x[0])) + +#define SELECT L"Select" +#define PRESS L"Press" +#define UNCHECK L"UnCheck" +#define CHECK L"Check" +//End + +static DWORD GetMSAAStateFromUNO(short xState); + +#endif |