LeechCraft  0.6.70-15082-g543737046d
Modular cross-platform feature rich live environment.
clearlineeditaddon.h
Go to the documentation of this file.
1 /**********************************************************************
2  * LeechCraft - modular cross-platform feature rich internet client.
3  * Copyright (C) 2006-2014 Georg Rudoy
4  *
5  * Distributed under the Boost Software License, Version 1.0.
6  * (See accompanying file LICENSE or copy at https://www.boost.org/LICENSE_1_0.txt)
7  **********************************************************************/
8 
9 #pragma once
10 
11 #include <QObject>
13 #include "guiconfig.h"
14 
15 class QLineEdit;
16 class QToolButton;
17 class QShortcut;
18 
19 namespace LC::Util
20 {
21  class LineEditButtonManager;
22 
42  class UTIL_GUI_API ClearLineEditAddon : public QObject
43  {
44  QToolButton * const Button_;
45  QShortcut * const EscShortcut_;
46  public:
59  ClearLineEditAddon (const ICoreProxy_ptr& proxy, QLineEdit *edit);
60 
74  ClearLineEditAddon (const ICoreProxy_ptr& proxy, QLineEdit *edit, LineEditButtonManager *manager);
75 
83  void SetEscClearsEdit (bool clears);
84  };
85 }
icoreproxy.h
LC::Util
Definition: icoreproxy.h:33
LC::Util::LineEditButtonManager
Manages additional overlay buttons in a QLineEdit.
Definition: lineeditbuttonmanager.h:36
LC::Util::ClearLineEditAddon
Provides a "clear text" action for line edits.
Definition: clearlineeditaddon.h:42
UTIL_GUI_API
#define UTIL_GUI_API
Definition: guiconfig.h:16
ICoreProxy_ptr
std::shared_ptr< ICoreProxy > ICoreProxy_ptr
Definition: icoreproxy.h:181
guiconfig.h