/* -*- 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_ui_theUICategoryDescription_idl__
#define __com_sun_star_ui_theUICategoryDescription_idl__

#include <com/sun/star/container/XNameAccess.idl>

module com {  module sun {  module star {  module ui {


/** a singleton which provides information about user interface command
    categories.

    <p>
    OpenOffice.org has an amount of commands that can be used by user
    interface elements. Every command is member of a single category.
    Categories makes it easier to handle to huge amount of commands
    provided by OpenOffice.org. This singleton is normally used by UI
    implementations which provides all commands to a user.
    </p>

    Provides access to user interface command categories of the installed
    modules.

    <p>
    To access the user interface command categories of a module, a unique
    module specifier must be provided to
    com::sun::star::container::XNameAccess::getByName()
    function. The module specifier can be retrieved from the
    com::sun::star::frame::ModuleManager
    service. The interface provides references to
    com::sun:star::ui::ModuleUICommandDescription.
    </p>

    @see com::sun::star::frame::ModuleManager

    Prior to LibreOffice 4.3, this singleton was only available as a
    (single-instance) UICategoryDescription service.

    @since LibreOffice 4.3
*/
singleton theUICategoryDescription : com::sun::star::container::XNameAccess;

}; }; }; }; // com.sun.star.ui

#endif

/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
