~valavanisalex/ubuntu/precise/inkscape/fix-943984

« back to all changes in this revision

Viewing changes to inkscape-0.47pre1/src/widgets/sp-color-notebook.h

  • Committer: Bazaar Package Importer
  • Author(s): Bryce Harrington
  • Date: 2009-07-02 17:09:45 UTC
  • mfrom: (1.1.9 upstream)
  • Revision ID: james.westby@ubuntu.com-20090702170945-nn6d6zswovbwju1t
Tags: 0.47~pre1-0ubuntu1
* New upstream release.
  - Don't constrain maximization on small resolution devices (pre0)
    (LP: #348842)
  - Fixes segfault on startup (pre0)
    (LP: #391149)

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#ifndef SEEN_SP_COLOR_NOTEBOOK_H
 
2
#define SEEN_SP_COLOR_NOTEBOOK_H
 
3
 
 
4
/*
 
5
 * A notebook with RGB, CMYK, CMS, HSL, and Wheel pages
 
6
 *
 
7
 * Author:
 
8
 *   Lauris Kaplinski <lauris@kaplinski.com>
 
9
 *
 
10
 * Copyright (C) 2001-2002 Lauris Kaplinski
 
11
 *
 
12
 * This code is in public domain
 
13
 */
 
14
 
 
15
#include <gtk/gtkvbox.h>
 
16
#include <gtk/gtknotebook.h>
 
17
#include <gtk/gtkentry.h>
 
18
#include "../color.h"
 
19
#include "sp-color-selector.h"
 
20
 
 
21
#include <glib.h>
 
22
 
 
23
 
 
24
 
 
25
struct SPColorNotebook;
 
26
 
 
27
class ColorNotebook: public ColorSelector
 
28
{
 
29
public:
 
30
    ColorNotebook( SPColorSelector* csel );
 
31
    virtual ~ColorNotebook();
 
32
 
 
33
    virtual void init();
 
34
 
 
35
    SPColorSelector* getCurrentSelector();
 
36
    void switchPage( GtkNotebook *notebook, GtkNotebookPage *page, guint page_num );
 
37
 
 
38
    GtkWidget* addPage( GType page_type, guint submode );
 
39
    void removePage( GType page_type, guint submode );
 
40
    GtkWidget* getPage( GType page_type, guint submode );
 
41
 
 
42
    gint menuHandler( GdkEvent* event );
 
43
 
 
44
protected:
 
45
    static void _rgbaEntryChangedHook( GtkEntry* entry, SPColorNotebook *colorbook );
 
46
    static void _entryGrabbed( SPColorSelector *csel, SPColorNotebook *colorbook );
 
47
    static void _entryDragged( SPColorSelector *csel, SPColorNotebook *colorbook );
 
48
    static void _entryReleased( SPColorSelector *csel, SPColorNotebook *colorbook );
 
49
    static void _entryChanged( SPColorSelector *csel, SPColorNotebook *colorbook );
 
50
    static void _entryModified( SPColorSelector *csel, SPColorNotebook *colorbook );
 
51
 
 
52
    virtual void _colorChanged();
 
53
 
 
54
    void _rgbaEntryChanged( GtkEntry* entry );
 
55
    void _updateRgbaEntry( const SPColor& color, gfloat alpha );
 
56
 
 
57
    gboolean _updating : 1;
 
58
    gboolean _updatingrgba : 1;
 
59
    gboolean _dragging : 1;
 
60
    gulong _switchId;
 
61
    gulong _entryId;
 
62
    GtkWidget *_book;
 
63
    GtkWidget *_rgbal, *_rgbae; /* RGBA entry */
 
64
    GtkWidget *_p; /* Color preview */
 
65
    GtkWidget *_btn;
 
66
    GtkWidget *_popup;
 
67
    GPtrArray *_trackerList;
 
68
 
 
69
private:
 
70
    // By default, disallow copy constructor and assignment operator
 
71
    ColorNotebook( const ColorNotebook& obj );
 
72
    ColorNotebook& operator=( const ColorNotebook& obj );
 
73
};
 
74
 
 
75
 
 
76
 
 
77
#define SP_TYPE_COLOR_NOTEBOOK (sp_color_notebook_get_type ())
 
78
#define SP_COLOR_NOTEBOOK(o) (GTK_CHECK_CAST ((o), SP_TYPE_COLOR_NOTEBOOK, SPColorNotebook))
 
79
#define SP_COLOR_NOTEBOOK_CLASS(k) (GTK_CHECK_CLASS_CAST ((k), SP_TYPE_COLOR_NOTEBOOK, SPColorNotebookClass))
 
80
#define SP_IS_COLOR_NOTEBOOK(o) (GTK_CHECK_TYPE ((o), SP_TYPE_COLOR_NOTEBOOK))
 
81
#define SP_IS_COLOR_NOTEBOOK_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), SP_TYPE_COLOR_NOTEBOOK))
 
82
 
 
83
struct SPColorNotebook {
 
84
    SPColorSelector parent;    /* Parent */
 
85
};
 
86
 
 
87
struct SPColorNotebookClass {
 
88
    SPColorSelectorClass parent_class;
 
89
 
 
90
    void (* grabbed) (SPColorNotebook *rgbsel);
 
91
    void (* dragged) (SPColorNotebook *rgbsel);
 
92
    void (* released) (SPColorNotebook *rgbsel);
 
93
    void (* changed) (SPColorNotebook *rgbsel);
 
94
};
 
95
 
 
96
GType sp_color_notebook_get_type(void);
 
97
 
 
98
GtkWidget *sp_color_notebook_new (void);
 
99
 
 
100
/* void sp_color_notebook_set_mode (SPColorNotebook *csel, SPColorNotebookMode mode); */
 
101
/* SPColorNotebookMode sp_color_notebook_get_mode (SPColorNotebook *csel); */
 
102
 
 
103
 
 
104
 
 
105
#endif // SEEN_SP_COLOR_NOTEBOOK_H
 
106
 
 
107
/*
 
108
  Local Variables:
 
109
  mode:c++
 
110
  c-file-style:"stroustrup"
 
111
  c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
 
112
  indent-tabs-mode:nil
 
113
  fill-column:99
 
114
  End:
 
115
*/
 
116
// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :
 
117