Feathercoin  0.5.0
P2P Digital Currency
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros
guiutil.h
Go to the documentation of this file.
1 #ifndef GUIUTIL_H
2 #define GUIUTIL_H
3 
4 #include <QString>
5 #include <QObject>
6 #include <QMessageBox>
7 
9 
10 QT_BEGIN_NAMESPACE
11 class QFont;
12 class QLineEdit;
13 class QWidget;
14 class QDateTime;
15 class QUrl;
16 class QAbstractItemView;
17 QT_END_NAMESPACE
18 
21 namespace GUIUtil
22 {
23  // Create human-readable string from date
24  QString dateTimeStr(const QDateTime &datetime);
25  QString dateTimeStr(qint64 nTime);
26 
27  // Render Bitcoin addresses in monospace font
28  QFont bitcoinAddressFont();
29 
30  // Set up widgets for address and amounts
31  void setupAddressWidget(QLineEdit *widget, QWidget *parent);
32  void setupAmountWidget(QLineEdit *widget, QWidget *parent);
33 
34  // Parse "bitcoin:" URI into recipient object, return true on successful parsing
35  // See Bitcoin URI definition discussion here: https://bitcointalk.org/index.php?topic=33490.0
36  bool parseBitcoinURI(const QUrl &uri, SendCoinsRecipient *out);
37  bool parseBitcoinURI(QString uri, SendCoinsRecipient *out);
38 
39  // HTML escaping for rich text controls
40  QString HtmlEscape(const QString& str, bool fMultiLine=false);
41  QString HtmlEscape(const std::string& str, bool fMultiLine=false);
42 
49  void copyEntryData(QAbstractItemView *view, int column, int role=Qt::EditRole);
50 
51  void setClipboard(const QString& str);
52 
63  QString getSaveFileName(QWidget *parent=0, const QString &caption=QString(),
64  const QString &dir=QString(), const QString &filter=QString(),
65  QString *selectedSuffixOut=0);
66 
72  Qt::ConnectionType blockingGUIThreadConnection();
73 
74  // Determine whether a widget is hidden behind other windows
75  bool isObscured(QWidget *w);
76 
77  // Open debug.log
78  void openDebugLogfile();
79 
84  class ToolTipToRichTextFilter : public QObject
85  {
86  Q_OBJECT
87 
88  public:
89  explicit ToolTipToRichTextFilter(int size_threshold, QObject *parent = 0);
90 
91  protected:
92  bool eventFilter(QObject *obj, QEvent *evt);
93 
94  private:
96  };
97 
99  bool SetStartOnSystemStartup(bool fAutoStart);
100 
102  class HelpMessageBox : public QMessageBox
103  {
104  Q_OBJECT
105 
106  public:
107  HelpMessageBox(QWidget *parent = 0);
108 
110  void showOrPrint();
111 
113  void printToConsole();
114 
115  private:
116  QString header;
117  QString coreOptions;
118  QString uiOptions;
119  };
120 
121 } // namespace GUIUtil
122 
123 #endif // GUIUTIL_H
void openDebugLogfile()
Definition: guiutil.cpp:268
Utility functions used by the Bitcoin Qt UI.
Definition: guiutil.cpp:49
void setupAmountWidget(QLineEdit *widget, QWidget *parent)
Definition: guiutil.cpp:75
QString getSaveFileName(QWidget *parent, const QString &caption, const QString &dir, const QString &filter, QString *selectedSuffixOut)
Get save filename, mimics QFileDialog::getSaveFileName, except that it appends a default suffix when ...
Definition: guiutil.cpp:190
HelpMessageBox(QWidget *parent=0)
Definition: guiutil.cpp:495
QString dateTimeStr(const QDateTime &date)
Definition: guiutil.cpp:51
Qt::ConnectionType blockingGUIThreadConnection()
Get connection type to call object slot in GUI thread with invokeMethod.
Definition: guiutil.cpp:240
bool GetStartOnSystemStartup()
Definition: guiutil.cpp:490
ToolTipToRichTextFilter(int size_threshold, QObject *parent=0)
Definition: guiutil.cpp:277
QString HtmlEscape(const QString &str, bool fMultiLine)
Definition: guiutil.cpp:150
Qt event filter that intercepts ToolTipChange events, and replaces the tooltip with a rich text repre...
Definition: guiutil.h:84
void setupAddressWidget(QLineEdit *widget, QWidget *parent)
Definition: guiutil.cpp:68
bool parseBitcoinURI(const QUrl &uri, SendCoinsRecipient *out)
Definition: guiutil.cpp:84
bool isObscured(QWidget *w)
Definition: guiutil.cpp:259
bool eventFilter(QObject *obj, QEvent *evt)
Definition: guiutil.cpp:283
void setClipboard(const QString &str)
Definition: guiutil.cpp:184
void printToConsole()
Print help message to console.
Definition: guiutil.cpp:517
void showOrPrint()
Show message box or print help message to standard output, based on operating system.
Definition: guiutil.cpp:524
Help message for Bitcoin-Qt, shown with –help.
Definition: guiutil.h:102
bool SetStartOnSystemStartup(bool fAutoStart)
Definition: guiutil.cpp:491
void copyEntryData(QAbstractItemView *view, int column, int role)
Copy a field of the currently selected entry of a view to the clipboard.
Definition: guiutil.cpp:169
QFont bitcoinAddressFont()
Definition: guiutil.cpp:61