gio2 2.1.0 → 2.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (140) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +26 -9
  3. data/ext/gio2/extconf.rb +38 -28
  4. data/ext/gio2/rb-gio2-pollable-source.c +59 -0
  5. data/ext/gio2/{rbgiofilteroutputstream.c → rb-gio2.c} +9 -5
  6. data/ext/gio2/{gio2.c → rb-gio2.h} +5 -10
  7. data/extconf.rb +22 -6
  8. data/lib/gio2.rb +38 -143
  9. data/lib/gio2/deprecated.rb +16 -0
  10. data/lib/gio2/inet-address.rb +33 -0
  11. data/lib/gio2/input-stream.rb +39 -0
  12. data/lib/gio2/loader.rb +244 -0
  13. data/lib/gio2/output-stream.rb +24 -0
  14. data/lib/gio2/pollable-input-stream.rb +51 -0
  15. data/lib/gio2/pollable-output-stream.rb +32 -0
  16. data/lib/gio2/resources.rb +62 -0
  17. data/test/fixture/content-type/x-content/unix-software/autorun.sh +1 -0
  18. data/test/fixture/resource/Rakefile +32 -0
  19. data/test/fixture/resource/logo.png +0 -0
  20. data/test/fixture/resource/ruby-gio2.gresource +0 -0
  21. data/test/fixture/resource/ruby-gio2.gresource.xml +6 -0
  22. data/test/gio2-test-utils.rb +21 -0
  23. data/test/gio2-test-utils/fixture.rb +24 -0
  24. data/test/gio2-test-utils/socket-client.rb +59 -0
  25. data/test/run-test.rb +45 -9
  26. data/test/test-buffered-input-stream.rb +23 -0
  27. data/test/test-charset-converter.rb +23 -0
  28. data/test/test-content-type.rb +31 -0
  29. data/test/test-data-input-stream.rb +21 -0
  30. data/test/test-file-enumerator.rb +26 -0
  31. data/test/test-file-monitor.rb +33 -0
  32. data/test/test-file.rb +28 -0
  33. data/test/test-inet-address.rb +34 -0
  34. data/test/test-input-stream.rb +36 -0
  35. data/test/test-output-stream.rb +39 -0
  36. data/test/test-pollable-input-stream.rb +54 -0
  37. data/test/test-pollable-output-stream.rb +53 -0
  38. data/test/test-resources.rb +58 -0
  39. metadata +49 -107
  40. data/README +0 -34
  41. data/ext/gio2/depend +0 -11
  42. data/ext/gio2/gio2.def +0 -2
  43. data/ext/gio2/gio2.h +0 -30
  44. data/ext/gio2/rbgio.c +0 -133
  45. data/ext/gio2/rbgio2.h +0 -158
  46. data/ext/gio2/rbgio2conversions.h +0 -154
  47. data/ext/gio2/rbgio2private.h +0 -148
  48. data/ext/gio2/rbgioappinfo.c +0 -317
  49. data/ext/gio2/rbgioapplaunchcontext.c +0 -81
  50. data/ext/gio2/rbgioasyncinitable.c +0 -246
  51. data/ext/gio2/rbgioasyncresult.c +0 -41
  52. data/ext/gio2/rbgiobufferedinputstream.c +0 -167
  53. data/ext/gio2/rbgiobufferedoutputstream.c +0 -50
  54. data/ext/gio2/rbgiocancellable.c +0 -180
  55. data/ext/gio2/rbgiocharsetconverter.c +0 -57
  56. data/ext/gio2/rbgiocontenttype.c +0 -131
  57. data/ext/gio2/rbgioconverter.c +0 -113
  58. data/ext/gio2/rbgioconverterinputstream.c +0 -43
  59. data/ext/gio2/rbgioconverteroutputstream.c +0 -43
  60. data/ext/gio2/rbgiodatainputstream.c +0 -309
  61. data/ext/gio2/rbgiodataoutputstream.c +0 -186
  62. data/ext/gio2/rbgiodesktopappinfo.c +0 -87
  63. data/ext/gio2/rbgiodrive.c +0 -266
  64. data/ext/gio2/rbgioemblem.c +0 -52
  65. data/ext/gio2/rbgioemblemedicon.c +0 -65
  66. data/ext/gio2/rbgiofile.c +0 -2045
  67. data/ext/gio2/rbgiofileattribute.c +0 -114
  68. data/ext/gio2/rbgiofileattributeinfo.c +0 -86
  69. data/ext/gio2/rbgiofileattributeinfolist.c +0 -108
  70. data/ext/gio2/rbgiofileattributematcher.c +0 -95
  71. data/ext/gio2/rbgiofiledescriptorbased.c +0 -45
  72. data/ext/gio2/rbgiofileenumerator.c +0 -166
  73. data/ext/gio2/rbgiofileicon.c +0 -41
  74. data/ext/gio2/rbgiofileinfo.c +0 -617
  75. data/ext/gio2/rbgiofileinputstream.c +0 -91
  76. data/ext/gio2/rbgiofileiostream.c +0 -98
  77. data/ext/gio2/rbgiofilemonitor.c +0 -46
  78. data/ext/gio2/rbgiofilenamecompleter.c +0 -73
  79. data/ext/gio2/rbgiofileoutputstream.c +0 -98
  80. data/ext/gio2/rbgiofilterinputstream.c +0 -28
  81. data/ext/gio2/rbgioicon.c +0 -69
  82. data/ext/gio2/rbgioinetaddress.c +0 -118
  83. data/ext/gio2/rbgioinetsocketaddress.c +0 -41
  84. data/ext/gio2/rbgioinitable.c +0 -199
  85. data/ext/gio2/rbgioinputstream.c +0 -341
  86. data/ext/gio2/rbgioio.c +0 -73
  87. data/ext/gio2/rbgioiomodule.c +0 -45
  88. data/ext/gio2/rbgioiomodules.c +0 -47
  89. data/ext/gio2/rbgioioscheduler.c +0 -102
  90. data/ext/gio2/rbgioioschedulerjob.c +0 -121
  91. data/ext/gio2/rbgioiostream.c +0 -107
  92. data/ext/gio2/rbgioloadableicon.c +0 -92
  93. data/ext/gio2/rbgiomemoryinputstream.c +0 -67
  94. data/ext/gio2/rbgiomemoryoutputstream.c +0 -44
  95. data/ext/gio2/rbgiomount.c +0 -286
  96. data/ext/gio2/rbgiomountoperation.c +0 -53
  97. data/ext/gio2/rbgionetworkaddress.c +0 -59
  98. data/ext/gio2/rbgionetworkservice.c +0 -45
  99. data/ext/gio2/rbgiooutputstream.c +0 -331
  100. data/ext/gio2/rbgioresolver.c +0 -230
  101. data/ext/gio2/rbgioseekable.c +0 -91
  102. data/ext/gio2/rbgiosimpleasyncresult.c +0 -152
  103. data/ext/gio2/rbgiosocket.c +0 -390
  104. data/ext/gio2/rbgiosocketaddress.c +0 -34
  105. data/ext/gio2/rbgiosocketaddressenumerator.c +0 -83
  106. data/ext/gio2/rbgiosocketclient.c +0 -207
  107. data/ext/gio2/rbgiosocketconnectable.c +0 -41
  108. data/ext/gio2/rbgiosocketconnection.c +0 -66
  109. data/ext/gio2/rbgiosocketconnectionfactory.c +0 -39
  110. data/ext/gio2/rbgiosocketcontrolmessage.c +0 -82
  111. data/ext/gio2/rbgiosocketlistener.c +0 -246
  112. data/ext/gio2/rbgiosocketservice.c +0 -66
  113. data/ext/gio2/rbgiosrvtarget.c +0 -76
  114. data/ext/gio2/rbgiotcpconnection.c +0 -28
  115. data/ext/gio2/rbgiothemedicon.c +0 -83
  116. data/ext/gio2/rbgiothreadedsocketservice.c +0 -43
  117. data/ext/gio2/rbgiotlscertificate.c +0 -89
  118. data/ext/gio2/rbgiounixconnection.c +0 -71
  119. data/ext/gio2/rbgiounixfdlist.c +0 -115
  120. data/ext/gio2/rbgiounixfdmessage.c +0 -74
  121. data/ext/gio2/rbgiounixinputstream.c +0 -51
  122. data/ext/gio2/rbgiounixmount.c +0 -164
  123. data/ext/gio2/rbgiounixmountmonitor.c +0 -65
  124. data/ext/gio2/rbgiounixmountpoint.c +0 -136
  125. data/ext/gio2/rbgiounixmountpoints.c +0 -58
  126. data/ext/gio2/rbgiounixmounts.c +0 -58
  127. data/ext/gio2/rbgiounixoutputstream.c +0 -51
  128. data/ext/gio2/rbgiounixsocketaddress.c +0 -69
  129. data/ext/gio2/rbgiovfs.c +0 -84
  130. data/ext/gio2/rbgiovolume.c +0 -193
  131. data/ext/gio2/rbgiovolumemonitor.c +0 -77
  132. data/ext/gio2/rbgiozlibcompressor.c +0 -52
  133. data/ext/gio2/rbgiozlibdecompressor.c +0 -45
  134. data/ext/gio2/util.c +0 -303
  135. data/test/test_bufferedinputstream.rb +0 -9
  136. data/test/test_charsetconverter.rb +0 -9
  137. data/test/test_datainputstream.rb +0 -7
  138. data/test/test_fileenumerator.rb +0 -8
  139. data/test/test_filemonitor.rb +0 -17
  140. data/test/test_inetaddress.rb +0 -8
