aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Chebotar <s.chebotar@gmail.com>2023-04-07 08:10:51 +0300
committerSergey Chebotar <s.chebotar@gmail.com>2023-04-07 08:10:51 +0300
commit6acba1a542d98f50e9bdaa986d81024623aeeffd (patch)
tree1ac7f72c94f7ee9ed31f9b991ada830048d19a61
parent56a32cd56774440e2a01f181224a5a16c8212b08 (diff)
Add Dxf Export button
-rw-r--r--RhSolutions.AddIn/Controllers/RibbonController.cs14
-rw-r--r--RhSolutions.AddIn/Tools/EventsUtil.cs7
2 files changed, 21 insertions, 0 deletions
diff --git a/RhSolutions.AddIn/Controllers/RibbonController.cs b/RhSolutions.AddIn/Controllers/RibbonController.cs
index efc0d15..c815229 100644
--- a/RhSolutions.AddIn/Controllers/RibbonController.cs
+++ b/RhSolutions.AddIn/Controllers/RibbonController.cs
@@ -27,6 +27,7 @@ public class RibbonController : ExcelRibbon
<button id='export' getEnabled='GetExportEnabled' label='Экспорт в новый файл' size='normal' imageMso='PivotExportToExcel' onAction='OnToolPressed'/>
<button id='convert' getEnabled='GetConvertEnabled' label='Актуализировать' size='normal' imageMso='FileUpdate' onAction='OnToolPressed'/>
<button id='merge' label='Объединить' size='normal' imageMso='Copy' onAction='OnToolPressed'/>
+ <button id='dxfexport' getEnabled='GetDxfEnabled' label='Экспортировать в DXF' size='normal' imageMso='ExportExcel' onAction='OnToolPressed'/>
</group>
<group id='rausettings' getLabel='GetVersionLabel'>
<button id='setPriceList' getLabel='GetPriceListPathLabel' size='large' imageMso='TableExcelSpreadsheetInsert' onAction='OnSetPricePressed'/>
@@ -68,6 +69,7 @@ public class RibbonController : ExcelRibbon
"export" => new ExportTool(),
"convert" => new ConvertTool(),
"merge" => new MergeTool(),
+ "dxfexport" => new DxfTool(),
_ => throw new Exception("Неизвестный инструмент"),
};
tool.Execute();
@@ -108,6 +110,18 @@ public class RibbonController : ExcelRibbon
}
}
+ public bool GetDxfEnabled(IRibbonControl control)
+ {
+ if (RhSolutionsAddIn.Excel.ActiveWorkbook == null)
+ return false;
+
+ else
+ {
+ Worksheet worksheet = RhSolutionsAddIn.Excel.ActiveWorkbook.ActiveSheet;
+ return worksheet.IsValidSource();
+ }
+ }
+
public string GetVersionLabel(IRibbonControl control)
{
string version = Assembly.GetExecutingAssembly().GetName().Version.ToString();
diff --git a/RhSolutions.AddIn/Tools/EventsUtil.cs b/RhSolutions.AddIn/Tools/EventsUtil.cs
index 4bd6b89..99f435f 100644
--- a/RhSolutions.AddIn/Tools/EventsUtil.cs
+++ b/RhSolutions.AddIn/Tools/EventsUtil.cs
@@ -17,6 +17,7 @@ namespace RhSolutions.Tools
{
RhSolutionsAddIn.Excel.SheetSelectionChange += RefreshExportButton;
RhSolutionsAddIn.Excel.SheetActivate += RefreshConvertButton;
+ RhSolutionsAddIn.Excel.SheetActivate += RefreshDxfButton;
RhSolutionsAddIn.Excel.WorkbookActivate += RefreshConvertButton;
RhSolutionsAddIn.Configuration.OnSettingsChange += RefreshSettingTitle;
}
@@ -25,6 +26,7 @@ namespace RhSolutions.Tools
{
RhSolutionsAddIn.Excel.SheetSelectionChange -= RefreshExportButton;
RhSolutionsAddIn.Excel.SheetActivate -= RefreshConvertButton;
+ RhSolutionsAddIn.Excel.SheetActivate -= RefreshDxfButton;
RhSolutionsAddIn.Excel.WorkbookActivate -= RefreshConvertButton;
RhSolutionsAddIn.Configuration.OnSettingsChange -= RefreshSettingTitle;
}
@@ -34,6 +36,11 @@ namespace RhSolutions.Tools
RibbonController.RefreshControl("convert");
}
+ private static void RefreshDxfButton(object sh)
+ {
+ RibbonController.RefreshControl("dxfexport");
+ }
+
private static void RefreshExportButton(object sh, Range target)
{
RibbonController.RefreshControl("export");