Fawkes API  Fawkes Development Version
netloggui.h
1 
2 /***************************************************************************
3  * netloggui.h - NetLog GUI
4  *
5  * Created: Tue Nov 03 23:38:11 2008
6  * Copyright 2008 Tim Niemueller [www.niemueller.de]
7  *
8  ****************************************************************************/
9 
10 /* This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation; either version 2 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU Library General Public License for more details.
19  *
20  * Read the full text in the LICENSE.GPL file in the doc directory.
21  */
22 
23 #ifndef __TOOLS_NETLOGGUI_NETLOGGUI_H_
24 #define __TOOLS_NETLOGGUI_NETLOGGUI_H_
25 
26 #include <gtkmm.h>
27 
28 namespace fawkes {
29  class AvahiThread;
30  class LogView;
31  class NetworkService;
32  class AvahiDispatcher;
33 }
34 
35 class NetLogGuiGtkWindow : public Gtk::Window
36 {
37  public:
38  NetLogGuiGtkWindow(BaseObjectType* cobject,
39  const Glib::RefPtr<Gtk::Builder> &builder);
41 
42  private:
43  int on_service_added(fawkes::NetworkService *service);
44  void on_service_removed(fawkes::NetworkService *service);
45 
46  void on_connection_clicked();
47  void on_exit_clicked();
48  void on_clear_clicked();
49 
50  void on_connbut_clicked(Gtk::Image *image, fawkes::LogView *logview);
51  void on_connected(Gtk::Image *image);
52  void on_disconnected(Gtk::Image *image);
53 
54  private:
55  fawkes::AvahiThread *avahi_thread;
56  fawkes::AvahiDispatcher *avahi_dispatcher;
57 
58  Gtk::VBox *vbox_main;
59  Gtk::Label *lab_no_connection;
60  Gtk::ToolButton *tb_connection;
61  Gtk::ToolButton *tb_exit;
62  Gtk::ToolButton *tb_clear;
63 
64  Gtk::Notebook ntb_logviewers;
65 };
66 
67 #endif
Log View widget.
Definition: logview.h:40
Avahi dispatcher.
Fawkes library namespace.
Avahi main thread.
Definition: avahi_thread.h:54
Representation of a service announced or found via service discovery (i.e.
Definition: service.h:37
NetLog GUI main window.
Definition: netloggui.h:35