aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/gi/filter-scintilla-h.py
diff options
context:
space:
mode:
authorThomas Martitz <kugel@rockbox.org>2016-04-26 17:09:25 +0200
committerThomas Martitz <kugel@rockbox.org>2016-04-26 17:09:25 +0200
commit17a38b0f6efc4a0d847ab502773dafa9939999d8 (patch)
tree4b0cc8c8e07e9decdc8862a06a6f6fbdeeedcb12 /test/gi/filter-scintilla-h.py
parent8d4062a828ec5800b31cac519df11782d2ea4c06 (diff)
downloadscintilla-mirror-17a38b0f6efc4a0d847ab502773dafa9939999d8.tar.gz
Enable g-ir-scanner to scan ScintillaObject signals
Currently, the ScintillaObject signals can't be used from python code via gobject-introspection. This is because g-ir-scanner does not properly scan the signals. For signals, there is the additional requirement that parameters have are registered GTypes. For the sci-notify signal, this can be accomplished by boxing SCNotification. In addition, g-ir-scanner also runs on Scintilla.h where it picks up additional structs. test/gi/ is updated accordingly. The test python script is enhanced to showcase the signals (some fixes to the makefile are included as well).
Diffstat (limited to 'test/gi/filter-scintilla-h.py')
-rw-r--r--test/gi/filter-scintilla-h.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/test/gi/filter-scintilla-h.py b/test/gi/filter-scintilla-h.py
new file mode 100644
index 000000000..0743f9ef2
--- /dev/null
+++ b/test/gi/filter-scintilla-h.py
@@ -0,0 +1,19 @@
+#!/usr/bin/env python
+# Filters Scintilla.h to not contain generated stuff or deprecated defines
+
+import sys
+import fileinput
+
+def main():
+ inhibit = 0
+ for line in fileinput.input():
+ if line.startswith("/* ++Autogenerated") or line.startswith("#ifdef INCLUDE_DEPRECATED_FEATURES"):
+ inhibit += 1
+ if inhibit == 0:
+ sys.stdout.write(line)
+ if line.startswith("/* --Autogenerated") or line.startswith("#endif"):
+ if (inhibit > 0):
+ inhibit -= 1
+
+if __name__ == "__main__":
+ main()