1*b1cdbd2cSJim Jagielski/**************************************************************
2*b1cdbd2cSJim Jagielski *
3*b1cdbd2cSJim Jagielski * Licensed to the Apache Software Foundation (ASF) under one
4*b1cdbd2cSJim Jagielski * or more contributor license agreements.  See the NOTICE file
5*b1cdbd2cSJim Jagielski * distributed with this work for additional information
6*b1cdbd2cSJim Jagielski * regarding copyright ownership.  The ASF licenses this file
7*b1cdbd2cSJim Jagielski * to you under the Apache License, Version 2.0 (the
8*b1cdbd2cSJim Jagielski * "License"); you may not use this file except in compliance
9*b1cdbd2cSJim Jagielski * with the License.  You may obtain a copy of the License at
10*b1cdbd2cSJim Jagielski *
11*b1cdbd2cSJim Jagielski *   http://www.apache.org/licenses/LICENSE-2.0
12*b1cdbd2cSJim Jagielski *
13*b1cdbd2cSJim Jagielski * Unless required by applicable law or agreed to in writing,
14*b1cdbd2cSJim Jagielski * software distributed under the License is distributed on an
15*b1cdbd2cSJim Jagielski * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*b1cdbd2cSJim Jagielski * KIND, either express or implied.  See the License for the
17*b1cdbd2cSJim Jagielski * specific language governing permissions and limitations
18*b1cdbd2cSJim Jagielski * under the License.
19*b1cdbd2cSJim Jagielski *
20*b1cdbd2cSJim Jagielski *************************************************************/
21*b1cdbd2cSJim Jagielski
22*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_text_XAutoTextContainer_idl__
23*b1cdbd2cSJim Jagielski#define __com_sun_star_text_XAutoTextContainer_idl__
24*b1cdbd2cSJim Jagielski
25*b1cdbd2cSJim Jagielski#include <com/sun/star/container/ElementExistException.idl>
26*b1cdbd2cSJim Jagielski#include <com/sun/star/container/NoSuchElementException.idl>
27*b1cdbd2cSJim Jagielski#include <com/sun/star/container/XNameAccess.idl>
28*b1cdbd2cSJim Jagielski#include <com/sun/star/lang/IllegalArgumentException.idl>
29*b1cdbd2cSJim Jagielski#include <com/sun/star/text/XAutoTextGroup.idl>
30*b1cdbd2cSJim Jagielski
31*b1cdbd2cSJim Jagielskimodule com {  module sun {  module star {  module text {
32*b1cdbd2cSJim Jagielski
33*b1cdbd2cSJim Jagielski/** handles blocks of <type>AutoTextEntry</type>.
34*b1cdbd2cSJim Jagielski    @see AutoTextContainer
35*b1cdbd2cSJim Jagielski*/
36*b1cdbd2cSJim Jagielskipublished interface XAutoTextContainer: com::sun::star::container::XNameAccess
37*b1cdbd2cSJim Jagielski{
38*b1cdbd2cSJim Jagielski    /** creates a new AutoText group.
39*b1cdbd2cSJim Jagielski
40*b1cdbd2cSJim Jagielski    @param aGroupName the name of the <type>AutoTextContainer</type>
41*b1cdbd2cSJim Jagielski
42*b1cdbd2cSJim Jagielski    <p>The name must follow the pattern <code>groupname*pathid</code>, where:</p>
43*b1cdbd2cSJim Jagielski
44*b1cdbd2cSJim Jagielski    <ul>
45*b1cdbd2cSJim Jagielski        <li><code>groupname</code> should contain only alphanumeric characters
46*b1cdbd2cSJim Jagielski            (A-Za-z0-9), underscore (_) or space (0x20)</li>
47*b1cdbd2cSJim Jagielski        <li>an asterisk (*) delimiter separates the group name from the path
48*b1cdbd2cSJim Jagielski            identifier</li>
49*b1cdbd2cSJim Jagielski        <li><code>pathid</code> is a number (0 or 1) identifying the directory
50*b1cdbd2cSJim Jagielski        where the AutoText file is stored. Paths are stored in the Office
51*b1cdbd2cSJim Jagielski        configuration and accessed through
52*b1cdbd2cSJim Jagielski        <member scope="com::sun::star::util">PathSettings::AutoText</member>.
53*b1cdbd2cSJim Jagielski            <ul>
54*b1cdbd2cSJim Jagielski                <li>0 indicates the path of the <b>Office Basis</b> layer</li>
55*b1cdbd2cSJim Jagielski                <li>1 indicates the path of the <b>user</b> directory</li>
56*b1cdbd2cSJim Jagielski            </ul>
57*b1cdbd2cSJim Jagielski        </li>
58*b1cdbd2cSJim Jagielski    </ul>
59*b1cdbd2cSJim Jagielski    If only <code>groupname</code> is specified, the path defaults to 0, the
60*b1cdbd2cSJim Jagielski    <b>Office Basis</b> layer.</br>Note that in some systems the user may lack of
61*b1cdbd2cSJim Jagielski    write access to the Office Basis directory.
62*b1cdbd2cSJim Jagielski
63*b1cdbd2cSJim Jagielski    @example
64*b1cdbd2cSJim Jagielski
65*b1cdbd2cSJim Jagielski    <ul>
66*b1cdbd2cSJim Jagielski        <li><code>standard*0</code></br>the "standard" AutoTextGroup in the Office Basis layer</li>
67*b1cdbd2cSJim Jagielski        <li><code>template</code></br>the "template" AutoTextGroup in the Office Basis layer</li>
68*b1cdbd2cSJim Jagielski        <li><code>mytexts*1</code></br>the "mytexts" AutoTextGroup in the user directory</li>
69*b1cdbd2cSJim Jagielski    </ul>
70*b1cdbd2cSJim Jagielski
71*b1cdbd2cSJim Jagielski    */
72*b1cdbd2cSJim Jagielski    com::sun::star::text::XAutoTextGroup insertNewByName( [in] string aGroupName )
73*b1cdbd2cSJim Jagielski            raises( com::sun::star::lang::IllegalArgumentException,
74*b1cdbd2cSJim Jagielski                    com::sun::star::container::ElementExistException );
75*b1cdbd2cSJim Jagielski
76*b1cdbd2cSJim Jagielski    /** deletes the specified AutoText group.
77*b1cdbd2cSJim Jagielski        @param aGroupName see the documentation for <member>XAutoTextContainer::insertNewByName()</member>
78*b1cdbd2cSJim Jagielski    */
79*b1cdbd2cSJim Jagielski    void removeByName( [in] string aGroupName )
80*b1cdbd2cSJim Jagielski            raises( com::sun::star::container::NoSuchElementException );
81*b1cdbd2cSJim Jagielski
82*b1cdbd2cSJim Jagielski};
83*b1cdbd2cSJim Jagielski
84*b1cdbd2cSJim Jagielski}; }; }; };
85*b1cdbd2cSJim Jagielski
86*b1cdbd2cSJim Jagielski#endif
87