* 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>
*/
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
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__ */