ui/winui/window.cpp

branch
newapi
changeset 183
3ce2eb11913b
parent 182
6cf690e042bd
child 184
8c9b4b28aaa9
equal deleted inserted replaced
182:6cf690e042bd 183:3ce2eb11913b
50 using namespace Microsoft::UI::Xaml; 50 using namespace Microsoft::UI::Xaml;
51 using namespace Microsoft::UI::Xaml::Controls; 51 using namespace Microsoft::UI::Xaml::Controls;
52 using namespace Microsoft::UI::Xaml::XamlTypeInfo; 52 using namespace Microsoft::UI::Xaml::XamlTypeInfo;
53 using namespace Microsoft::UI::Xaml::Markup; 53 using namespace Microsoft::UI::Xaml::Markup;
54 using namespace Windows::UI::Xaml::Interop; 54 using namespace Windows::UI::Xaml::Interop;
55 55 using namespace winrt::Windows::Foundation;
56
57
58 56
59 UiObject* ui_window(const char* title, void* window_data) { 57 UiObject* ui_window(const char* title, void* window_data) {
60 CxMempool* mp = cxBasicMempoolCreate(256); 58 CxMempool* mp = cxBasicMempoolCreate(256);
61 UiObject* obj = (UiObject*)cxCalloc(mp->allocator, 1, sizeof(UiObject)); 59 UiObject* obj = (UiObject*)cxCalloc(mp->allocator, 1, sizeof(UiObject));
62 60
63 obj->ctx = uic_context(obj, mp->allocator); 61 obj->ctx = uic_context(obj, mp->allocator);
64 obj->window = window_data; 62 obj->window = window_data;
65 63
66 obj->wobj = Window(); 64 Window window = Window();
65
67 Grid grid = Grid(); 66 Grid grid = Grid();
68 obj->wobj.Content(grid); 67 window.Content(grid);
68
69 obj->wobj = new UiWindow(window);
70
71 window.Closed([&](IInspectable const& sender, WindowEventArgs) { delete obj->wobj; } );
69 72
70 obj->container = new UiBoxContainer(grid, UI_CONTAINER_VBOX); 73 obj->container = new UiBoxContainer(grid, UI_CONTAINER_VBOX);
71 74
72 if (uic_get_menu_list()) { 75 if (uic_get_menu_list()) {
73 // create/add menubar 76 // create/add menubar
85 obj->container->Add(b1, false); 88 obj->container->Add(b1, false);
86 obj->container->Add(b2, false); 89 obj->container->Add(b2, false);
87 90
88 91
89 obj->window = window_data; 92 obj->window = window_data;
93
94 //wptr2->Activate();
95 //obj->wobj = wptr2;
90 96
91 97
92 return obj; 98 return obj;
93 } 99 }

mercurial