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
98  {
99  aCheckNameHdl = rLink;
100  }
101 };
102 
106 {
107 private:
108  // title
109  std::unique_ptr<weld::Entry> m_xEdtTitle;
110 
111  // description
112  std::unique_ptr<weld::TextView> m_xEdtDescription;
113 
114 public:
115  // constructor
116  SvxObjectTitleDescDialog(weld::Window* pWindow, const OUString& rTitle, const OUString& rDesc);
117  // data access
118  OUString GetTitle() const { return m_xEdtTitle->get_text(); }
119  OUString GetDescription() const { return m_xEdtDescription->get_text(); }
120 };
121 
122 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
std::unique_ptr< weld::TextView > m_xEdtDescription
Definition: dlgname.hxx:112
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
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
void SetCheckNameTooltipHdl(const Link< SvxNameDialog &, OUString > &rLink)
Definition: dlgname.hxx:63
Link< SvxNameDialog &, OUString > m_aCheckNameTooltipHdl
Definition: dlgname.hxx:32
#i68101# Dialog for editing Object name plus uniqueness-callback-linkHandler
Definition: dlgname.hxx:75
SvxObjectNameDialog(weld::Window *pWindow, const OUString &rName)
Definition: dlgname.cxx:63
#i68101# Dialog for editing Object Title and Description
Definition: dlgname.hxx:105
std::unique_ptr< weld::Entry > m_xEdtTitle
Definition: dlgname.hxx:109
OUString GetTitle() const
Definition: dlgname.hxx:118
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:88
Link< SvxObjectNameDialog &, bool > aCheckNameHdl
Definition: dlgname.hxx:85
std::unique_ptr< weld::Button > m_xBtnOK
Definition: dlgname.hxx:82
OUString GetDescription() const
Definition: dlgname.hxx:119