diff options
Diffstat (limited to 'offapi/com/sun/star/ui/dialogs')
28 files changed, 2685 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/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/makefile.mk b/offapi/com/sun/star/ui/dialogs/makefile.mk new file mode 100644 index 000000000000..fa11ba35e173 --- /dev/null +++ b/offapi/com/sun/star/ui/dialogs/makefile.mk @@ -0,0 +1,73 @@ +#************************************************************************* +# +# 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 + +# ------------------------------------------------------------------ + +.INCLUDE : target.mk +.INCLUDE : $(PRJ)$/util$/target.pmk + |