mirror of
				https://github.com/Ryujinx/GtkSharp.git
				synced 2025-11-04 13:24:48 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			29 lines
		
	
	
		
			529 B
		
	
	
	
		
			Perl
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			529 B
		
	
	
	
		
			Perl
		
	
	
		
			Executable file
		
	
	
	
	
#!/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";
 |