ui/winui/window.cpp

changeset 986
6f7600c2b9e1
parent 627
3f0c9fe60c68
equal deleted inserted replaced
985:93f07ccfd997 986:6f7600c2b9e1
66 extern "C" static void ui_window_widget_destroy(UiObject *obj) { 66 extern "C" static void ui_window_widget_destroy(UiObject *obj) {
67 obj->ref = 1; 67 obj->ref = 1;
68 obj->wobj->window.Close(); 68 obj->wobj->window.Close();
69 } 69 }
70 70
71 UiObject* ui_window(const char* title, void* window_data) { 71 UiObject* ui_window(const char* title) {
72 UiObject* obj = ui_simple_window(title, window_data); 72 UiObject* obj = ui_simple_window(title);
73 73
74 /* 74 /*
75 if (uic_get_menu_list()) { 75 if (uic_get_menu_list()) {
76 // create/add menubar 76 // create/add menubar
77 MenuBar mb = ui_create_menubar(obj); 77 MenuBar mb = ui_create_menubar(obj);
78 mb.VerticalAlignment(VerticalAlignment::Top); 78 mb.VerticalAlignment(VerticalAlignment::Top);
79 obj->container->Add(mb, false); 79 obj->container->Add(mb, false);
80 } 80 }
81 */ 81 */
82 82
83 if (uic_toolbar_isenabled()) { 83 if (uic_toolbar_isenabled()) {
84 // create a grid for the toolbar: ColumnDefinitions="Auto, *, Auto" 84 // create a grid for the toolbar: ColumnDefinitions="Auto, *, Auto"
85 Grid toolbar_grid = Grid(); 85 Grid toolbar_grid = Grid();
86 GridLength gl; 86 GridLength gl;
87 gl.Value = 0; 87 gl.Value = 0;
88 gl.GridUnitType = GridUnitType::Auto; 88 gl.GridUnitType = GridUnitType::Auto;
89 89
90 ColumnDefinition coldef0 = ColumnDefinition(); 90 ColumnDefinition coldef0 = ColumnDefinition();
91 coldef0.Width(gl); 91 coldef0.Width(gl);
92 toolbar_grid.ColumnDefinitions().Append(coldef0); 92 toolbar_grid.ColumnDefinitions().Append(coldef0);
93 93
94 gl.Value = 1; 94 gl.Value = 1;
95 gl.GridUnitType = GridUnitType::Star; 95 gl.GridUnitType = GridUnitType::Star;
96 ColumnDefinition coldef1 = ColumnDefinition(); 96 ColumnDefinition coldef1 = ColumnDefinition();
97 coldef1.Width(gl); 97 coldef1.Width(gl);
98 toolbar_grid.ColumnDefinitions().Append(coldef1); 98 toolbar_grid.ColumnDefinitions().Append(coldef1);
99 99
100 gl.Value = 0; 100 gl.Value = 0;
101 gl.GridUnitType = GridUnitType::Auto; 101 gl.GridUnitType = GridUnitType::Auto;
102 ColumnDefinition coldef2 = ColumnDefinition(); 102 ColumnDefinition coldef2 = ColumnDefinition();
103 coldef2.Width(gl); 103 coldef2.Width(gl);
104 toolbar_grid.ColumnDefinitions().Append(coldef2); 104 toolbar_grid.ColumnDefinitions().Append(coldef2);
105 105
106 // rowdef 106 // rowdef
107 gl.Value = 0; 107 gl.Value = 0;
108 gl.GridUnitType = GridUnitType::Auto; 108 gl.GridUnitType = GridUnitType::Auto;
109 RowDefinition rowdef = RowDefinition(); 109 RowDefinition rowdef = RowDefinition();
110 rowdef.Height(gl); 110 rowdef.Height(gl);
111 toolbar_grid.RowDefinitions().Append(rowdef); 111 toolbar_grid.RowDefinitions().Append(rowdef);
112 112
113 113
114 // create commandbar 114 // create commandbar
115 CxList* def_l = uic_get_toolbar_defaults(UI_TOOLBAR_LEFT); 115 CxList* def_l = uic_get_toolbar_defaults(UI_TOOLBAR_LEFT);
116 CxList* def_c = uic_get_toolbar_defaults(UI_TOOLBAR_CENTER); 116 CxList* def_c = uic_get_toolbar_defaults(UI_TOOLBAR_CENTER);
117 CxList* def_r = uic_get_toolbar_defaults(UI_TOOLBAR_RIGHT); 117 CxList* def_r = uic_get_toolbar_defaults(UI_TOOLBAR_RIGHT);
118 118
119 bool addappmenu = true; 119 bool addappmenu = true;
120 if (cxListSize(def_r) > 0) { 120 if (cxListSize(def_r) > 0) {
121 CommandBar toolbar_r = ui_create_toolbar(obj, def_r, addappmenu); 121 CommandBar toolbar_r = ui_create_toolbar(obj, def_r, addappmenu);
122 toolbar_grid.SetColumn(toolbar_r, 2); 122 toolbar_grid.SetColumn(toolbar_r, 2);
123 toolbar_grid.SetRow(toolbar_r, 0); 123 toolbar_grid.SetRow(toolbar_r, 0);
124 toolbar_grid.Children().Append(toolbar_r); 124 toolbar_grid.Children().Append(toolbar_r);
125 addappmenu = false; 125 addappmenu = false;
126 } 126 }
127 if (cxListSize(def_c) > 0) { 127 if (cxListSize(def_c) > 0) {
128 CommandBar toolbar_c = ui_create_toolbar(obj, def_c, addappmenu); 128 CommandBar toolbar_c = ui_create_toolbar(obj, def_c, addappmenu);
129 toolbar_c.HorizontalAlignment(HorizontalAlignment::Center); 129 toolbar_c.HorizontalAlignment(HorizontalAlignment::Center);
130 toolbar_grid.SetColumn(toolbar_c, 1); 130 toolbar_grid.SetColumn(toolbar_c, 1);
131 toolbar_grid.SetRow(toolbar_c, 0); 131 toolbar_grid.SetRow(toolbar_c, 0);
132 toolbar_grid.Children().Append(toolbar_c); 132 toolbar_grid.Children().Append(toolbar_c);
133 addappmenu = false; 133 addappmenu = false;
134 } 134 }
135 if (cxListSize(def_l) > 0) { 135 if (cxListSize(def_l) > 0) {
136 CommandBar toolbar_l = ui_create_toolbar(obj, def_l, addappmenu); 136 CommandBar toolbar_l = ui_create_toolbar(obj, def_l, addappmenu);
137 toolbar_grid.SetColumn(toolbar_l, 0); 137 toolbar_grid.SetColumn(toolbar_l, 0);
138 toolbar_grid.SetRow(toolbar_l, 0); 138 toolbar_grid.SetRow(toolbar_l, 0);
139 toolbar_grid.Children().Append(toolbar_l); 139 toolbar_grid.Children().Append(toolbar_l);
140 } 140 }
141 141
142 toolbar_grid.VerticalAlignment(VerticalAlignment::Top); 142 toolbar_grid.VerticalAlignment(VerticalAlignment::Top);
143 obj->container->Add(toolbar_grid, false); 143 obj->container->Add(toolbar_grid, false);
144 } 144 }
145 145
146 return obj; 146 return obj;
147 } 147 }
148 148
149 UIEXPORT UiObject* ui_simple_window(const char *title, void *window_data) { 149 UIEXPORT UiObject* ui_simple_window(const char *title) {
150 UiObject* obj = uic_object_new_toplevel(); 150 UiObject* obj = uic_object_new_toplevel();
151 151
152 obj->ctx = uic_context(obj, mp); 152 obj->ctx = uic_context(obj, mp);
153 obj->window = window_data;
154 153
155 Window window = Window(); 154 Window window = Window();
156 //Window window = make<winui::implementation::MainWindow>(); 155 //Window window = make<winui::implementation::MainWindow>();
157 156
158 winrt::Windows::Foundation::Uri resourceLocator{ L"ms-appx:///MainWindow.xaml" }; 157 winrt::Windows::Foundation::Uri resourceLocator{ L"ms-appx:///MainWindow.xaml" };

mercurial