LibreOffice Module forms (master) 1
Macros | Functions
binding.cxx File Reference
#include "binding.hxx"
#include "model.hxx"
#include "unohelper.hxx"
#include "NameContainer.hxx"
#include "evaluationcontext.hxx"
#include "convert.hxx"
#include "resourcehelper.hxx"
#include "xmlhelper.hxx"
#include "xformsevent.hxx"
#include <strings.hrc>
#include <rtl/ustrbuf.hxx>
#include <o3tl/safeint.hxx>
#include <osl/diagnose.h>
#include <comphelper/diagnose_ex.hxx>
#include <algorithm>
#include <functional>
#include <com/sun/star/form/binding/IncompatibleTypesException.hpp>
#include <com/sun/star/form/binding/InvalidBindingStateException.hpp>
#include <com/sun/star/uno/Any.hxx>
#include <com/sun/star/xml/dom/XNodeList.hpp>
#include <com/sun/star/xml/dom/XNode.hpp>
#include <com/sun/star/xml/dom/XDocument.hpp>
#include <com/sun/star/xml/dom/XElement.hpp>
#include <com/sun/star/xml/dom/NodeType.hpp>
#include <com/sun/star/xml/dom/events/XEventTarget.hpp>
#include <com/sun/star/xml/dom/events/XEventListener.hpp>
#include <com/sun/star/lang/XUnoTunnel.hpp>
#include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
#include <com/sun/star/container/XNameContainer.hpp>
#include <comphelper/servicehelper.hxx>
Include dependency graph for binding.cxx:

Go to the source code of this file.

Macros

#define HANDLE_BindingID   0
 
#define HANDLE_BindingExpression   1
 
#define HANDLE_Model   2
 
#define HANDLE_ModelID   3
 
#define HANDLE_BindingNamespaces   4
 
#define HANDLE_ReadonlyExpression   5
 
#define HANDLE_RelevantExpression   6
 
#define HANDLE_RequiredExpression   7
 
#define HANDLE_ConstraintExpression   8
 
#define HANDLE_CalculateExpression   9
 
#define HANDLE_Type   10
 
#define HANDLE_ReadOnly   11
 
#define HANDLE_Relevant   12
 
#define HANDLE_ModelNamespaces   13
 
#define HANDLE_ExternalData   14
 

Functions

static void lcl_addListenerToNode (const Reference< XNode > &xNode, const Reference< XEventListener > &xListener)
 
static void lcl_removeListenerFromNode (const Reference< XNode > &xNode, const Reference< XEventListener > &xListener)
 
static void lcl_modified (const css::uno::Reference< css::util::XModifyListener > &xListener, const Reference< XInterface > &xSource)
 
static void lcl_listentry (const css::uno::Reference< css::form::binding::XListEntryListener > &xListener, const Reference< XInterface > &xSource)
 
static void lcl_validate (const css::uno::Reference< css::form::validation::XValidityConstraintListener > &xListener, const Reference< XInterface > &xSource)
 
static void lcl_removeOtherNamespaces (const css::uno::Reference< css::container::XNameContainer > &xFrom, css::uno::Reference< css::container::XNameContainer > const &xTo)
 
static void lcl_copyNamespaces (const css::uno::Reference< css::container::XNameContainer > &xFrom, css::uno::Reference< css::container::XNameContainer > const &xTo, bool bOverwrite)
 copy namespaces from one namespace container into another More...
 
static void lcl_getString (const Reference< XNode > &xNode, OUStringBuffer &rBuffer)
 
static OUString lcl_getString (const Reference< XNode > &xNode)
 

Macro Definition Documentation

◆ HANDLE_BindingExpression

#define HANDLE_BindingExpression   1

Definition at line 93 of file binding.cxx.

◆ HANDLE_BindingID

#define HANDLE_BindingID   0

Definition at line 92 of file binding.cxx.

◆ HANDLE_BindingNamespaces

#define HANDLE_BindingNamespaces   4

Definition at line 96 of file binding.cxx.

◆ HANDLE_CalculateExpression

#define HANDLE_CalculateExpression   9

Definition at line 101 of file binding.cxx.

◆ HANDLE_ConstraintExpression

