LibreOffice Module cui (master)  1
dlgname.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 #pragma once
20 
21 #include <vcl/weld.hxx>
22 
25 {
26 private:
27  std::unique_ptr<weld::Entry> m_xEdtName;
28  std::unique_ptr<weld::Label> m_xFtDescription;
29  std::unique_ptr<weld::Button> m_xBtnOK;
30 
33 
34  DECL_LINK(ModifyHdl, weld::Entry&, void);
35 
36 public:
37  SvxNameDialog(weld::Window* pWindow, const OUString& rName, const OUString& rDesc);
38 
39  OUString GetName() const { return m_xEdtName->get_text(); }
40 
56  void SetCheckNameHdl(const Link<SvxNameDialog&, bool>& rLink, bool bCheckImmediately)
57  {
58  m_aCheckNameHdl = rLink;
59  if (bCheckImmediately)
60  m_xBtnOK->set_sensitive(rLink.Call(*this));
61  }
62 
64  {
65  m_aCheckNameTooltipHdl = rLink;
66  m_xBtnOK->set_tooltip_text(rLink.Call(*this));
67  }
68 
69  void SetEditHelpId(const OString& aHelpId) { m_xEdtName->set_help_id(aHelpId); }
70 };
71 
76 {
77 private:
78  // name
79  std::unique_ptr<weld::Entry> m_xEdtName;
80 
81  // buttons
82  std::unique_ptr<weld::Button> m_xBtnOK;
83 
84  // callback link for name uniqueness
86 
87  DECL_LINK(ModifyHdl, weld::Entry&, void);
88 
89 public:
90  // constructor
91  SvxObjectNameDialog(weld::Window* pWindow, const OUString& rName);
92 
93  // data access
94  OUString GetName() const { return m_xEdtName->get_text(); }
95 
96  // set handler
97  void SetCheckNameHdl(const Link<SvxObjectNameDialog&, bool>& rLink) { aCheckNameHdl = rLink; }
98 };
99 
103 {
104 private:
105  // title
106  std::unique_ptr<weld::Entry> m_xEdtTitle;
107 
108  // description
109  std::unique_ptr<weld::TextView> m_xEdtDescription;
110 
111 public:
112  // constructor
113  SvxObjectTitleDescDialog(weld::Window* pWindow, const OUString& rTitle, const OUString& rDesc);
114  // data access
115  OUString GetTitle() const { return m_xEdtTitle->get_text(); }
116  OUString GetDescription() const { return m_xEdtDescription->get_text(); }
117 };
118 
119 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
std::unique_ptr< weld::TextView > m_xEdtDescription
Definition: dlgname.hxx:109
DECL_LINK(ModifyHdl, weld::Entry &, void)
void SetCheckNameHdl(const Link< SvxObjectNameDialog &, bool > &rLink)
Definition: dlgname.hxx:97
OUString GetName() const
Definition: dlgname.hxx:39
Dialog for editing a name.
Definition: dlgname.hxx:24
Link< SvxNameDialog &, OUString > m_aCheckNameTooltipHdl
Definition: dlgname.hxx:32
void SetCheckNameHdl(const Link< SvxNameDialog &, bool > &rLink, bool bCheckImmediately)
add a callback Link that is called whenever the content of the edit field is changed.
Definition: dlgname.hxx:56
std::unique_ptr< weld::Label > m_xFtDescription
Definition: dlgname.hxx:28
std::unique_ptr< weld::Entry > m_xEdtName
Definition: dlgname.hxx:27
Link< SvxObjectNameDialog &, bool > aCheckNameHdl
Definition: dlgname.hxx:85
void SetCheckNameTooltipHdl(const Link< SvxNameDialog &, OUString > &rLink)
Definition: dlgname.hxx:63
#i68101# Dialog for editing Object name plus uniqueness-callback-linkHandler
Definition: dlgname.hxx:75
SvxObjectNameDialog(weld::Window *pWindow, const OUString &rName)
Definition: dlgname.cxx:64
#i68101# Dialog for editing Object Title and Description
Definition: dlgname.hxx:102
std::unique_ptr< weld::Entry > m_xEdtTitle
Definition: dlgname.hxx:106
OUString GetTitle() const
Definition: dlgname.hxx:115
Link< SvxNameDialog &, bool > m_aCheckNameHdl
Definition: dlgname.hxx:31
OUString GetName() const
Definition: dlgname.hxx:94
SvxNameDialog(weld::Window *pWindow, const OUString &rName, const OUString &rDesc)
Definition: dlgname.cxx:28
std::unique_ptr< weld::Button > m_xBtnOK
Definition: dlgname.hxx:29
void SetEditHelpId(const OString &aHelpId)
Definition: dlgname.hxx:69
DECL_LINK(ModifyHdl, weld::Entry &, void)
std::unique_ptr< weld::Entry > m_xEdtName
Definition: dlgname.hxx:79
SvxObjectTitleDescDialog(weld::Window *pWindow, const OUString &rTitle, const OUString &rDesc)
Definition: dlgname.cxx:89
std::unique_ptr< weld::Button > m_xBtnOK
Definition: dlgname.hxx:82
OUString GetDescription() const
Definition: dlgname.hxx:116