talkatu/talkatu

Parents 296103991647
Children 2d2b2cb17fbc
Move TalkatuTagTable to be a utility function rather than a subclass as GtkTextTagTable is final in GTK4

Testing Done:
Compiled and verified no warnings/errors existed for the file.

Reviewed at https://reviews.imfreedom.org/r/1236/
--- a/talkatu/talkatutagtable.c Sun Jan 30 04:16:53 2022 -0600
+++ b/talkatu/talkatutagtable.c Sun Jan 30 04:17:08 2022 -0600
@@ -24,24 +24,12 @@
#include <talkatu/talkatutag.h>
#include <talkatu/talkatutagtable.h>
-/**
- * TalkatuTagTable:
- *
- * A #GtkTextTagTable subclass that is preloaded with all of the #TalkatuTag's.
- */
-struct _TalkatuTagTable {
- GtkTextTagTable parent;
-};
-
-G_DEFINE_TYPE(TalkatuTagTable, talkatu_tag_table, GTK_TYPE_TEXT_TAG_TABLE)
-
/******************************************************************************
- * GObject Stuff
+ * Helpers
*****************************************************************************/
static void
-talkatu_tag_table_init(TalkatuTagTable *table) {
+talkatu_tag_table_populate(GtkTextTagTable *tag_table) {
GdkRGBA color = {0.0, 0.0, 0.0, 0.0};
- GtkTextTagTable *tag_table = GTK_TEXT_TAG_TABLE(table);
gtk_text_tag_table_add(
tag_table,
@@ -276,10 +264,6 @@
);
}
-static void
-talkatu_tag_table_class_init(TalkatuTagTableClass *klass) {
-}
-
/******************************************************************************
* Public API
*****************************************************************************/
@@ -287,14 +271,15 @@
/**
* talkatu_tag_table_new:
*
- * Creates a new #TalkatuTagTable that provides the user with an interface to
- * control the formatting of a #TalkatuBuffer.
+ * Creates a new [class@Gtk.TextTagTable] that is populated with all of the
+ * tags that Talkatu uses.
*
- * Returns: (transfer full): The new #TalkatuTagTable instance.
+ * Returns: (transfer full): The new instance.
*/
GtkTextTagTable *talkatu_tag_table_new(void) {
- return GTK_TEXT_TAG_TABLE(g_object_new(
- TALKATU_TYPE_TAG_TABLE,
- NULL
- ));
+ GtkTextTagTable *table = gtk_text_tag_table_new();
+
+ talkatu_tag_table_populate(table);
+
+ return table;
}
--- a/talkatu/talkatutagtable.h Sun Jan 30 04:16:53 2022 -0600
+++ b/talkatu/talkatutagtable.h Sun Jan 30 04:17:08 2022 -0600
@@ -24,16 +24,11 @@
#define TALKATU_TAG_TABLE_H
#include <glib.h>
-#include <glib-object.h>
#include <gtk/gtk.h>
G_BEGIN_DECLS
-#define TALKATU_TYPE_TAG_TABLE (talkatu_tag_table_get_type())
-
-G_DECLARE_FINAL_TYPE(TalkatuTagTable, talkatu_tag_table, TALKATU, TAG_TABLE, GtkTextTagTable)
-
GtkTextTagTable *talkatu_tag_table_new(void);
G_END_DECLS