summaryrefslogtreecommitdiffstats
path: root/offapi/com/sun/star/gallery
diff options
context:
space:
mode:
Diffstat (limited to 'offapi/com/sun/star/gallery')
-rw-r--r--offapi/com/sun/star/gallery/GalleryItem.idl83
-rw-r--r--offapi/com/sun/star/gallery/GalleryItemType.idl51
-rw-r--r--offapi/com/sun/star/gallery/GalleryTheme.idl46
-rw-r--r--offapi/com/sun/star/gallery/GalleryThemeProvider.idl60
-rw-r--r--offapi/com/sun/star/gallery/XGalleryItem.idl48
-rw-r--r--offapi/com/sun/star/gallery/XGalleryTheme.idl151
-rw-r--r--offapi/com/sun/star/gallery/XGalleryThemeProvider.idl76
7 files changed, 515 insertions, 0 deletions
diff --git a/offapi/com/sun/star/gallery/GalleryItem.idl b/offapi/com/sun/star/gallery/GalleryItem.idl
new file mode 100644
index 000000000..848973e99
--- /dev/null
+++ b/offapi/com/sun/star/gallery/GalleryItem.idl
@@ -0,0 +1,83 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef __com_sun_star_gallery_GalleryItem_idl__
+#define __com_sun_star_gallery_GalleryItem_idl__
+
+#include <com/sun/star/gallery/XGalleryItem.idl>
+#include <com/sun/star/beans/XPropertySet.idl>
+#include <com/sun/star/graphic/XGraphic.idl>
+#include <com/sun/star/lang/XComponent.idl>
+
+
+module com { module sun { module star { module gallery {
+
+
+/** service to get access to the properties of a single Gallery item
+ */
+service GalleryItem
+{
+ interface ::com::sun::star::gallery::XGalleryItem;
+
+ interface ::com::sun::star::beans::XPropertySet;
+
+ /** The type of the Gallery item
+
+ @see GalleryItemType
+ */
+ [readonly, property] byte GalleryItemType;
+
+ /** the URL of the Gallery item
+
+ <p>The interpretation of the URL depends on the type
+ of the Gallery item. In case of graphic and media items,
+ the URL is a "real" URL, in case of drawings it is a private
+ URL</p>
+ */
+ [readonly, property] string URL;
+
+ /** the title of the Gallery item
+ */
+ [property] string Title;
+
+ /** the thumbnail of the Gallery item
+
+ <p>The thumbnail may be either a pixel or a vector graphic</p>
+ */
+ [readonly, property] com::sun::star::graphic::XGraphic Thumbnail;
+
+ /** the graphic content of the Gallery item
+
+ <p>This is an optional property and may not available for every item</p>
+ */
+ [optional, readonly, property ] ::com::sun::star::graphic::XGraphic Graphic;
+
+ /** the drawing content of the Gallery item
+
+ <p>This is an optional property and may not available for every item</p>
+ */
+ [optional, readonly, property ] ::com::sun::star::lang::XComponent Drawing;
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/gallery/GalleryItemType.idl b/offapi/com/sun/star/gallery/GalleryItemType.idl
new file mode 100644
index 000000000..f598a2a7d
--- /dev/null
+++ b/offapi/com/sun/star/gallery/GalleryItemType.idl
@@ -0,0 +1,51 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef __com_sun_star_gallery_GalleryItemType_idl__
+#define __com_sun_star_gallery_GalleryItemType_idl__
+
+module com { module sun { module star { module gallery {
+
+/** Constants that describe the type of graphic
+*/
+constants GalleryItemType
+{
+ /** Item is empty
+ */
+ const byte EMPTY = 0;
+
+ /** Item represents a graphic
+ */
+ const byte GRAPHIC = 1;
+
+ /** Item represents a media file
+ */
+ const byte MEDIA = 2;
+
+ /** Item represents a drawing
+ */
+ const byte DRAWING = 3;
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/gallery/GalleryTheme.idl b/offapi/com/sun/star/gallery/GalleryTheme.idl
new file mode 100644
index 000000000..c59f6de89
--- /dev/null
+++ b/offapi/com/sun/star/gallery/GalleryTheme.idl
@@ -0,0 +1,46 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef __com_sun_star_gallery_GalleryTheme_idl__
+#define __com_sun_star_gallery_GalleryTheme_idl__
+
+#include <com/sun/star/gallery/XGalleryTheme.idl>
+
+
+module com { module sun { module star { module gallery {
+
+
+/** provides access to a container of Gallery items and makes it
+ possible for you to manipulate them.
+
+ @see XGalleryTheme
+ */
+service GalleryTheme
+{
+ /** lets you access and create Gallery items
+ */
+ interface com::sun::star::gallery::XGalleryTheme;
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/gallery/GalleryThemeProvider.idl b/offapi/com/sun/star/gallery/GalleryThemeProvider.idl
new file mode 100644
index 000000000..c8bc257c6
--- /dev/null
+++ b/offapi/com/sun/star/gallery/GalleryThemeProvider.idl
@@ -0,0 +1,60 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef __com_sun_star_gallery_GalleryThemeProvider_idl__
+#define __com_sun_star_gallery_GalleryThemeProvider_idl__
+
+#include <com/sun/star/gallery/XGalleryThemeProvider.idl>
+#include <com/sun/star/lang/XInitialization.idl>
+
+
+module com { module sun { module star { module gallery {
+
+
+/** provides access to a container of GalleryThemes
+ and makes it possible for you to manipulate them.
+
+ @see XGalleryThemeProvider
+ */
+service GalleryThemeProvider
+{
+ /** lets you access and create GalleryThemes
+ */
+ interface com::sun::star::gallery::XGalleryThemeProvider;
+
+ /** allows initializing the provider
+ <p>You do not need to call the initialize method directly, instead you may use the createInstanceWithArguments
+ method of your com::sun::star::lang::XMultiServiceFactory.</p>
+
+ <p>You specify a parameter by passing one (or more)
+ com::sun::star::beans::PropertyValue
+ object(s) to the initialize method, where the <em>Name</em> field contains a string describing which aspect
+ you want to affect, and the <em>Value</em> field containing a value.</p>
+
+ <p>Currently, there are no public properties available</p>
+ */
+ interface com::sun::star::lang::XInitialization;
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/gallery/XGalleryItem.idl b/offapi/com/sun/star/gallery/XGalleryItem.idl
new file mode 100644
index 000000000..6687b8354
--- /dev/null
+++ b/offapi/com/sun/star/gallery/XGalleryItem.idl
@@ -0,0 +1,48 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef __com_sun_star_gallery_XGalleryItem_idl__
+#define __com_sun_star_gallery_XGalleryItem_idl__
+
+#include <com/sun/star/uno/XInterface.idl>
+
+
+module com { module sun { module star { module gallery {
+
+
+/** provides access to a single item of a Gallery theme.
+ */
+interface XGalleryItem : com::sun::star::uno::XInterface
+{
+ /** retrieves the type of the Gallery item
+
+ @returns
+ The type of the Gallery item
+
+ @see GalleryItemType
+ */
+ byte getType();
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/gallery/XGalleryTheme.idl b/offapi/com/sun/star/gallery/XGalleryTheme.idl
new file mode 100644
index 000000000..749def1d7
--- /dev/null
+++ b/offapi/com/sun/star/gallery/XGalleryTheme.idl
@@ -0,0 +1,151 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef __com_sun_star_gallery_XGalleryTheme_idl__
+#define __com_sun_star_gallery_XGalleryTheme_idl__
+
+#include <com/sun/star/container/XIndexAccess.idl>
+#include <com/sun/star/lang/XComponent.idl>
+#include <com/sun/star/lang/IndexOutOfBoundsException.idl>
+#include <com/sun/star/lang/WrappedTargetException.idl>
+#include <com/sun/star/graphic/XGraphic.idl>
+#include <com/sun/star/gallery/XGalleryItem.idl>
+
+
+module com { module sun { module star { module gallery {
+
+
+/** provides access to the items of a Gallery themes. It also allows
+ inserting and removing of single items.
+
+ <p>This interface extends the interface
+ com::sun::star::container::XIndexAccess which provides
+ access to existing Gallery items collection.</p>
+
+ @see com::sun::star::container::XIndexAccess
+ @see com::sun::star::sheet::DataPilotTable
+ */
+interface XGalleryTheme : com::sun::star::container::XIndexAccess
+{
+ /** retrieves the name of the Gallery theme
+
+ @returns
+ The name of the Gallery theme
+ */
+ string getName();
+
+ /** updates the theme
+
+ <p>This method iterates over each item of the Gallery theme
+ and updates it accordingly. Main purpose is to automatically
+ regenerate the thumbnails and to remove invalid items, that is items
+ who have got a URL that has become invalid. This method also
+ optimizes underlying data structures.</p>
+ */
+ void update();
+
+ /** inserts an item
+
+ @param URL
+ The URL of a graphic or media object, that should
+ be added to the collection
+
+ @param Index
+ The zero based index of the position where to insert
+ the new object inside the collection. If the index is larger than
+ or equal to the number of already inserted items, the
+ item is inserted at the end of the collection. If the index
+ is smaller than 0, the item is inserted at the beginning of
+ the collection.
+
+ @returns
+ The zero based position at which the object was inserted.
+ If the object could not be inserted, -1 is returned.
+
+ @see XGalleryItem
+ @see com::sun::star::lang::WrappedTargetException
+ */
+ long insertURLByIndex( [in] string URL, [in] long Index )
+ raises ( com::sun::star::lang::WrappedTargetException );
+ /** inserts an item
+
+ @param Graphic
+ The com::sun::star::graphic::XGraphic object
+ that should be added to the collection
+
+ @param Index
+ The zero based index of the position where to insert
+ the new object inside the collection. If the index is larger than
+ or equal to the number of already inserted items, the
+ item is inserted at the end of the collection. If the index
+ is smaller than 0, the item is inserted at the beginning of
+ the collection.
+
+ @returns
+ The zero based position at which the object was inserted.
+ If the object could not be inserted, -1 is returned.
+
+ @see com::sun::star::graphic::XGraphic
+ @see XGalleryItem
+ @see com::sun::star::lang::WrappedTargetException
+ */
+ long insertGraphicByIndex( [in] com::sun::star::graphic::XGraphic Graphic, [in] long Index )
+ raises ( com::sun::star::lang::WrappedTargetException );
+
+ /** inserts an item
+
+ @param Drawing
+ A drawing model that should be added to the collection
+
+ @param Index
+ The zero based index of the position where to insert
+ the new object inside the collection. If the index is larger than
+ or equal to the number of already inserted items, the
+ item is inserted at the end of the collection. If the index
+ is smaller than 0, the item is inserted at the beginning of
+ the collection.
+
+ @returns
+ The zero based position at which the object was inserted.
+ If the object could not be inserted, -1 is returned.
+
+ @see XGalleryItem
+ @see com::sun::star::lang::WrappedTargetException
+ */
+ long insertDrawingByIndex( [in] com::sun::star::lang::XComponent Drawing, [in] long Index )
+ raises ( com::sun::star::lang::WrappedTargetException );
+
+ /** deletes an item from the collection
+
+ @param Index
+ The position of the item to be removed. The
+ position is zero based.
+
+ @see com::sun::star::container::NoSuchElementException
+ */
+ void removeByIndex( [in] long Index )
+ raises ( com::sun::star::lang::IndexOutOfBoundsException );
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/gallery/XGalleryThemeProvider.idl b/offapi/com/sun/star/gallery/XGalleryThemeProvider.idl
new file mode 100644
index 000000000..515663358
--- /dev/null
+++ b/offapi/com/sun/star/gallery/XGalleryThemeProvider.idl
@@ -0,0 +1,76 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef __com_sun_star_gallery_XGalleryThemeProvider_idl__
+#define __com_sun_star_gallery_XGalleryThemeProvider_idl__
+
+#include <com/sun/star/gallery/XGalleryTheme.idl>
+#include <com/sun/star/container/XNameAccess.idl>
+#include <com/sun/star/container/ElementExistException.idl>
+#include <com/sun/star/container/NoSuchElementException.idl>
+
+
+module com { module sun { module star { module gallery {
+
+
+/** provides access to the Gallery themes. It also allows inserting and
+ removing of Gallery themes by name.
+
+ <p>This interface extends the interface
+ com::sun::star::container::XNameAccess which provides
+ access to existing Gallery themes collection.</p>
+
+ @see com::sun::star::container::XNameAccess
+ */
+interface XGalleryThemeProvider : com::sun::star::container::XNameAccess
+{
+ /** creates a new Gallery theme and adds it to the collection.
+
+ @param ThemeName
+ The name of the Gallery theme to be added to the collection.
+ The name must be unique.
+
+ @returns XGalleryTheme
+ The created theme interface
+
+ @see com::sun::star::container::ElementExistException
+ */
+ XGalleryTheme insertNewByName( [in] string ThemeName )
+ raises ( com::sun::star::container::ElementExistException );
+
+
+ /** deletes a Gallery theme from the collection.
+
+ @param ThemeName
+ The name of the Gallery theme to be removed. The
+ theme with the given name must exist.
+
+ @see com::sun::star::container::NoSuchElementException
+ */
+ void removeByName( [in] string ThemeName )
+ raises ( com::sun::star::container::NoSuchElementException );
+
+};
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */