示例#1
0
 public void LoadMap(Form loader = null)
 {
     lock (multiBoard)
     {
         if (loader == null || loader.ShowDialog() == DialogResult.OK)
         {
             if (!multiBoard.DeviceReady)
             {
                 ribbon.SetEnabled(true);
                 ribbon.SetOptions(UserSettings.useMiniMap, UserSettings.emulateParallax, UserSettings.useSnapping, ApplicationSettings.randomTiles, ApplicationSettings.InfoMode);
                 if (FirstMapLoaded != null)
                 {
                     FirstMapLoaded.Invoke();
                 }
                 multiBoard.Start();
                 backupMan.Start();
             }
             multiBoard.SelectedBoard.SelectedPlatform = multiBoard.SelectedBoard.SelectedLayerIndex == -1 ? -1 : multiBoard.SelectedBoard.Layers[multiBoard.SelectedBoard.SelectedLayerIndex].zMList.ElementAt(0);
             ribbon.SetLayers(multiBoard.SelectedBoard.Layers);
             ribbon.SetSelectedLayer(multiBoard.SelectedBoard.SelectedLayerIndex, multiBoard.SelectedBoard.SelectedPlatform, multiBoard.SelectedBoard.SelectedAllLayers, multiBoard.SelectedBoard.SelectedAllPlatforms);
             ribbon.SetHasMinimap(multiBoard.SelectedBoard.MinimapRectangle != null);
             multiBoard.SelectedBoard.VisibleTypes = ApplicationSettings.theoreticalVisibleTypes;
             multiBoard.SelectedBoard.EditedTypes  = ApplicationSettings.theoreticalEditedTypes;
             ParseVisibleEditedTypes();
             multiBoard.Focus();
         }
     }
 }