Пример #1
0
        private void HandleEvent(WrapperStatus status)
        {
            switch (status)
            {
            case WrapperStatus.ReadingHeaders:
                Log("Finding input files...\r\n");
                break;

            case WrapperStatus.ReadingHeadersDone:
                cppFilesTab.SetData(Project.RootFolder);
                Application.UserAppDataRegistry.SetValue("SourceFolder", Project.FullSourcePath);
                Project.ParseAsync();
                break;

            case WrapperStatus.ParsingHeaders:
                cppFilesTab.SetData(null);
                cppClassesTab.SetData(null);
                Log("Parsing input files...\r\n");
                break;

            case WrapperStatus.ParsingHeadersDone:
                cppFilesTab.SetData(Project.RootFolder);
                cppClassesTab.SetData(Project);
                csharpFilesTab.SetData(Project.RootFolder);

                Log("Transforming C++ to C#...\r\n");
                Project.TransformAsync();
                break;

            case WrapperStatus.TransformingCppDone:
                csharpFilesTab.SetData(Project.RootFolderCSharp);
                csharpClassesTab.SetData(Project);

                Log("Writing wrapper...\r\n");
                Project.WriteWrapperAsync();
                break;

            case WrapperStatus.WritingWrapperDone:
                Log("Done\r\n");
                break;
            }
        }
Пример #2
0
 public WrapperProjectEventArgs(WrapperProjectEvent e, WrapperStatus status)
 {
     Event  = e;
     Status = status;
 }
Пример #3
0
 public void SetStatus(WrapperStatus status)
 {
     Status = status;
     WrapperEvent.Invoke(this, new WrapperProjectEventArgs(WrapperProjectEvent.StatusChanged, status));
 }