You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
290 lines
12 KiB
290 lines
12 KiB
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows.Forms;
|
|
using OnDoc.Klassen;
|
|
using Syncfusion.Windows.Forms.Grid;
|
|
using Syncfusion.Windows.Forms.Tools;
|
|
using Syncfusion.WinForms.Controls;
|
|
using System.Xml;
|
|
using System.IO;
|
|
using System.Configuration;
|
|
using System.Xml.Linq;
|
|
using Syncfusion.Compression.Zip;
|
|
using static System.Net.Mime.MediaTypeNames;
|
|
using System.Diagnostics;
|
|
using Microsoft.Office.Interop.Word;
|
|
|
|
namespace OnDoc.Diverses
|
|
{
|
|
public partial class NativVorlagen : SfForm
|
|
{
|
|
private int TotalKlassifizierung = 0;
|
|
public NativVorlagen()
|
|
{
|
|
InitializeComponent();
|
|
this.Style.TitleBar.BackColor = Theaming.Titelbar();
|
|
this.Style.TitleBar.ForeColor = Theaming.TitelFontColor();
|
|
|
|
}
|
|
|
|
private void NativVorlagen_Load(object sender, EventArgs e)
|
|
{
|
|
|
|
string line = "";
|
|
int i = 1;
|
|
StreamReader sr = new StreamReader(Properties.Settings.Default.NativVorlagen+@"\klassifizierung.txt");
|
|
line = sr.ReadLine();
|
|
while (line != null)
|
|
{
|
|
RadioButton rb = new RadioButton();
|
|
rb.Name = "rb"+i.ToString();
|
|
rb.Text = line;
|
|
rb.Left = label1.Left;
|
|
rb.Top = label1.Top + (i*25);
|
|
rb.Width = 180;
|
|
i++;
|
|
this.Controls.Add(rb);
|
|
line = sr.ReadLine();
|
|
}
|
|
sr.Close();
|
|
TotalKlassifizierung = i - 1;
|
|
|
|
string ext = "";
|
|
DirectoryInfo directoryInfo = new DirectoryInfo(Properties.Settings.Default.NativVorlagen);
|
|
if (directoryInfo.Exists)
|
|
{
|
|
try
|
|
{
|
|
TreeNode root = new TreeNode();
|
|
root.Text = "Vorlagen";
|
|
root.ImageIndex = 3;
|
|
root.SelectedImageIndex = 3;
|
|
treeView.Nodes.Add(root);
|
|
DirectoryInfo[] directories = directoryInfo.GetDirectories();
|
|
|
|
foreach (FileInfo file in directoryInfo.GetFiles())
|
|
{
|
|
if (file.Exists && file.Name!="klassifizierung.txt")
|
|
{
|
|
|
|
ext = System.IO.Path.GetExtension(file.Name);
|
|
TreeNode tnnew = new TreeNode();
|
|
tnnew.Text = file.Name;
|
|
tnnew.Tag = file.FullName;
|
|
tnnew.ImageIndex = 4;
|
|
|
|
if (ext.Length > 2)
|
|
{
|
|
ext = ext.Substring(0, 2).ToUpper();
|
|
tnnew.ImageIndex = 4;
|
|
tnnew.SelectedImageIndex = 4;
|
|
if (ext == ".D") { tnnew.ImageIndex = 0; tnnew.SelectedImageIndex = 0; };
|
|
if (ext == ".X") { tnnew.ImageIndex = 1; tnnew.SelectedImageIndex = 1; };
|
|
if (ext == ".P") { tnnew.ImageIndex = 2; tnnew.SelectedImageIndex = 2; };
|
|
}
|
|
else
|
|
{
|
|
tnnew.ImageIndex = 3; tnnew.SelectedImageIndex = 3;
|
|
|
|
}
|
|
TreeNode treeNode = treeView.Nodes[0];
|
|
treeNode.Nodes.Add(tnnew);
|
|
|
|
//TreeNode nodes = treeView.Nodes[0].Nodes.Add(file.Name);
|
|
|
|
}
|
|
}
|
|
|
|
|
|
if (directories.Length > 0)
|
|
{
|
|
foreach (DirectoryInfo directory in directories)
|
|
{
|
|
TreeNode node = treeView.Nodes[0].Nodes.Add(directory.Name);
|
|
node.ImageIndex = node.SelectedImageIndex = 3;
|
|
foreach (FileInfo file in directory.GetFiles())
|
|
{
|
|
if (file.Exists && file.Name!="klassifizierung.txt")
|
|
{
|
|
TreeNode tnnew = new TreeNode();
|
|
tnnew.Text = file.Name;
|
|
tnnew.Tag = file.FullName;
|
|
tnnew.ImageIndex = 4;
|
|
ext = System.IO.Path.GetExtension(tnnew.Text);
|
|
if (ext.Length > 2)
|
|
{
|
|
ext = ext.Substring(0, 2).ToUpper();
|
|
tnnew.ImageIndex = 4;
|
|
tnnew.SelectedImageIndex = 4;
|
|
|
|
if (ext == ".D") { tnnew.ImageIndex = 0; tnnew.SelectedImageIndex = 0; };
|
|
if (ext == ".X") { tnnew.ImageIndex = 1; tnnew.SelectedImageIndex = 1; };
|
|
if (ext == ".P") { tnnew.ImageIndex = 2; tnnew.SelectedImageIndex = 2; };
|
|
}
|
|
else
|
|
{
|
|
tnnew.ImageIndex = 3; tnnew.SelectedImageIndex = 3;
|
|
tnnew.Tag = "";
|
|
}
|
|
TreeNode tnnew2 = treeView.Nodes[0].Nodes[node.Index];
|
|
tnnew2.Nodes.Add(tnnew);
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
MessageBox.Show(ex.Message);
|
|
}
|
|
treeView.ExpandAll();
|
|
}
|
|
}
|
|
private static void ListDirectory(TreeViewAdv treeView, string path)
|
|
{
|
|
treeView.Nodes.Clear();
|
|
|
|
var stack = new Stack<TreeNodeAdv>();
|
|
var rootDirectory = new DirectoryInfo(path);
|
|
var node = new TreeNodeAdv(rootDirectory.Name) { Tag = rootDirectory };
|
|
string ext = System.IO.Path.GetExtension(node.Text);
|
|
{ node.RightImageIndices = new int[] { 3 }; }
|
|
stack.Push(node);
|
|
while (stack.Count > 0)
|
|
{
|
|
var currentNode = stack.Pop();
|
|
var directoryInfo = (DirectoryInfo)currentNode.Tag;
|
|
foreach (var directory in directoryInfo.GetDirectories())
|
|
{
|
|
var childDirectoryNode = new TreeNodeAdv(directory.Name) { Tag = directory };
|
|
currentNode.Nodes.Add(childDirectoryNode);
|
|
{ childDirectoryNode.RightImageIndices = new int[] { 3 }; }
|
|
stack.Push(childDirectoryNode);
|
|
|
|
foreach (var file in directoryInfo.GetFiles())
|
|
{
|
|
if (file.Name != "klassifizierung.txt")
|
|
{
|
|
TreeNodeAdv tnnew = new TreeNodeAdv(file.Name);
|
|
ext = System.IO.Path.GetExtension(tnnew.Text);
|
|
if (ext.Length > 2)
|
|
{
|
|
ext = ext.Substring(0, 2).ToUpper();
|
|
if (ext == ".D") { tnnew.LeftImageIndices = new int[] { 0 }; };
|
|
if (ext == ".X") { tnnew.LeftImageIndices = new int[] { 1 }; };
|
|
if (ext == ".P") { tnnew.LeftImageIndices = new int[] { 2 }; };
|
|
}
|
|
else
|
|
{ tnnew.RightImageIndices = new int[] { 3 }; }
|
|
|
|
|
|
currentNode.Nodes.Add(tnnew);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
treeView.Nodes.Add(node);
|
|
}
|
|
|
|
private void treeView_NodeMouseDoubleClick(object sender, TreeNodeMouseClickEventArgs e)
|
|
{
|
|
Execute(e.Node);
|
|
|
|
|
|
}
|
|
|
|
private void toolStripButton1_Click(object sender, EventArgs e)
|
|
{
|
|
this.Close();
|
|
}
|
|
|
|
private void toolStripButton2_Click(object sender, EventArgs e)
|
|
{
|
|
Execute(treeView.SelectedNode);
|
|
}
|
|
private void Execute(TreeNode treeNode)
|
|
{
|
|
string klassifizierung = "";
|
|
try
|
|
{
|
|
for (int i = 0; i < TotalKlassifizierung; i++)
|
|
{
|
|
RadioButton rb = this.Controls.Find("rb" + i.ToString(), true).FirstOrDefault() as RadioButton;
|
|
if (rb != null)
|
|
{
|
|
if (rb.Checked)
|
|
{
|
|
klassifizierung = rb.Text;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
catch { }
|
|
try
|
|
{
|
|
string tempfilename = treeNode.Tag.ToString();
|
|
if (tempfilename == "") { return; }
|
|
|
|
//string tempdir = AppParams.tempdir + "\nativdoks";
|
|
|
|
string ext = System.IO.Path.GetExtension(tempfilename);
|
|
if (ext.Length > 2)
|
|
{
|
|
ext = ext.Substring(0, 2).ToUpper();
|
|
string tempfilename1 = "";
|
|
switch (ext)
|
|
{
|
|
case ".D":
|
|
DOCGEN.Klassen.SynFWord sf = new DOCGEN.Klassen.SynFWord();
|
|
tempfilename1 = System.IO.Path.GetFileName(tempfilename);
|
|
tempfilename1 = AppParams.tempdir + "" + DateTime.Now.ToString("yyyyMMddhhmmss") + tempfilename1;
|
|
sf.create_nativ("Klassifikation", klassifizierung, "", tempfilename, tempfilename1);
|
|
System.Diagnostics.Process.Start("winword.exe", " /t" + tempfilename1);
|
|
|
|
//System.Diagnostics.Process.Start("winword.exe", " /t" + tempfilename);
|
|
break;
|
|
case ".X":
|
|
DOCGEN.Klassen.SynFExcel ef = new DOCGEN.Klassen.SynFExcel();
|
|
tempfilename1 = System.IO.Path.GetFileName(tempfilename);
|
|
tempfilename1 = AppParams.tempdir + "" + DateTime.Now.ToString("yyyyMMddhhmmss") + tempfilename1;
|
|
|
|
ef.create_nativ("Klassifikation", klassifizierung, "", tempfilename, tempfilename1);
|
|
|
|
System.Diagnostics.Process.Start("excel.exe", " /t " + tempfilename1);
|
|
break;
|
|
case ".P":
|
|
DOCGEN.Klassen.SyncFPowerPoint pf = new DOCGEN.Klassen.SyncFPowerPoint();
|
|
tempfilename1 = System.IO.Path.GetFileName(tempfilename);
|
|
tempfilename1 = AppParams.tempdir + "" + DateTime.Now.ToString("yyyyMMddhhmmss") + tempfilename1;
|
|
pf.create_nativ("Klassifikation",klassifizierung,"",tempfilename,tempfilename1);
|
|
System.Diagnostics.Process.Start("POWERPNT.EXE", " /N " + tempfilename1);
|
|
break;
|
|
default:
|
|
tempfilename1 = System.IO.Path.GetFileName(tempfilename);
|
|
tempfilename1 = AppParams.tempdir+ "" + DateTime.Now.ToString("yyyyMMddhhmmss") +tempfilename1;
|
|
System.IO.File.Copy(tempfilename,tempfilename1, true);
|
|
Process.Start(tempfilename1);
|
|
break;
|
|
}
|
|
|
|
}
|
|
}
|
|
catch { }
|
|
}
|
|
|
|
private void button1_Click(object sender, EventArgs e)
|
|
{
|
|
Execute(this.treeView.SelectedNode);
|
|
}
|
|
}
|
|
|
|
}
|