summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJiri Moskovcak <jmoskovc@redhat.com>2009-02-03 12:52:58 +0100
committerJiri Moskovcak <jmoskovc@redhat.com>2009-02-03 12:52:58 +0100
commit7be2e9706836a81f08bcc748a040857f4cd1117d (patch)
tree081bc30bf92810435216a5a95f9cc4c27b7ca84f
parent9eb8eb3c8a1b291da7359a9fc1f1c749272a1f28 (diff)
downloadabrt-7be2e9706836a81f08bcc748a040857f4cd1117d.tar.gz
abrt-7be2e9706836a81f08bcc748a040857f4cd1117d.tar.xz
abrt-7be2e9706836a81f08bcc748a040857f4cd1117d.zip
Added simple action to applet (left click hides it)
-rw-r--r--lib/DBus/DBusManager.h4
-rw-r--r--src/Applet/CCApplet.cpp21
-rw-r--r--src/Applet/CCApplet.h8
3 files changed, 31 insertions, 2 deletions
diff --git a/lib/DBus/DBusManager.h b/lib/DBus/DBusManager.h
index e3537f8..f29d5d4 100644
--- a/lib/DBus/DBusManager.h
+++ b/lib/DBus/DBusManager.h
@@ -50,6 +50,10 @@ class CDBusManager
void LoopSend();
void Unregister();
void RegisterToMessage(const std::string& pMessage, GCallback handler, void * data, GClosureNotify free_data_func);
+ /** TODO
+ //tries to reconnect after daemon failure
+ void Reconnect();
+ */
};
#endif /*DBUS_H_*/
diff --git a/src/Applet/CCApplet.cpp b/src/Applet/CCApplet.cpp
index a48260c..fd9741a 100644
--- a/src/Applet/CCApplet.cpp
+++ b/src/Applet/CCApplet.cpp
@@ -18,17 +18,34 @@
*/
#include "CCApplet.h"
+#include <iostream>
CApplet::CApplet()
{
- m_nStatusIcon = Gtk::StatusIcon::create(Gtk::Stock::DIALOG_WARNING);
- m_nStatusIcon->set_visible(false);
+
+ m_nStatusIcon = Gtk::StatusIcon::create(Gtk::Stock::DIALOG_WARNING);
+ m_nStatusIcon->set_visible(false);
+ // LTM click
+ m_nStatusIcon->signal_activate().connect(sigc::mem_fun(*this, &CApplet::OnAppletActivate_CB));
+ SetIconToolip("Pending events:");
}
CApplet::~CApplet()
{
}
+void CApplet::SetIconToolip(const Glib::ustring& tip)
+{
+ m_nStatusIcon->set_tooltip(tip);
+}
+
+void CApplet::OnAppletActivate_CB()
+{
+ m_nStatusIcon->set_visible(false);
+ //std::cout << "Activate" << std::endl;
+
+}
+
void CApplet::ShowIcon()
{
m_nStatusIcon->set_visible(true);
diff --git a/src/Applet/CCApplet.h b/src/Applet/CCApplet.h
index 83c3e75..428f4a9 100644
--- a/src/Applet/CCApplet.h
+++ b/src/Applet/CCApplet.h
@@ -26,12 +26,20 @@ class CApplet
{
private:
Glib::RefPtr<Gtk::StatusIcon> m_nStatusIcon;
+ int m_iPendingEvents;
public:
CApplet();
~CApplet();
void ShowIcon();
void HideIcon();
+ //void DisableIcon();
void BlinkIcon(bool pBlink);
+ void SetIconToolip(const Glib::ustring& tip);
+ protected:
+ void OnAppletActivate_CB();
+ Glib::RefPtr<Gtk::UIManager> m_refUIManager;
+ Glib::RefPtr<Gtk::ActionGroup> m_refActionGroup;
+ Gtk::Menu* m_pMenuPopup;
};
#endif /*CC_APPLET_H_*/