summaryrefslogtreecommitdiff
path: root/offapi/com/sun/star/ui/dialogs
diff options
context:
space:
mode:
Diffstat (limited to 'offapi/com/sun/star/ui/dialogs')
-rw-r--r--offapi/com/sun/star/ui/dialogs/CommonFilePickerElementIds.idl86
-rw-r--r--offapi/com/sun/star/ui/dialogs/ControlActions.idl111
-rw-r--r--offapi/com/sun/star/ui/dialogs/DialogClosedEvent.idl65
-rw-r--r--offapi/com/sun/star/ui/dialogs/ExecutableDialogException.idl54
-rw-r--r--offapi/com/sun/star/ui/dialogs/ExecutableDialogResults.idl58
-rw-r--r--offapi/com/sun/star/ui/dialogs/ExtendedFilePickerElementIds.idl127
-rw-r--r--offapi/com/sun/star/ui/dialogs/FilePicker.idl165
-rw-r--r--offapi/com/sun/star/ui/dialogs/FilePickerEvent.idl62
-rw-r--r--offapi/com/sun/star/ui/dialogs/FilePreviewImageFormats.idl53
-rw-r--r--offapi/com/sun/star/ui/dialogs/FilterOptionsDialog.idl89
-rw-r--r--offapi/com/sun/star/ui/dialogs/FolderPicker.idl88
-rw-r--r--offapi/com/sun/star/ui/dialogs/ListboxControlActions.idl91
-rw-r--r--offapi/com/sun/star/ui/dialogs/TemplateDescription.idl143
-rw-r--r--offapi/com/sun/star/ui/dialogs/Wizard.idl75
-rw-r--r--offapi/com/sun/star/ui/dialogs/WizardButton.idl60
-rw-r--r--offapi/com/sun/star/ui/dialogs/WizardTravelType.idl54
-rw-r--r--offapi/com/sun/star/ui/dialogs/XAsynchronousExecutableDialog.idl72
-rw-r--r--offapi/com/sun/star/ui/dialogs/XControlAccess.idl105
-rw-r--r--offapi/com/sun/star/ui/dialogs/XControlInformation.idl111
-rw-r--r--offapi/com/sun/star/ui/dialogs/XDialogClosedListener.idl68
-rw-r--r--offapi/com/sun/star/ui/dialogs/XExecutableDialog.idl75
-rw-r--r--offapi/com/sun/star/ui/dialogs/XFilePicker.idl145
-rw-r--r--offapi/com/sun/star/ui/dialogs/XFilePicker2.idl75
-rw-r--r--offapi/com/sun/star/ui/dialogs/XFilePickerControlAccess.idl153
-rw-r--r--offapi/com/sun/star/ui/dialogs/XFilePickerListener.idl120
-rw-r--r--offapi/com/sun/star/ui/dialogs/XFilePickerNotifier.idl75
-rw-r--r--offapi/com/sun/star/ui/dialogs/XFilePreview.idl144
-rw-r--r--offapi/com/sun/star/ui/dialogs/XFilterGroupManager.idl80
-rw-r--r--offapi/com/sun/star/ui/dialogs/XFilterManager.idl97
-rw-r--r--offapi/com/sun/star/ui/dialogs/XFolderPicker.idl100
-rw-r--r--offapi/com/sun/star/ui/dialogs/XWizard.idl228
-rw-r--r--offapi/com/sun/star/ui/dialogs/XWizardController.idl85
-rw-r--r--offapi/com/sun/star/ui/dialogs/XWizardPage.idl86
-rw-r--r--offapi/com/sun/star/ui/dialogs/makefile.mk79
34 files changed, 3279 insertions, 0 deletions
diff --git a/offapi/com/sun/star/ui/dialogs/CommonFilePickerElementIds.idl b/offapi/com/sun/star/ui/dialogs/CommonFilePickerElementIds.idl
new file mode 100644
index 000000000000..8c2efee4f993
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/CommonFilePickerElementIds.idl
@@ -0,0 +1,86 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_CommonFilePickerElementIds_idl__
+#define __com_sun_star_ui_dialogs_CommonFilePickerElementIds_idl__
+
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+/** These constants are used to specify common controls of a FilePicker dialog.
+
+ */
+
+published constants CommonFilePickerElementIds
+{
+ //---------------------------------------------------------------------
+ /** The control id of the OK button.
+ */
+ const short PUSHBUTTON_OK = 1;
+
+ //---------------------------------------------------------------------
+ /** The control id of the Cancel button.
+ */
+ const short PUSHBUTTON_CANCEL = 2;
+
+ //---------------------------------------------------------------------
+ /** The filter listbox of a FilePicker dialog.
+ */
+ const short LISTBOX_FILTER = 3;
+
+ //---------------------------------------------------------------------
+ /** Is used to refer to the file view of the file picker. This view shows the list of
+ all files/folders in the currently selected folder.
+ */
+ const short CONTROL_FILEVIEW = 4;
+
+ //---------------------------------------------------------------------
+ /** Is used to refer to the edit line where a file or path can be entered by the user.
+ */
+ const short EDIT_FILEURL = 5;
+
+ //---------------------------------------------------------------------
+ /** The label of the filter listbox of a FilePicker dialog.
+
+ @since OOo 1.1.2
+ */
+ const short LISTBOX_FILTER_LABEL = 6;
+
+ //---------------------------------------------------------------------
+ /** The label of the file name listbox of a FilePicker dialog.
+
+ @since OOo 1.1.2
+ */
+ const short EDIT_FILEURL_LABEL = 7;
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/ui/dialogs/ControlActions.idl b/offapi/com/sun/star/ui/dialogs/ControlActions.idl
new file mode 100644
index 000000000000..d3fe967311f0
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/ControlActions.idl
@@ -0,0 +1,111 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialog_ControlActions_idl__
+#define __com_sun_star_ui_dialog_ControlActions_idl__
+
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+/** Control actions for common and extended controls of a FilePicker.
+
+ @see com::sun::star::ui::dialogs::XFilePickerControlAccess
+ @see com::sun::star::ui::dialogs::CommonFilePickerElementIds
+ @see com::sun::star::ui::dialogs::ExtendedFilePickerElementIds
+ */
+
+published constants ControlActions
+{
+ //---------------------------------------------------------------------
+ /** Adds an item to the content of the listbox. The given item has to
+ be a string.
+ */
+ const short ADD_ITEM = 1;
+
+ //---------------------------------------------------------------------
+ /** Adds a sequence of strings to the content of the listbox.
+ */
+ const short ADD_ITEMS = 2;
+
+ //---------------------------------------------------------------------
+ /** Removes an item from a listbox. The given value has to be a
+ position. If the position is invalid an exception will be thrown.
+ The index of the first position is 0.
+ The value should be a sal_Int32.
+ */
+ const short DELETE_ITEM = 3;
+
+ //---------------------------------------------------------------------
+ /** Removes all items from the listbox.
+ */
+ const short DELETE_ITEMS = 4;
+
+ //---------------------------------------------------------------------
+ /** Selects an item in a listbox. The given value has to be a position.
+ The index of the first position is 0. A value of -1 removes the
+ selection.
+ If the given position is invalid an exception will be thrown.
+ The value should be a sal_Int32.
+ */
+ const short SET_SELECT_ITEM = 5;
+
+ //---------------------------------------------------------------------
+ /** Returns all items of the listbox as a sequence of strings.
+ */
+ const short GET_ITEMS = 6;
+
+ //---------------------------------------------------------------------
+ /** Returns the currently selected item. The returned item is an empty
+ string if the listbox is empty or no item is selected.
+ */
+ const short GET_SELECTED_ITEM = 7;
+
+ //---------------------------------------------------------------------
+ /** Returns the zero based index of the currently selected item.
+ If the listbox is empty or there is no item selected -1 will be
+ returned. The returned value is a sal_Int32.
+ */
+
+ const short GET_SELECTED_ITEM_INDEX = 8;
+
+ //---------------------------------------------------------------------
+ /** Sets the help URL of a control.
+ */
+ const short SET_HELP_URL = 100;
+
+ //---------------------------------------------------------------------
+ /** Retrieves the help URL of a control.
+ */
+ const short GET_HELP_URL = 101;
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/ui/dialogs/DialogClosedEvent.idl b/offapi/com/sun/star/ui/dialogs/DialogClosedEvent.idl
new file mode 100644
index 000000000000..107ec70ca2cc
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/DialogClosedEvent.idl
@@ -0,0 +1,65 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_DialogClosedEvent_idl__
+#define __com_sun_star_ui_dialogs_DialogClosedEvent_idl__
+
+#ifndef __com_sun_star_lang_EventObject_idl__
+#include <com/sun/star/lang/EventObject.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+
+//=============================================================================
+/** Information of a closed dialog.
+
+ <p>The broadcaster who sends such event, must send the dialog as the source.</p>
+
+ @see <type>com::sun::star::lang::EventObject</type>
+*/
+struct DialogClosedEvent: com::sun::star::lang::EventObject
+{
+ //-------------------------------------------------------------------------
+ /**
+ @param DialogResult
+ Identifies the result of a dialog.
+
+ @see <type>ExecutableDialogResults</type>
+ */
+ short DialogResult;
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/ui/dialogs/ExecutableDialogException.idl b/offapi/com/sun/star/ui/dialogs/ExecutableDialogException.idl
new file mode 100644
index 000000000000..c509e50b7576
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/ExecutableDialogException.idl
@@ -0,0 +1,54 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_ExecutableDialogException_idl__
+#define __com_sun_star_ui_dialogs_ExecutableDialogException_idl__
+
+#ifndef __com_sun_star_uno_Exception_idl__
+#include <com/sun/star/uno/Exception.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+/** Base class of all XExecutableDialog related exceptions.
+ */
+published exception ExecutableDialogException: com::sun::star::uno::Exception
+{
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+/*=============================================================================
+
+
+=============================================================================*/
+#endif
diff --git a/offapi/com/sun/star/ui/dialogs/ExecutableDialogResults.idl b/offapi/com/sun/star/ui/dialogs/ExecutableDialogResults.idl
new file mode 100644
index 000000000000..3d8caf3a08ef
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/ExecutableDialogResults.idl
@@ -0,0 +1,58 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_ExecutableDialogResults_idl__
+#define __com_sun_star_ui_dialogs_ExecutableDialogResults_idl__
+
+//=============================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+/** These constants are used to specify a result of executing a <type>XExecutableDialog</type>.
+*/
+
+published constants ExecutableDialogResults
+{
+ //-------------------------------------------------------------------------
+ /** The user canceled the dialog.
+ */
+ const short CANCEL = 0;
+
+ //-------------------------------------------------------------------------
+ /** The user acknowledged the dialog.
+ */
+ const short OK = 1;
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+
+#endif
+
diff --git a/offapi/com/sun/star/ui/dialogs/ExtendedFilePickerElementIds.idl b/offapi/com/sun/star/ui/dialogs/ExtendedFilePickerElementIds.idl
new file mode 100644
index 000000000000..970d70e3c4b8
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/ExtendedFilePickerElementIds.idl
@@ -0,0 +1,127 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_ExtendedFilePickerElementIds_idl__
+#define __com_sun_star_ui_dialogs_ExtendedFilePickerElementIds_idl__
+
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+/** <p>These constants are used to specify extended controls of a FilePicker dialog.
+ A FilePicker service may be initialized so that it has additional controls
+ extending the set of common controls a FilePicker usually supports.</p>
+
+ @see com::sun::star::ui::dialogs::FilePicker
+ @see com::sun::star::ui::dialogs::XFilePickerControlAccess
+ @see com::sun::star::ui::dialogs::CommonFilePickerElementIds
+ */
+
+published constants ExtendedFilePickerElementIds
+{
+ //---------------------------------------------------------------------
+ /**
+ */
+ const short CHECKBOX_AUTOEXTENSION = 100;
+
+ //---------------------------------------------------------------------
+ /**
+ */
+ const short CHECKBOX_PASSWORD = 101;
+
+ //---------------------------------------------------------------------
+ /**
+ */
+ const short CHECKBOX_FILTEROPTIONS = 102;
+
+ //---------------------------------------------------------------------
+ /**
+ */
+ const short CHECKBOX_READONLY = 103;
+
+ //---------------------------------------------------------------------
+ /**
+ */
+ const short CHECKBOX_LINK = 104;
+
+ //---------------------------------------------------------------------
+ /**
+ */
+ const short CHECKBOX_PREVIEW = 105;
+
+ //---------------------------------------------------------------------
+ /**
+ */
+ const short PUSHBUTTON_PLAY = 106;
+
+ //---------------------------------------------------------------------
+ /**
+ */
+ const short LISTBOX_VERSION = 107;
+
+ //---------------------------------------------------------------------
+ /**
+ */
+ const short LISTBOX_TEMPLATE = 108;
+
+
+ //---------------------------------------------------------------------
+ /**
+ */
+ const short LISTBOX_IMAGE_TEMPLATE = 109;
+
+ //---------------------------------------------------------------------
+ /**
+ */
+ const short CHECKBOX_SELECTION = 110;
+
+ //---------------------------------------------------------------------
+ /**
+ */
+ const short LISTBOX_VERSION_LABEL = 207;
+
+ //---------------------------------------------------------------------
+ /**
+ */
+ const short LISTBOX_TEMPLATE_LABEL = 208;
+
+ //---------------------------------------------------------------------
+ /**
+ */
+ const short LISTBOX_IMAGE_TEMPLATE_LABEL = 209;
+
+ //---------------------------------------------------------------------
+ /**
+ */
+ const short LISTBOX_FILTER_SELECTOR = 210;
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/ui/dialogs/FilePicker.idl b/offapi/com/sun/star/ui/dialogs/FilePicker.idl
new file mode 100644
index 000000000000..230f289c10f4
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/FilePicker.idl
@@ -0,0 +1,165 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_FilePicker_idl__
+#define __com_sun_star_ui_dialogs_FilePicker_idl__
+
+#ifndef __com_sun_star_lang_XComponent_idl__
+#include <com/sun/star/lang/XComponent.idl>
+#endif
+
+#ifndef __com_sun_star_lang_XServiceInfo_idl__
+#include <com/sun/star/lang/XServiceInfo.idl>
+#endif
+
+#ifndef __com_sun_star_lang_XTypeProvider_idl__
+#include <com/sun/star/lang/XTypeProvider.idl>
+#endif
+
+#ifndef __com_sun_star_lang_XInitialization_idl__
+#include <com/sun/star/lang/XInitialization.idl>
+#endif
+
+#ifndef __com_sun_star_util_XCancellable_idl__
+#include <com/sun/star/util/XCancellable.idl>
+#endif
+
+//=============================================================================
+
+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 interface XFilePicker;
+ published interface XFilePickerNotifier;
+ published interface XFilePickerControlAccess;
+ published interface XFilterManager;
+ published interface XFilePreview;
+ published interface XFilterGroupManager;
+
+published service FilePicker
+{
+ //-------------------------------------------------------------------------
+ /** Allows to associate a help URL with the file picker instance.
+ */
+ [optional, property] string HelpURL;
+
+ //-------------------------------------------------------------------------
+ /** Provides access to the basic FilePicker functionality.
+ */
+ interface XFilePicker;
+
+ //-------------------------------------------------------------------------
+ /** Provides the ability to request notifications about changes.
+ */
+ interface XFilePickerNotifier;
+
+ //-------------------------------------------------------------------------
+ /** Provides the ability to add different filter, query for the current
+ filters and set a current filter
+ */
+ interface XFilterManager;
+
+ //-------------------------------------------------------------------------
+ /** Provides the ability to show a preview of a selected file
+ */
+ [optional] interface XFilePreview;
+
+ //-------------------------------------------------------------------------
+ /** Provides the ability manage additional controls (checkboxes, listboxes etc.)
+ offered by an extended FilePicker, these controls extend the subset of
+ common controls that a FilePicker usually supports.
+
+ @see com::sun::star::ui::dialogs::CommonFilePickerElementIds
+ @see com::sun::star::ui::dialogs::ExtendedFilePickerElementIds
+
+ @deprecated
+ */
+ [optional] interface XFilePickerControlAccess;
+
+ //-------------------------------------------------------------------------
+ /** An interface which allows manipulation of groups of filters
+ */
+ [optional] interface XFilterGroupManager;
+
+ //-------------------------------------------------------------------------
+ /** 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 existens of a file and issue a warning if a file with the same
+ name already exist.</p>
+
+ @see com::sun::star::ui::dialogs::TemplateDescription
+ */
+ [optional] interface com::sun::star::lang::XInitialization;
+
+ //-------------------------------------------------------------------------
+ /** For canceling a running dialog instance.
+ <p>This may be usefull for automatic test tools for instance.</p>
+ */
+ [optional] interface com::sun::star::util::XCancellable;
+
+ //-------------------------------------------------------------------------
+ /** For shutdown and listener support.
+ */
+ interface com::sun::star::lang::XComponent;
+
+ //-------------------------------------------------------------------------
+ /** Service should always support this interface.
+ */
+ interface com::sun::star::lang::XServiceInfo;
+
+ //-------------------------------------------------------------------------
+ /** Service should always support this interface.
+ */
+ interface com::sun::star::lang::XTypeProvider;
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/ui/dialogs/FilePickerEvent.idl b/offapi/com/sun/star/ui/dialogs/FilePickerEvent.idl
new file mode 100644
index 000000000000..d57f08a921b6
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/FilePickerEvent.idl
@@ -0,0 +1,62 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_FilePickerEvent_idl__
+#define __com_sun_star_ui_dialogs_FilePickerEvent_idl__
+
+#ifndef __com_sun_star_lang_EventObject_idl__
+#include <com/sun/star/lang/EventObject.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+
+//=============================================================================
+/** Context information in case of a FilePicker event.
+*/
+published struct FilePickerEvent: com::sun::star::lang::EventObject
+{
+ //-------------------------------------------------------------------------
+ /**
+ @param ElementId
+ Identifies the affected element
+
+ @see com::sun::star::ui::dialogs::CommonFilePickerElementIds
+ @see com::sun::star::ui::dialogs::ExtendedFilePickerElementIds
+ */
+ short ElementId;
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+
+#endif
diff --git a/offapi/com/sun/star/ui/dialogs/FilePreviewImageFormats.idl b/offapi/com/sun/star/ui/dialogs/FilePreviewImageFormats.idl
new file mode 100644
index 000000000000..9d1b006c0e64
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/FilePreviewImageFormats.idl
@@ -0,0 +1,53 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_FilePreviewImageFormats_idl__
+#define __com_sun_star_ui_dialogs_FilePreviewImageFormats_idl__
+
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+/** These constants are used to specify image formats supported by an implementation
+ of the interface <type scope="com::sun::star::ui::dialogs">XFilePreview</type>.
+ */
+
+published constants FilePreviewImageFormats
+{
+ //---------------------------------------------------------------------
+ /** A OpenOffice bitmap which is similar to the device independent bitmap
+ (DIB) format on windows.
+ The bitmap data should be provided as a sequence of sal_Int8.
+ */
+ const short BITMAP = 1;
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/ui/dialogs/FilterOptionsDialog.idl b/offapi/com/sun/star/ui/dialogs/FilterOptionsDialog.idl
new file mode 100644
index 000000000000..fc0f6c480b84
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/FilterOptionsDialog.idl
@@ -0,0 +1,89 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_ui_dialogs_FilterOptionsDialog_idl__
+#define __com_sun_star_ui_dialogs_FilterOptionsDialog_idl__
+
+#ifndef __com_sun_star_ui_dialogs_XExecutableDialog_idl__
+#include <com/sun/star/ui/dialogs/XExecutableDialog.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertyAccess_idl__
+#include <com/sun/star/beans/XPropertyAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+
+/** This service enables a filter developer to register a dialog to query
+ for user options before the filter operation is performed.
+
+ <p>The user options are stored inside the <type scope="com::sun::star::document">MediaDescriptor</type>
+ and can be queried from the <type scope="com::sun::star::document">MediaDescriptor</type> by
+ the component that implements <type scope="com::sun::star::document">XFilter</type>.</p>
+
+ <p>The application will set the <type scope="com::sun::star::document">MediaDescriptor</type>
+ using the interface <type scope="com::sun::star::beans">XPropertyAccess</type> and then
+ call <method>XExecutableDialog::execute<method>.</p>
+
+ <p>If that method returns <code>ExecutableDialogResults::OK</code>,
+ the application will retrieve the changed <type scope="com::sun::star::document">MediaDescriptor</type>
+ back using the interface <type scope="com::sun::star::beans">XPropertyAccess</type>. The filter
+ operation is than continued, using the new <type scope="com::sun::star::document">MediaDescriptor</type>.</p>
+
+ <p>Otherwise, the filter operation is canceled.</p>
+
+ @since OOo 1.1.2
+ */
+published service FilterOptionsDialog
+{
+ //-------------------------------------------------------------------------
+ /** this interface is used to set the property values of the
+ <type scope="com::sun::star::document">MediaDescriptor</type> before executing
+ the dialog and to retrieve the changed <type scope="com::sun::star::document">MediaDescriptor</type>
+
+ afterwards.
+ */
+ interface com::sun::star::beans::XPropertyAccess;
+
+ //-------------------------------------------------------------------------
+ /** this interface executes a dialog that displays the options
+ for a filter.
+ If <method>XExecutableDialog::execute<method>
+ returns <code>ExecutableDialogResults::OK</code>,
+ the options can be retrieved by calling <method scope="com::sun::star::beans">XPropertyAccess::getPropertyValues<method>.
+ */
+ interface ::com::sun::star::ui::dialogs::XExecutableDialog;
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/ui/dialogs/FolderPicker.idl b/offapi/com/sun/star/ui/dialogs/FolderPicker.idl
new file mode 100644
index 000000000000..adfad7fed497
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/FolderPicker.idl
@@ -0,0 +1,88 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_FolderPicker_idl__
+#define __com_sun_star_ui_dialogs_FolderPicker_idl__
+
+#ifndef __com_sun_star_lang_XComponent_idl__
+#include <com/sun/star/lang/XComponent.idl>
+#endif
+
+#ifndef __com_sun_star_lang_XServiceInfo_idl__
+#include <com/sun/star/lang/XServiceInfo.idl>
+#endif
+
+#ifndef __com_sun_star_lang_XTypeProvider_idl__
+#include <com/sun/star/lang/XTypeProvider.idl>
+#endif
+
+#ifndef __com_sun_star_util_XCancellable_idl__
+#include <com/sun/star/util/XCancellable.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+
+ published interface XFolderPicker;
+
+//=============================================================================
+/** A FolderPicker service.
+*/
+
+published service FolderPicker
+{
+ //-------------------------------------------------------------------------
+ /** Provides the ability to execute a FolderPicker dialog and
+ browse for and select folders.
+ */
+ interface XFolderPicker;
+
+ //-------------------------------------------------------------------------
+ /** Service should always support this interface.
+ */
+ interface com::sun::star::lang::XServiceInfo;
+
+ //-------------------------------------------------------------------------
+ /** Service should always support this interface.
+ */
+ interface com::sun::star::lang::XTypeProvider;
+
+ //-------------------------------------------------------------------------
+ /** For canceling a running dialog instance.
+ <p>This may be usefull for automatic test tools for instance.</p>
+ */
+ [optional] interface com::sun::star::util::XCancellable;
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/ui/dialogs/ListboxControlActions.idl b/offapi/com/sun/star/ui/dialogs/ListboxControlActions.idl
new file mode 100644
index 000000000000..7bd5e5da0219
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/ListboxControlActions.idl
@@ -0,0 +1,91 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialog_ListboxControlActions_idl__
+#define __com_sun_star_ui_dialog_ListboxControlActions_idl__
+
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+/** These constants are deprecated and should not be used anymore. They're superseeded
+ by <type>ControlActions</type>.
+ @deprecated
+ */
+
+published constants ListboxControlActions
+{
+ //---------------------------------------------------------------------
+ /** Adds an item to the content of the listbox. The given item has to
+ be a string.
+ */
+ const short ADD_ITEM = 1;
+
+ //---------------------------------------------------------------------
+ /** Adds a sequence of strings to the content of the listbox.
+ */
+ const short ADD_ITEMS = 2;
+
+ //---------------------------------------------------------------------
+ /** Removes an item from a listbox. The given value has to be a
+ position. If the position is invalid an exception will be thrown.
+ The index of the first position is 0.
+ The value should be a sal_Int32.
+ */
+ const short DELETE_ITEM = 3;
+
+ //---------------------------------------------------------------------
+ /** Removes all items from the listbox.
+ */
+ const short DELETE_ITEMS = 4;
+
+ //---------------------------------------------------------------------
+ /** Selects an item in a listbox. The given value has to be a position.
+ The index of the first position is 0. A value of -1 removes the
+ selection.
+ If the given position is invalid an exception will be thrown.
+ The value should be a sal_Int32.
+ */
+ const short SET_SELECT_ITEM = 5;
+
+ //---------------------------------------------------------------------
+ /** Returns all items of the listbox as a sequence of strings.
+ */
+ const short GET_ITEMS = 6;
+
+ //---------------------------------------------------------------------
+ /** Returns the currently selected item. The returned item is an empty
+ string if the listbox is empty or no item is selected.
+ */
+ const short GET_SELECTED_ITEM = 7;
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/ui/dialogs/TemplateDescription.idl b/offapi/com/sun/star/ui/dialogs/TemplateDescription.idl
new file mode 100644
index 000000000000..615fbe055b8e
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/TemplateDescription.idl
@@ -0,0 +1,143 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_TemplateDescription_idl__
+#define __com_sun_star_ui_dialogs_TemplateDescription_idl__
+
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+/** The implementation of a FilePicker service may support the usage of
+ different templates. The following constants define the currently
+ specified templates.
+
+ @see com::sun::star::ui::dialogs::FilePicker
+ */
+
+published constants TemplateDescription
+{
+ //---------------------------------------------------------------------
+ /** A FileOpen dialog without any additional controls.
+ */
+ const short FILEOPEN_SIMPLE = 0;
+
+ //---------------------------------------------------------------------
+ /** A FileSave dialog without any additional controls.
+ */
+ const short FILESAVE_SIMPLE = 1;
+
+ //---------------------------------------------------------------------
+ /** A FileSave dialog with additional controls.
+ <ul>
+ <li>A checkbox "Auto Extension"</li>
+ <li>A checkbox "Password"</li>
+ </ul>
+ */
+ const short FILESAVE_AUTOEXTENSION_PASSWORD = 2;
+
+ //---------------------------------------------------------------------
+ /** A FileSave dialog with additional controls.
+ <ul>
+ <li>A checkbox "Auto Extension"</li>
+ <li>A checkbox "Password"</li>
+ <li>A checkbox "Filter Options"</li>
+ </ul>
+ */
+ const short FILESAVE_AUTOEXTENSION_PASSWORD_FILTEROPTIONS = 3;
+
+ //---------------------------------------------------------------------
+ /** A FileSave dialog with additional controls.
+ <ul>
+ <li>A checkbox "Auto Extension"</li>
+ <li>A checkbox "Selection"</li>
+ </ul>
+ */
+ const short FILESAVE_AUTOEXTENSION_SELECTION = 4;
+
+ //---------------------------------------------------------------------
+ /** A FileSave dialog with additional controls.
+ <ul>
+ <li>A checkbox "Auto Extension"</li>
+ <li>A listbox "Template" for selecting different templates</li>
+ </ul>
+ */
+ const short FILESAVE_AUTOEXTENSION_TEMPLATE = 5;
+
+ //---------------------------------------------------------------------
+ /** A FileOpen dialog with additional controls.
+ <ul>
+ <li>A checkbox "Insert as link"
+ <li>A checkbox "Show Preview"
+ <li>A listbox "Image Template" for inserting an image with different styles.</li>
+ <li>A window for displaying a file preview</li>
+ </ul>
+ */
+ const short FILEOPEN_LINK_PREVIEW_IMAGE_TEMPLATE = 6;
+
+ //---------------------------------------------------------------------
+ /** A FileOpen dialog with additional controls.
+ <ul>
+ <li>A push button "Play"</li>
+ </ul>
+ */
+ const short FILEOPEN_PLAY = 7;
+
+ //---------------------------------------------------------------------
+ /** A FileOpen dialog with additional controls.
+ <ul>
+ <li>A checkbox "Read only"</li>
+ <li>A listbox "Version" for selecting a document version</li>
+ <ul>
+ */
+ const short FILEOPEN_READONLY_VERSION = 8;
+
+ //---------------------------------------------------------------------
+ /** A FileOpen dialog with additional controls.
+ <ul>
+ <li>A checkbox "Insert as link"</li>
+ <li>A checkbox "Show Preview"</li>
+ <li>A window for displaying a file preview</li>
+ </ul>
+ */
+ const short FILEOPEN_LINK_PREVIEW = 9;
+
+ //---------------------------------------------------------------------
+ /** A FileSave dialog with additional controls.
+ <ul>
+ <li>A checkbox "Auto Extension"</li>
+ </ul>
+ */
+ const short FILESAVE_AUTOEXTENSION = 10;
+
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/ui/dialogs/Wizard.idl b/offapi/com/sun/star/ui/dialogs/Wizard.idl
new file mode 100644
index 000000000000..d15819a73281
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/Wizard.idl
@@ -0,0 +1,75 @@
+/*************************************************************************
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_Wizard_idl__
+#define __com_sun_star_ui_dialogs_Wizard_idl__
+
+#include <com/sun/star/ui/dialogs/XWizard.idl>
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+
+//==================================================================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+published interface XWizardController;
+
+//==================================================================================================================
+
+/** provides a framework for implementing a wizard dialog.
+ */
+published service Wizard : XWizard
+{
+ /** creates a wizard with a single execution path
+ @param PageIds
+ the IDs of the pages which constitute the execution path. IDs must be in ascending order.
+ */
+ createSinglePathWizard(
+ [in] sequence< short > PageIds,
+ [in] XWizardController Controller
+ )
+ raises ( ::com::sun::star::lang::IllegalArgumentException
+ );
+
+ /** creates a wizard with a multiple possible execution paths
+
+ @param PageIds
+ the IDs of the pages which constitute the execution paths. IDs in each path must be in ascending order.
+ */
+ createMultiplePathsWizard(
+ [in] sequence< sequence< short > > PageIds,
+ [in] XWizardController Controller
+ )
+ raises ( ::com::sun::star::lang::IllegalArgumentException
+ );
+};
+
+//==================================================================================================================
+
+}; }; }; }; };
+
+//==================================================================================================================
+
+#endif
diff --git a/offapi/com/sun/star/ui/dialogs/WizardButton.idl b/offapi/com/sun/star/ui/dialogs/WizardButton.idl
new file mode 100644
index 000000000000..34c0d8074889
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/WizardButton.idl
@@ -0,0 +1,60 @@
+/*************************************************************************
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_WizardButton_idl__
+#define __com_sun_star_ui_dialogs_WizardButton_idl__
+
+//==================================================================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//==================================================================================================================
+
+/** denotes the buttons found in a <type>Wizard</type>
+ */
+constants WizardButton
+{
+ /// denotes none of the buttons in the wizard
+ const short NONE = 0;
+ /// denotes the button used to travel forward through the wizard
+ const short NEXT = 1;
+ /// denotes the button used to travel backward through the wizard
+ const short PREVIOUS = 2;
+ /// denotes the button used to finish the wizard
+ const short FINISH = 3;
+ /// denotes the button used to cancel the wizard
+ const short CANCEL = 4;
+ /// denotes the button used to request help
+ const short HELP = 5;
+};
+
+//==================================================================================================================
+
+}; }; }; }; };
+
+//==================================================================================================================
+
+#endif
diff --git a/offapi/com/sun/star/ui/dialogs/WizardTravelType.idl b/offapi/com/sun/star/ui/dialogs/WizardTravelType.idl
new file mode 100644
index 000000000000..271a006346b7
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/WizardTravelType.idl
@@ -0,0 +1,54 @@
+/*************************************************************************
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_WizardTravelType_idl__
+#define __com_sun_star_ui_dialogs_WizardTravelType_idl__
+
+//==================================================================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//==================================================================================================================
+
+/** denotes ways to leave a <type>Wizard</type>'s page
+ */
+constants WizardTravelType
+{
+ /// indicates the wizard page is left due to forward traveling through the wizard
+ const short FORWARD = 1;
+ /// indicates the wizard page is left due to backward traveling through the wizard
+ const short BACKWARD = 2;
+ /// indicates the wizard page is left since the wizard is about to be finished
+ const short FINISH = 3;
+};
+
+//==================================================================================================================
+
+}; }; }; }; };
+
+//==================================================================================================================
+
+#endif
diff --git a/offapi/com/sun/star/ui/dialogs/XAsynchronousExecutableDialog.idl b/offapi/com/sun/star/ui/dialogs/XAsynchronousExecutableDialog.idl
new file mode 100644
index 000000000000..e844ab96b77c
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/XAsynchronousExecutableDialog.idl
@@ -0,0 +1,72 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_XAsynchronousExecutableDialog_idl__
+#define __com_sun_star_ui_dialogs_XAsynchronousExecutableDialog_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_ui_dialogs_XDialogClosedListener_idl__
+#include <com/sun/star/ui/dialogs/XDialogClosedListener.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+/** Specifies an interface for an executable dialog in asynchronous mode.
+*/
+interface XAsynchronousExecutableDialog: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** Sets the title of the dialog.
+
+ @param aTitle
+ Set an abitrary title for the dialog,
+ may be an empty string if the dialog should not have a title.
+ */
+ void setDialogTitle( [in] string aTitle );
+
+ //-------------------------------------------------------------------------
+ /** Executes (shows) the dialog and returns immediately.
+
+ @param xListener
+ This listener will be called when the dialog is closed.
+ */
+ void startExecuteModal( [in] XDialogClosedListener xListener );
+
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/ui/dialogs/XControlAccess.idl b/offapi/com/sun/star/ui/dialogs/XControlAccess.idl
new file mode 100644
index 000000000000..6c7eeddf3972
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/XControlAccess.idl
@@ -0,0 +1,105 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_XControlAccess_idl__
+#define __com_sun_star_ui_dialogs_XControlAccess_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+/** Generic control access interface.
+
+ <p>Use this interface to access user interface controls supported
+ by the implementing service. The supported controls, control
+ properties and the appropriate values are documented in the
+ decription of the implementing service.</p>
+
+ @see com::sun::star::ui::dialogs::FilePicker
+ @see com::sun::star::ui::dialogs::FilePicker
+
+ @since OOo 1.1.2
+*/
+published interface XControlAccess: com::sun::star::uno::XInterface
+{
+//-------------------------------------------------------------------------
+/** Change a control property.
+
+ @param aControlName
+ The name of the control. Common control names are for
+ instance 'OkButton' or 'CancelButton'.
+
+ @param aControlProperty
+ The control property to manipulate. Common control properties
+ are for instance 'Label' or 'State'.
+
+ @param aValue
+ A value appropriated for the property.
+
+ @throws com::sun::star::lang::IllegalArgumentException
+ when the control is not supported, the control property is invalid or
+ the value fits not the control action.
+*/
+void setControlProperty( [in] string aControlName, [in] string aControlProperty, [in] any aValue )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+//-------------------------------------------------------------------------
+/** Query for a control property.
+
+ @param aControlName
+ The name of the control. Common control names are for
+ instance 'OkButton' or 'CancelButton'.
+
+ @param aControlProperty
+ The requested control property. Common control properties
+ are for instance 'Label' or 'State'.
+
+ @returns
+ the requested value.
+
+ @throws com::sun::star::lang::IllegalArgumentException
+ when the control is not supported or the control property is invalid.
+*/
+any getControlProperty( [in] string aControlName, [in] string aControlProperty )
+ raises( com::sun::star::lang::IllegalArgumentException );
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/ui/dialogs/XControlInformation.idl b/offapi/com/sun/star/ui/dialogs/XControlInformation.idl
new file mode 100644
index 000000000000..c632f4fa1f8b
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/XControlInformation.idl
@@ -0,0 +1,111 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_XControlInformation_idl__
+#define __com_sun_star_ui_dialogs_XControlInformation_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+/** Interface to query for controls and control properties supported by the
+ implementing instance.
+
+ @since OOo 1.1.2
+*/
+published interface XControlInformation: com::sun::star::uno::XInterface
+{
+//-------------------------------------------------------------------------
+/** Query for the supported controls of a service instance.
+
+ @returns
+ a sequence with the names of the supported controls.
+*/
+sequence<string> getSupportedControls( );
+
+//-------------------------------------------------------------------------
+/** Returns whether the specified control is supported or not.
+
+ @param aControlName
+ The name of the control. Common control names are for
+ instance 'OkButton' or 'CancelButton'.
+
+ @returns
+ <TRUE/> if the specified control is supported.
+ <FALSE/> if the specified control is not supported.
+*/
+boolean isControlSupported( [in] string aControlName );
+
+//-------------------------------------------------------------------------
+/** Returns a sequence with properties supported by the specified
+ control.
+
+ @param aControlName
+ The name of the control. Common control names are for
+ instance 'OkButton' or 'CancelButton'.
+
+ @returns
+ a sequence of control properties supported by the specified control.
+
+ @throws com::sun::star::lang::IllegalArgumentException
+ when the specified control is not supported.
+*/
+sequence<string> getSupportedControlProperties( [in] string aControlName )
+ raises( com::sun::star::lang::IllegalArgumentException );
+
+//-------------------------------------------------------------------------
+/** Returns whether control property is supported by a control.
+
+ @param aControlName
+ The name of the control.
+
+ @param aControlProperty
+ The control property to query for.
+
+ @returns
+ <TRUE/> if the specified control action is supported.
+ <FALSE/> if the specified control action is not supported.
+
+ @throws com::sun::star::lang::IllegalArgumentException
+ when the specified control is not supported.
+*/
+boolean isControlPropertySupported( [in] string aControlName, [in] string aControlProperty )
+ raises( com::sun::star::lang::IllegalArgumentException );
+};
+
+}; }; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/ui/dialogs/XDialogClosedListener.idl b/offapi/com/sun/star/ui/dialogs/XDialogClosedListener.idl
new file mode 100644
index 000000000000..0f03d37efea2
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/XDialogClosedListener.idl
@@ -0,0 +1,68 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_XDialogClosedListener_idl__
+#define __com_sun_star_ui_dialogs_XDialogClosedListener_idl__
+
+#ifndef __com_sun_star_lang_XEventListener_idl__
+#include <com/sun/star/lang/XEventListener.idl>
+#endif
+
+#ifndef __com_sun_star_ui_dialogs_DialogClosedEvent_idl__
+#include <com/sun/star/ui/dialogs/DialogClosedEvent.idl>
+#endif
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+/** Used to notify listeners about dialog-closed events.
+
+ <p>Registered listeners will be notified with a
+ <type>DialogClosedEvent</type> when a <type>XAsynchronousExecutableDialog</type> is closed.</p>
+
+ @see <type>XAsynchronousExecutableDialog</type>
+ @see <type>DialogClosedEvent</type>
+*/
+
+
+interface XDialogClosedListener: com::sun::star::lang::XEventListener
+{
+ //-------------------------------------------------------------------------
+ /** A client receives this event if a dialog is closed.
+
+ @param aEvent
+ of type <type>DialogClosedEvent</type> that describes the event
+
+ @see <type>EndDialogEvent</type>
+ */
+ void dialogClosed( [in] DialogClosedEvent aEvent );
+};
+
+}; }; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/ui/dialogs/XExecutableDialog.idl b/offapi/com/sun/star/ui/dialogs/XExecutableDialog.idl
new file mode 100644
index 000000000000..556a9bf8cc0f
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/XExecutableDialog.idl
@@ -0,0 +1,75 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_XExecutableDialog_idl__
+#define __com_sun_star_ui_dialogs_XExecutableDialog_idl__
+
+#ifndef __com_sun_star_uno_RuntimeException_idl__
+#include <com/sun/star/uno/RuntimeException.idl>
+#endif
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+/** Specifies an interface for an executable dialog.
+*/
+
+
+published interface XExecutableDialog: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** Sets the title of the dialog.
+
+ @param aTitle
+ Set an abitrary title for the dialog,
+ may be an empty string if the dialog should not
+ have a title.
+ */
+ void setTitle( [in] string aTitle );
+
+ //-------------------------------------------------------------------------
+ /** Executes (shows) the dialog.
+
+ @returns
+ A status code of type <type>ExecutableDialogResults</type>.
+ */
+ short execute();
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+
+#endif
+
diff --git a/offapi/com/sun/star/ui/dialogs/XFilePicker.idl b/offapi/com/sun/star/ui/dialogs/XFilePicker.idl
new file mode 100644
index 000000000000..d35683f71fc3
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/XFilePicker.idl
@@ -0,0 +1,145 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_ui_dialogs_XFilePicker_idl__
+#define __com_sun_star_ui_dialogs_XFilePicker_idl__
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_ui_dialogs_XExecutableDialog_idl__
+#include <com/sun/star/ui/dialogs/XExecutableDialog.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+/** Specifies an interface for a FilePicker
+*/
+
+published interface XFilePicker: com::sun::star::ui::dialogs::XExecutableDialog
+{
+
+ //-------------------------------------------------------------------------
+ /** Enable/disable multiselection mode
+
+ <p>If the multiselection mode is enabled, multiple files
+ may be selected by the user else only one file selection at a time is possible</p>
+
+ @param bMode
+ <p>A value of <TRUE/> enables the multiselection mode.</p>
+ <p>A value of <FALSE/> disables the multiselection mode, this is the default.</p>
+ */
+ void setMultiSelectionMode( [in] boolean bMode );
+
+ //-------------------------------------------------------------------------
+ /** Sets the default string that appears in the file name box of a FilePicker.
+
+ @param aName
+ <p> Specifies the default file name, displayed when the FilePicker
+ is shown. The implementation may accept any string, and does not
+ have to check for a valid file name or if the file really exists.
+ </p>
+ */
+ void setDefaultName( [in] string aName );
+
+ //-------------------------------------------------------------------------
+ /** Sets the directory that the file dialog initially displays.
+
+ @param aDirectory
+ Specifies the initial directory in URL format. The given URL must be
+ conform to <a href="http://www.w3.org/Addressing/rfc1738.txt">Rfc1738</a>).
+
+ @throws com::sun::star::lang::IllegalArgumentException
+ if the URL is invalid (doesn't conform to <a href="http://www.w3.org/Addressing/rfc1738.txt">Rfc1738</a>).
+ */
+ void setDisplayDirectory( [in] string aDirectory )
+ raises( ::com::sun::star::lang::IllegalArgumentException );
+
+ //-------------------------------------------------------------------------
+ /** Returns the directory that the file dialog is currently showing or
+ was last showing before closing the dialog with Ok. If the user
+ did cancel the dialog, the returned value is undefined.
+
+ @returns
+ The directory in URL format, must be conform to <a href="http://www.w3.org/Addressing/rfc1738.txt">Rfc1738</a>.
+ */
+ string getDisplayDirectory();
+
+ //-------------------------------------------------------------------------
+ /** Returns a sequence of the selected files including path information in
+ URL format, conform to <a href="http://www.w3.org/Addressing/rfc1738.txt">Rfc1738</a>.
+
+ <p>If the user closed the dialog with cancel an empty sequence will be
+ returned.</p>
+ <br/>
+ <p>If the dialog is in execution mode and a single file is selected
+ the complete URL of this file will be returned.</p>
+ <p>If the dialog is in execution mode and multiple files are selected
+ an empty sequence will be returned.</p>
+ <p>If the dialog is in execution mode and the selected file name is false
+ or any other error occurs an empty sequence will be returned.</p>
+
+ @returns
+ <p> The complete path of the file or directory currently selected
+ in URL format. There are two different cases:
+ <ol>
+ <li>Multiselection is disabled:
+ The first and only entry of the sequence contains the complete
+ path/filename in URL format.</li>
+
+ <li>Multiselection is enabled:
+ If only one file is selected, the first entry
+ of the sequence contains the complete path/filename in URL format.
+ If multiple files are selected, the first entry of the sequence contains
+ the path in URL format, and the other entries contains the names of the selected
+ files without path information.</li>
+ </ol>
+
+ <br/>
+
+ <p><strong>Notes for the implementation of a FileSave dialog:</strong>If there exists
+ a checkbox "Automatic File Extension" which is checked and a valid filter is currently selected
+ the dialog may automatically add an extension to the selected file name.</p>
+ </p>
+ */
+ sequence< string > getFiles();
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+
+#endif
+
diff --git a/offapi/com/sun/star/ui/dialogs/XFilePicker2.idl b/offapi/com/sun/star/ui/dialogs/XFilePicker2.idl
new file mode 100644
index 000000000000..b80c198a5fa4
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/XFilePicker2.idl
@@ -0,0 +1,75 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_XFilePicker2_idl__
+#define __com_sun_star_ui_dialogs_XFilePicker2_idl__
+
+#ifndef __com_sun_star_ui_dialogs_XFilePicker_idl__
+#include <com/sun/star/ui/dialogs/XFilePicker.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+/** extends file picker interface to workaround some design problems.
+*/
+interface XFilePicker2 : ::com::sun::star::ui::dialogs::XFilePicker
+{
+ //-------------------------------------------------------------------------
+ /** Returns a sequence of the selected files including path information in
+ URL format, conform to <a href="http://www.w3.org/Addressing/rfc1738.txt">Rfc1738</a>.
+
+ <p>If the user closed the dialog with cancel an empty sequence will be returned.</p>
+ <br/>
+
+ <p>If the user closed the dialog with OK a list of all selected files will be returned.</p>
+
+ @attention
+ <p>
+ Instead to the method getFiles() of base interface XFilePicker the new method return
+ full qualified URL's for every selected file.
+ </p>
+
+ @returns
+ <p>A list of all selected file as complete URL's.</p>
+ <br/>
+
+ <p><strong>Notes for the implementation of a FileSave dialog:</strong>If there exists
+ a checkbox "Automatic File Extension" which is checked and a valid filter is currently selected
+ the dialog may automatically add an extension to the selected file name(s).</p>
+ */
+ sequence< string > getSelectedFiles();
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/ui/dialogs/XFilePickerControlAccess.idl b/offapi/com/sun/star/ui/dialogs/XFilePickerControlAccess.idl
new file mode 100644
index 000000000000..1c57cce3243d
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/XFilePickerControlAccess.idl
@@ -0,0 +1,153 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_XFilePickerControlAccess_idl__
+#define __com_sun_star_ui_dialogs_XFilePickerControlAccess_idl__
+
+#ifndef __com_sun_star_ui_dialogs_XFilePicker_idl__
+#include <com/sun/star/ui/dialogs/XFilePicker.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+/** Provides access to the controls of a FilePicker.
+
+ <p> A FilePicker may contain additional elements according to the needs
+ of the different applications. These additional elements can be
+ addressed by this interface.</p>
+
+ @see com::sun::star::ui::dialogs::FilePicker
+*/
+published interface XFilePickerControlAccess: com::sun::star::ui::dialogs::XFilePicker
+{
+
+//-------------------------------------------------------------------------
+/** Set the value of an additional element within a FilePicker.
+
+ @param ControlId
+ Identifies the element which value is to be set.
+
+ @param aControlAction
+ Specifies an action to perform with the given value.
+ aControlAction has to be one of the values defined in <type>ControlActions</type>.
+ Not all of the values are valid for all controls.
+ To add a new filter to the FilePicker use the interface XFilterManager, but
+ optionally an implementation may also support adding new filter using this
+ method.
+
+ @param aValue
+ The value to set. For checkboxes aValue should be a boolean value that
+ should be <TRUE/> if the checkbox should be checked and <FALSE/> otherwise.
+
+ @see com::sun::star::ui::dialogs::CommonFilePickerElementIds
+ @see com::sun::star::ui::dialogs::ExtendedFilePickerElementIds
+ @see com::sun::star::ui::dialogs::ControlActions
+*/
+void setValue( [in] short aControlId, [in] short aControlAction, [in] any aValue );
+
+//-------------------------------------------------------------------------
+/** Get the value of an additional element within a FilePicker
+
+ @param aControlId
+ Identifies the element for which value is requested.
+
+ @param aControlAction
+ Specifies which value to retrieve.
+ aControlAction has to be one of the values defined in <type>ControlActions</type>.
+ Not all of the values are valid for all controls.
+
+ @returns
+ The value of the specified element. If the specified control
+ is a checkbox the returned value is a boolean that is <TRUE/>
+ if the checkbox is checked <FALSE/> otherwise.
+ If the specified element doesn't exist or the specified element
+ doesn't support the specidfied control action an empty any will be
+ returned.
+
+ @see com::sun::star::ui::dialogs::CommonFilePickerElementIds
+ @see com::sun::star::ui::dialogs::ExtendedFilePickerElementIds
+ @see com::sun::star::ui::dialogs::ControlActions
+*/
+any getValue( [in] short aControlId, [in] short aControlAction );
+
+//-------------------------------------------------------------------------
+/** Set the label of the specified element. If the specified element
+ doesn't support setting a label, this method has no effect.
+
+ @param aControlId
+ Identifies the element for which the label should be set.
+
+ @param aLabel
+ The label to be set.
+
+ @see com::sun::star::ui::dialogs::CommonFilePickerElementIds
+ @see com::sun::star::ui::dialogs::ExtendedFilePickerElementIds
+*/
+void setLabel( [in] short aControlId, [in] string aLabel );
+
+//-------------------------------------------------------------------------
+/** Returns the label of the specified element.
+
+ @param aControlId
+ Identifies the element for which the label should be returned.
+
+ @returns
+ The label of the specified element or an empty string if
+ the specified element has no or supports no label or the
+ specified element doesn't exist.
+
+ @see com::sun::star::ui::dialogs::CommonFilePickerElementIds
+ @see com::sun::star::ui::dialogs::ExtendedFilePickerElementIds
+*/
+string getLabel( [in] short aControlId );
+
+//-------------------------------------------------------------------------
+/** Enables or disables a control.
+
+ @param ControlId
+ Identifies the control.
+
+ @param bEnable
+ <p>If <TRUE/> the specified control will be enabled.</p>
+ <p>If <FALSE/> the specified control will be disabled.</p>
+
+ @see com::sun::star::ui::dialogs::CommonFilePickerElementIds
+ @see com::sun::star::ui::dialogs::ExtendedFilePickerElementIds
+*/
+void enableControl( [in] short aControlId, [in] boolean bEnable );
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+
+#endif
+
diff --git a/offapi/com/sun/star/ui/dialogs/XFilePickerListener.idl b/offapi/com/sun/star/ui/dialogs/XFilePickerListener.idl
new file mode 100644
index 000000000000..cacdcd1afde5
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/XFilePickerListener.idl
@@ -0,0 +1,120 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_XFilePickerListener_idl__
+#define __com_sun_star_ui_dialogs_XFilePickerListener_idl__
+
+#ifndef __com_sun_star_lang_XEventListener_idl__
+#include <com/sun/star/lang/XEventListener.idl>
+#endif
+
+#ifndef __com_sun_star_ui_dialogs_FilePickerEvent_idl__
+#include <com/sun/star/ui/dialogs/FilePickerEvent.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+
+//=============================================================================
+/** Interface to be implemented by a FilePicker listener.
+
+ <p> The <type>XFilePickerListener</type> interface must be implemented by
+ the clients of the FilePicker service which need to be informed about
+ events while the FilePicker service is displayed.</p>
+*/
+
+published interface XFilePickerListener: com::sun::star::lang::XEventListener
+{
+ //-------------------------------------------------------------------------
+ /** A client receives this event if the file selection within the
+ FilePicker service dialog changes.
+
+ @param aEvent
+ of type <type>FilePickerEvent</type> that describes the event
+
+ @see com::sun::star::ui::dialogs::FilePickerEvent
+ */
+ void fileSelectionChanged( [in] FilePickerEvent aEvent );
+
+
+ //-------------------------------------------------------------------------
+ /** A client receives this event if the directory selection within the
+ FilePicker dialog changes.
+
+ @param aEvent
+ Of type <type>FilePickerEvent</type> that describes the event.
+
+ @see com::sun::star::ui::dialogs::FilePickerEvent
+ */
+ void directoryChanged( [in] FilePickerEvent aEvent );
+
+ //-------------------------------------------------------------------------
+ /** A client receives this event if the F1 key or the help button was
+ pressed.
+
+ @param aEvent
+ of type <type>FilePickerEvent</type> that describes the event
+
+ @returns
+ A help string which the FilePicker dialog should use to display
+ a help for a specific control. If the returned string is empty it is
+ undefined how the FilePicker implementation will behave.
+ It may show a message 'no help available' or may show no
+ help at all.
+
+ @see com::sun::star::ui::dialogs::FilePickerEvent
+ */
+ string helpRequested( [in] FilePickerEvent aEvent );
+
+ //-------------------------------------------------------------------------
+ /** A client receives this event if the state of a control within the
+ FilePicker service dialog changes.
+
+ @param aEvent
+ of type <type>FilePickerEvent</type> that describes the event.
+
+ @see com::sun::star::ui::dialogs::FilePickerEvent
+ */
+ void controlStateChanged( [in] FilePickerEvent aEvent );
+
+ //-------------------------------------------------------------------------
+ /** A client receives this event if the size of the FilePicker dialog
+ has changed. If the FilePicker dialog contains a preview the client
+ may ask for the new dimension of the preview area.
+ */
+ void dialogSizeChanged( );
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+
+#endif
diff --git a/offapi/com/sun/star/ui/dialogs/XFilePickerNotifier.idl b/offapi/com/sun/star/ui/dialogs/XFilePickerNotifier.idl
new file mode 100644
index 000000000000..862e92b7084d
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/XFilePickerNotifier.idl
@@ -0,0 +1,75 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_XFilePickerNotifier_idl__
+#define __com_sun_star_ui_dialogs_XFilePickerNotifier_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_ui_dialogs_XFilePickerListener_idl__
+#include <com/sun/star/ui/dialogs/XFilePickerListener.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+
+//=============================================================================
+/** Interface to be implemented in order to support listener management.
+*/
+published interface XFilePickerNotifier: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** Interface for clients to register as XFilePickerListener
+
+ @param xListener
+ The <type>XFilePickerListener</type> interface of the listener that
+ wants to receive events of type <type>FilePickerEvent</type>.
+ <p>Invalid interfaces or NULL values will be ignored.</p>
+ */
+ [oneway] void addFilePickerListener( [in] XFilePickerListener xListener );
+
+ //-------------------------------------------------------------------------
+ /** Interface for clients to unregister as XFilePickerListener.
+
+ @param xListener
+ The <type>XFilePickerListener</type> interface of the listener that
+ wants to receive events of type <type>FilePickerEvent</type>.
+ <p>Invalid interfaces or NULL values will be ignored.</p>
+ */
+ [oneway] void removeFilePickerListener( [in] XFilePickerListener xListener );
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/ui/dialogs/XFilePreview.idl b/offapi/com/sun/star/ui/dialogs/XFilePreview.idl
new file mode 100644
index 000000000000..935b1528db1e
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/XFilePreview.idl
@@ -0,0 +1,144 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_XFilePreview_idl__
+#define __com_sun_star_ui_dialogs_XFilePreview_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_util_Color_idl__
+#include <com/sun/star/util/Color.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+/** FilePicker that support the preview of various file formats should implement
+ this interface.
+*/
+
+published interface XFilePreview: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** The method returns all image formats that the preview supports.
+
+ @returns
+ A sequence of all supported preview formats
+
+ @see com::sun::star::ui::dialogs::FilePreviewImageFormats
+ */
+ sequence< short > getSupportedImageFormats( );
+
+ //-------------------------------------------------------------------------
+ /** The method returns the supported color depth of the target device.
+
+ @returns
+ The color depth in bit, e.g. 8 bit, 16 bit, 32 bit.
+ */
+ com::sun::star::util::Color getTargetColorDepth( );
+
+ //-------------------------------------------------------------------------
+ /** The method returns the available width of the preview window
+ even if the window is invisible or could not be created.
+ If a service implementation doesn't support a file preview
+ 0 will be returned.
+
+ @returns
+ The width of the preview window in pixel.
+ */
+ long getAvailableWidth( );
+
+ //-------------------------------------------------------------------------
+ /** The method returns the available height of the preview window
+ even if the window is invisible or could not be created.
+ If a service implementation doesn't support a file preview
+ 0 will be returned.
+
+ @returns
+ The heigth of the preview window in pixel.
+ */
+ long getAvailableHeight( );
+
+ //-------------------------------------------------------------------------
+ /** Sets a new image. If the preview is currently hidden the
+ image will be ignored. An empty any will clear the preview window.
+
+ @param aImageFormat
+ Specifies the format of the data that will be delivered
+
+ @param aImage
+ The image data, the image format defines how
+ the image data have to be delivered
+
+ @throws com::sun::star::lang::IllegalArgumentException
+ If the specified image format is invalid or not
+ supported by the preview implementation
+
+ @see com::sun::star::ui::dialogs::FilePreviewImageFormats
+ */
+ void setImage( [in] short aImageFormat, [in] any aImage )
+ raises( ::com::sun::star::lang::IllegalArgumentException );
+
+ //-------------------------------------------------------------------------
+ /** Optionally sets the current show state of the preview. It is possible
+ that the preview implementation doesn't support hiding the preview.
+
+ @param bShowState
+ A value of <TRUE/> shows the preview window.
+ <p>A value of <FALSE/> hides the preview window.</p>
+
+ @returns
+ A value of <TRUE/> on success.
+ <p>A vaue of <FALSE/> if the operation fails for any reason or the preview
+ implementation doesn't support hiding the preview.</p>
+ */
+ boolean setShowState( [in] boolean bShowState );
+
+ //-------------------------------------------------------------------------
+ /** Returns the current show state of the preview.
+
+ @returns
+ A value of <TRUE/> if the preview window is visible.
+ <p>A value of <FALSE/> if the preview window is invisible.</p>
+ */
+ boolean getShowState( );
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+
+#endif
diff --git a/offapi/com/sun/star/ui/dialogs/XFilterGroupManager.idl b/offapi/com/sun/star/ui/dialogs/XFilterGroupManager.idl
new file mode 100644
index 000000000000..75e5b6458f3d
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/XFilterGroupManager.idl
@@ -0,0 +1,80 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_beans_StringPair_idl__
+#include <com/sun/star/beans/StringPair.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+/** Specifies an interface which allows manipulation of groups of filters
+ for the <type>FilePicker</type> service.
+*/
+published interface XFilterGroupManager : com::sun::star::uno::XInterface
+{
+ /** Appends a group of filters to the current filter list.
+
+ <p>It is implementation dependent how the filter groups are presented to the user.<br/>
+ It is not even guaranteed that the groups are visualized: implementations are free to simply
+ append all the filters separately, with ignoring the group title.</p>
+
+ @param sGroupTitle
+ The title of the filter group. Usually, the caller should localize this title, as it is to be presented to
+ the user.
+
+ @param aFilters
+ The filters which form a group. Every filter consists of two strings, where the first one is a display name
+ (as for <arg>sGroupTitle</arg>, it holds that these strings should be localized), and the second one the
+ semicolon separated list of wildcard expressions for the filter.<br/>
+ Usually, the expressions are simply extensions (e.g. "*.txt"), but this must no necessarily be the case.
+
+ @throws com::sun::star::lang::IllegalArgumentException
+ if one or more filters in the given filter list already exist.
+
+ @see com::sun::star::ui::dialogs::XFilterManager
+ @see com::sun::star::ui::dialogs::FilePicker
+ */
+ void appendFilterGroup(
+ [in] string sGroupTitle,
+ [in] sequence< com::sun::star::beans::StringPair > aFilters
+ )
+ raises( com::sun::star::lang::IllegalArgumentException );
+};
+
+//.............................................................................
+}; }; }; }; };
+//.............................................................................
+
diff --git a/offapi/com/sun/star/ui/dialogs/XFilterManager.idl b/offapi/com/sun/star/ui/dialogs/XFilterManager.idl
new file mode 100644
index 000000000000..8e418b7519f0
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/XFilterManager.idl
@@ -0,0 +1,97 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_XFilterManager_idl__
+#define __com_sun_star_ui_dialogs_XFilterManager_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+/** Specifies a filter manager interface for a FilePicker
+*/
+
+published interface XFilterManager: com::sun::star::uno::XInterface
+{
+
+ //-------------------------------------------------------------------------
+ /** Adds a filter identified by a title.
+
+ @param aTitle
+ Specifies the name of the filter as shown in the filter box of the
+ FilePicker dialog.
+
+ @param aFilter
+ Specifies the extensions of the filter. Multiple filters should be
+ semicolon separated. The semicolon may not be used as character in
+ a filter expresion. A typical filter is for instance '*.txt'.
+
+ @throws ::com::sun::star::lang::IllegalArgumentException
+ If a filter with the specified title already exists.
+
+ */
+ void appendFilter( [in] string aTitle, [in] string aFilter )
+ raises( ::com::sun::star::lang::IllegalArgumentException );
+
+ //-------------------------------------------------------------------------
+ /** Sets the current filter.
+
+ @param aTitle
+ Specifies the name of the filter to be set.
+
+ @throws com::sun::star::lang::IllegalArgumentException
+ If the specified filter was not found.
+ */
+ void setCurrentFilter( [in] string aTitle )
+ raises( ::com::sun::star::lang::IllegalArgumentException );
+
+ //-------------------------------------------------------------------------
+ /** Returns the currently selected filter.
+
+ @returns
+ The name of the selected filter or an empty string if
+ there is no filter or no filter is currently selected.
+ */
+ string getCurrentFilter( );
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+
+#endif
+
diff --git a/offapi/com/sun/star/ui/dialogs/XFolderPicker.idl b/offapi/com/sun/star/ui/dialogs/XFolderPicker.idl
new file mode 100644
index 000000000000..2265ecab2346
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/XFolderPicker.idl
@@ -0,0 +1,100 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_ui_dialogs_XFolderPicker_idl__
+#define __com_sun_star_ui_dialogs_XFolderPicker_idl__
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_ui_dialogs_XExecutableDialog_idl__
+#include <com/sun/star/ui/dialogs/XExecutableDialog.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//=============================================================================
+/** Specifies a FolderPicker interface.
+*/
+
+published interface XFolderPicker: com::sun::star::ui::dialogs::XExecutableDialog
+{
+ //-------------------------------------------------------------------------
+ /** Sets the root directory that the FolderPicker should display.
+ It is not specified which root directory the FolderPicker
+ chooses if the specified root directory doesn't exist.
+
+ @param aDirectory
+ Specifies the root directory in url format, conform to <a href="http://www.w3.org/Addressing/rfc1738.txt">Rfc1738</a>.
+
+ @throws com::sun::star::lang::IllegalArgumentException
+ if the given url is invalid.
+ */
+ void setDisplayDirectory( [in] string aDirectory )
+ raises( ::com::sun::star::lang::IllegalArgumentException );
+
+ //-------------------------------------------------------------------------
+ /** Returns the root directory that the FolderPicker is showing. The
+ return value is undefined if the client did not choose a root directory
+ or the previously specified root directory doesn't exist.
+
+ @returns
+ The directory in url format.
+ */
+ string getDisplayDirectory();
+
+ //-------------------------------------------------------------------------
+ /** Returns the selected directory as url conform to <a href="http://www.w3.org/Addressing/rfc1738.txt">Rfc1738</a>.
+
+ @returns
+ The selected directory as url if the user did close the dialog with ok
+ else the returned value is undefined.
+ */
+ string getDirectory( );
+
+ //-------------------------------------------------------------------------
+ /** The implementation may optionally show the given text as a description
+ for the user within the dialog, e.g. "Please select a directory".
+ If the client doesn't set a description the dialog may show a default
+ description.
+ */
+ void setDescription( [in] string aDescription );
+};
+
+//=============================================================================
+
+}; }; }; }; };
+
+
+#endif
+
diff --git a/offapi/com/sun/star/ui/dialogs/XWizard.idl b/offapi/com/sun/star/ui/dialogs/XWizard.idl
new file mode 100644
index 000000000000..debe91072ba4
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/XWizard.idl
@@ -0,0 +1,228 @@
+/*************************************************************************
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_XWizard_idl__
+#define __com_sun_star_ui_dialogs_XWizard_idl__
+
+#include <com/sun/star/ui/dialogs/XExecutableDialog.idl>
+#include <com/sun/star/util/InvalidStateException.idl>
+#include <com/sun/star/container/NoSuchElementException.idl>
+#include <com/sun/star/awt/XWindow.idl>
+
+//==================================================================================================================
+module com { module sun { module star { module ui { module dialogs {
+
+//==================================================================================================================
+
+published interface XWizardPage;
+
+/** is the main interface implemented by the <type>Wizard</type> services.
+
+ <p>A wizard is a dialog which guides the user through a number of tasks (usually input of data), which the user can
+ accomplish either sequentially or out-of-order. For this, a wizard is comprised of a number of tab pages,
+ each page representing a single <em>step</em>.</p>
+
+ <p>Sequential navigation in a wizard is done via a <em>Next</em> and a <em>Back</em> button. Non-sequential navigation
+ is done via a roadmap, which is displayed on the left hand side of the wizard dialog, lists all available
+ steps, and allows jumping to a certain step (where the creator of the wizard can restrict the available steps
+ depending on the current situation in the wizard, see below).</p>
+
+ <p>A sequence of steps in a wizard dialog is called a <em>path</em>. A given wizard can support one or multiple paths,
+ which are declared at the time of construction of the wizard.</p>
+
+ <p>In the simplest case, where the wizard supports only one path, all available steps are displayed in the roadmap,
+ and the user can simply travel through them as desired.</p>
+
+ <p>If the wizard is more complex, and supports multiple paths, things become more complicated. In a given situation
+ of the wizard, where the user is at step <em>k</em> of the current path, the <em>potential</em> or <em>conflicting</em>
+ paths are those whose first <em>k</em> steps are the same as in the current path. Obviously, there's at least one
+ potential path in every situation: the current one. If there is more than one, then the future steps in the dialog
+ are not finally decided. In such a case, the roadmap will display future steps up to the point where the potential
+ paths diverge, and then an item <quot><code>...</code></quot> indicating that the order of steps is undecided.</p>
+
+ <p>An <type>XWizardController</type> can declare a certain path as active path by calling the <member>activatePath</member>
+ method. Usually, this is done depending on user input. For instance, your wizard could have radio buttons on the
+ first page which effectively decide about which path to take in the wizard.</p>
+
+ <p>Single steps in the wizard can be freely enabled and disabled, using the <member>enablePage</member> method.
+ Disabled pages are skipped during sequential traveling, and not selectable in the roadmap.</p>
+
+ <p>The state of the <em>Next</em> button in the dialog will be automatically maintained in most situations,
+ depending on the results of calls to the <member>XWizardController::canAdvance</member> and <member>XWizardPage::canAdvance</member>
+ methods. More sophisticated wizard logic, however, will need manual calls to the <member>enableButton</member> method.
+ Also, the <em>Finish</em> button needs to be maintained by the wizard's controller, too, as it cannot be decided
+ generically in which situations it should be enabled or disabled.</p>
+
+ @see XWizardController
+ @see XWizardPage
+ */
+published interface XWizard
+{
+ interface XExecutableDialog;
+
+ /** is the help URL of the wizard's main window.
+ */
+ [attribute] string HelpURL;
+
+ [attribute, readonly] ::com::sun::star::awt::XWindow
+ DialogWindow;
+
+ /** provides access to the current page of the wizard
+ */
+ XWizardPage
+ getCurrentPage();
+
+ /** enables or disables a certain button in the wizard
+
+ <p>Normally, you will want to use this method for the <em>Finish</em> button only: The <em>Next</em>
+ and <em>Back</em> buttons are usually maintained automatically, the <em>Help</em> and <em>Cancel</em>
+ buttons are unlikely to ever being disabled.</p>
+
+ @param WizardButton
+ denotes the button to enable or disable, as one of the <type>WizardButton</type> constants. Must not be
+ <member>WizardButton::NONE</member>.
+ @param Enable
+ specifies whether the button should be enabled (<TRUE/>) or disabled (<FALSE/>)
+ */
+ void enableButton( [in] short WizardButton, [in] boolean Enable );
+
+ /** sets a button in the wizard as default button
+
+ <p>In general, the default button in a wizard is the one which is activated when the user presses
+ the <em>return</em> key while the focus is in a control which does not handle this key itself (such as
+ ordinary input controls).</p>
+
+ <p>You can use this method, for instance, to make the <em>Next</em> button the default button on all pages
+ except the last one, where <em>Finish</em> should be defaulted.</p>
+ */
+ void setDefaultButton( [in] short WizardButton );
+
+ /** travels to the next page, if possible
+
+ <p>Calling this method is equivalent to the user pressing the <em>Next</em> button in the wizard. Consequently,
+ the method will fail if in the current state of the wizard, it is not allowed to advance to a next page.</p>
+ */
+ boolean travelNext();
+
+ /** travels to the next page, if possible
+
+ <p>Calling this method is equivalent to the user pressing the <em>Back</em> button in the wizard.</p>
+ */
+ boolean travelPrevious();
+
+ /** enables or disables the given page
+
+ <p>You can use this method when not all pages of your wizard are necessarily needed in all cases. For instance,
+ assume that your first wizard page contains a check box, which the user can check to enter additional data.
+ If you place this data on the second page, then you will want to enable this second page if and only if the
+ checkbox is checked.</p>
+
+ <p>If a page is disabled, it can reached neither by clicking the respective item in the wizard's roadmap,
+ nor by sequential traveling. Still, the page's item is displayed in the roadmap, though disabled.</p>
+
+ @throws ::com::sun::star::container::NoSuchElementException
+ if there is no page with the given ID
+ @throws ::com::sun::star::util::InvalidStateException
+ if the page shall be disabled, but is active currently.
+ */
+ void enablePage( [in] short PageID, [in] boolean Enable )
+ raises ( ::com::sun::star::container::NoSuchElementException
+ , ::com::sun::star::util::InvalidStateException );
+
+ /** updates the wizard elements which are related to traveling.
+
+ <p>For instance, the <em>Next</em> button is disabled if the current page's <member>XWizardPage::canAdvance</member>
+ method returns <FALSE/>.</p>
+
+ <p>You usually call this method from within a wizard page whose state changed in a way that it affects the
+ user's ability to reach other pages.</p>
+ */
+ void updateTravelUI();
+
+ /** advances to the given page, if possible.
+
+ <p>Calling this method is equivalent to the user repeatedly pressing the <em>Next</em> button, until the
+ given page is reached. Consequently, the method will fail if one of the intermediate pages does not allow
+ advancing to the next page.</p>
+ */
+ boolean advanceTo( [in] short PageId );
+
+ /** goes back to the given page, if possible.
+
+ <p>Calling this method is equivalent to the user repeatedly pressing the <em>Back</em> button, until the
+ given page is reached.</p>
+ */
+ boolean goBackTo( [in] short PageId );
+
+ /** activates a path
+
+ <p>If the wizard has been created with multiple paths of control flow, then this method allows switching to
+ another path.</p>
+
+ <p>You can only activate a path which shares the first <code>k</code> pages with the path
+ which is previously active (if any), where <code>k</code> is the index of the current page within the current
+ path.</p>
+
+ <p><strong>Example</strong>: Say you have paths, <code>(0,1,2,5)</code> and <code>(0,1,4,5)</code> (with
+ the numbers denoting page IDs). This means that after page <code>1</code>, you either continue with page
+ <code>2</code> or state <code>4</code>,and after this, you finish in state <code>5</code>.<br/>
+ Now if the first path is active, and your current state is <code>1</code>, then you can easily switch to the
+ second path, since both paths start with <code>(0,1)</code>.<br/>
+ However, if your current state is <code>2</code>, then you can not switch to the second path anymore.</p>
+
+ @param PathIndex
+ the index of the path, as used in the <member>Wizard::createMultiplePathsWizard</member> constructor.
+ @param Final
+ <p>If <TRUE/>, the path will be completely activated, even if it is a conflicting path (i.e. there is another
+ path which shares the first <code>k</code> states with the to-be-activated path.)</p>
+
+ <p>If <FALSE/>, then the new path is checked for conflicts with other paths. If such conflicts exists, the path
+ is not completely activated, but only up to the point where it does <em>not</em> conflict.</p>
+
+ <p>In this latter case, you need another activatePath method (usually triggered by the user doing some decisions
+ and entering some data on the reachable pages) before the wizard can actually be finished.</p>
+
+ <p>With the paths in the example above, if you activate the second path, then only steps <code>0</code> and
+ <code>1</code> are activated, since they are common to both paths. Steps <code>2</code>, <code>4</code>,
+ and <code>5</code> are not reachable, yet.</p>
+
+ @throws ::com::sun::star::container::NoSuchElementException
+ if there is no path with the given index
+ @throws ::com::sun::star::util::InvalidStateException
+ if the path cannot be activated in the current state of the wizard.
+ */
+ void activatePath( [in] short PathIndex, [in] boolean Final )
+ raises ( ::com::sun::star::container::NoSuchElementException
+ , ::com::sun::star::util::InvalidStateException );
+};
+
+//==================================================================================================================
+
+}; }; }; }; };
+
+//==================================================================================================================
+
+#endif
diff --git a/offapi/com/sun/star/ui/dialogs/XWizardController.idl b/offapi/com/sun/star/ui/dialogs/XWizardController.idl
new file mode 100644
index 000000000000..2ada9c1e715d
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/XWizardController.idl
@@ -0,0 +1,85 @@
+/*************************************************************************
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_XWizardController_idl__
+#define __com_sun_star_ui_dialogs_XWizardController_idl__
+
+#include <com/sun/star/ui/dialogs/XWizardPage.idl>
+
+//==================================================================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//==================================================================================================================
+
+/** is the interface of a client-provided controller of a custom <type>Wizard</type>.
+ */
+published interface XWizardController
+{
+ /** creates a page
+
+ <p>Wizard pages are created on demand, when the respective page is reached during traveling through the
+ wizard. Effectively, this means the method is called at most once for each possible page ID.</p>
+
+ @param ParentWindow
+ the parent window to use for the page window
+ @param PageId
+ the ID of the page.
+ @return
+ the requested page.
+ */
+ XWizardPage createPage( [in] ::com::sun::star::awt::XWindow ParentWindow, [in] short PageId );
+
+ /** provides the title of a page given by ID
+
+ <p>The page titles are displayed in the wizard's roadmap.</p>
+ */
+ string getPageTitle( [in] short PageId );
+
+ boolean canAdvance();
+
+ /** called when a new page in the wizard is being activated
+ */
+ void onActivatePage( [in] short PageId );
+
+ /** called when a page in the wizard is being deactivated
+ */
+ void onDeactivatePage( [in] short PageId );
+
+ /** called when the wizard is about to be finished.
+
+ <p>This method allows the controller to do any final checks, and ultimatively veto finishing the wizard.</p>
+ */
+ boolean confirmFinish();
+};
+
+//==================================================================================================================
+
+}; }; }; }; };
+
+//==================================================================================================================
+
+#endif
diff --git a/offapi/com/sun/star/ui/dialogs/XWizardPage.idl b/offapi/com/sun/star/ui/dialogs/XWizardPage.idl
new file mode 100644
index 000000000000..64b9f807da29
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/XWizardPage.idl
@@ -0,0 +1,86 @@
+/*************************************************************************
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ui_dialogs_XWizardPage_idl__
+#define __com_sun_star_ui_dialogs_XWizardPage_idl__
+
+#include <com/sun/star/awt/XWindow.idl>
+
+//==================================================================================================================
+
+module com { module sun { module star { module ui { module dialogs {
+
+//==================================================================================================================
+
+/** is a single page of a <type>Wizard</type>
+ */
+published interface XWizardPage : ::com::sun::star::lang::XComponent
+{
+ /** provides read-only access to the window of the page
+ */
+ [attribute, readonly] ::com::sun::star::awt::XWindow Window;
+
+ /** denotes the ID of the page.
+
+ <p>Within a wizard, no two pages are allowed to have the same ID.</p>
+ */
+ [attribute, readonly] short PageId;
+
+ /** called when the page is activated
+ */
+ void activatePage();
+
+ /** is called when the page is about to be left
+
+ <p>An implementation can veto the leave by returning <FALSE/> here. Usually, the decision about this
+ depends on the current state of the page.</p>
+
+ @param Reason
+ is one of the <type>WizardTravelType</type> contants denoting the reason why the page should be
+ committed.
+ */
+ boolean commitPage( [in] short Reason );
+
+ /** determines whether it is allowed to travel to a later page in the wizard
+
+ <p>You should base this decision on the state of the page only, not on a global state of the wizard. Usually,
+ you return <FALSE/> here if and only if not all necessary input on the page has been provided by the user,
+ or the provided input is not valid.</p>
+
+ <p>If checked for validity is expensive, or if you prefer giving your user more detailed feedback on validity
+ than a disabled <code>Next</code> button in the wizard, then move your checks to the <member>commitPage</member>
+ method.</p>
+ */
+ boolean canAdvance();
+};
+
+//==================================================================================================================
+
+}; }; }; }; };
+
+//==================================================================================================================
+
+#endif
diff --git a/offapi/com/sun/star/ui/dialogs/makefile.mk b/offapi/com/sun/star/ui/dialogs/makefile.mk
new file mode 100644
index 000000000000..07d762fb0ec6
--- /dev/null
+++ b/offapi/com/sun/star/ui/dialogs/makefile.mk
@@ -0,0 +1,79 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=..$/..$/..$/..$/..
+
+PRJNAME=offapi
+
+TARGET=cssuidialogs
+PACKAGE=com$/sun$/star$/ui$/dialogs
+
+# --- Settings -----------------------------------------------------
+.INCLUDE : $(PRJ)$/util$/makefile.pmk
+
+# ------------------------------------------------------------------------
+
+IDLFILES=\
+ FilterOptionsDialog.idl\
+ ControlActions.idl\
+ ExecutableDialogException.idl\
+ ExecutableDialogResults.idl\
+ XExecutableDialog.idl\
+ CommonFilePickerElementIds.idl\
+ ExtendedFilePickerElementIds.idl\
+ FilePicker.idl\
+ FilePickerEvent.idl\
+ FilePreviewImageFormats.idl\
+ FolderPicker.idl\
+ ListboxControlActions.idl\
+ TemplateDescription.idl\
+ XFilePicker.idl\
+ XFilePicker2.idl\
+ XFilePickerControlAccess.idl \
+ XFilePickerListener.idl\
+ XFilePickerNotifier.idl\
+ XFilePreview.idl\
+ XFilterGroupManager.idl\
+ XFilterManager.idl\
+ XFolderPicker.idl\
+ XControlAccess.idl\
+ XControlInformation.idl \
+ XAsynchronousExecutableDialog.idl \
+ XDialogClosedListener.idl \
+ DialogClosedEvent.idl \
+ XWizard.idl \
+ XWizardController.idl \
+ Wizard.idl \
+ XWizardPage.idl \
+ WizardButton.idl \
+ WizardTravelType.idl
+
+# ------------------------------------------------------------------
+
+.INCLUDE : target.mk
+.INCLUDE : $(PRJ)$/util$/target.pmk
+