StartImageCreation()
{
AssertValid();
Debug.Assert(m_oWorkbook != null);
Debug.Assert(m_oSelectedVertexNames != null);
// Read the workbook into a new IGraph.
IGraph oGraph;
try
{
oGraph = ReadWorkbook(m_oWorkbook);
}
catch (Exception oException)
{
ErrorUtil.OnException(oException);
this.State = DialogState.Idle;
return;
}
lblStatus.Text = "Creating subgraph images.";
ICollection<IVertex> oSelectedVertices = new IVertex[0];
if (m_oCreateSubgraphImagesDialogUserSettings.SelectedVerticesOnly)
{
// Get the vertices corresponding to the selected rows in the
// vertex worksheet.
oSelectedVertices = GetSelectedVertices(
oGraph, m_oSelectedVertexNames);
}
m_oSubgraphImageCreator.CreateSubgraphImagesAsync(
oGraph,
oSelectedVertices,
m_oCreateSubgraphImagesDialogUserSettings.Levels,
m_oCreateSubgraphImagesDialogUserSettings.SaveToFolder,
m_oCreateSubgraphImagesDialogUserSettings.Folder,
m_oCreateSubgraphImagesDialogUserSettings.ImageSizePx,
m_oCreateSubgraphImagesDialogUserSettings.ImageFormat,
m_oCreateSubgraphImagesDialogUserSettings.InsertThumbnails,
m_oCreateSubgraphImagesDialogUserSettings.ThumbnailSizePx,
m_oCreateSubgraphImagesDialogUserSettings.SelectedVerticesOnly,
m_oCreateSubgraphImagesDialogUserSettings.SelectVertex,
m_oCreateSubgraphImagesDialogUserSettings.SelectIncidentEdges,
new GeneralUserSettings(),
new LayoutUserSettings()
);
}