]> Pileus Git - ~andy/gtk/blobdiff - gtk/gtkcssstylepropertyprivate.h
filechooserbutton: During unselect_all(), update the widgets in all situations
[~andy/gtk] / gtk / gtkcssstylepropertyprivate.h
index 0436f98ae21a9d2de01f7558fe4983ea73c9d356..fb851899ebe32c27c1011e2baf54a4802bdd8392 100644 (file)
@@ -12,8 +12,7 @@
  * 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., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
  *
  * Authors: Benjamin Otte <otte@gnome.org>
  */
@@ -35,11 +34,27 @@ G_BEGIN_DECLS
 typedef struct _GtkCssStyleProperty           GtkCssStyleProperty;
 typedef struct _GtkCssStylePropertyClass      GtkCssStylePropertyClass;
 
+typedef GtkCssValue *    (* GtkCssStylePropertyParseFunc)  (GtkCssStyleProperty    *property,
+                                                            GtkCssParser           *parser);
+typedef void             (* GtkCssStylePropertyQueryFunc)  (GtkCssStyleProperty    *property,
+                                                            const GtkCssValue      *cssvalue,
+                                                            GValue                 *value);
+typedef GtkCssValue *    (* GtkCssStylePropertyAssignFunc) (GtkCssStyleProperty    *property,
+                                                            const GValue           *value);
 struct _GtkCssStyleProperty
 {
   GtkStyleProperty parent;
 
+  GtkCssValue *initial_value;
   guint id;
+  guint inherit :1;
+  guint animated :1;
+  guint affects_size :1;
+  guint affects_font :1;
+
+  GtkCssStylePropertyParseFunc parse_value;
+  GtkCssStylePropertyQueryFunc query_value;
+  GtkCssStylePropertyAssignFunc assign_value;
 };
 
 struct _GtkCssStylePropertyClass
@@ -51,14 +66,28 @@ struct _GtkCssStylePropertyClass
 
 GType                   _gtk_css_style_property_get_type        (void) G_GNUC_CONST;
 
+void                    _gtk_css_style_property_init_properties (void);
+
 guint                   _gtk_css_style_property_get_n_properties(void);
 GtkCssStyleProperty *   _gtk_css_style_property_lookup_by_id    (guint                   id);
 
 gboolean                _gtk_css_style_property_is_inherit      (GtkCssStyleProperty    *property);
+gboolean                _gtk_css_style_property_is_animated     (GtkCssStyleProperty    *property);
+gboolean                _gtk_css_style_property_affects_size    (GtkCssStyleProperty    *property);
+gboolean                _gtk_css_style_property_affects_font    (GtkCssStyleProperty    *property);
 guint                   _gtk_css_style_property_get_id          (GtkCssStyleProperty    *property);
-const GValue *          _gtk_css_style_property_get_initial_value
+GtkCssValue  *          _gtk_css_style_property_get_initial_value
                                                                 (GtkCssStyleProperty    *property);
 
+void                    _gtk_css_style_property_print_value     (GtkCssStyleProperty    *property,
+                                                                 GtkCssValue            *value,
+                                                                 GString                *string);
+
+gboolean                _gtk_css_style_property_changes_affect_size
+                                                                (const GtkBitmask       *changes);
+gboolean                _gtk_css_style_property_changes_affect_font
+                                                                (const GtkBitmask       *changes);
+
 G_END_DECLS
 
 #endif /* __GTK_CSS_STYLE_PROPERTY_PRIVATE_H__ */