dom/ipc/ColorPickerParent.h

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:12933c91bd45
1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*-
2 * vim: set sw=4 ts=8 et tw=80 :
3 * This Source Code Form is subject to the terms of the Mozilla Public
4 * License, v. 2.0. If a copy of the MPL was not distributed with this
5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6
7 #ifndef mozilla_dom_ColorPickerParent_h
8 #define mozilla_dom_ColorPickerParent_h
9
10 #include "mozilla/dom/PColorPickerParent.h"
11 #include "nsIColorPicker.h"
12
13 namespace mozilla {
14 namespace dom {
15
16 class ColorPickerParent : public PColorPickerParent
17 {
18 public:
19 ColorPickerParent(const nsString& aTitle,
20 const nsString& aInitialColor)
21 : mTitle(aTitle)
22 , mInitialColor(aInitialColor)
23 {}
24
25 virtual ~ColorPickerParent() {}
26
27 virtual bool RecvOpen() MOZ_OVERRIDE;
28 virtual void ActorDestroy(ActorDestroyReason aWhy) MOZ_OVERRIDE;
29
30 class ColorPickerShownCallback MOZ_FINAL
31 : public nsIColorPickerShownCallback
32 {
33 public:
34 ColorPickerShownCallback(ColorPickerParent* aColorPickerParnet)
35 : mColorPickerParent(aColorPickerParnet)
36 {}
37
38 NS_DECL_ISUPPORTS
39 NS_DECL_NSICOLORPICKERSHOWNCALLBACK
40
41 void Destroy();
42
43 private:
44 ColorPickerParent* mColorPickerParent;
45 };
46
47 private:
48 bool CreateColorPicker();
49
50 nsRefPtr<ColorPickerShownCallback> mCallback;
51 nsCOMPtr<nsIColorPicker> mPicker;
52
53 nsString mTitle;
54 nsString mInitialColor;
55 };
56
57 } // namespace dom
58 } // namespace mozilla
59
60 #endif // mozilla_dom_ColorPickerParent_h

mercurial