/* -*- 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_sdb_application_DefaultViewController_idl__ #define __com_sun_star_sdb_application_DefaultViewController_idl__ #include #include #include #include #include #include #include module com { module sun { module star { module sdb { module application { /** is the default controller implementation for OpenOffice.org's database application. */ service DefaultViewController { /** defines basic controller functionality */ service ::com::sun::star::frame::Controller; /** allows intercepting context menu requests done by the user

The ::com::sun::star::ui::ContextMenuExecuteEvent::Selection member of the event passed to an interceptor will not be the controller itself (though the controller also supports the XSelectionSupplier interface), but a component which describes the current selection of the very window where the context menu was requested.

In OpenOffice.org's database application, database objects such as tables, queries, forms, reports are displayed in a tree-like fashion. Currently, only context menu requests on this tree view can be intercepted using the XContextMenuInterception interface. Context menu requests in other places cannot be intercepted.

For the aforementioned tree view, the selection supplied by the ContextMenuEvent::Selection component is an array of NamedDatabaseObject instances.

*/ interface ::com::sun::star::ui::XContextMenuInterception; /** allows intercepting user input done by the user */ interface ::com::sun::star::awt::XUserInputInterception; /** provides access to the current selection inside the application window, and allows to change it programmatically

The selection is an array of NamedDatabaseObject instances.

*/ interface ::com::sun::star::view::XSelectionSupplier; /** allows to retrieve and set the title which of the component */ interface ::com::sun::star::frame::XTitle; /** allows being notified about changes in the component's title */ interface ::com::sun::star::frame::XTitleChangeBroadcaster; /** allows programmatic access to aspects of the application's user interface. */ interface XDatabaseDocumentUI; }; }; }; }; }; }; #endif /* vim:set shiftwidth=4 softtabstop=4 expandtab: */