Skip to content

Commit 977dcde

Browse files
committed
gtk.cfg: Complete and sort G_DEFINE_* list
Added: G_DEFINE_ENUM_TYPE G_DEFINE_ENUM_VALUE G_DEFINE_EXTENDED_ERROR G_DEFINE_FLAGS_TYPE G_DEFINE_POINTER_TYPE G_DEFINE_POINTER_TYPE_WITH_CODE
1 parent 0c4dc89 commit 977dcde

2 files changed

Lines changed: 64 additions & 15 deletions

File tree

‎cfg/gtk.cfg‎

Lines changed: 21 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -52,33 +52,39 @@
5252
<define name="G_STRINGIFY_ARG(contents)" value="#contents"/>
5353
<define name="G_STRLOC" value="__FILE__ &quot;:&quot; G_STRINGIFY (__LINE__)"/>
5454
<define name="G_STRFUNC" value="((const char*) (__FUNCTION__))"/>
55-
<define name="G_DEFINE_TYPE(TN, t_n, T_P)" value=""/>
56-
<define name="G_DEFINE_TYPE_WITH_PRIVATE(TN, t_n, T_P)" value=""/>
57-
<define name="G_DEFINE_TYPE_WITH_CODE(TN, t_n, T_P, _C_)" value=""/>
58-
<define name="G_DEFINE_FINAL_TYPE(TN, t_n, T_P)" value=""/>
59-
<define name="G_DEFINE_FINAL_TYPE_WITH_PRIVATE(TN, t_n, T_P)" value=""/>
60-
<define name="G_DEFINE_FINAL_TYPE_WITH_CODE(TN, t_n, T_P, _C_)" value=""/>
6155
<define name="G_DEFINE_ABSTRACT_TYPE(TN, t_n, T_P)" value=""/>
62-
<define name="G_DEFINE_ABSTRACT_TYPE_WITH_PRIVATE(TN, t_n, T_P)" value=""/>
6356
<define name="G_DEFINE_ABSTRACT_TYPE_WITH_CODE(TN, t_n, T_P, _C_)" value=""/>
64-
<define name="G_DEFINE_DYNAMIC_TYPE(TN, t_n, T_P)" value=""/>
65-
<define name="G_DEFINE_DYNAMIC_TYPE_EXTENDED(TN, t_n, T_P, _f_, _C_)" value=""/>
57+
<define name="G_DEFINE_ABSTRACT_TYPE_WITH_PRIVATE(TN, t_n, T_P)" value=""/>
58+
<define name="G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC(TypeName, func)" value=""/>
59+
<define name="G_DEFINE_AUTO_CLEANUP_FREE_FUNC(TypeName, func, none)" value=""/>
60+
<define name="G_DEFINE_AUTOPTR_CLEANUP_FUNC(TypeName, func)" value=""/>
6661
<define name="G_DEFINE_BOXED_TYPE(TypeName,type_name,copy_func,free_func)" value=""/>
6762
<define name="G_DEFINE_BOXED_TYPE_WITH_CODE(TypeName,type_name,copy_func,free_func,_C_)" value=""/>
63+
<define name="G_DEFINE_DYNAMIC_TYPE(TN, t_n, T_P)" value=""/>
64+
<define name="G_DEFINE_DYNAMIC_TYPE_EXTENDED(TN, t_n, T_P, _f_, _C_)" value=""/>
65+
<define name="G_DEFINE_ENUM_TYPE(TypeName, type_name, ...)" value=""/>
66+
<define name="G_DEFINE_ENUM_VALUE(EnumValue, EnumNick)" value=""/>
67+
<define name="G_DEFINE_EXTENDED_ERROR(ErrorType, error_type)" value=""/>
68+
<define name="G_DEFINE_FINAL_TYPE(TN, t_n, T_P)" value=""/>
69+
<define name="G_DEFINE_FINAL_TYPE_WITH_CODE(TN, t_n, T_P, _C_)" value=""/>
70+
<define name="G_DEFINE_FINAL_TYPE_WITH_PRIVATE(TN, t_n, T_P)" value=""/>
71+
<define name="G_DEFINE_FLAGS_TYPE(TypeName, type_name, ...)" value=""/>
72+
<define name="G_DEFINE_INTERFACE(TN, t_n, T_P)" value=""/>
73+
<define name="G_DEFINE_INTERFACE_WITH_CODE(TN, t_n, T_P, _C_)" value=""/>
74+
<define name="G_DEFINE_POINTER_TYPE(TypeName, type_name)" value=""/>
75+
<define name="G_DEFINE_POINTER_TYPE_WITH_CODE(TypeName, type_name, _C_)" value=""/>
6876
<define name="G_DEFINE_QUARK(QN,q_n)" value=""/>
77+
<define name="G_DEFINE_TYPE(TN, t_n, T_P)" value=""/>
78+
<define name="G_DEFINE_TYPE_EXTENDED(TN, t_n, T_P, _f_, _C_)" value=""/>
79+
<define name="G_DEFINE_TYPE_WITH_CODE(TN, t_n, T_P, _C_)" value=""/>
80+
<define name="G_DEFINE_TYPE_WITH_PRIVATE(TN, t_n, T_P)" value=""/>
6981
<define name="G_BEGIN_DECLS" value=""/>
7082
<define name="G_END_DECLS" value=""/>
7183
<define name="G_ADD_PRIVATE(TypeName)" value=""/>
7284
<define name="G_PRIVATE_OFFSET(TypeName, field)" value=""/>
7385
<define name="G_PRIVATE_FIELD(TypeName, inst, field_type, field_name)" value=""/>
7486
<define name="G_PRIVATE_FIELD_P(TypeName, inst, field_name)" value=""/>
75-
<define name="G_DEFINE_INTERFACE(TN, t_n, T_P)" value=""/>
76-
<define name="G_DEFINE_INTERFACE_WITH_CODE(TN, t_n, T_P, _C_)" value=""/>
77-
<define name="G_DEFINE_TYPE_EXTENDED(TN, t_n, T_P, _f_, _C_)" value=""/>
7887
<define name="G_IMPLEMENT_INTERFACE(TYPE_IFACE, iface_init)" value=""/>
79-
<define name="G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC(TypeName, func)" value=""/>
80-
<define name="G_DEFINE_AUTO_CLEANUP_FREE_FUNC(TypeName, func, none)" value=""/>
81-
<define name="G_DEFINE_AUTOPTR_CLEANUP_FUNC(TypeName, func)" value=""/>
8288
<define name="MAX(a, b)" value="(((a) &gt; (b)) ? (a) : (b))"/>
8389
<define name="MIN(a, b)" value="(((a) &lt; (b)) ? (a) : (b))"/>
8490
<define name="ABS(a)" value="(((a) &lt; 0) ? -(a) : (a))"/>

