LibreOffice Module svx (master)  1
datanavi.hxx
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3  * This file is part of the LibreOffice project.
4  *
5  * This Source Code Form is subject to the terms of the Mozilla Public
6  * License, v. 2.0. If a copy of the MPL was not distributed with this
7  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8  *
9  * This file incorporates work covered by the following license notice:
10  *
11  * Licensed to the Apache Software Foundation (ASF) under one or more
12  * contributor license agreements. See the NOTICE file distributed
13  * with this work for additional information regarding copyright
14  * ownership. The ASF licenses this file to you under the Apache
15  * License, Version 2.0 (the "License"); you may not use this file
16  * except in compliance with the License. You may obtain a copy of
17  * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18  */
19 #ifndef INCLUDED_SVX_SOURCE_INC_DATANAVI_HXX
20 #define INCLUDED_SVX_SOURCE_INC_DATANAVI_HXX
21 
22 #include <config_options.h>
23 #include <vcl/builderpage.hxx>
24 #include <vcl/idle.hxx>
25 #include <vcl/transfer.hxx>
26 #include <vcl/weld.hxx>
27 #include <svtools/inettbc.hxx>
28 #include <sfx2/dockwin.hxx>
29 #include <sfx2/childwin.hxx>
30 #include <sfx2/ctrlitem.hxx>
31 #include <svx/dialmgr.hxx>
32 #include <svx/strings.hrc>
33 #include <svx/svxdllapi.h>
34 #include <rtl/ref.hxx>
35 #include <com/sun/star/beans/XPropertySet.hpp>
36 #include <com/sun/star/container/XContainer.hpp>
37 #include <com/sun/star/container/XNameContainer.hpp>
38 #include <com/sun/star/frame/XFrame.hpp>
39 #include <com/sun/star/xforms/XFormsUIHelper1.hpp>
40 #include <com/sun/star/xforms/XModel.hpp>
41 #include <com/sun/star/xforms/XSubmission.hpp>
42 #include <com/sun/star/xml/dom/XNode.hpp>
43 #include <com/sun/star/xml/dom/events/XEventTarget.hpp>
44 
45 #include "datalistener.hxx"
46 
47 #include <memory>
48 #include <string_view>
49 #include <vector>
50 
51 class FmFormShell;
52 
53 
54 namespace svxform
55 {
56 
57 
59  {
64  };
65 
67  {
68  DITNone = 0,
73  };
74 
75  struct ItemNode;
76  class XFormsPage;
77  class DataNavigatorWindow;
78  class AddInstanceDialog;
79 
81  {
82  OUString m_sDoc_UI;
83  OUString m_sInstance_UI;
84  OUString m_sNone_UI;
85 
86  static constexpr OUStringLiteral m_sDoc_API = u"all";
87  static constexpr OUStringLiteral m_sInstance_API = u"instance";
88  static constexpr OUStringLiteral m_sNone_API = u"none";
89 
90  ReplaceString( const ReplaceString& ) = delete;
91 
92  public:
94  {
95  m_sDoc_UI = SvxResId(RID_STR_REPLACE_DOC);
96  m_sInstance_UI = SvxResId(RID_STR_REPLACE_INST);
97  m_sNone_UI = SvxResId(RID_STR_REPLACE_NONE);
98  }
99 
102  OUString const & toUI( std::u16string_view rStr ) const
103  {
104  if( rStr == m_sDoc_API )
105  return m_sDoc_UI;
106  else if( rStr == m_sInstance_API )
107  return m_sInstance_UI;
108  else
109  return m_sNone_UI;
110  }
111 
114  OUString toAPI( std::u16string_view rStr ) const
115  {
116  if( rStr == m_sDoc_UI )
117  return m_sDoc_API;
118  else if( rStr == m_sInstance_UI )
119  return m_sInstance_API;
120  else
121  return m_sNone_API;
122  }
123  };
124 
126  {
127  OUString m_sPost_UI;
128  OUString m_sPut_UI;
129  OUString m_sGet_UI;
130 
131  static constexpr OUStringLiteral m_sPost_API = u"post";
132  static constexpr OUStringLiteral m_sPut_API = u"put";
133  static constexpr OUStringLiteral m_sGet_API = u"get";
134 
135  MethodString( const MethodString& ) = delete;
136 
137  public:
138 
140  {
141  m_sPost_UI = SvxResId(RID_STR_METHOD_POST);
142  m_sPut_UI = SvxResId(RID_STR_METHOD_PUT);
143  m_sGet_UI = SvxResId(RID_STR_METHOD_GET);
144  }
145 
147  OUString const & toUI( std::u16string_view rStr ) const
148  {
149  if( rStr == m_sGet_API )
150  return m_sGet_UI;
151  else if( rStr == m_sPost_API )
152  return m_sPost_UI;
153  else
154  return m_sPut_UI;
155  }
156 
158  OUString toAPI( std::u16string_view rStr ) const
159  {
160  if( rStr == m_sGet_UI )
161  return m_sGet_API;
162  else if( rStr == m_sPost_UI )
163  return m_sPost_API;
164  else
165  return m_sPut_API;
166  }
167  };
168 
170  {
171  private:
172  virtual sal_Int8 AcceptDrop(const AcceptDropEvent& rEvt) override;
173  virtual sal_Int8 ExecuteDrop(const ExecuteDropEvent& rEvt) override;
174 
175  public:
177  };
178 
179  class XFormsPage : public BuilderPage
180  {
181  private:
184 
186  std::unique_ptr<weld::Toolbar> m_xToolBox;
187  std::unique_ptr<weld::TreeView> m_xItemList;
188  std::unique_ptr<weld::TreeIter> m_xScratchIter;
189 
191 
192  css::uno::Reference< css::xforms::XFormsUIHelper1 >
194 
198  // these strings are not valid on the Submission and Binding Page
199  // mb: furthermore these are properties of an instance, thus
200  // it would be much better to get/set them through the UIHelper
201  // interface.
202  OUString m_sInstanceName;
203  OUString m_sInstanceURL;
205 
206  DECL_LINK(TbxSelectHdl, const OString&, void);
207  DECL_LINK(ItemSelectHdl, weld::TreeView&, void);
208  DECL_LINK(KeyInputHdl, const KeyEvent&, bool);
209  DECL_LINK(PopupMenuHdl, const CommandEvent&, bool);
210 
211  void AddChildren(const weld::TreeIter* _pParent,
212  const css::uno::Reference< css::xml::dom::XNode >& _xNode);
213  bool DoToolBoxAction(std::string_view rToolBoxID);
214  void AddEntry(std::unique_ptr<ItemNode> _pNewNode, bool _bIsElement, weld::TreeIter* pRet = nullptr);
215  void AddEntry(const css::uno::Reference< css::beans::XPropertySet >& _rPropSet, weld::TreeIter* pRet = nullptr);
216  void EditEntry( const css::uno::Reference< css::beans::XPropertySet >& _rPropSet );
217  bool RemoveEntry();
218 
219  void PrepDnD();
220 
221  void DeleteAndClearTree();
222 
223  public:
224  XFormsPage(weld::Container* pParent, DataNavigatorWindow* _pNaviWin, DataGroupType _eGroup);
225  virtual ~XFormsPage() override;
226 
227  bool HasModel() const { return m_bHasModel; }
228  OUString SetModel( const css::uno::Reference< css::xforms::XModel > & _xModel, int _nPagePos );
229  void ClearModel();
230  OUString LoadInstance(const css::uno::Sequence< css::beans::PropertyValue >& _xPropSeq);
231 
232  bool DoMenuAction(std::string_view rMenuID);
233  void EnableMenuItems(weld::Menu* pMenu);
234 
235  const OUString& GetInstanceName() const { return m_sInstanceName; }
236  const OUString& GetInstanceURL() const { return m_sInstanceURL; }
237  bool GetLinkOnce() const { return m_bLinkOnce; }
238  void SetInstanceName( const OUString &name ) { m_sInstanceName=name; }
239  void SetInstanceURL( const OUString &url ) { m_sInstanceURL=url; }
240  void SetLinkOnce( bool bLinkOnce ) { m_bLinkOnce=bLinkOnce; }
241 
242  css::uno::Reference<css::beans::XPropertySet>
243  GetBindingForNode( const css::uno::Reference<css::xml::dom::XNode> &xNode ) { return m_xUIHelper->getBindingForNode(xNode,true); }
244  OUString GetServiceNameForNode( const css::uno::Reference<css::xml::dom::XNode> &xNode ) { return m_xUIHelper->getDefaultServiceNameForNode(xNode); }
245  const css::uno::Reference< css::xforms::XFormsUIHelper1 >&
246  GetXFormsHelper() const { return m_xUIHelper; }
247  };
248 
250  {
251  private:
253  std::unique_ptr<weld::ComboBox> m_xModelsBox;
254  std::unique_ptr<weld::MenuButton> m_xModelBtn;
255  std::unique_ptr<weld::Notebook> m_xTabCtrl;
256  std::unique_ptr<weld::MenuButton> m_xInstanceBtn;
257 
258  std::unique_ptr<XFormsPage> m_xInstPage;
259  std::unique_ptr<XFormsPage> m_xSubmissionPage;
260  std::unique_ptr<XFormsPage> m_xBindingPage;
261 
265  std::vector< std::unique_ptr<XFormsPage> >
267  std::vector< css::uno::Reference< css::container::XContainer > >
269  std::vector< css::uno::Reference< css::xml::dom::events::XEventTarget > >
272 
275  css::uno::Reference< css::container::XNameContainer >
277  css::uno::Reference< css::frame::XFrame >
279  css::uno::Reference< css::frame::XModel >
281 
282  DECL_LINK( ModelSelectListBoxHdl, weld::ComboBox&, void );
283  DECL_LINK( MenuSelectHdl, const OString&, void );
284  DECL_LINK( MenuActivateHdl, weld::ToggleButton&, void );
285  DECL_LINK( ActivatePageHdl, const OString&, void);
286  DECL_LINK( UpdateHdl, Timer *, void);
287  void ModelSelectHdl(const weld::ComboBox*);
288  OString GetCurrentPage() const;
289  XFormsPage* GetPage(const OString& rCurId);
290  void LoadModels();
291  void SetPageModel(const OString& rCurId);
292  void ClearAllPageModels( bool bClearPages );
293  void InitPages();
294  void CreateInstancePage( const css::uno::Sequence< css::beans::PropertyValue >& _xPropSeq );
295  bool HasFirstInstancePage() const;
296  OString GetNewPageId() const;
297 
298  static bool IsAdditionalPage(const OString& rIdent);
299 
300  public:
301  DataNavigatorWindow(vcl::Window* pParent, weld::Builder& rBuilder, SfxBindings const * pBindings);
303 
304  static void SetDocModified();
305  void NotifyChanges( bool _bLoadAll = false );
306  void AddContainerBroadcaster( const css::uno::Reference< css::container::XContainer > & xContainer );
307  void AddEventBroadcaster( const css::uno::Reference< css::xml::dom::events::XEventTarget >& xTarget );
308  void RemoveBroadcaster();
309 
310  weld::Window* GetFrameWeld() const { return m_xParent->GetFrameWeld(); }
311 
312  bool IsShowDetails() const { return m_bShowDetails; }
313  void DisableNotify( bool _bDisable ) { m_bIsNotifyDisabled = _bDisable; }
314  };
315 
317  {
318  private:
319  std::unique_ptr<DataNavigatorWindow> m_xDataWin;
320 
321  protected:
322  virtual Size CalcDockingSize( SfxChildAlignment ) override;
324 
325  public:
327  virtual ~DataNavigator() override;
328  virtual void dispose() override;
329 
331 
332  void StateChanged( sal_uInt16 nSID, SfxItemState eState,
333  const SfxPoolItem* pState ) override;
334  };
335 
336  class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) DataNavigatorManager : public SfxChildWindow
337  {
338  public:
339  SVX_DLLPRIVATE DataNavigatorManager( vcl::Window* pParent, sal_uInt16 nId,
340  SfxBindings* pBindings, SfxChildWinInfo* pInfo );
341  SFX_DECL_CHILDWINDOW( DataNavigatorManager );
342  };
343 
345  {
346  private:
347  css::uno::Reference< css::xforms::XFormsUIHelper1 >
349  css::uno::Reference< css::beans::XPropertySet >
351  css::uno::Reference< css::beans::XPropertySet >
353 
356  OUString m_sFL_Element;
357  OUString m_sFL_Attribute;
358  OUString m_sFL_Binding;
360 
361  std::unique_ptr<weld::Frame> m_xItemFrame;
362  std::unique_ptr<weld::Label> m_xNameFT;
363  std::unique_ptr<weld::Entry> m_xNameED;
364  std::unique_ptr<weld::Label> m_xDefaultFT;
365  std::unique_ptr<weld::Entry> m_xDefaultED;
366  std::unique_ptr<weld::Button> m_xDefaultBtn;
367  std::unique_ptr<weld::Widget> m_xSettingsFrame;
368  std::unique_ptr<weld::Label> m_xDataTypeFT;
369  std::unique_ptr<weld::ComboBox> m_xDataTypeLB;
370  std::unique_ptr<weld::CheckButton> m_xRequiredCB;
371  std::unique_ptr<weld::Button> m_xRequiredBtn;
372  std::unique_ptr<weld::CheckButton> m_xRelevantCB;
373  std::unique_ptr<weld::Button> m_xRelevantBtn;
374  std::unique_ptr<weld::CheckButton> m_xConstraintCB;
375  std::unique_ptr<weld::Button> m_xConstraintBtn;
376  std::unique_ptr<weld::CheckButton> m_xReadonlyCB;
377  std::unique_ptr<weld::Button> m_xReadonlyBtn;
378  std::unique_ptr<weld::CheckButton> m_xCalculateCB;
379  std::unique_ptr<weld::Button> m_xCalculateBtn;
380  std::unique_ptr<weld::Button> m_xOKBtn;
381 
382  void Check(const weld::ToggleButton* pBox);
383  DECL_LINK(CheckHdl, weld::ToggleButton&, void);
384  DECL_LINK(ConditionHdl, weld::Button&, void);
385  DECL_LINK(OKHdl, weld::Button&, void);
386 
387  void InitDialog();
388  void InitFromNode();
389  void InitDataTypeBox();
390 
391  public:
393  weld::Window* pParent, ItemNode* _pNode,
394  const css::uno::Reference< css::xforms::XFormsUIHelper1 >& _rUIHelper );
395  virtual ~AddDataItemDialog() override;
396 
397  void InitText( DataItemType _eType );
398  };
399 
401  {
402  private:
404  OUString m_sPropertyName;
405 
406  css::uno::Reference< css::xforms::XFormsUIHelper1 >
408  css::uno::Reference< css::beans::XPropertySet >
410 
411  std::unique_ptr<weld::TextView> m_xConditionED;
412  std::unique_ptr<weld::TextView> m_xResultWin;
413  std::unique_ptr<weld::Button> m_xEditNamespacesBtn;
414  std::unique_ptr<weld::Button> m_xOKBtn;
415 
416  DECL_LINK(ModifyHdl, weld::TextView&, void);
417  DECL_LINK(ResultHdl, Timer *, void);
418  DECL_LINK(EditHdl, weld::Button&, void);
419  DECL_LINK(OKHdl, weld::Button&, void);
420 
421  public:
423  const OUString& _rPropertyName, const css::uno::Reference< css::beans::XPropertySet >& _rBinding);
424  virtual ~AddConditionDialog() override;
425 
426  const css::uno::Reference< css::xforms::XFormsUIHelper1 >& GetUIHelper() const { return m_xUIHelper; }
427  OUString GetCondition() const { return m_xConditionED->get_text(); }
428  void SetCondition(const OUString& _rCondition)
429  {
430  m_xConditionED->set_text(_rCondition);
431  m_aResultIdle.Start();
432  }
433  };
434 
436  {
437  private:
439  std::vector< OUString > m_aRemovedList;
440 
441  css::uno::Reference< css::container::XNameContainer >&
443 
444  std::unique_ptr<weld::TreeView> m_xNamespacesList;
445  std::unique_ptr<weld::Button> m_xAddNamespaceBtn;
446  std::unique_ptr<weld::Button> m_xEditNamespaceBtn;
447  std::unique_ptr<weld::Button> m_xDeleteNamespaceBtn;
448  std::unique_ptr<weld::Button> m_xOKBtn;
449 
450  DECL_LINK(SelectHdl, weld::TreeView&, void);
451  DECL_LINK(ClickHdl, weld::Button&, void);
452  DECL_LINK(OKHdl, weld::Button&, void);
453 
454  void LoadNamespaces();
455 
456  public:
457  NamespaceItemDialog(AddConditionDialog* pParent, css::uno::Reference< css::container::XNameContainer >& _rContainer);
458  virtual ~NamespaceItemDialog() override;
459  };
460 
462  {
463  private:
465 
466  std::unique_ptr<weld::Entry> m_xPrefixED;
467  std::unique_ptr<weld::Entry> m_xUrlED;
468  std::unique_ptr<weld::Button> m_xOKBtn;
469  std::unique_ptr<weld::Label> m_xAltTitle;
470 
471  DECL_LINK(OKHdl, weld::Button&, void);
472 
473  public:
474  ManageNamespaceDialog(weld::Window* pParent, AddConditionDialog* _pCondDlg, bool bIsEdit);
475  virtual ~ManageNamespaceDialog() override;
476 
477  void SetNamespace(const OUString& _rPrefix, const OUString& _rURL)
478  {
479  m_xPrefixED->set_text(_rPrefix);
480  m_xUrlED->set_text(_rURL);
481  }
482  OUString GetPrefix() const { return m_xPrefixED->get_text(); }
483  OUString GetURL() const { return m_xUrlED->get_text(); }
484  };
485 
487  {
488  private:
491 
493 
494  css::uno::Reference< css::xforms::XFormsUIHelper1 >
496  css::uno::Reference< css::xforms::XSubmission >
498  css::uno::Reference< css::beans::XPropertySet >
500  css::uno::Reference< css::beans::XPropertySet >
502  css::uno::Reference< css::beans::XPropertySet >
504 
505  std::unique_ptr<weld::Entry> m_xNameED;
506  std::unique_ptr<weld::Entry> m_xActionED;
507  std::unique_ptr<weld::ComboBox> m_xMethodLB;
508  std::unique_ptr<weld::Entry> m_xRefED;
509  std::unique_ptr<weld::Button> m_xRefBtn;
510  std::unique_ptr<weld::ComboBox> m_xBindLB;
511  std::unique_ptr<weld::ComboBox> m_xReplaceLB;
512  std::unique_ptr<weld::Button> m_xOKBtn;
513 
514  DECL_LINK(RefHdl, weld::Button&, void);
515  DECL_LINK(OKHdl, weld::Button&, void);
516 
517  void FillAllBoxes();
518 
519  public:
520  AddSubmissionDialog(weld::Window* pParent, ItemNode* pNode,
521  const css::uno::Reference< css::xforms::XFormsUIHelper1 >& rUIHelper);
522  virtual ~AddSubmissionDialog() override;
523 
524  const css::uno::Reference< css::xforms::XSubmission >& GetNewSubmission() const { return m_xNewSubmission; }
525  };
526 
528  {
529  private:
530  std::unique_ptr<weld::Entry> m_xNameED;
531  std::unique_ptr<weld::CheckButton> m_xModifyCB;
532  std::unique_ptr<weld::Label> m_xAltTitle;
533 
534  public:
535  AddModelDialog(weld::Window* pParent, bool _bEdit);
536  virtual ~AddModelDialog() override;
537 
538  OUString GetName() const { return m_xNameED->get_text(); }
539  void SetName( const OUString& _rName ) { m_xNameED->set_text( _rName );}
540 
541  bool GetModifyDoc() const { return m_xModifyCB->get_active(); }
542  void SetModifyDoc( const bool bModify ) { m_xModifyCB->set_active(bModify); }
543  };
544 
546  {
547  private:
549 
550  std::unique_ptr<weld::Entry> m_xNameED;
551  std::unique_ptr<weld::Label> m_xURLFT;
552  std::unique_ptr<SvtURLBox> m_xURLED;
553  std::unique_ptr<weld::Button> m_xFilePickerBtn;
554  std::unique_ptr<weld::CheckButton> m_xLinkInstanceCB;
555  std::unique_ptr<weld::Label> m_xAltTitle;
556 
557  DECL_LINK(FilePickerHdl, weld::Button&, void);
558 
559  public:
560  AddInstanceDialog(weld::Window* pParent, bool _bEdit);
561  virtual ~AddInstanceDialog() override;
562 
563  OUString GetName() const { return m_xNameED->get_text(); }
564  void SetName( const OUString& rName ) { m_xNameED->set_text( rName );}
565  OUString GetURL() const { return m_xURLED->get_active_text(); }
566  void SetURL( const OUString& rURL ) { m_xURLED->set_entry_text( rURL );}
567  bool IsLinkInstance() const { return m_xLinkInstanceCB->get_active(); }
568  void SetLinkInstance( bool bLink ) { m_xLinkInstanceCB->set_active(bLink); }
569  };
570 
572  {
573  public:
575  };
576 }
577 
578 
579 #endif // INCLUDED_SVX_SOURCE_INC_DATANAVI_HXX
580 
581 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
std::unique_ptr< weld::Label > m_xNameFT
Definition: datanavi.hxx:362
virtual ~XFormsPage() override
Definition: datanavi.cxx:229
std::unique_ptr< weld::Label > m_xDataTypeFT
Definition: datanavi.hxx:368
static constexpr OUStringLiteral m_sDoc_API
Definition: datanavi.hxx:86
void DisableNotify(bool _bDisable)
Definition: datanavi.hxx:313
OString GetNewPageId() const
Definition: datanavi.cxx:1904
std::unique_ptr< weld::Button > m_xDefaultBtn
Definition: datanavi.hxx:366
std::unique_ptr< weld::CheckButton > m_xReadonlyCB
Definition: datanavi.hxx:376
std::unique_ptr< weld::Entry > m_xDefaultED
Definition: datanavi.hxx:365
std::unique_ptr< weld::Button > m_xReadonlyBtn
Definition: datanavi.hxx:377
AddConditionDialog * m_pConditionDlg
Definition: datanavi.hxx:438
css::uno::Reference< css::xforms::XFormsUIHelper1 > m_xUIHelper
Definition: datanavi.hxx:193
virtual SfxChildAlignment CheckAlignment(SfxChildAlignment, SfxChildAlignment) override
Definition: datanavi.cxx:2026
void SetName(const OUString &rName)
Definition: datanavi.hxx:564
void SetInstanceName(const OUString &name)
Definition: datanavi.hxx:238
std::unique_ptr< weld::Entry > m_xUrlED
Definition: datanavi.hxx:467
css::uno::Reference< css::beans::XPropertySet > m_xBinding
Definition: datanavi.hxx:350
std::unique_ptr< weld::Entry > m_xNameED
Definition: datanavi.hxx:550
bool HasModel() const
Definition: datanavi.hxx:227
std::unique_ptr< weld::Entry > m_xNameED
Definition: datanavi.hxx:530
signed char sal_Int8
css::uno::Reference< css::container::XNameContainer > m_xDataContainer
Definition: datanavi.hxx:276
OUString toAPI(std::u16string_view rStr) const
convert submission replace string from UI to API.
Definition: datanavi.hxx:114
DataNavigator(SfxBindings *pBindings, SfxChildWindow *pMgr, vcl::Window *pParent)
Definition: datanavi.cxx:1990
AddConditionDialog * m_pConditionDlg
Definition: datanavi.hxx:464
void StateChanged(sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem *pState) override
Definition: datanavi.cxx:2014
std::unique_ptr< weld::ComboBox > m_xModelsBox
Definition: datanavi.hxx:253
std::unique_ptr< weld::Label > m_xAltTitle
Definition: datanavi.hxx:469
const css::uno::Reference< css::xforms::XSubmission > & GetNewSubmission() const
Definition: datanavi.hxx:524
std::unique_ptr< weld::Button > m_xEditNamespaceBtn
Definition: datanavi.hxx:446
std::unique_ptr< weld::ComboBox > m_xMethodLB
Definition: datanavi.hxx:507
void SetLinkOnce(bool bLinkOnce)
Definition: datanavi.hxx:240
std::unique_ptr< weld::TextView > m_xConditionED
Definition: datanavi.hxx:411
css::uno::Reference< css::xforms::XFormsUIHelper1 > m_xUIHelper
Definition: datanavi.hxx:495
static constexpr OUStringLiteral m_sPut_API
Definition: datanavi.hxx:132
MethodString m_aMethodString
Definition: datanavi.hxx:182
OUString GetURL() const
Definition: datanavi.hxx:483
std::unique_ptr< weld::CheckButton > m_xRelevantCB
Definition: datanavi.hxx:372
std::unique_ptr< weld::Button > m_xRelevantBtn
Definition: datanavi.hxx:373
std::unique_ptr< weld::Entry > m_xRefED
Definition: datanavi.hxx:508
css::uno::Reference< css::beans::XPropertySet > m_xTempBinding
Definition: datanavi.hxx:501
DataGroupType m_eGroup
Definition: datanavi.hxx:197
void AddEntry(std::unique_ptr< ItemNode > _pNewNode, bool _bIsElement, weld::TreeIter *pRet=nullptr)
Definition: datanavi.cxx:681
virtual sal_Int8 ExecuteDrop(const ExecuteDropEvent &rEvt) override
Definition: datanavi.cxx:129
void AddContainerBroadcaster(const css::uno::Reference< css::container::XContainer > &xContainer)
Definition: datanavi.cxx:1951
std::unique_ptr< weld::Toolbar > m_xToolBox
Definition: datanavi.hxx:186
css::uno::Reference< css::beans::XPropertySet > m_xTempBinding
Definition: datanavi.hxx:352
const OUString & GetInstanceName() const
Definition: datanavi.hxx:235
bool GetLinkOnce() const
Definition: datanavi.hxx:237
OUString GetPrefix() const
Definition: datanavi.hxx:482
virtual void dispose() override
Definition: datanavi.cxx:2007
#define SFX_DECL_CHILDWINDOW(Class)
const css::uno::Reference< css::xforms::XFormsUIHelper1 > & GetXFormsHelper() const
Definition: datanavi.hxx:246
weld::Window * GetFrameWeld() const
std::unique_ptr< weld::Label > m_xURLFT
Definition: datanavi.hxx:551
void AddEventBroadcaster(const css::uno::Reference< css::xml::dom::events::XEventTarget > &xTarget)
Definition: datanavi.cxx:1960
std::unique_ptr< weld::Button > m_xDeleteNamespaceBtn
Definition: datanavi.hxx:447
void EditEntry(const css::uno::Reference< css::beans::XPropertySet > &_rPropSet)
Definition: datanavi.cxx:781
std::unique_ptr< weld::Button > m_xOKBtn
Definition: datanavi.hxx:380
OUString SvxResId(const char *pId)
Definition: dialmgr.cxx:25
OUString const & toUI(std::u16string_view rStr) const
convert from API to UI; put is default.
Definition: datanavi.hxx:147
std::unique_ptr< weld::CheckButton > m_xConstraintCB
Definition: datanavi.hxx:374
std::unique_ptr< weld::Entry > m_xActionED
Definition: datanavi.hxx:506
OUString GetURL() const
Definition: datanavi.hxx:565
css::uno::Reference< css::beans::XPropertySet > m_xSubmission
Definition: datanavi.hxx:499
void ModelSelectHdl(const weld::ComboBox *)
Definition: datanavi.cxx:1335
static constexpr OUStringLiteral m_sInstance_API
Definition: datanavi.hxx:87
DataItemType
Definition: datanavi.hxx:66
std::unique_ptr< weld::Button > m_xRefBtn
Definition: datanavi.hxx:509
void NotifyChanges(bool _bLoadAll=false)
Definition: datanavi.cxx:1931
virtual void Start() override
std::unique_ptr< weld::Button > m_xRequiredBtn
Definition: datanavi.hxx:371
std::unique_ptr< weld::Entry > m_xPrefixED
Definition: datanavi.hxx:466
::rtl::Reference< DataListener > m_xDataListener
Definition: datanavi.hxx:274
void DeleteAndClearTree()
Definition: datanavi.cxx:177
void SetModifyDoc(const bool bModify)
Definition: datanavi.hxx:542
std::unique_ptr< weld::Label > m_xAltTitle
Definition: datanavi.hxx:532
void SetPageModel(const OString &rCurId)
Definition: datanavi.cxx:1775
void SetCondition(const OUString &_rCondition)
Definition: datanavi.hxx:428
void ClearAllPageModels(bool bClearPages)
Definition: datanavi.cxx:1858
css::uno::Reference< css::beans::XPropertySet > GetBindingForNode(const css::uno::Reference< css::xml::dom::XNode > &xNode)
Definition: datanavi.hxx:243
VclPtr< vcl::Window > m_xParent
Definition: datanavi.hxx:252
std::unique_ptr< weld::Entry > m_xNameED
Definition: datanavi.hxx:363
std::unique_ptr< weld::MenuButton > m_xModelBtn
Definition: datanavi.hxx:254
void SetName(const OUString &_rName)
Definition: datanavi.hxx:539
OUString GetName() const
Definition: datanavi.hxx:538
static constexpr OUStringLiteral m_sNone_API
Definition: datanavi.hxx:88
std::unique_ptr< weld::ComboBox > m_xDataTypeLB
Definition: datanavi.hxx:369
css::uno::Reference< css::beans::XPropertySet > m_xBinding
Definition: datanavi.hxx:409
std::unique_ptr< weld::Label > m_xDefaultFT
Definition: datanavi.hxx:364
void EnableMenuItems(weld::Menu *pMenu)
Definition: datanavi.cxx:1162
std::unique_ptr< XFormsPage > m_xSubmissionPage
Definition: datanavi.hxx:259
std::vector< std::unique_ptr< XFormsPage > > m_aPageList
Definition: datanavi.hxx:266
weld::Window * GetFrameWeld() const
Definition: datanavi.hxx:310
XFormsPage * GetPage(const OString &rCurId)
Definition: datanavi.cxx:1679
DECL_LINK(TbxSelectHdl, const OString &, void)
std::unique_ptr< weld::Entry > m_xNameED
Definition: datanavi.hxx:505
css::uno::Reference< css::container::XNameContainer > & m_rNamespaces
Definition: datanavi.hxx:442
virtual Size CalcDockingSize(SfxChildAlignment) override
Definition: datanavi.cxx:2018
std::unique_ptr< weld::CheckButton > m_xRequiredCB
Definition: datanavi.hxx:370
OString GetCurrentPage() const
Definition: datanavi.cxx:1716
OUString toAPI(std::u16string_view rStr) const
convert from UI to API; put is default
Definition: datanavi.hxx:158
std::unique_ptr< weld::TreeIter > m_xScratchIter
Definition: datanavi.hxx:188
std::unique_ptr< weld::Button > m_xAddNamespaceBtn
Definition: datanavi.hxx:445
css::uno::Reference< css::xforms::XFormsUIHelper1 > m_xUIHelper
Definition: datanavi.hxx:348
void SetInstanceURL(const OUString &url)
Definition: datanavi.hxx:239
void SetURL(const OUString &rURL)
Definition: datanavi.hxx:566
float u
std::unique_ptr< weld::TreeView > m_xItemList
Definition: datanavi.hxx:187
void AddChildren(const weld::TreeIter *_pParent, const css::uno::Reference< css::xml::dom::XNode > &_xNode)
Definition: datanavi.cxx:304
std::unique_ptr< DataNavigatorWindow > m_xDataWin
Definition: datanavi.hxx:319
virtual ~DataNavigator() override
Definition: datanavi.cxx:2002
XFormsPage(weld::Container *pParent, DataNavigatorWindow *_pNaviWin, DataGroupType _eGroup)
Definition: datanavi.cxx:186
DataTreeDropTarget(weld::TreeView &rWidget)
Definition: datanavi.cxx:119
std::vector< css::uno::Reference< css::xml::dom::events::XEventTarget > > m_aEventTargetList
Definition: datanavi.hxx:270
std::unique_ptr< weld::CheckButton > m_xModifyCB
Definition: datanavi.hxx:531
bool DoMenuAction(std::string_view rMenuID)
Definition: datanavi.cxx:1157
virtual void StateChanged(StateChangedType nStateChange) override
std::unique_ptr< weld::TreeView > m_xNamespacesList
Definition: datanavi.hxx:444
void CreateInstancePage(const css::uno::Sequence< css::beans::PropertyValue > &_xPropSeq)
Definition: datanavi.cxx:1882
OUString GetCondition() const
Definition: datanavi.hxx:427
DataNavigatorWindow * m_pNaviWin
Definition: datanavi.hxx:195
std::vector< css::uno::Reference< css::container::XContainer > > m_aContainerList
Definition: datanavi.hxx:268
static bool IsAdditionalPage(const OString &rIdent)
Definition: datanavi.cxx:1638
void SetLinkInstance(bool bLink)
Definition: datanavi.hxx:568
std::unique_ptr< weld::Button > m_xFilePickerBtn
Definition: datanavi.hxx:553
std::unique_ptr< weld::Button > m_xOKBtn
Definition: datanavi.hxx:468
static constexpr OUStringLiteral m_sPost_API
Definition: datanavi.hxx:131
bool IsLinkInstance() const
Definition: datanavi.hxx:567
SfxItemState
SfxChildAlignment
std::unique_ptr< weld::Frame > m_xItemFrame
Definition: datanavi.hxx:361
std::unique_ptr< weld::Notebook > m_xTabCtrl
Definition: datanavi.hxx:255
std::unique_ptr< XFormsPage > m_xInstPage
Definition: datanavi.hxx:258
std::unique_ptr< weld::CheckButton > m_xLinkInstanceCB
Definition: datanavi.hxx:554
DataNavigatorWindow(vcl::Window *pParent, weld::Builder &rBuilder, SfxBindings const *pBindings)
Definition: datanavi.cxx:1255
css::uno::Reference< css::beans::XPropertySet > m_xCreatedBinding
Definition: datanavi.hxx:503
std::unique_ptr< weld::MenuButton > m_xInstanceBtn
Definition: datanavi.hxx:256
css::uno::Reference< css::xforms::XFormsUIHelper1 > m_xUIHelper
Definition: datanavi.hxx:407
std::unique_ptr< weld::Label > m_xAltTitle
Definition: datanavi.hxx:555
std::unique_ptr< weld::Button > m_xOKBtn
Definition: datanavi.hxx:448
ReplaceString m_aReplaceString
Definition: datanavi.hxx:490
std::unique_ptr< weld::TextView > m_xResultWin
Definition: datanavi.hxx:412
std::unique_ptr< weld::ComboBox > m_xReplaceLB
Definition: datanavi.hxx:511
std::unique_ptr< SvtURLBox > m_xURLED
Definition: datanavi.hxx:552
std::unique_ptr< weld::Button > m_xOKBtn
Definition: datanavi.hxx:512
OUString GetName() const
Definition: datanavi.hxx:563
void SetNamespace(const OUString &_rPrefix, const OUString &_rURL)
Definition: datanavi.hxx:477
OUString GetServiceNameForNode(const css::uno::Reference< css::xml::dom::XNode > &xNode)
Definition: datanavi.hxx:244
std::unique_ptr< weld::Button > m_xConstraintBtn
Definition: datanavi.hxx:375
OUString m_sInstanceURL
Definition: datanavi.hxx:203
const OUString & GetInstanceURL() const
Definition: datanavi.hxx:236
DataGroupType
Definition: datanavi.hxx:58
css::uno::Reference< css::frame::XModel > m_xFrameModel
Definition: datanavi.hxx:280
OUString m_sInstanceName
Definition: datanavi.hxx:202
std::unique_ptr< weld::ComboBox > m_xBindLB
Definition: datanavi.hxx:510
const css::uno::Reference< css::xforms::XFormsUIHelper1 > & GetUIHelper() const
Definition: datanavi.hxx:426
ReplaceString m_aReplaceString
Definition: datanavi.hxx:183
std::unique_ptr< weld::Button > m_xEditNamespacesBtn
Definition: datanavi.hxx:413
std::vector< OUString > m_aRemovedList
Definition: datanavi.hxx:439
class FmSearchEngine - Impl class for FmSearchDialog
std::unique_ptr< weld::CheckButton > m_xCalculateCB
Definition: datanavi.hxx:378
OUString LoadInstance(const css::uno::Sequence< css::beans::PropertyValue > &_xPropSeq)
Definition: datanavi.cxx:1115
bool HasFirstInstancePage() const
Definition: datanavi.cxx:1899
OUString SetModel(const css::uno::Reference< css::xforms::XModel > &_xModel, int _nPagePos)
Definition: datanavi.cxx:965
bool DoToolBoxAction(std::string_view rToolBoxID)
Definition: datanavi.cxx:375
DECL_LINK(ModelSelectListBoxHdl, weld::ComboBox &, void)
std::unique_ptr< weld::Widget > m_xSettingsFrame
Definition: datanavi.hxx:367
DataTreeDropTarget m_aDropHelper
Definition: datanavi.hxx:190
css::uno::Reference< css::xforms::XSubmission > m_xNewSubmission
Definition: datanavi.hxx:497
std::unique_ptr< weld::Button > m_xCalculateBtn
Definition: datanavi.hxx:379
std::unique_ptr< weld::Button > m_xOKBtn
Definition: datanavi.hxx:414
#define SVX_DLLPRIVATE
Definition: svxdllapi.h:30
std::unique_ptr< XFormsPage > m_xBindingPage
Definition: datanavi.hxx:260
virtual sal_Int8 AcceptDrop(const AcceptDropEvent &rEvt) override
Definition: datanavi.cxx:124
SfxChildWindow * pMgr
static constexpr OUStringLiteral m_sGet_API
Definition: datanavi.hxx:133
css::uno::Reference< css::frame::XFrame > m_xFrame
Definition: datanavi.hxx:278
SfxBindings * pBindings
OUString const & toUI(std::u16string_view rStr) const
convert submission replace string from API value to UI value.
Definition: datanavi.hxx:102
bool GetModifyDoc() const
Definition: datanavi.hxx:541
weld::Container * m_pParent
Definition: datanavi.hxx:185