/* -*- 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 .
 */


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


/** A FilePicker.

    It is <strong>NOT</strong> recommended to cache a reference to a file
    picker instance. Due to restrictions by the underlying system there can
    be specific limitations possible. To overcome these problems it's
    recommended to create a new instance on demand.

    @see XFilePicker
*/

published service FilePicker : XFilePicker3
{

    /** Provides the ability to choose between different custom templates that
        do extend the subset of common controls a FilePicker usually supports.
        Implementers may omit this interface if the FileOpen
        dialog doesn't support custom templates. In this case a createInstance
        will create an ordinary FileOpen dialog with only the common FilePicker
        elements.
        The client has to provide one of the specified constants in
        TemplateDescription.
        <br/><br/>
        <p><strong>Notes for the implementation of a FileSave dialog:</strong>
        The implementation of a FileSave dialog should automatically check
        for existence of a file and issue a warning if a file with the same
        name already exist.</p>
        <p>Note that when creating a file picker, the top window is selected
        as the parent window for the file picker. Make sure that it does not get
        closed while opening the file picker, as there is a potential race.</p>

        @see com::sun::star::ui::dialogs::TemplateDescription
    */
    createWithMode([in] short Mode);
};


}; }; }; }; };

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