KWQAccObjectCache.h [plain text]
#include <CoreFoundation/CoreFoundation.h>
#include <ApplicationServices/ApplicationServicesPriv.h>
#include "visible_position.h"
#ifdef __OBJC__
@class KWQAccObject;
#else
class KWQAccObject;
#endif
class QString;
namespace khtml {
class RenderObject;
class VisiblePosition;
}
typedef unsigned int KWQAccObjectID;
class KWQAccObjectCache
{
public:
KWQAccObjectCache();
~KWQAccObjectCache();
KWQAccObject* accObject(khtml::RenderObject* renderer);
void setAccObject(khtml::RenderObject* renderer, KWQAccObject* obj);
void removeAccObject(khtml::RenderObject* renderer);
KWQAccObjectID getAccObjectID(KWQAccObject* accObject);
void removeAccObjectID(KWQAccObject* accObject);
#if OMIT_TIGER_FEATURES
#else
AXTextMarkerRef textMarkerForVisiblePosition (const khtml::VisiblePosition &);
khtml::VisiblePosition visiblePositionForTextMarker (AXTextMarkerRef textMarker);
#endif
void detach(khtml::RenderObject* renderer);
void childrenChanged(khtml::RenderObject* renderer);
void postNotification(khtml::RenderObject* renderer, const QString& msg);
void postNotificationToTopWebArea(khtml::RenderObject* renderer, const QString& msg);
void handleFocusedUIElementChanged(void);
static void enableAccessibility() { gAccessibilityEnabled = true; }
static bool accessibilityEnabled() { return gAccessibilityEnabled; }
private:
static bool gAccessibilityEnabled;
private:
CFMutableDictionaryRef accCache;
CFMutableDictionaryRef accCacheByID;
KWQAccObjectID accObjectIDSource;
};