/* -*- 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 . */ #ifndef __com_sun_star_awt_XKeyHandler_idl__ #define __com_sun_star_awt_XKeyHandler_idl__ #include #include module com { module sun { module star { module awt { /** This key handler is similar to ::com::sun::star::awt::XKeyListener but allows the consumption of key events. If a key event is consumed by one handler both the following handlers, with respect to the list of key handlers of the broadcaster, and a following handling by the broadcaster will not take place. @since OOo 1.1.2 */ published interface XKeyHandler : ::com::sun::star::lang::XEventListener { /** This function is called by the broadcaster, an ::com::sun::star::awt::XExtendedToolkit for instance, after a key has been pressed but before it is released. The return value decides about whether other handlers will be called and a handling by the broadcaster will take place.

Consume the event if the action performed by the implementation is mutually exclusive with the default action of the broadcaster or, when known, with that of other handlers.

Consuming this event does not prevent the pending key-release event from being broadcasted.

@param aEvent The key event informs about the pressed key. @return When `FALSE` is returned the other handlers are called and a following handling of the event by the broadcaster takes place. Otherwise, when `TRUE` is returned, no other handler will be called and the broadcaster will take no further actions regarding the event. */ boolean keyPressed ([in] com::sun::star::awt::KeyEvent aEvent); /** This function is called by the broadcaster, an ::com::sun::star::awt::XExtendedToolkit for instance, after a key has been pressed and released. The return value decides about whether other handlers will be called and a handling by the broadcaster will take place.

Consume the event if the action performed by the implementation is mutually exclusive with the default action of the broadcaster or, when known, with that of other handlers.

@param aEvent The key event informs about the pressed key. @return When `FALSE` is returned the other handlers are called and a following handling of the event by the broadcaster takes place. Otherwise, when `TRUE` is returned, no other handler will be called and the broadcaster will take no further actions regarding the event. */ boolean keyReleased ([in] com::sun::star::awt::KeyEvent aEvent); }; }; }; }; }; #endif /* vim:set shiftwidth=4 softtabstop=4 expandtab: */