[clutter/clutter-1.18] Deprecate ClutterTableLayout
- From: Emmanuele Bassi <ebassi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [clutter/clutter-1.18] Deprecate ClutterTableLayout
- Date: Tue, 19 Nov 2013 00:32:29 +0000 (UTC)
commit 7af55d23e4a24689eba6e3f994e7b96b7495c614
Author: Emmanuele Bassi <ebassi gnome org>
Date: Tue Nov 19 00:26:37 2013 +0000
Deprecate ClutterTableLayout
The table layout manager has various issues:
• no support for RTL flipping
• most of the layout API is legacy, and has been replaced by the
alignment and expansion flags on ClutterActor
• the animation API is legacy, and has been replaced by the
implicitly animatable allocation
• the spanning cells handling is a bit awkward, as is its API
On top of that, we imported the grid layout management policy from GTK+
into ClutterGridLayout, which provides all the required features in a
more well-designed API.
Instead of wasting time and resources updating TableLayout, we should
deprecate it and point developers of the GridLayout.
clutter/Makefile.am | 4 +-
clutter/clutter-deprecated.h | 1 +
clutter/clutter.h | 1 -
clutter/{ => deprecated}/clutter-table-layout.c | 30 +++++++++++++++++++++++
clutter/{ => deprecated}/clutter-table-layout.h | 15 +++++++++++
doc/reference/clutter/clutter-docs.xml.in | 4 +-
6 files changed, 50 insertions(+), 5 deletions(-)
---
diff --git a/clutter/Makefile.am b/clutter/Makefile.am
index b035548..21ea818 100644
--- a/clutter/Makefile.am
+++ b/clutter/Makefile.am
@@ -115,7 +115,6 @@ source_h = \
$(srcdir)/clutter-snap-constraint.h \
$(srcdir)/clutter-stage.h \
$(srcdir)/clutter-stage-manager.h \
- $(srcdir)/clutter-table-layout.h \
$(srcdir)/clutter-tap-action.h \
$(srcdir)/clutter-texture.h \
$(srcdir)/clutter-text.h \
@@ -199,7 +198,6 @@ source_c = \
$(srcdir)/clutter-stage.c \
$(srcdir)/clutter-stage-manager.c \
$(srcdir)/clutter-stage-window.c \
- $(srcdir)/clutter-table-layout.c \
$(srcdir)/clutter-tap-action.c \
$(srcdir)/clutter-text.c \
$(srcdir)/clutter-text-buffer.c \
@@ -282,6 +280,7 @@ deprecated_h = \
$(srcdir)/deprecated/clutter-stage-manager.h \
$(srcdir)/deprecated/clutter-stage.h \
$(srcdir)/deprecated/clutter-state.h \
+ $(srcdir)/deprecated/clutter-table-layout.h \
$(srcdir)/deprecated/clutter-texture.h \
$(srcdir)/deprecated/clutter-timeline.h \
$(srcdir)/deprecated/clutter-timeout-pool.h \
@@ -313,6 +312,7 @@ deprecated_c = \
$(srcdir)/deprecated/clutter-score.c \
$(srcdir)/deprecated/clutter-shader.c \
$(srcdir)/deprecated/clutter-state.c \
+ $(srcdir)/deprecated/clutter-table-layout.c \
$(srcdir)/deprecated/clutter-texture.c \
$(srcdir)/deprecated/clutter-timeout-pool.c \
$(NULL)
diff --git a/clutter/clutter-deprecated.h b/clutter/clutter-deprecated.h
index 1f40029..fc40557 100644
--- a/clutter/clutter-deprecated.h
+++ b/clutter/clutter-deprecated.h
@@ -33,6 +33,7 @@
#include "deprecated/clutter-stage-manager.h"
#include "deprecated/clutter-stage.h"
#include "deprecated/clutter-state.h"
+#include "deprecated/clutter-table-layout.h"
#include "deprecated/clutter-texture.h"
#include "deprecated/clutter-timeline.h"
#include "deprecated/clutter-timeout-pool.h"
diff --git a/clutter/clutter.h b/clutter/clutter.h
index 5bdd6bc..0300099 100644
--- a/clutter/clutter.h
+++ b/clutter/clutter.h
@@ -98,7 +98,6 @@
#include "clutter-snap-constraint.h"
#include "clutter-stage.h"
#include "clutter-stage-manager.h"
-#include "clutter-table-layout.h"
#include "clutter-tap-action.h"
#include "clutter-texture.h"
#include "clutter-text.h"
diff --git a/clutter/clutter-table-layout.c b/clutter/deprecated/clutter-table-layout.c
similarity index 98%
rename from clutter/clutter-table-layout.c
rename to clutter/deprecated/clutter-table-layout.c
index f95b8c0..f934d63 100644
--- a/clutter/clutter-table-layout.c
+++ b/clutter/deprecated/clutter-table-layout.c
@@ -74,6 +74,12 @@
* </figure>
*
* #ClutterTableLayout is available since Clutter 1.4
+ *
+ * Since Clutter 1.18 it's recommended to use #ClutterGridLayout instead
+ * of #ClutterTableLayout; the former supports right-to-left text direction,
+ * as well as using the alignment and expansion flags on #ClutterActor.
+ *
+ * Deprecated: 1.18
*/
#ifdef HAVE_CONFIG_H
@@ -1624,6 +1630,8 @@ clutter_table_layout_class_init (ClutterTableLayoutClass *klass)
* The spacing between columns of the #ClutterTableLayout, in pixels
*
* Since: 1.4
+ *
+ * Deprecated: 1.18
*/
pspec = g_param_spec_uint ("column-spacing",
P_("Column Spacing"),
@@ -1638,6 +1646,8 @@ clutter_table_layout_class_init (ClutterTableLayoutClass *klass)
* The spacing between rows of the #ClutterTableLayout, in pixels
*
* Since: 1.4
+ *
+ * Deprecated: 1.18
*/
pspec = g_param_spec_uint ("row-spacing",
P_("Row Spacing"),
@@ -1744,6 +1754,8 @@ clutter_table_layout_init (ClutterTableLayout *layout)
* Return value: the newly created #ClutterTableLayout
*
* Since: 1.4
+ *
+ * Deprecated: 1.18: Use #ClutterGridLayout instead
*/
ClutterLayoutManager *
clutter_table_layout_new (void)
@@ -1759,6 +1771,8 @@ clutter_table_layout_new (void)
* Sets the spacing between columns of @layout
*
* Since: 1.4
+ *
+ * Deprecated: 1.18: Use #ClutterGridLayout instead
*/
void
clutter_table_layout_set_column_spacing (ClutterTableLayout *layout,
@@ -1792,6 +1806,8 @@ clutter_table_layout_set_column_spacing (ClutterTableLayout *layout,
* Return value: the spacing between columns of the #ClutterTableLayout
*
* Since: 1.4
+ *
+ * Deprecated: 1.18: Use #ClutterGridLayout instead
*/
guint
clutter_table_layout_get_column_spacing (ClutterTableLayout *layout)
@@ -1809,6 +1825,8 @@ clutter_table_layout_get_column_spacing (ClutterTableLayout *layout)
* Sets the spacing between rows of @layout
*
* Since: 1.4
+ *
+ * Deprecated: 1.18: Use #ClutterGridLayout instead
*/
void
clutter_table_layout_set_row_spacing (ClutterTableLayout *layout,
@@ -1842,6 +1860,8 @@ clutter_table_layout_set_row_spacing (ClutterTableLayout *layout,
* Return value: the spacing between rows of the #ClutterTableLayout
*
* Since: 1.4
+ *
+ * Deprecated: 1.18: Use #ClutterGridLayout instead
*/
guint
clutter_table_layout_get_row_spacing (ClutterTableLayout *layout)
@@ -1862,6 +1882,8 @@ clutter_table_layout_get_row_spacing (ClutterTableLayout *layout)
* at the given row and column.
*
* Since: 1.4
+ *
+ * Deprecated: 1.18: Use #ClutterGridLayout instead
*/
void
clutter_table_layout_pack (ClutterTableLayout *layout,
@@ -1916,6 +1938,8 @@ clutter_table_layout_pack (ClutterTableLayout *layout,
* inside @layout
*
* Since: 1.4
+ *
+ * Deprecated: 1.18: Use #ClutterGridLayout instead
*/
void
clutter_table_layout_set_span (ClutterTableLayout *layout,
@@ -1970,6 +1994,8 @@ clutter_table_layout_set_span (ClutterTableLayout *layout,
* clutter_table_layout_pack() or clutter_table_layout_set_span()
*
* Since: 1.4
+ *
+ * Deprecated: 1.18: Use #ClutterGridLayout instead
*/
void
clutter_table_layout_get_span (ClutterTableLayout *layout,
@@ -2551,6 +2577,8 @@ clutter_table_layout_get_easing_duration (ClutterTableLayout *layout)
* Returns: the number of rows
*
* Since: 1.4
+ *
+ * Deprecated: 1.18: Use #ClutterGridLayout instead
*/
gint
clutter_table_layout_get_row_count (ClutterTableLayout *layout)
@@ -2570,6 +2598,8 @@ clutter_table_layout_get_row_count (ClutterTableLayout *layout)
* Returns: the number of columns
*
* Since: 1.4
+ *
+ * Deprecated: 1.18: Use #ClutterGridLayout instead
*/
gint
clutter_table_layout_get_column_count (ClutterTableLayout *layout)
diff --git a/clutter/clutter-table-layout.h b/clutter/deprecated/clutter-table-layout.h
similarity index 92%
rename from clutter/clutter-table-layout.h
rename to clutter/deprecated/clutter-table-layout.h
index 06d6e51..dffbfb7 100644
--- a/clutter/clutter-table-layout.h
+++ b/clutter/deprecated/clutter-table-layout.h
@@ -54,6 +54,8 @@ typedef struct _ClutterTableLayoutClass ClutterTableLayoutClass;
* and should be accessed using the provided API
*
* Since: 1.4
+ *
+ * Deprecated: 1.18: Use #ClutterGridLayout instead
*/
struct _ClutterTableLayout
{
@@ -70,6 +72,8 @@ struct _ClutterTableLayout
* data and should be accessed using the provided API
*
* Since: 1.4
+ *
+ * Deprecated: 1.18: Use #ClutterGridLayout instead
*/
struct _ClutterTableLayoutClass
{
@@ -77,26 +81,35 @@ struct _ClutterTableLayoutClass
ClutterLayoutManagerClass parent_class;
};
+CLUTTER_DEPRECATED_IN_1_18_FOR (clutter_grid_layout_get_type)
GType clutter_table_layout_get_type (void) G_GNUC_CONST;
+CLUTTER_DEPRECATED_IN_1_18_FOR (clutter_grid_layout_new)
ClutterLayoutManager *clutter_table_layout_new (void);
+CLUTTER_DEPRECATED_IN_1_18_FOR (clutter_grid_layout_attach)
void clutter_table_layout_pack (ClutterTableLayout *layout,
ClutterActor *actor,
gint column,
gint row);
+CLUTTER_DEPRECATED_IN_1_18_FOR (clutter_grid_layout_set_column_spacing)
void clutter_table_layout_set_column_spacing (ClutterTableLayout *layout,
guint spacing);
+CLUTTER_DEPRECATED_IN_1_18_FOR (clutter_grid_layout_set_row_spacing)
void clutter_table_layout_set_row_spacing (ClutterTableLayout *layout,
guint spacing);
+CLUTTER_DEPRECATED_IN_1_18_FOR (clutter_grid_layout_get_column_spacing)
guint clutter_table_layout_get_column_spacing (ClutterTableLayout *layout);
+CLUTTER_DEPRECATED_IN_1_18_FOR (clutter_grid_layout_get_row_spacing)
guint clutter_table_layout_get_row_spacing (ClutterTableLayout *layout);
+CLUTTER_DEPRECATED_IN_1_18
void clutter_table_layout_set_span (ClutterTableLayout *layout,
ClutterActor *actor,
gint column_span,
gint row_span);
+CLUTTER_DEPRECATED_IN_1_18
void clutter_table_layout_get_span (ClutterTableLayout *layout,
ClutterActor *actor,
gint *column_span,
@@ -133,7 +146,9 @@ void clutter_table_layout_get_expand (ClutterTableLayo
gboolean *x_expand,
gboolean *y_expand);
+CLUTTER_DEPRECATED_IN_1_18
gint clutter_table_layout_get_row_count (ClutterTableLayout *layout);
+CLUTTER_DEPRECATED_IN_1_18
gint clutter_table_layout_get_column_count (ClutterTableLayout *layout);
CLUTTER_DEPRECATED_IN_1_12
diff --git a/doc/reference/clutter/clutter-docs.xml.in b/doc/reference/clutter/clutter-docs.xml.in
index ed2000d..c571727 100644
--- a/doc/reference/clutter/clutter-docs.xml.in
+++ b/doc/reference/clutter/clutter-docs.xml.in
@@ -72,7 +72,6 @@
<chapter>
<title>Base actors</title>
<xi:include href="xml/clutter-stage.xml"/>
- <xi:include href="xml/clutter-texture.xml"/>
<xi:include href="xml/clutter-clone.xml"/>
<xi:include href="xml/clutter-text.xml"/>
<xi:include href="xml/clutter-scroll-actor.xml"/>
@@ -85,7 +84,6 @@
<xi:include href="xml/clutter-bin-layout.xml"/>
<xi:include href="xml/clutter-flow-layout.xml"/>
<xi:include href="xml/clutter-box-layout.xml"/>
- <xi:include href="xml/clutter-table-layout.xml"/>
<xi:include href="xml/clutter-grid-layout.xml"/>
</chapter>
@@ -263,6 +261,8 @@
<xi:include href="xml/clutter-score.xml"/>
<xi:include href="xml/clutter-shader.xml"/>
<xi:include href="xml/clutter-state.xml"/>
+ <xi:include href="xml/clutter-table-layout.xml"/>
+ <xi:include href="xml/clutter-texture.xml"/>
</part>
<part id="clutterobjects">
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]