/+junk/GObject_tutorial

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/%2Bjunk/GObject_tutorial

« back to all changes in this revision

Viewing changes to pt1_animals_done/cat.c

  • Committer: Gustav Hartvigsson
  • Date: 2017-04-04 20:29:08 UTC
  • Revision ID: gustav.hartvigsson@gmail.com-20170404202908-37q4rzsskk2nzuaz
First lesson.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#include "cat.h"
 
2
 
 
3
 
 
4
struct _TestCat {
 
5
  TestAnimal parent;
 
6
};
 
7
 
 
8
G_DEFINE_TYPE (TestCat, test_cat, TEST_TYPE_ANIMAL)
 
9
 
 
10
/******************************************************************************/
 
11
void
 
12
test_cat_real_make_sound (TestCat * self);
 
13
 
 
14
void
 
15
test_cat_real_move (TestCat * self, gint x, gint y);
 
16
 
 
17
/******************************************************************************/
 
18
TestCat *
 
19
test_cat_new () {
 
20
  return g_object_new (TEST_TYPE_CAT, NULL);
 
21
}
 
22
 
 
23
static void
 
24
test_cat_init (TestCat * self) {
 
25
  
 
26
}
 
27
 
 
28
static void
 
29
test_cat_class_init (TestCatClass * klass) {
 
30
  TestAnimalClass * animal_class = TEST_ANIMAL_CLASS (klass);
 
31
  animal_class->make_sound = test_cat_real_make_sound;
 
32
  animal_class->move = test_cat_real_move;
 
33
}
 
34
 
 
35
/******************************************************************************/
 
36
void
 
37
test_cat_real_make_sound (TestCat * self) {
 
38
  g_print ("The cat says \"meew\" and \"rurururu\"\n");
 
39
}
 
40
 
 
41
void
 
42
test_cat_real_move (TestCat * self, gint x, gint y) {
 
43
  g_print ("The cat silently moves to (%i, %i).\n", x, y);
 
44
}
 
45
 
 
46