office-gobmx/winaccessibility/inc/AccDescendantManagerEventListener.hxx
Michael Weghorn 6723203528 wina11y: Convert unomsaaevent.hxx constants to enum class UnoMSAAEvent
Also drop the previous comments for the constants that add
little value and are partially outdated.
See the actual implementation to see how values are mapped
to send out actual MSAA events, e.g. the previous comment

    // CARET_CHANGED --> EVENT_OBJECT_LOCATIONCHANGED

was no longer correct by now, since that is by now mapped to
`IA2_EVENT_TEXT_CARET_MOVED` in `AccObjectWinManager::NotifyAccEvent`.

Change-Id: I38111ccb60c06f73ce53b18a6ca32e13dbd629b8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130697
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2022-02-28 17:42:47 +01:00

69 lines
2.8 KiB
C++

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice:
*
* 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 .
*/
#pragma once
enum class UnoMSAAEvent;
#include <stdio.h>
#include <vector>
#include "AccComponentEventListener.hxx"
#include <com/sun/star/accessibility/XAccessibleEventListener.hpp>
#include <com/sun/star/accessibility/XAccessible.hpp>
/**
* AccDescendantManagerEventListener is inherited from AccComponentEventListener. It handles
* the events generated by active descendant controls. They are: TREE, LIST, and TABLE.
* It defines the procedure of specific event handling related with active descendant components
* and provides the detailed support for some related methods.
*/
class AccDescendantManagerEventListener: public AccComponentEventListener
{
private:
std::vector<com::sun::star::accessibility::XAccessible*> m_aUnselectedChildrenForDeletion;
public:
AccDescendantManagerEventListener(css::accessibility::XAccessible* pAcc, AccObjectManagerAgent* Agent);
virtual ~AccDescendantManagerEventListener() override;
// XAccessibleEventListener
virtual void SAL_CALL notifyEvent( const css::accessibility::AccessibleEventObject& aEvent ) override;
//for selection changed event
virtual void HandleSelectionChangedEvent(
css::uno::Any oldValue, css::uno::Any newValue);
//for child changed event
virtual void HandleChildChangedEvent(
css::uno::Any oldValue, css::uno::Any newValue);
virtual void HandleChildChangedNoFocusEvent(
css::uno::Any oldValue, css::uno::Any newValue);
bool NotifyChildEvent(UnoMSAAEvent eWinEvent, const css::uno::Any& Value);
virtual void HandleSelectionChangedAddEvent(
const css::uno::Any &oldValue, const css::uno::Any &newValue);
virtual void HandleSelectionChangedRemoveEvent(
const css::uno::Any &oldValue, const css::uno::Any &newValue);
virtual void HandleSelectionChangedWithinEvent(
const css::uno::Any &oldValue, const css::uno::Any &newValue);
};
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */