//		static Stetic.IsolationMode IsolationMode = Stetic.IsolationMode.ProcessUnix;

        static GuiBuilderService()
        {
            if (IdeApp.Workbench == null)
            {
                return;
            }
//			IdeApp.Workspace.ParserDatabase.AssemblyInformationChanged += (AssemblyInformationEventHandler) DispatchService.GuiDispatch (new AssemblyInformationEventHandler (OnAssemblyInfoChanged));

            IdeApp.Exited += delegate {
                if (steticApp != null)
                {
                    StoreConfiguration();
                    steticApp.Dispose();
                }
            };
        }
示例#2
0
//		static Stetic.IsolationMode IsolationMode = Stetic.IsolationMode.ProcessUnix;

        static GuiBuilderService()
        {
            if (IdeApp.Workbench == null)
            {
                return;
            }
            IdeApp.Workbench.ActiveDocumentChanged += new EventHandler(OnActiveDocumentChanged);
            IdeApp.ProjectOperations.EndBuild      += OnProjectCompiled;
//			IdeApp.Workspace.ParserDatabase.AssemblyInformationChanged += (AssemblyInformationEventHandler) DispatchService.GuiDispatch (new AssemblyInformationEventHandler (OnAssemblyInfoChanged));

            IdeApp.Exited += delegate {
                if (steticApp != null)
                {
                    StoreConfiguration();
                    steticApp.Dispose();
                }
            };
        }
示例#3
0
        public static int Main(string[] args)
        {
            int           n            = 0;
            IsolationMode mode         = IsolationMode.None;
            bool          usePartial   = false;
            bool          useGettext   = false;
            bool          genEmpty     = false;
            bool          useMultifile = false;

            while (n < args.Length)
            {
                string arg = args[n];
                if (arg.StartsWith("--language:"))
                {
                    language = arg.Substring(11);
                }
                else if (arg.StartsWith("-l:"))
                {
                    language = arg.Substring(3);
                }
                else if (arg.StartsWith("-lib:"))
                {
                    libraries.Add(arg.Substring(5));
                }
                else if (arg.StartsWith("--library:"))
                {
                    libraries.Add(arg.Substring(10));
                }
                else if (arg == "--generate" || arg == "-g")
                {
                    break;
                }
                else if (arg == "--noisolation")
                {
                    mode = IsolationMode.None;
                }
                else if (arg == "--gen-partial")
                {
                    usePartial = true;
                }
                else if (arg == "--gen-gettext")
                {
                    useGettext = true;
                }
                else if (arg == "--gen-multifile")
                {
                    useMultifile = true;
                }
                else if (arg == "--gen-empty")
                {
                    genEmpty = true;
                }
                else
                {
                    break;
                }
                n++;
            }

            if (args.Length == 1 && args [0] == "--help")
            {
                Console.WriteLine(Catalog.GetString("Stetic - A GTK User Interface Builder"));
                Console.WriteLine(Catalog.GetString("Usage:"));
                Console.WriteLine("\tstetic [<file>]");
                Console.WriteLine("\tstetic [--language:<language>] [-lib:<library>...] --generate <sourceFile> <projectFile> ...");
                return(0);
            }

            Program = new Gnome.Program("Stetic", "0.0", Gnome.Modules.UI, args);

            int ret;

            if (args.Length - n > 2 && ((args [n] == "--generate" || args [n] == "-g")))
            {
                SteticApp = Stetic.ApplicationFactory.CreateApplication(IsolationMode.None);
                GenerationOptions ops = new GenerationOptions();
                ops.UsePartialClasses        = usePartial;
                ops.GenerateEmptyBuildMethod = genEmpty;
                ops.UseGettext         = useGettext;
                ops.GenerateSingleFile = !useMultifile;
                ret = GenerateCode(args [n + 1], args, n + 2, ops);
            }
            else
            {
                SteticApp = Stetic.ApplicationFactory.CreateApplication(mode);
                SteticApp.AllowInProcLibraries = false;
                ret = RunApp(args, n);
            }

            SteticApp.Dispose();
            return(ret);
        }