@@ -1,115 +0,0 @@
1
- /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
- /*
3
- * Copyright (C) 2011 Ruby-GNOME2 Project Team
4
- * Copyright (C) 2008-2009 Ruby-GNOME2 Project Team
5
- *
6
- * This library is free software; you can redistribute it and/or
7
- * modify it under the terms of the GNU Lesser General Public
8
- * License as published by the Free Software Foundation; either
9
- * version 2.1 of the License, or (at your option) any later version.
10
- *
11
- * This library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
- * Lesser General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library; if not, write to the Free Software
18
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19
- * MA 02110-1301 USA
20
- */
21
-
22
- #include "rbgio2private.h"
23
-
24
- #ifdef HAVE_GIO_UNIX
25
- #include <gio/gunixfdlist.h>
26
-
27
- #define RG_TARGET_NAMESPACE cUnixFDList
28
- #define _SELF(value) RVAL2GUNIXFDLIST(value)
29
-
30
- static VALUE
31
- rg_initialize(int argc, VALUE *argv, VALUE self)
32
- {
33
- VALUE rbfds;
34
- long n;
35
- gint *fds;
36
- GUnixFDList *list;
37
-
38
- rb_scan_args(argc, argv, "0*", &rbfds);
39
- fds = RVAL2FDS(rbfds, n);
40
- if (n == 0) {
41
- G_INITIALIZE(self, g_unix_fd_list_new());
42
- return Qnil;
43
- }
44
-
45
- list = g_unix_fd_list_new_from_array(fds, n);
46
-
47
- g_free(fds);
48
-
49
- G_INITIALIZE(self, list);
50
-
51
- return Qnil;
52
- }
53
-
54
- static VALUE
55
- rg_length(VALUE self)
56
- {
57
- return GINT2RVAL(g_unix_fd_list_get_length(_SELF(self)));
58
- }
59
-
60
- static VALUE
61
- rg_get(VALUE self, VALUE index)
62
- {
63
- GError *error = NULL;
64
- gint fd;
65
-
66
- fd = g_unix_fd_list_get(_SELF(self), RVAL2GINT(index), &error);
67
- if (fd == -1)
68
- rbgio_raise_error(error);
69
-
70
- /* TODO: This fd must be closed properly. How do we deal with that? */
71
- return FD2RVAL(fd);
72
- }
73
-
74
- static VALUE
75
- rg_peek_fds(VALUE self)
76
- {
77
- return GFDS2ARY(g_unix_fd_list_peek_fds(_SELF(self), NULL));
78
- }
79
-
80
- static VALUE
81
- rg_steal_fds(VALUE self)
82
- {
83
- return GFDS2ARY_FREE(g_unix_fd_list_steal_fds(_SELF(self), NULL));
84
- }
85
-
86
- static VALUE
87
- rg_append(VALUE self, VALUE fd)
88
- {
89
- GError *error = NULL;
90
- int index;
91
-
92
- index = g_unix_fd_list_append(_SELF(self), RVAL2FD(fd), &error);
93
- if (index == -1)
94
- rbgio_raise_error(error);
95
-
96
- return self;
97
- }
98
- #endif
99
-
100
- void
101
- Init_gunixfdlist(G_GNUC_UNUSED VALUE mGio)
102
- {
103
- #ifdef HAVE_GIO_UNIX
104
- VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(G_TYPE_UNIX_FD_LIST, "UnixFDList", mGio);
105
-
106
- RG_DEF_METHOD(initialize, -1);
107
- RG_DEF_METHOD(length, 0);
108
- RG_DEF_METHOD(get, 1);
109
- RG_DEF_ALIAS("[]", "get");
110
- RG_DEF_METHOD(peek_fds, 0);
111
- RG_DEF_METHOD(steal_fds, 0);
112
- RG_DEF_METHOD(append, 1);
113
- RG_DEF_ALIAS("<<", "append");
114
- #endif
115
- }
@@ -1,74 +0,0 @@
1
- /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
- /*
3
- * Copyright (C) 2011 Ruby-GNOME2 Project Team
4
- * Copyright (C) 2008-2009 Ruby-GNOME2 Project Team
5
- *
6
- * This library is free software; you can redistribute it and/or
7
- * modify it under the terms of the GNU Lesser General Public
8
- * License as published by the Free Software Foundation; either
9
- * version 2.1 of the License, or (at your option) any later version.
10
- *
11
- * This library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
- * Lesser General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library; if not, write to the Free Software
18
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19
- * MA 02110-1301 USA
20
- */
21
-
22
- #include "rbgio2private.h"
23
-
24
- #ifdef HAVE_GIO_UNIX
25
- #include <gio/gunixfdmessage.h>
26
-
27
- #define RG_TARGET_NAMESPACE cUnixFDMessage
28
- #define _SELF(value) RVAL2GUNIXFDMESSAGE(value)
29
-
30
- static VALUE
31
- rg_initialize(int argc, VALUE *argv, VALUE self)
32
- {
33
- VALUE fd_list;
34
- GSocketControlMessage *message;
35
-
36
- rb_scan_args(argc, argv, "01", &fd_list);
37
- message = NIL_P(fd_list) ?
38
- g_unix_fd_message_new() :
39
- g_unix_fd_message_new_with_fd_list(RVAL2GUNIXFDLIST(fd_list));
40
- G_INITIALIZE(self, message);
41
-
42
- return Qnil;
43
- }
44
-
45
- static VALUE
46
- rg_append_fd(VALUE self, VALUE fd)
47
- {
48
- GError *error = NULL;
49
-
50
- if (!g_unix_fd_message_append_fd(_SELF(self), RVAL2FD(fd), &error))
51
- rbgio_raise_error(error);
52
-
53
- return self;
54
- }
55
-
56
- static VALUE
57
- rg_steal_fds(VALUE self)
58
- {
59
- return GFDS2ARY_FREE(g_unix_fd_message_steal_fds(_SELF(self), NULL));
60
- }
61
- #endif
62
-
63
- void
64
- Init_gunixfdmessage(G_GNUC_UNUSED VALUE mGio)
65
- {
66
- #ifdef HAVE_GIO_UNIX
67
- VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(G_TYPE_UNIX_FD_MESSAGE, "UnixFDMessage", mGio);
68
-
69
- RG_DEF_METHOD(initialize, -1);
70
- RG_DEF_METHOD(append_fd, 1);
71
- RG_DEF_ALIAS("<<", "append_fd");
72
- RG_DEF_METHOD(steal_fds, 0);
73
- #endif
74
- }
@@ -1,51 +0,0 @@
1
- /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
- /*
3
- * Copyright (C) 2011 Ruby-GNOME2 Project Team
4
- * Copyright (C) 2008-2009 Ruby-GNOME2 Project Team
5
- *
6
- * This library is free software; you can redistribute it and/or
7
- * modify it under the terms of the GNU Lesser General Public
8
- * License as published by the Free Software Foundation; either
9
- * version 2.1 of the License, or (at your option) any later version.
10
- *
11
- * This library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
- * Lesser General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library; if not, write to the Free Software
18
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19
- * MA 02110-1301 USA
20
- */
21
-
22
- #include "rbgio2private.h"
23
-
24
- #ifdef HAVE_GIO_UNIX
25
- #include <gio/gunixinputstream.h>
26
-
27
- #define RG_TARGET_NAMESPACE cUnixInputStream
28
- #define _SELF(value) RVAL2GUNIXINPUTSTREAM(value)
29
-
30
- static VALUE
31
- rg_initialize(int argc, VALUE *argv, VALUE self)
32
- {
33
- VALUE fd, close_fd;
34
-
35
- rb_scan_args(argc, argv, "11", &fd, &close_fd);
36
- G_INITIALIZE(self, g_unix_input_stream_new(RVAL2FD(fd),
37
- RVAL2CBOOL(close_fd)));
38
-
39
- return Qnil;
40
- }
41
- #endif
42
-
43
- void
44
- Init_gunixinputstream(G_GNUC_UNUSED VALUE mGio)
45
- {
46
- #ifdef HAVE_GIO_UNIX
47
- VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(G_TYPE_UNIX_INPUT_STREAM, "UnixInputStream", mGio);
48
-
49
- RG_DEF_METHOD(initialize, -1);
50
- #endif
51
- }
@@ -1,164 +0,0 @@
1
- /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
- /*
3
- * Copyright (C) 2011 Ruby-GNOME2 Project Team
4
- * Copyright (C) 2008-2009 Ruby-GNOME2 Project Team
5
- *
6
- * This library is free software; you can redistribute it and/or
7
- * modify it under the terms of the GNU Lesser General Public
8
- * License as published by the Free Software Foundation; either
9
- * version 2.1 of the License, or (at your option) any later version.
10
- *
11
- * This library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
- * Lesser General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library; if not, write to the Free Software
18
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19
- * MA 02110-1301 USA
20
- */
21
-
22
- #include "rbgio2private.h"
23
-
24
- #ifdef HAVE_GIO_UNIX
25
- #include <gio/gunixmounts.h>
26
-
27
- #define RG_TARGET_NAMESPACE cUnixMount
28
-
29
- static GUnixMountEntry *
30
- unixmount_copy(const GUnixMountEntry *mount)
31
- {
32
- return (GUnixMountEntry *)mount;
33
- }
34
-
35
- static GType
36
- g_unix_mount_entry_get_type(void)
37
- {
38
- static GType our_type = 0;
39
-
40
- if (our_type == 0)
41
- our_type = g_boxed_type_register_static("GUnixMountEntry",
42
- (GBoxedCopyFunc)unixmount_copy,
43
- (GBoxedFreeFunc)g_unix_mount_free);
44
-
45
- return our_type;
46
- }
47
-
48
- #define G_TYPE_UNIX_MOUNT_ENTRY (g_unix_mount_entry_get_type())
49
-
50
- #define _SELF(value) \
51
- ((GUnixMountEntry *)(RVAL2BOXED((value), G_TYPE_UNIX_MOUNT_ENTRY)))
52
-
53
- #define GUNIXMOUNTENTRY2RVAL(value) BOXED2RVAL((value), G_TYPE_UNIX_MOUNT_ENTRY)
54
-
55
- static VALUE
56
- rg_compare(VALUE self, VALUE other)
57
- {
58
- return INT2FIX(g_unix_mount_compare(_SELF(self), _SELF(other)));
59
- }
60
-
61
- static VALUE
62
- rg_mount_path(VALUE self)
63
- {
64
- return CSTR2RVAL(g_unix_mount_get_mount_path(_SELF(self)));
65
- }
66
-
67
- static VALUE
68
- rg_device_path(VALUE self)
69
- {
70
- return CSTR2RVAL(g_unix_mount_get_device_path(_SELF(self)));
71
- }
72
-
73
- static VALUE
74
- rg_fs_type(VALUE self)
75
- {
76
- return CSTR2RVAL(g_unix_mount_get_fs_type(_SELF(self)));
77
- }
78
-
79
- static VALUE
80
- rg_readonly_p(VALUE self)
81
- {
82
- return CBOOL2RVAL(g_unix_mount_is_readonly(_SELF(self)));
83
- }
84
-
85
- static VALUE
86
- rg_system_internal_p(VALUE self)
87
- {
88
- return CBOOL2RVAL(g_unix_mount_is_system_internal(_SELF(self)));
89
- }
90
-
91
- static VALUE
92
- rg_guess_icon(VALUE self)
93
- {
94
- return GOBJ2RVAL_UNREF(g_unix_mount_guess_icon(_SELF(self)));
95
- }
96
-
97
- static VALUE
98
- rg_guess_name(VALUE self)
99
- {
100
- return CSTR2RVAL_FREE(g_unix_mount_guess_name(_SELF(self)));
101
- }
102
-
103
- static VALUE
104
- rg_guess_can_eject_p(VALUE self)
105
- {
106
- return CBOOL2RVAL(g_unix_mount_guess_can_eject(_SELF(self)));
107
- }
108
-
109
- static VALUE
110
- rg_guess_should_display_p(VALUE self)
111
- {
112
- return CBOOL2RVAL(g_unix_mount_guess_should_display(_SELF(self)));
113
- }
114
-
115
- static VALUE
116
- rg_s_at(G_GNUC_UNUSED VALUE self, VALUE mount_path)
117
- {
118
- guint64 time_read;
119
- GUnixMountEntry *mount;
120
-
121
- mount = g_unix_mount_at(RVAL2CSTR(mount_path), &time_read);
122
-
123
- return rb_assoc_new(GUNIXMOUNTENTRY2RVAL(mount),
124
- GUINT642RVAL(time_read));
125
- }
126
-
127
- static VALUE
128
- rg_s_mount_path_system_internal_p(G_GNUC_UNUSED VALUE self, VALUE mount_path)
129
- {
130
- return CBOOL2RVAL(g_unix_is_mount_path_system_internal(RVAL2CSTR(mount_path)));
131
- }
132
-
133
- #endif
134
-
135
- void
136
- Init_gunixmount(G_GNUC_UNUSED VALUE mGio)
137
- {
138
- #ifdef HAVE_GIO_UNIX
139
- VALUE RG_TARGET_NAMESPACE;
140
-
141
- RG_TARGET_NAMESPACE = G_DEF_CLASS(G_TYPE_UNIX_MOUNT_ENTRY, "UnixMount", mGio);
142
-
143
- rb_include_module(RG_TARGET_NAMESPACE, rb_mComparable);
144
-
145
- /* TODO: This doesn't follow the naming conventions, but it seems
146
- * overkill to have GLib::Unix just for mount_path_system_internal?. */
147
- RG_DEF_SMETHOD_P(mount_path_system_internal, 1);
148
- RG_DEF_SMETHOD(at, 1);
149
-
150
- rbgobj_boxed_not_copy_obj(G_TYPE_UNIX_MOUNT_ENTRY);
151
-
152
- RG_DEF_METHOD(compare, 1);
153
- RG_DEF_ALIAS("<=>", "compare");
154
- RG_DEF_METHOD(mount_path, 0);
155
- RG_DEF_METHOD(device_path, 0);
156
- RG_DEF_METHOD(fs_type, 0);
157
- RG_DEF_METHOD_P(readonly, 0);
158
- RG_DEF_METHOD_P(system_internal, 0);
159
- RG_DEF_METHOD(guess_icon, 0);
160
- RG_DEF_METHOD(guess_name, 0);
161
- RG_DEF_METHOD_P(guess_can_eject, 0);
162
- RG_DEF_METHOD_P(guess_should_display, 0);
163
- #endif
164
- }
@@ -1,65 +0,0 @@
1
- /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
- /*
3
- * Copyright (C) 2011 Ruby-GNOME2 Project Team
4
- * Copyright (C) 2008-2009 Ruby-GNOME2 Project Team
5
- *
6
- * This library is free software; you can redistribute it and/or
7
- * modify it under the terms of the GNU Lesser General Public
8
- * License as published by the Free Software Foundation; either
9
- * version 2.1 of the License, or (at your option) any later version.
10
- *
11
- * This library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
- * Lesser General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library; if not, write to the Free Software
18
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19
- * MA 02110-1301 USA
20
- */
21
-
22
- #include "rbgio2private.h"
23
-
24
- #ifdef HAVE_GIO_UNIX
25
- #include <gio/gunixmounts.h>
26
-
27
- #define RG_TARGET_NAMESPACE cUnixMountMonitor
28
- #define _SELF(value) RVAL2GUNIXMOUNTMONITOR(value)
29
-
30
- static VALUE
31
- rg_initialize(int argc, VALUE *argv, VALUE self)
32
- {
33
- VALUE limit_msec;
34
- GUnixMountMonitor *monitor;
35
-
36
- rb_scan_args(argc, argv, "01", &limit_msec);
37
- monitor = g_unix_mount_monitor_new();
38
- if (!NIL_P(limit_msec))
39
- g_unix_mount_monitor_set_rate_limit(monitor,
40
- FIX2INT(limit_msec));
41
- G_INITIALIZE(self, monitor);
42
-
43
- return Qnil;
44
- }
45
-
46
- static VALUE
47
- rg_set_rate_limit(VALUE self, VALUE limit_msec)
48
- {
49
- g_unix_mount_monitor_set_rate_limit(_SELF(self), FIX2INT(limit_msec));
50
-
51
- return self;
52
- }
53
-
54
- #endif
55
-
56
- void
57
- Init_gunixmountmonitor(G_GNUC_UNUSED VALUE mGio)
58
- {
59
- #ifdef HAVE_GIO_UNIX
60
- VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(G_TYPE_UNIX_MOUNT_MONITOR, "UnixMountMonitor", mGio);
61
-
62
- RG_DEF_METHOD(initialize, -1);
63
- RG_DEF_METHOD(set_rate_limit, 1);
64
- #endif
65
- }