~golfish/netbook-remix-launcher/desktop

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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
/* tidy-adjustment.h: Adjustment object
 *
 * Copyright (C) 2008 OpenedHand
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the
 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 * Boston, MA 02111-1307, USA.
 *
 * Written by: Chris Lord <chris@openedhand.com>, inspired by GtkAdjustment
 */

#ifndef __TIDY_ADJUSTMENT_H__
#define __TIDY_ADJUSTMENT_H__

#include <glib-object.h>
#include <clutter/clutter-fixed.h>

G_BEGIN_DECLS

#define TIDY_TYPE_ADJUSTMENT            (tidy_adjustment_get_type())
#define TIDY_ADJUSTMENT(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), TIDY_TYPE_ADJUSTMENT, TidyAdjustment))
#define TIDY_IS_ADJUSTMENT(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TIDY_TYPE_ADJUSTMENT))
#define TIDY_ADJUSTMENT_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), TIDY_TYPE_ADJUSTMENT, TidyAdjustmentClass))
#define TIDY_IS_ADJUSTMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TIDY_TYPE_ADJUSTMENT))
#define TIDY_ADJUSTMENT_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), TIDY_TYPE_ADJUSTMENT, TidyAdjustmentClass))

typedef struct _TidyAdjustment          TidyAdjustment;
typedef struct _TidyAdjustmentPrivate   TidyAdjustmentPrivate;
typedef struct _TidyAdjustmentClass     TidyAdjustmentClass;

/**
 * TidyAdjustment:
 *
 * Class for handling an interval between to values. The contents of
 * the #TidyAdjustment are private and should be accessed using the
 * public API.
 */
struct _TidyAdjustment
{
  /*< private >*/
  GObject parent_instance;
  
  TidyAdjustmentPrivate *priv;
};

/**
 * TidyAdjustmentClass
 * @changed: Class handler for the ::changed signal.
 *
 * Base class for #TidyAdjustment.
 */
struct _TidyAdjustmentClass
{
  GObjectClass parent_class;
  
  void (* changed)       (TidyAdjustment *adjustment);
};

GType tidy_adjustment_get_type (void) G_GNUC_CONST;

TidyAdjustment * tidy_adjustment_new         (gdouble         value,
                                              gdouble         lower,
                                              gdouble         upper,
                                              gdouble         step_increment,
                                              gdouble         page_increment,
                                              gdouble         page_size);
TidyAdjustment * tidy_adjustment_newx        (ClutterFixed    value,
                                              ClutterFixed    lower,
                                              ClutterFixed    upper,
                                              ClutterFixed    step_increment,
                                              ClutterFixed    page_increment,
                                              ClutterFixed    page_size);
gdouble          tidy_adjustment_get_value   (TidyAdjustment *adjustment);
ClutterFixed     tidy_adjustment_get_valuex  (TidyAdjustment *adjustment);
void             tidy_adjustment_set_value   (TidyAdjustment *adjustment,
                                              gdouble         value);
void             tidy_adjustment_set_valuex  (TidyAdjustment *adjustment,
                                              ClutterFixed    value);
void             tidy_adjustment_clamp_page  (TidyAdjustment *adjustment,
                                              gdouble         lower,
                                              gdouble         upper);
void             tidy_adjustment_clamp_pagex (TidyAdjustment *adjustment,
                                              ClutterFixed    lower,
                                              ClutterFixed    upper);
void             tidy_adjustment_set_values  (TidyAdjustment *adjustment,
                                              gdouble         value,
                                              gdouble         lower,
                                              gdouble         upper,
                                              gdouble         step_increment,
                                              gdouble         page_increment,
                                              gdouble         page_size);
void             tidy_adjustment_set_valuesx (TidyAdjustment *adjustment,
                                              ClutterFixed    value,
                                              ClutterFixed    lower,
                                              ClutterFixed    upper,
                                              ClutterFixed    step_increment,
                                              ClutterFixed    page_increment,
                                              ClutterFixed    page_size);
void             tidy_adjustment_get_values  (TidyAdjustment *adjustment,
                                              gdouble        *value,
                                              gdouble        *lower,
                                              gdouble        *upper,
                                              gdouble        *step_increment,
                                              gdouble        *page_increment,
                                              gdouble        *page_size);
void             tidy_adjustment_get_valuesx (TidyAdjustment *adjustment,
                                              ClutterFixed   *value,
                                              ClutterFixed   *lower,
                                              ClutterFixed   *upper,
                                              ClutterFixed   *step_increment,
                                              ClutterFixed   *page_increment,
                                              ClutterFixed   *page_size);

void             tidy_adjustment_interpolate (TidyAdjustment *adjustment,
                                              gdouble         value,
                                              guint           n_frames,
                                              guint           fps);
void             tidy_adjustment_interpolatex(TidyAdjustment *adjustment,
                                              ClutterFixed    value,
                                              guint           n_frames,
                                              guint           fps);

G_END_DECLS

#endif /* __TIDY_ADJUSTMENT_H__ */