| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 
 | #!/usr/bin/perl -w
# Generates a C# Key enum from the Gdk headers (gdkkeysyms.h)
# Usage: ./gen_keysyms < gdkkeysyms.h > Key.cs
# Alp Toker <alp@atoker.com>
print "// Generated File.  Do not modify.\n\n";
print "namespace Gdk\n";
print "{\n";
print "\tpublic enum Key {\n";
while(<>) {
	chomp;
	if (m/^\W*#define\W+GDK_(\w+)\W+(\w+)\W*$/) {
		$key = $1;
		$value = $2;
		
		# keys can't start with a digit
		if ($key =~ m/^\d.*$/) {
			$key = "Key_$key";
		}
		print "\t\t$key = $value,\n";
	}
}
print "\t}\n";
print "}\n";
 |