MCPcopy Create free account
hub / github.com/FlaxEngine/FlaxEngine / SavePanel

Method SavePanel

Source/Editor/Modules/WindowsModule.cs:397–437  ·  view source on GitHub ↗
(XmlWriter writer, DockPanel panel)

Source from the content-addressed store, hash-verified

395 }
396
397 private void SavePanel(XmlWriter writer, DockPanel panel)
398 {
399 writer.WriteAttributeString("SelectedTab", panel.SelectedTabIndex.ToString());
400
401 for (int i = 0; i < panel.TabsCount; i++)
402 {
403 var win = panel.Tabs[i];
404 writer.WriteStartElement("Window");
405
406 writer.WriteAttributeString("Typename", win.SerializationTypename);
407
408 if (win.UseLayoutData)
409 {
410 writer.WriteStartElement("Data");
411 win.OnLayoutSerialize(writer);
412 writer.WriteEndElement();
413 }
414
415 writer.WriteEndElement();
416 }
417
418 for (int i = 0; i < panel.ChildPanelsCount; i++)
419 {
420 var p = panel.ChildPanels[i];
421
422 // Skip empty panels
423 if (p.TabsCount == 0)
424 continue;
425
426 writer.WriteStartElement("Panel");
427
428 DockState state = p.TryGetDockState(out float splitterValue);
429
430 writer.WriteAttributeString("DockState", ((int)state).ToString());
431 writer.WriteAttributeString("SplitterValue", splitterValue.ToString(CultureInfo.InvariantCulture));
432
433 SavePanel(writer, p);
434
435 writer.WriteEndElement();
436 }
437 }
438
439 private void LoadPanel(XmlElement node, DockPanel panel)
440 {

Callers

nothing calls this directly

Calls 3

ToStringMethod · 0.45
OnLayoutSerializeMethod · 0.45
TryGetDockStateMethod · 0.45

Tested by

no test coverage detected