blob: fab3b5e391b10d29d8557408a2f9c5fc44cab461 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
/*
* Copyright (c) 2010 Remko Tronçon
* Licensed under the GNU General Public License v3.
* See Documentation/Licenses/GPLv3.txt for more information.
*/
#pragma once
#include <CoreFoundation/CoreFoundation.h>
#include <Growl/Growl.h>
#include "SwifTools/Notifier/Notifier.h"
namespace Swift {
/**
* Preconditions for using growlnotifier:
* - Must be part a bundle.
* - The Carbon/Cocoa application loop must be running (e.g. through QApplication)
* such that notifications are coming through.
* TODO: Find out what the easiest way is to do this without a QApplication.
*/
class GrowlNotifier : public Notifier {
public:
GrowlNotifier(const String& name);
virtual void showMessage(Type type, const String& subject, const String& description, const ByteArray& picture, boost::function<void()> callback);
private:
String typeToString(Type type);
private:
Growl_Delegate delegate_;
};
}
|