#define HANDLE_ConstraintExpression   8

Definition at line 100 of file binding.cxx.

◆ HANDLE_ExternalData

#define HANDLE_ExternalData   14

Definition at line 106 of file binding.cxx.

◆ HANDLE_Model

#define HANDLE_Model   2

Definition at line 94 of file binding.cxx.

◆ HANDLE_ModelID

#define HANDLE_ModelID   3

Definition at line 95 of file binding.cxx.

◆ HANDLE_ModelNamespaces

#define HANDLE_ModelNamespaces   13

Definition at line 105 of file binding.cxx.

◆ HANDLE_ReadOnly

#define HANDLE_ReadOnly   11

Definition at line 103 of file binding.cxx.

◆ HANDLE_ReadonlyExpression

#define HANDLE_ReadonlyExpression   5

Definition at line 97 of file binding.cxx.

◆ HANDLE_Relevant

#define HANDLE_Relevant   12

Definition at line 104 of file binding.cxx.

◆ HANDLE_RelevantExpression

#define HANDLE_RelevantExpression   6

Definition at line 98 of file binding.cxx.

◆ HANDLE_RequiredExpression

#define HANDLE_RequiredExpression   7

Definition at line 99 of file binding.cxx.

◆ HANDLE_Type

#define HANDLE_Type   10

Definition at line 102 of file binding.cxx.

Function Documentation

◆ lcl_addListenerToNode()

static void lcl_addListenerToNode ( const Reference< XNode > &  xNode,
const Reference< XEventListener > &  xListener 
)
static

Definition at line 457 of file binding.cxx.

References xTarget.

Referenced by xforms::Binding::bind().

◆ lcl_copyNamespaces()

static void lcl_copyNamespaces ( const css::uno::Reference< css::container::XNameContainer > &  xFrom,
css::uno::Reference< css::container::XNameContainer > const &  xTo,
bool  bOverwrite 
)
static

copy namespaces from one namespace container into another

Parameters
bOverwritetrue: overwrite namespaces in target false: do not overwrite namespaces in target
bMovetrue: move namespaces (i.e., delete in source) false: copy namespaces (do not modify source)
bFromSourcetrue: use elements from source false: use only elements from target

Definition at line 819 of file binding.cxx.

References i.

Referenced by xforms::Binding::_getNamespaces().

◆ lcl_getString() [1/2]

static OUString lcl_getString ( const Reference< XNode > &  xNode)
static

Definition at line 1036 of file binding.cxx.

References aBuffer, and lcl_getString().

◆ lcl_getString() [2/2]

static void lcl_getString ( const Reference< XNode > &  xNode,
OUStringBuffer &  rBuffer 
)
static

◆ lcl_listentry()

static void lcl_listentry ( const css::uno::Reference< css::form::binding::XListEntryListener > &  xListener,
const Reference< XInterface > &  xSource 
)
static

Definition at line 611 of file binding.cxx.

Referenced by xforms::Binding::valueModified().

◆ lcl_modified()

static void lcl_modified ( const css::uno::Reference< css::util::XModifyListener > &  xListener,
const Reference< XInterface > &  xSource 
)
static

Definition at line 603 of file binding.cxx.

Referenced by xforms::Binding::valueModified().

◆ lcl_removeListenerFromNode()

static void lcl_removeListenerFromNode ( const Reference< XNode > &  xNode,
const Reference< XEventListener > &  xListener 
)
static

Definition at line 476 of file binding.cxx.

References xTarget.

Referenced by xforms::Binding::bind(), and xforms::Binding::clear().

◆ lcl_removeOtherNamespaces()

static void lcl_removeOtherNamespaces ( const css::uno::Reference< css::container::XNameContainer > &  xFrom,
css::uno::Reference< css::container::XNameContainer > const &  xTo 
)
static

Definition at line 792 of file binding.cxx.

References i.

Referenced by xforms::Binding::_setNamespaces().

◆ lcl_validate()

static void lcl_validate ( const css::uno::Reference< css::form::validation::XValidityConstraintListener > &  xListener,
const Reference< XInterface > &  xSource 
)
static

Definition at line 620 of file binding.cxx.

Referenced by xforms::Binding::valueModified().