4 Bacula® - The Network Backup Solution
6 Copyright (C) 2007-2007 Free Software Foundation Europe e.V.
8 The main author of Bacula is Kern Sibbald, with contributions from
9 many others, a complete list can be found in the file AUTHORS.
10 This program is Free Software; you can redistribute it and/or
11 modify it under the terms of version two of the GNU General Public
12 License as published by the Free Software Foundation plus additions
13 that are listed in the file LICENSE.
15 This program is distributed in the hope that it will be useful, but
16 WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18 General Public License for more details.
20 You should have received a copy of the GNU General Public License
21 along with this program; if not, write to the Free Software
22 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
25 Bacula® is a registered trademark of John Walker.
26 The licensor of Bacula is the Free Software Foundation Europe
27 (FSFE), Fiduciary Program, Sumatrastrasse 25, 8006 Zürich,
28 Switzerland, email:ftf@fsfeurope.org.
33 * Kern Sibbald, January 2007
38 #include "ui_console.h"
40 #ifndef MAX_NAME_LENGTH
41 #define MAX_NAME_LENGTH 128
45 * Structure for obtaining the defaults for a job
50 QString messages_name;
66 class Console : public Pages, public Ui::ConsoleForm
71 Console(QStackedWidget *parent);
73 void display_text(const char *buf);
74 void display_text(const QString buf);
75 void display_textf(const char *fmt, ...);
76 void display_html(const QString buf);
77 void update_cursor(void);
78 void write_dir(const char *buf);
79 bool dir_cmd(const char *cmd, QStringList &results);
80 bool dir_cmd(QString &cmd, QStringList &results);
81 bool sql_cmd(const char *cmd, QStringList &results);
82 bool sql_cmd(QString &cmd, QStringList &results);
83 bool authenticate_director(JCR *jcr, DIRRES *director, CONRES *cons,
84 char *buf, int buflen);
85 bool is_connected() { return m_sock != NULL; };
86 bool is_connectedGui();
87 bool preventInUseConnect();
88 const QFont get_font();
92 void notify(bool enable);
93 QStringList get_list(char *cmd);
94 bool get_job_defaults(struct job_defaults &);
96 void beginNewCommand();
97 void displayToPrompt();
98 void discardToPrompt();
99 void setDirectorTreeItem(QTreeWidgetItem *);
100 void setDirRes(DIRRES *dir);
101 QTreeWidgetItem *directorTreeItem() { return m_directorTreeItem; };
102 void getDirResName(QString &);
105 QStringList job_list;
106 QStringList client_list;
107 QStringList fileset_list;
108 QStringList messages_list;
109 QStringList pool_list;
110 QStringList storage_list;
111 QStringList type_list;
112 QStringList level_list;
117 void read_dir(int fd);
119 int write(const char *msg);
120 int write(QString msg);
121 void status_dir(void);
124 void poll_messages(void);
127 DIRRES *m_dir; /* so various pages can reference it */
130 QTextEdit *m_textEdit;
133 bool m_at_main_prompt;
134 QSocketNotifier *m_notifier;
135 QTextCursor *m_cursor;
136 QTreeWidgetItem *m_directorTreeItem;
138 bool m_messages_pending;
142 #endif /* _CONSOLE_H_ */