From f91aeb54250d8b251a0fd085856596ab1baf859b Mon Sep 17 00:00:00 2001 From: Mike Kestner Date: Sat, 7 Feb 2004 23:24:15 +0000 Subject: [PATCH] 2004-02-07 Gustavo Giraldez * atk/Makefile.in : fix copy/paste error in --assembly-name. * generator/ObjectGen.cs : rework ObjectManager generation code. * glade/Makefile.in : fix copy/paste error in --assembly-name. svn path=/trunk/gtk-sharp/; revision=22865 --- ChangeLog | 6 ++++++ atk/Makefile.in | 2 +- generator/ObjectGen.cs | 25 ++++++++++++++++++------- glade/Makefile.in | 2 +- 4 files changed, 26 insertions(+), 9 deletions(-) diff --git a/ChangeLog b/ChangeLog index b705c29a4..a59456cff 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2004-02-07 Gustavo Giraldez + + * atk/Makefile.in : fix copy/paste error in --assembly-name. + * generator/ObjectGen.cs : rework ObjectManager generation code. + * glade/Makefile.in : fix copy/paste error in --assembly-name. + 2004-02-06 Mike Kestner * generator/Method.cs : for Opaque/Object retvals, if raw_ret is diff --git a/atk/Makefile.in b/atk/Makefile.in index fe2be163a..9381d919a 100644 --- a/atk/Makefile.in +++ b/atk/Makefile.in @@ -12,7 +12,7 @@ generated-stamp: $(APIS) ../generator/gapi_codegen.exe Atk.metadata $(RUNTIME) ../parser/gapi-fixup.exe --api=atk-api.xml --metadata=Atk.metadata && \ $(RUNTIME) ../generator/gapi_codegen.exe --generate $(APIS) \ --include $(INCLUDE_APIS) --outdir=generated --customdir=. \ - --assembly-name=art-sharp && touch generated-stamp + --assembly-name=atk-sharp && touch generated-stamp $(ASSEMBLY): generated-stamp $(MCS) --unsafe --target library \ diff --git a/generator/ObjectGen.cs b/generator/ObjectGen.cs index e627781a1..df0773a06 100644 --- a/generator/ObjectGen.cs +++ b/generator/ObjectGen.cs @@ -195,19 +195,26 @@ namespace GtkSharp.Generation { for (int i = 0; i < cname.Length; i++) { if (needs_dot && i > 0 && Char.IsUpper (cname[i])) { - ns = expected.ToString ().ToLower (); - expected.Append ('.'); + if (expected.Length == 1 && expected[0] == 'G') { + ns = "glib"; + expected = new StringBuilder ("GLib."); + } else { + ns = expected.ToString ().ToLower (); + expected.Append ('.'); + } needs_dot = false; } expected.Append (cname[i]); } + expected.AppendFormat (",{0}-sharp", ns); + return expected.ToString (); } - private static bool NeedsMap (Hashtable objs) + private static bool NeedsMap (Hashtable objs, string assembly_name) { foreach (string key in objs.Keys) - if (GetExpected (key) != ((string) objs[key])) + if (GetExpected (key) != ((string) objs[key] + "," + assembly_name)) return true; return false; @@ -230,7 +237,7 @@ namespace GtkSharp.Generation { DirectoryInfo di = dirs[dir] as DirectoryInfo; - if (!NeedsMap (di.objects)) + if (!NeedsMap (di.objects, di.assembly_name)) continue; GenerationInfo gen_info = new GenerationInfo (dir, di.assembly_name); @@ -251,9 +258,13 @@ namespace GtkSharp.Generation { sw.WriteLine ("\t\tpublic static void Initialize ()"); sw.WriteLine ("\t\t{"); - foreach (string key in dir_info.objects.Keys) - if (GetExpected(key) != ((string) dir_info.objects[key])) + Console.WriteLine ("Generating mappers"); + foreach (string key in dir_info.objects.Keys) { + Console.WriteLine ("Expected: " + GetExpected(key)); + Console.WriteLine ("dir_info.objects[key]+assname: " + ((string) dir_info.objects[key]) + "," + dir_info.assembly_name); + if (GetExpected(key) != ((string) dir_info.objects[key] + "," + dir_info.assembly_name)) sw.WriteLine ("\t\t\tGtkSharp.ObjectManager.RegisterType(\"" + key + "\", \"" + dir_info.objects [key] + "," + dir_info.assembly_name + "\");"); + } sw.WriteLine ("\t\t}"); sw.WriteLine ("\t}"); diff --git a/glade/Makefile.in b/glade/Makefile.in index e7fda982d..7c75e207c 100755 --- a/glade/Makefile.in +++ b/glade/Makefile.in @@ -17,7 +17,7 @@ ASSEMBLY=glade-sharp.dll generated-stamp: $(APIS) *.custom ../generator/gapi_codegen.exe $(RUNTIME) ../generator/gapi_codegen.exe --generate $(APIS) \ --include $(INCLUDE_APIS) --outdir=generated --customdir=. \ - --assembly-name=art-sharp && touch generated-stamp + --assembly-name=glade-sharp && touch generated-stamp $(ASSEMBLY): *.cs generated-stamp $(MCS) --unsafe --target library \