‎test/cfg/gtk.c‎

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -655,3 +655,46 @@ int g_return_val_if_reached_test(const char *s) {
655655

656656
return 0;
657657
}
658+
659+
#define MY_APP_TYPE_WINDOW my_app_window_get_type()
660+
G_DECLARE_FINAL_TYPE(MyAppWindow, my_app_window, MY_APP, WINDOW, GtkWindow)
661+
struct _MyAppWindow {
662+
GtkWindow parent;
663+
};
664+
G_DEFINE_TYPE(MyAppWindow, my_app_window, GTK_TYPE_WINDOW)
665+
// cppcheck-suppress constParameterPointer
666+
static void my_app_window_class_init(MyAppWindowClass *class) {
667+
}
668+
// cppcheck-suppress constParameterPointer
669+
static void my_app_window_init(MyAppWindow *window) {
670+
}
671+
672+
void g_declare_and_define_type_test(void) {
673+
// cppcheck-suppress checkLibraryFunction
674+
MyAppWindow *window = g_object_new(MY_APP_TYPE_WINDOW, NULL);
675+
gtk_widget_show(GTK_WIDGET(window));
676+
g_object_unref(window);
677+
}
678+
679+
#if GLIB_CHECK_VERSION(2, 74, 0)
680+
typedef enum {
681+
MY_ENUM_A,
682+
MY_ENUM_B,
683+
} MyEnum;
684+
G_DEFINE_ENUM_TYPE (MyEnum, my_enum,
685+
G_DEFINE_ENUM_VALUE (MY_ENUM_A, "a"),
686+
G_DEFINE_ENUM_VALUE (MY_ENUM_B, "b"))
687+
typedef enum {
688+
MY_FLAGS_A = 1 << 0,
689+
MY_FLAGS_B = 1 << 1,
690+
} MyFlags;
691+
G_DEFINE_FLAGS_TYPE (MyFlags, my_flags,
692+
G_DEFINE_ENUM_VALUE (MY_FLAGS_A, "a"),
693+
G_DEFINE_ENUM_VALUE (MY_FLAGS_B, "b"))
694+
695+
int g_define_enum_and_flags_type_test(void) {
696+
MyEnum e = MY_ENUM_A;
697+
MyFlags f = MY_FLAGS_A;
698+
return e + f;
699+
}
700+
#endif

0 commit comments

Comments
 (0)