summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--offapi/com/sun/star/chart/Diagram.idl19
-rw-r--r--offapi/com/sun/star/chart/XDiagramPositioning.idl107
-rw-r--r--offapi/com/sun/star/chart/makefile.mk1
-rw-r--r--offapi/com/sun/star/chart2/Diagram.idl4
-rw-r--r--offapi/com/sun/star/sheet/XExternalDocLink.idl9
-rw-r--r--sal/osl/unx/file_volume.cxx6
-rw-r--r--sal/osl/unx/system.h5
-rw-r--r--sal/osl/unx/util.c4
-rw-r--r--sal/rtl/source/macro.hxx4
9 files changed, 156 insertions, 3 deletions
diff --git a/offapi/com/sun/star/chart/Diagram.idl b/offapi/com/sun/star/chart/Diagram.idl
index 0d8ced17f3ef..b57fc88f3804 100644
--- a/offapi/com/sun/star/chart/Diagram.idl
+++ b/offapi/com/sun/star/chart/Diagram.idl
@@ -31,6 +31,14 @@
#include <com/sun/star/chart/XDiagram.idl>
#endif
+#ifndef __com_sun_star_chart_XDiagramPositioning_idl__
+#include <com/sun/star/chart/XDiagramPositioning.idl>
+#endif
+
+#ifndef __com_sun_star_chart_XSecondAxisTitleSupplier_idl__
+#include <com/sun/star/chart/XSecondAxisTitleSupplier.idl>
+#endif
+
#ifndef __com_sun_star_beans_XPropertySet_idl__
#include <com/sun/star/beans/XPropertySet.idl>
#endif
@@ -64,6 +72,17 @@ published service Diagram
interface com::sun::star::chart::XDiagram;
+ /** Provides access to the titles of the secondary X axis and Y axis.
+
+ @since OOo 3.0
+ */
+ [optional] interface com::sun::star::chart::XSecondAxisTitleSupplier;
+
+ /**
+ @since OOo 3.3
+ */
+ [optional] interface com::sun::star::chart::XDiagramPositioning;
+
//-------------------------------------------------------------------------
/** If this property is <TRUE/> the position is calculated by the application automatically.
diff --git a/offapi/com/sun/star/chart/XDiagramPositioning.idl b/offapi/com/sun/star/chart/XDiagramPositioning.idl
new file mode 100644
index 000000000000..f64bbef4b641
--- /dev/null
+++ b/offapi/com/sun/star/chart/XDiagramPositioning.idl
@@ -0,0 +1,107 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2008 by Sun Microsystems, Inc.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: XDiagramPositioning.idl,v $
+ * $Revision: 1.1 $
+ *
+ * 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_chart_XDiagramPositioning_idl__
+#define __com_sun_star_chart_XDiagramPositioning_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+#ifndef __com_sun_star_awt_Rectangle_idl__
+#include <com/sun/star/awt/Rectangle.idl>
+#endif
+
+//=============================================================================
+
+ module com { module sun { module star { module chart {
+
+//=============================================================================
+
+/** allow for different positioning options for a diagram
+
+ @see Diagram
+ */
+interface XDiagramPositioning : com::sun::star::uno::XInterface
+{
+ /** the diagram will be placed automtically
+ */
+ void setAutomaticDiagramPositioning();
+
+ /** @returns whether the diagram is placed automtically
+ */
+ boolean isAutomaticDiagramPositioning();
+
+ /** place the inner diagram part excluding any axes, labels and titles
+ @param PositionRect
+ specifies the position and size in 100/th mm
+ */
+ void setDiagramPositionExcludingAxes( [in] com::sun::star::awt::Rectangle PositionRect );
+
+ /** @returns true in case the diagram position was set with method setDiagramPositionExcludingAxes
+ */
+ boolean isExcludingDiagramPositioning();
+
+ /** @returns the position rectangle of the inner diagram part excluding any axes, labels and titles.
+ Position and size are given in 100/th mm.
+ It might be necessary to calculate the positioning so this method can be expensive and the result may depend on different other settings.
+ */
+ com::sun::star::awt::Rectangle calculateDiagramPositionExcludingAxes();
+
+
+ /** place the outer diagram part including the axes and axes labels, but excluding the axes titles.
+ @param PositionRect
+ specifies the position and size in 100/th mm
+ */
+ void setDiagramPositionIncludingAxes( [in] com::sun::star::awt::Rectangle PositionRect );
+
+ /** @returns the position rectangle of the diagram including the axes and axes labels, but excluding the axes titles.
+ Position and size are given in 100/th mm.
+ It might be necessary to calculate the positioning so this method can be expensive and the result may depend on different other settings.
+ */
+ com::sun::star::awt::Rectangle calculateDiagramPositionIncludingAxes();
+
+ /** place the diagram including the axes, axes labels and axes titles.
+ For the placement the current axis titles are taken into account, so the titles must be initialized properly before this method is called.
+ @param PositionRect
+ specifies the position and size in 100/th mm
+ */
+ void setDiagramPositionIncludingAxesAndAxisTitles( [in] com::sun::star::awt::Rectangle PositionRect );
+
+ /** @returns the position rectangle of the diagram including the axes, axes labels and axes titles.
+ Position and size are given in 100/th mm.
+ It might be necessary to calculate the positioning so this method can be expensive and the result may depend on different other settings.
+ */
+ com::sun::star::awt::Rectangle calculateDiagramPositionIncludingAxesAndAxisTitles();
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/chart/makefile.mk b/offapi/com/sun/star/chart/makefile.mk
index 2c0b93256b3b..fdbf07173c5e 100644
--- a/offapi/com/sun/star/chart/makefile.mk
+++ b/offapi/com/sun/star/chart/makefile.mk
@@ -105,6 +105,7 @@ IDLFILES=\
XChartDocument.idl\
XComplexDescriptionAccess.idl\
XDiagram.idl\
+ XDiagramPositioning.idl\
XStatisticDisplay.idl\
XTwoAxisXSupplier.idl\
XTwoAxisYSupplier.idl\
diff --git a/offapi/com/sun/star/chart2/Diagram.idl b/offapi/com/sun/star/chart2/Diagram.idl
index a048b91a2347..2ca0e1ade86d 100644
--- a/offapi/com/sun/star/chart2/Diagram.idl
+++ b/offapi/com/sun/star/chart2/Diagram.idl
@@ -77,6 +77,10 @@ service Diagram
*/
[property] ::com::sun::star::layout::RelativeSize RelativeSize;
+ /** The attributes RelativePosition and RelativeSize should be used for the inner coordinate region without axis labels and without data labels.
+ */
+ [optional, property] boolean PosSizeExcludeLabels;
+
/** Sort data points by x values for rendering
*/
[optional, property] boolean SortByXValues;
diff --git a/offapi/com/sun/star/sheet/XExternalDocLink.idl b/offapi/com/sun/star/sheet/XExternalDocLink.idl
index 19d1f0ff08d7..1a9662dbeed7 100644
--- a/offapi/com/sun/star/sheet/XExternalDocLink.idl
+++ b/offapi/com/sun/star/sheet/XExternalDocLink.idl
@@ -60,9 +60,16 @@ interface XExternalDocLink
@param aSheetName sheet name
+ @param DynamicCache specify whether or not the cache can grow when
+ non-cached regions are queried. If <true/>, querying a non-cached
+ cell in this sheet cache will allow Calc to try to access the source
+ document to fetch the value in first access. If <false/>, the source
+ document will not be accessed, and the non-cached regions are treated
+ as empty cells.
+
@return com::sun::star::sheet::XExternalSheetCache sheet cache instance
*/
- com::sun::star::sheet::XExternalSheetCache addSheetCache( [in] string aSheetName );
+ com::sun::star::sheet::XExternalSheetCache addSheetCache( [in] string aSheetName, [in] boolean DynamicCache );
//-------------------------------------------------------------------------
diff --git a/sal/osl/unx/file_volume.cxx b/sal/osl/unx/file_volume.cxx
index 543acc5f71c5..cc7f61ec6a8b 100644
--- a/sal/osl/unx/file_volume.cxx
+++ b/sal/osl/unx/file_volume.cxx
@@ -46,6 +46,12 @@
#undef HAVE_STATFS_H
#endif
+#if defined(LINUX) && defined(__FreeBSD_kernel__)
+#undef LINUX
+#define FREEBSD 1
+#endif
+
+
#if defined(SOLARIS)
#include <sys/mnttab.h>
diff --git a/sal/osl/unx/system.h b/sal/osl/unx/system.h
index 8cb77c9b7fc8..1cb0979490c0 100644
--- a/sal/osl/unx/system.h
+++ b/sal/osl/unx/system.h
@@ -123,6 +123,11 @@
# define NO_PTHREAD_PRIORITY
# define PTHREAD_SIGACTION pthread_sigaction
#endif
+
+# ifndef ETIME
+# define ETIME ETIMEDOUT
+# endif
+
#endif
#ifdef NETBSD
diff --git a/sal/osl/unx/util.c b/sal/osl/unx/util.c
index f969bfe566ec..5ba04db56021 100644
--- a/sal/osl/unx/util.c
+++ b/sal/osl/unx/util.c
@@ -162,7 +162,7 @@ static int osl_getHWAddr(const char *ifname, char* hard_addr)
* And now, the real thing: the get address
*/
-#ifdef LINUX
+#ifdef SIOCGIFHWADDR
ret=ioctl(so, SIOCGIFHWADDR, &ifr);
#else
ret=ioctl(so, SIOCGIFADDR, &ifr);
@@ -177,7 +177,7 @@ static int osl_getHWAddr(const char *ifname, char* hard_addr)
close(so);
-#ifdef LINUX
+#ifdef SIOCGIFHWADDR
memcpy(hard_addr,ifr.ifr_hwaddr.sa_data,8);
#else
memcpy(hard_addr,ifr.ifr_ifru.ifru_addr.sa_data,8);
diff --git a/sal/rtl/source/macro.hxx b/sal/rtl/source/macro.hxx
index 50f0d7de924e..3fa0fbe58f42 100644
--- a/sal/rtl/source/macro.hxx
+++ b/sal/rtl/source/macro.hxx
@@ -39,7 +39,11 @@
#elif defined SOLARIS
#define THIS_OS "Solaris"
#elif defined LINUX
+#ifdef __FreeBSD_kernel__
+#define THIS_OS "kFreeBSD"
+#else
#define THIS_OS "Linux"
+#endif
#elif defined MACOSX
#define THIS_OS "MacOSX"
#elif defined NETBSD