|
@@ -26,23 +26,22 @@ namespace PRSDesktop
|
|
|
public ScanGrid()
|
|
|
{
|
|
|
Options.BeginUpdate()
|
|
|
- .AddRange(DynamicGridOption.MultiSelect, DynamicGridOption.DragSource, DynamicGridOption.FilterRows, DynamicGridOption.SelectColumns)
|
|
|
- .Remove(DynamicGridOption.ImportData)
|
|
|
+ .Clear()
|
|
|
+ .Add(DynamicGridOption.MultiSelect)
|
|
|
+ .Add(DynamicGridOption.DragSource)
|
|
|
+ .Add(DynamicGridOption.SelectColumns)
|
|
|
.EndUpdate();
|
|
|
|
|
|
if (Security.CanEdit<Scan>() || Security.IsAllowed<CanSetupScanTags>())
|
|
|
{
|
|
|
ActionColumns.Add(new DynamicMenuColumn(MenuBuild, null));
|
|
|
}
|
|
|
- if (Security.CanEdit<Scan>())
|
|
|
- {
|
|
|
- ExplodeBtn = AddButton("Explode", null, Explode_Click);
|
|
|
- }
|
|
|
-
|
|
|
- if (Security.IsAllowed<CanSetupScanTags>())
|
|
|
- {
|
|
|
- AddButton("Setup Tags", null, SetupTags_Click);
|
|
|
- }
|
|
|
+
|
|
|
+ // if (Security.CanEdit<Scan>())
|
|
|
+ // {
|
|
|
+ // ExplodeBtn = AddButton("Explode", null, Explode_Click);
|
|
|
+ // }
|
|
|
+
|
|
|
|
|
|
HiddenColumns.Add(x => x.Tag.ID);
|
|
|
HiddenColumns.Add(x => x.Tag.AppliesTo);
|
|
@@ -59,17 +58,28 @@ namespace PRSDesktop
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ public void DoExplode()
|
|
|
+ {
|
|
|
+ if (DoExplode(SelectedRows))
|
|
|
+ Refresh(false,true);
|
|
|
+ }
|
|
|
+
|
|
|
private bool Explode_Click(Button button, CoreRow[] rows)
|
|
|
+ {
|
|
|
+ return DoExplode(rows);
|
|
|
+ }
|
|
|
+
|
|
|
+ private bool DoExplode(CoreRow[] rows)
|
|
|
{
|
|
|
Guid tagID = Guid.Empty;
|
|
|
- foreach(var row in rows)
|
|
|
+ foreach (var row in rows)
|
|
|
{
|
|
|
var rowTag = row.Get<Scan, Guid>(x => x.Tag.ID);
|
|
|
if (tagID == Guid.Empty)
|
|
|
{
|
|
|
tagID = rowTag;
|
|
|
}
|
|
|
- else if(rowTag != tagID)
|
|
|
+ else if (rowTag != tagID)
|
|
|
{
|
|
|
tagID = Guid.Empty;
|
|
|
break;
|
|
@@ -85,25 +95,27 @@ namespace PRSDesktop
|
|
|
|
|
|
var pages = new List<DocumentManipulationWindow.Page>();
|
|
|
string filename = "";
|
|
|
- foreach(var docID in docIDs)
|
|
|
+ foreach (var docID in docIDs)
|
|
|
{
|
|
|
- if(docs.TryGetValue(docID, out var doc))
|
|
|
+ if (docs.TryGetValue(docID, out var doc))
|
|
|
{
|
|
|
filename = doc.FileName;
|
|
|
var ms = new MemoryStream(doc.Data);
|
|
|
var pdfDoc = DocumentManipulationWindow.RenderToPDF(doc.FileName, ms);
|
|
|
- foreach(var page in DocumentManipulationWindow.SplitIntoPages(doc.FileName, pdfDoc))
|
|
|
+ foreach (var page in DocumentManipulationWindow.SplitIntoPages(doc.FileName, pdfDoc))
|
|
|
{
|
|
|
pages.Add(page);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- if(ShowDocumentWindow(pages, filename, tagID))
|
|
|
+
|
|
|
+ if (ShowDocumentWindow(pages, filename, tagID))
|
|
|
{
|
|
|
// ShowDocumentWindow already saves new scans, so we just need to get rid of the old ones.
|
|
|
DeleteItems(rows);
|
|
|
return true;
|
|
|
}
|
|
|
+
|
|
|
return false;
|
|
|
}
|
|
|
|