Move to new library model and view

- Add new listview control for library content
- Migrate library providers to containers
  - Cloud, Sqlite, Directories, Queue, History
- Migrate SideBar components to containers
  - Primatives, Text, Braille, ImageConverter
- Create new library container types
  - Zip files, Calibration parts, Printer SDCards
- Reduce leftnav to Library, Settings, Controls, Options
- Add DragDrop support for image content
This commit is contained in:
John Lewin 2017-05-19 22:33:55 -07:00
parent b0b249e0c3
commit 03a593f1b5
129 changed files with 7643 additions and 10331 deletions

View file

@ -1,18 +1,13 @@
using MatterHackers.Agg;
using MatterHackers.Agg.UI;
using MatterHackers.Localizations;
using MatterHackers.MatterControl.DataStorage;
using System;
using MatterHackers.MatterControl.SettingsManagement;
using System;
using System.Collections.Generic;
using System.Linq;
using MatterHackers.MatterControl.CustomWidgets;
using MatterHackers.MatterControl.SlicerConfiguration;
using MatterHackers.Agg;
using MatterHackers.Agg.PlatformAbstract;
using System.IO;
using MatterHackers.MatterControl.PrintLibrary.Provider;
using MatterHackers.MatterControl.PrintQueue;
using System.Threading.Tasks;
using MatterHackers.Agg.UI;
using MatterHackers.Localizations;
using MatterHackers.MatterControl.CustomWidgets;
using MatterHackers.MatterControl.SettingsManagement;
using MatterHackers.MatterControl.SlicerConfiguration;
namespace MatterHackers.MatterControl.PrinterControls.PrinterConnections
{
@ -236,8 +231,10 @@ namespace MatterHackers.MatterControl.PrinterControls.PrinterConnections
});
}
// TODO: Do we still want to do this - constantly adding items to the queue as printers are added? What about a LibraryContainer for '[PrinterName] Calibration Files' - much cleaner to implement, never an extra files on disk or one-time processing that remain becomes inconsistent over time
public void LoadCalibrationPrints()
{
/*
// Load the calibration file names
string calibrationFiles = ActiveSliceSettings.Instance.GetValue("calibration_files");
if(string.IsNullOrEmpty(calibrationFiles))
@ -251,9 +248,6 @@ namespace MatterHackers.MatterControl.PrinterControls.PrinterConnections
return;
}
var libraryProvider = new LibraryProviderSQLite(null, null, null, "Local Library");
libraryProvider.EnsureSamplePartsExist(calibrationPrintFileNames);
var queueItems = QueueData.Instance.GetItemNames();
// Finally, ensure missing calibration parts are added to the queue if missing
@ -274,6 +268,7 @@ namespace MatterHackers.MatterControl.PrinterControls.PrinterConnections
}
libraryProvider.Dispose();
*/
}
private bool ValidateControls()