aboutsummaryrefslogtreecommitdiff
path: root/Source/Ribbon
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Ribbon')
-rw-r--r--Source/Ribbon/RibbonController.cs69
1 files changed, 69 insertions, 0 deletions
diff --git a/Source/Ribbon/RibbonController.cs b/Source/Ribbon/RibbonController.cs
new file mode 100644
index 0000000..df6f327
--- /dev/null
+++ b/Source/Ribbon/RibbonController.cs
@@ -0,0 +1,69 @@
+using System.Runtime.InteropServices;
+using System.Windows.Forms;
+using ExcelDna.Integration.CustomUI;
+using RehauSku.PriceListTools;
+using RehauSku.Forms;
+
+namespace RehauSku.Ribbon
+{
+ [ComVisible(true)]
+ public class RibbonController : ExcelRibbon
+ {
+ public override string GetCustomUI(string RibbonID)
+ {
+ return @"
+ <customUI xmlns='http://schemas.microsoft.com/office/2006/01/customui'>
+ <ribbon>
+ <tabs>
+ <tab id='rau' label='REHAU'>
+ <group id='priceList' label='Прайс-лист'>
+ <button id='exportToPrice' label='Экспорт в новый файл' size='normal' imageMso='PivotExportToExcel' onAction='OnExportPressed'/>
+ <button id='mergeFiles' label='Объединить' size='normal' imageMso='Copy' onAction='OnMergePressed'/>
+ </group>
+ <group id='rausettings' label='Настройки'>
+ <button id='setPriceList' label='Файл прайс-листа' size='normal' imageMso='CurrentViewSettings' onAction='OnSetPricePressed'/>
+ </group>
+ </tab>
+ </tabs>
+ </ribbon>
+ </customUI>";
+ }
+
+ public void OnMergePressed(IRibbonControl control)
+ {
+ using (MergeTool mergeTool = new MergeTool())
+ {
+ string[] files = Dialog.GetMultiplyFiles();
+ mergeTool.AddSkuAmountToDict(files);
+ string exportFile = PriceListUtil.CreateNewExportFile();
+ mergeTool.ExportToNewFile(exportFile);
+ }
+ }
+
+ public void OnExportPressed(IRibbonControl control)
+ {
+ using (ExportTool exportTool = new ExportTool())
+ {
+ if (!exportTool.IsRangeValid())
+ {
+ MessageBox.Show("Выделен неверный диапазон!",
+ "Неверный диапазон",
+ MessageBoxButtons.OK,
+ MessageBoxIcon.Information);
+ return;
+ }
+
+ else
+ {
+ exportTool.ExportToNewFile();
+ }
+ }
+ }
+
+ public void OnSetPricePressed(IRibbonControl control)
+ {
+ string path = Dialog.GetFilePath();
+ RegistryUtil.PriceListPath = path;
+ }
+ }
+}