blob: c006849572b30cdf96d264ade1385675fe0b9ba4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
|
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
using System.Windows.Forms;
namespace gsview
{
public enum OutputIntent_t
{
GRAY,
RGB,
CMYK
}
/// <summary>
/// Interaction logic for OutputIntent.xaml
/// </summary>
public partial class OutputIntent : Window
{
public String gray_icc;
public String rgb_icc;
public String cmyk_icc;
public OutputIntent()
{
InitializeComponent();
this.Closing += new System.ComponentModel.CancelEventHandler(FakeWindowClosing);
gray_icc = null;
rgb_icc = null;
cmyk_icc = null;
}
void FakeWindowClosing(object sender, System.ComponentModel.CancelEventArgs e)
{
e.Cancel = true;
this.Hide();
}
public void RealWindowClosing()
{
this.Closing -= new System.ComponentModel.CancelEventHandler(FakeWindowClosing);
this.Close();
}
/* No error checking in here yet for making sure the profiles are of
* the right type and are valid */
private void SelectGray(object sender, RoutedEventArgs e)
{
SetIntent(OutputIntent_t.GRAY);
}
private void SelectRGB(object sender, RoutedEventArgs e)
{
SetIntent(OutputIntent_t.RGB);
}
private void SelectCMYK(object sender, RoutedEventArgs e)
{
SetIntent(OutputIntent_t.CMYK);
}
private void SetIntent(OutputIntent_t intent)
{
OpenFileDialog dlg = new OpenFileDialog();
dlg.Filter = "ICC Profile Files(*.icc;*.icm)|*.icc;*.icm";
dlg.FilterIndex = 1;
if (dlg.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
switch(intent)
{
case OutputIntent_t.GRAY:
gray_icc = dlg.FileName;
this.xaml_gray.Text = gray_icc;
this.xaml_gray.BorderBrush = new SolidColorBrush(Colors.Green);
break;
case OutputIntent_t.RGB:
rgb_icc = dlg.FileName;
this.xaml_rgb.Text = rgb_icc;
this.xaml_rgb.BorderBrush = new SolidColorBrush(Colors.Green);
break;
case OutputIntent_t.CMYK:
cmyk_icc = dlg.FileName;
this.xaml_cmyk.Text = cmyk_icc;
this.xaml_cmyk.BorderBrush = new SolidColorBrush(Colors.Green);
break;
}
}
}
private void ClickOK(object sender, RoutedEventArgs e)
{
this.Hide();
}
}
}
|