1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: XTableUIProvider.idl,v $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 #ifndef __com_sun_star_sdb_ui_XTableUIProvider_idl__
32 #define __com_sun_star_sdb_ui_XTableUIProvider_idl__
34 #include
<com
/sun
/star
/graphic
/XGraphic.idl
>
35 #include
<com
/sun
/star
/lang
/IllegalArgumentException.idl
>
36 #include
<com
/sun
/star
/lang
/WrappedTargetException.idl
>
38 //=============================================================================
40 module com
{ module sun
{ module star
{ module sdb
{ module application
{
42 interface XDatabaseDocumentUI
;
44 //=============================================================================
46 /** is used by the database application to obtain non-default user
47 interface information and/or components for database tables.
49 @see com::sun::star::sdb::Connection
53 interface XTableUIProvider
55 /** provides the icon which should be used to represent the table in the
56 database application window.
58 <p>The icon will usually be requested once per table, and cached. It
59 might be requested again if the application settings change, for instance,
60 if another desktop theme has been activated.</p>
63 denotes the fully qualified name of the database table.
66 denotes the color mode of the graphic to retrieve, being one of the
67 <type scope="com::sun::star::graphic">GraphicColorMode</type> constants.
69 the icon which should be used to represent the table in the
70 database application window, or <NULL/> if the default icon
73 com
::sun
::star
::graphic
::XGraphic getTableIcon
(
74 [in] string TableName
, [in] long ColorMode
);
76 /** returns a component which can be used to edit the definition of an
80 provides access to the UI in which the database document is
81 currently displayed.<br/>
82 In particular, this paramter provides access to the application's main
83 window, which is needed in case the table editor should be a dialog.
86 denotes the fully qualified name of an existing table.
89 a component which can be used to edit the definition of an
90 existing table, or <NULL/> if the default component should
92 Two component types are supported so far
93 <ul><li>modal dialogs<br/>
94 If the returned component supports the
95 <type scope="com::sun::star::ui::dialogs">XExecutableDialog</type>
96 interface, the dialog will be executed modally.</li>
97 <li>modeless frames<br/>
98 If the returned component supports the
99 <type scope="com::sun::star::frame">XController</type>
100 interface, it is assumed that it represents a controller,
101 loaded into a new frame, which is a modeless and, in its lifetime,
102 depends on the application main window.</li>
104 If the returned component does not support any of the above-mentioned
105 interfaces, it's discarded.
107 @throws ::com::sun::star::lang::IllegalArgumentException
108 if the given <arg>TableName</arg> does not denote an existing table
110 @throws ::com::sun::star::lang::WrappedTargetException
111 if an error occures while creating the table editor component.
113 com
::sun
::star
::uno
::XInterface getTableEditor
(
114 [in] XDatabaseDocumentUI DocumentUI
,
115 [in] string TableName
)
116 raises
(::com
::sun
::star
::lang
::IllegalArgumentException
, ::com
::sun
::star
::lang
::WrappedTargetException
);
119 //=============================================================================
123 //=============================================================================