[Libreoffice-commits] .: binfilter/bf_svtools binfilter/inc

Michael Stahl mst at kemper.freedesktop.org
Sat Nov 19 09:02:46 PST 2011


 binfilter/bf_svtools/source/filter.vcl/wmf/winmtf.hxx |    1 
 binfilter/inc/bf_starmath/dynary.hxx                  |  105 ++++++++++++++++++
 binfilter/inc/bf_starmath/node.hxx                    |    3 
 binfilter/inc/bf_starmath/symbol.hxx                  |    2 
 4 files changed, 107 insertions(+), 4 deletions(-)

New commits:
commit da4705764d8192f5ee2a02fe19fd31d5ebf955bd
Author: Michael Stahl <mstahl at redhat.com>
Date:   Sat Nov 19 18:00:17 2011 +0100

    binfilter: move dynary.hxx from tools here
    
    should fix breakage from 89a783cde071d63120bfa63768b4680dd2e58fee

diff --git a/binfilter/bf_svtools/source/filter.vcl/wmf/winmtf.hxx b/binfilter/bf_svtools/source/filter.vcl/wmf/winmtf.hxx
index 31b2235..eee90f4 100644
--- a/binfilter/bf_svtools/source/filter.vcl/wmf/winmtf.hxx
+++ b/binfilter/bf_svtools/source/filter.vcl/wmf/winmtf.hxx
@@ -42,7 +42,6 @@
 #include <tools/debug.hxx>
 #include <tools/stack.hxx>
 #include <tools/table.hxx>
-#include <tools/dynary.hxx>
 #include <vcl/graph.hxx>
 #include <vcl/virdev.hxx>
 #include <tools/poly.hxx>
diff --git a/binfilter/inc/bf_starmath/dynary.hxx b/binfilter/inc/bf_starmath/dynary.hxx
new file mode 100644
index 0000000..7e17455
--- /dev/null
+++ b/binfilter/inc/bf_starmath/dynary.hxx
@@ -0,0 +1,105 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*************************************************************************
+ *
+ * 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 _DYNARY_HXX
+#define _DYNARY_HXX
+
+#include <tools/solar.h>
+#include <tools/contnr.hxx>
+
+// ------------
+// - DynArray -
+// ------------
+
+#define DYNARRAY_ENTRY_NOTFOUND     CONTAINER_ENTRY_NOTFOUND
+
+class DynArray : private Container
+{
+public:
+                using Container::SetSize;
+                using Container::GetSize;
+                using Container::Clear;
+
+                DynArray( sal_uIntPtr nSize = 16 ) : Container( nSize ) {}
+                DynArray( const DynArray& rAry ) : Container( rAry ) {}
+
+    void*       Put( sal_uIntPtr nIndex, void* p )
+                    { return Container::Replace( p, nIndex ); }
+    void*       Get( sal_uIntPtr nIndex ) const
+                    { return Container::GetObject( nIndex ); }
+
+    sal_uIntPtr       GetIndex( const void* p ) const
+                    { return Container::GetPos( p ); }
+
+    DynArray&   operator =( const DynArray& rAry )
+                    { Container::operator =( rAry ); return *this; }
+
+    sal_Bool        operator ==( const DynArray& rAry ) const
+                    { return Container::operator ==( rAry ); }
+    sal_Bool        operator !=( const DynArray& rAry ) const
+                    { return Container::operator !=( rAry ); }
+};
+
+// --------------------
+// - DECLARE_DYNARRAY -
+// --------------------
+
+#define DECLARE_DYNARRAY( ClassName, Type )                             \
+class ClassName : private DynArray                                      \
+{                                                                       \
+public:                                                                 \
+                using DynArray::SetSize;                                \
+                using DynArray::GetSize;                                \
+                using DynArray::Clear;                                  \
+                                                                        \
+                ClassName( sal_uIntPtr nSize = 16 ) :                         \
+                    DynArray( nSize ) {}                                \
+                ClassName( const ClassName& rClassName ) :              \
+                    DynArray( rClassName ) {}                           \
+                                                                        \
+    Type        Put( sal_uIntPtr nIndex, Type p )                             \
+                    { return (Type)DynArray::Put( nIndex, (void*)p ); } \
+    Type        Get( sal_uIntPtr nIndex ) const                               \
+                    { return (Type)DynArray::Get( nIndex ); }           \
+                                                                        \
+    sal_uIntPtr       GetIndex( const Type p ) const                          \
+                    { return DynArray::GetIndex( (const void*)p ); }    \
+                                                                        \
+    ClassName&  operator =( const ClassName& rClassName )               \
+                    { DynArray::operator =( rClassName );               \
+                      return *this; }                                   \
+                                                                        \
+    sal_Bool        operator ==( const ClassName& rAry ) const              \
+                    { return DynArray::operator ==( rAry ); }           \
+    sal_Bool        operator !=( const ClassName& rAry ) const              \
+                    { return DynArray::operator !=( rAry ); }           \
+};
+
+#endif // _DYNARY_HXX
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/binfilter/inc/bf_starmath/node.hxx b/binfilter/inc/bf_starmath/node.hxx
index f3d6d57..7e4adfe 100644
--- a/binfilter/inc/bf_starmath/node.hxx
+++ b/binfilter/inc/bf_starmath/node.hxx
@@ -33,8 +33,7 @@
 #include <bf_svtools/bf_solar.h>
 
 
-#include <tools/dynary.hxx>
-
+#include <dynary.hxx>
 #include "parse.hxx"
 #include "types.hxx"
 #include "rect.hxx"
diff --git a/binfilter/inc/bf_starmath/symbol.hxx b/binfilter/inc/bf_starmath/symbol.hxx
index 30750f3..8670020 100644
--- a/binfilter/inc/bf_starmath/symbol.hxx
+++ b/binfilter/inc/bf_starmath/symbol.hxx
@@ -32,7 +32,7 @@
 
 #include <vcl/font.hxx>
 #include <tools/debug.hxx>
-#include <tools/dynary.hxx>
+#include <dynary.hxx>
 #include <bf_svtools/lstner.hxx>
 #include <bf_svtools/svarray.hxx>
 


More information about the Libreoffice-commits mailing list