New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add C++/winrt support for code generation #64
Conversation
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should keep side-by-side CX + WinrtCpp for now. For LottieViewer it only needs to support one and winrtcpp is the right thing for it to support when winrtcpp is working.
LottieGen has a switch to choose which one to output. In order to stop them overwriting each other can you add a suffix to the filename for CX, e.g. MyLottie_CX.cpp for CX and MyLottie.cpp for winrtcpp.
@@ -43,9 +43,9 @@ public override string CanvasGeometryCombine(Mgcg.CanvasGeometryCombine value) | |||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Rather than breaking this for Cx, can you just create a new version. I'd like CX to continue to work side by side.
LottieViewer/MainPage.xaml.cs
Outdated
@@ -55,7 +55,10 @@ async void SaveFile_Click(object sender, RoutedEventArgs e) | |||
|
|||
// Dropdown of file types the user can save the file as | |||
filePicker.FileTypeChoices.Add("C#", new[] { ".cs" }); | |||
filePicker.FileTypeChoices.Add("C++ CX", new[] { ".cpp" }); | |||
|
|||
// TODO: handle Cx generation side by side with CPPWINRT |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Testing adding a comment from codeflow tool... #Closed
@clarkezone Any updates? |
Remaining todo-list for this PR
|
LMK when you are ready to review this.. I only intend to rebase once and I only want to do that when you're ready to accept it, hence I'm going to stop work until I hear back. |
This PR adds support for c++/winrt code generation.
While the change works, it has a few todo's and will need to be addressed and also will need some refactoring as there are changes in instantiatorgeneratorbase that are c++/winrt specific which will need abstracting / specializing to avoid breaking c# generation.
It also disables c++/CX code generation (since the output filenames are the same for both) but does not remove the code. My assumption is that c++/winrt should replace c++/CX codegen, please confirm.
Appreciate an early review.