개정판 5b48dae7
issue #00000 stringToColorBrushConvert 추가
Change-Id: I8a6212b33194e6409ef223dbca64eeae80f949c2
INI/MARKUS_SNI.ini | ||
---|---|---|
1 |
[Internal] |
|
2 |
IP=http://markus.xicna.com:5977/API_V4 |
|
3 |
[External] |
|
4 |
IP=http://markus.xicna.com:5977/API_V4 |
|
5 |
[BaseClientAddress] |
|
6 |
URL=http://markus.xicna.com:5977/API_V4 |
|
7 |
[HubAddress] |
|
8 |
URL=http://192.168.0.67:5100/ |
|
9 |
[UpdateVer64] |
|
10 |
URL=http://localhost:8080/TileSource/Version/version_x64.xml |
|
11 |
[UpdateVer86] |
|
12 |
URL=http://localhost:8080/TileSource/Version/version_x86.xml |
|
13 |
[excelFilePath] |
|
14 |
URL=http://localhost:8080/TileSource/Check_Test/CheckList_T.xlsx |
|
15 |
[KCOM_Get_FinalImage_Get_PdfImage] |
|
16 |
URL=http://localhost:8080/Get_FInalImage/Get_PdfImage.asmx |
|
17 |
[KCOM_kr_co_devdoftech_cloud_FileUpload] |
|
18 |
URL=http://markus.xicna.com:5977/ImageUpload/FileUpload.asmx |
|
19 |
[mainServerImageWebPath] |
|
20 |
URL=http://markus.xicna.com:5977/TileSource/{0}_Tile/{1}/{2}/{3}.png |
|
21 |
[subServerImageWebPath] |
|
22 |
URL=http://markus.xicna.com:5977/TileSource/{0}_Tile/{1}/{2}/{3}.png |
|
23 |
[Debug_BaseClientAddress] |
|
24 |
URL=http://192.168.0.67:5979 |
|
25 |
[HOST_DOMAIN] |
|
26 |
DOMAIN= |
|
27 |
[GetConversionStateFailed] |
|
28 |
MSG=VG9vIE1hbnkgVi9QIEZpbGVzIGFyZSB1cGxvYWRpbmcgaW5zdGFudGFuZW91c2x5LCBUaGlzIFYvUCBmaWxlIGNhbiBub3QgYmUgb3BlbiBub3cuIFBsZWFzZSBmZWVsIGZyZWUgdG8gcmUtb3BlbiB3YWl0IGEgbW9tZW50IGFnYWluIVxuXG7tmITsnqwg7J287Iuc7KCB7Jy866GcIOunjuydgCDslpHsnZggVi9Q6rCAIOuTseuhneuQmOqzoCDsnojslrQg7J20IOusuOyEnOulvCDsl7TrnoztlaAg7IiYIOyXhuyKteuLiOuLpC5cbuyeoOyLnOunjCDquLDri6TroKQg7KO87IugIO2bhCDri6Tsi5wg7Je0656M7ZWY7JesIOyjvOyLnOq4sCDrsJTrno3ri4jri6Q= |
|
29 |
[SetFinalPDFError] |
|
30 |
MSG=7LWc7KKFIO2MjOydvOydhCDrp4zrk5zripTrjbAg66y47KCc6rCAIOuwnOyDne2VmOyYgOyKteuLiOuLpA== |
|
31 |
[SetFinalPDFSuccess] |
|
32 |
MSG=7LWc7KKFIO2MjOydvCDsg53shLEg7KSR7J6F64uI64ukLiDrrLjshJzqtIDrpqzsi5zsiqTthZzsnYQg7ZmV7J247ZW07KO87IS47JqU |
|
33 |
[SetThumbnail] |
|
34 |
WIDTH=265 |
|
35 |
[Site] |
|
36 |
NAME=sdms |
|
37 |
[PortForwarding] |
|
38 |
HUB=5100:5100 |
|
39 |
RESOURCE=5977:5977 |
|
40 |
BASE=8080:8080 |
|
41 |
[GetImageResourceFailed] |
|
42 |
MSG=7ZW064u5IOusuOyEnOydmCB7MH0gUGFnZSBDb252ZXJ06rCAIOygleyDgeyggeydtOyngCDslYrsirXri4jri6QuIOq0gOumrOyekOyXkOqyjCDrrLjsnZjtlbQg7KO87IS47JqULg== |
|
43 |
|
|
44 |
[COMMON] |
|
45 |
IsDocumentHistory = false |
KCOM.sln | ||
---|---|---|
45 | 45 |
INI\MARKUS_HyoSung.ini = INI\MARKUS_HyoSung.ini |
46 | 46 |
INI\MARKUS_HyoSung_Debug.ini = INI\MARKUS_HyoSung_Debug.ini |
47 | 47 |
INI\MARKUS_LOCAL.ini = INI\MARKUS_LOCAL.ini |
48 |
INI\MARKUS_SNI.ini = INI\MARKUS_SNI.ini |
|
49 | 48 |
INI\MARKUS_SNI_142서버.ini = INI\MARKUS_SNI_142서버.ini |
49 |
INI\MARKUS_SNI_SDMS.ini = INI\MARKUS_SNI_SDMS.ini |
|
50 |
INI\MARKUS_SNI_XICNA.ini = INI\MARKUS_SNI_XICNA.ini |
|
50 | 51 |
EndProjectSection |
51 | 52 |
EndProject |
52 | 53 |
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DnsCheckTest", "DnsCheckTest\DnsCheckTest.csproj", "{2B00FB44-7C2F-4E57-9F9A-7CF2462172EA}" |
KCOM/Common/Converter/StringToColorBrushConverter.cs | ||
---|---|---|
1 |
using System; |
|
2 |
using System.Collections.Generic; |
|
3 |
using System.Linq; |
|
4 |
using System.Text; |
|
5 |
|
|
6 |
namespace KCOM.Common.Converter |
|
7 |
{ |
|
8 |
using System; |
|
9 |
using System.Windows.Data; |
|
10 |
using System.Windows.Media; |
|
11 |
using System.Globalization; |
|
12 |
/// <summary> |
|
13 |
/// A Value converter |
|
14 |
/// </summary> |
|
15 |
public class StringToColorBrushConverter : IValueConverter |
|
16 |
{ |
|
17 |
public object Convert(object value, Type targetType, object parameter, CultureInfo culture) |
|
18 |
{ |
|
19 |
if (value == null) |
|
20 |
return new SolidColorBrush(Color.FromArgb(0, 0, 0, 0)); |
|
21 |
|
|
22 |
if (value is Color) |
|
23 |
return new SolidColorBrush((Color)value); |
|
24 |
|
|
25 |
|
|
26 |
|
|
27 |
if (value is string) |
|
28 |
return new SolidColorBrush(Parse((string)value)); |
|
29 |
|
|
30 |
throw new NotSupportedException("ColorToBurshConverter only supports converting from Color and String"); |
|
31 |
} |
|
32 |
|
|
33 |
|
|
34 |
|
|
35 |
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) |
|
36 |
{ |
|
37 |
throw new NotSupportedException(); |
|
38 |
} |
|
39 |
|
|
40 |
|
|
41 |
|
|
42 |
public static Color Parse(string color) |
|
43 |
{ |
|
44 |
if (color == null) |
|
45 |
{ |
|
46 |
color = "#FFFFCD28"; |
|
47 |
} |
|
48 |
|
|
49 |
var offset = color.StartsWith("#") ? 1 : 0; |
|
50 |
|
|
51 |
var a = Byte.Parse(color.Substring(0 + offset, 2), NumberStyles.HexNumber); |
|
52 |
var r = Byte.Parse(color.Substring(2 + offset, 2), NumberStyles.HexNumber); |
|
53 |
var g = Byte.Parse(color.Substring(4 + offset, 2), NumberStyles.HexNumber); |
|
54 |
var b = Byte.Parse(color.Substring(6 + offset, 2), NumberStyles.HexNumber); |
|
55 |
|
|
56 |
return Color.FromArgb(a, r, g, b); |
|
57 |
} |
|
58 |
|
|
59 |
} |
|
60 |
} |
KCOM/Events/CopyCommand.cs | ||
---|---|---|
21 | 21 |
using System.Text; |
22 | 22 |
using System.Windows; |
23 | 23 |
using System.Windows.Media; |
24 |
using System.Windows.Threading; |
|
24 | 25 |
using System.Xml; |
25 | 26 |
using System.Xml.Serialization; |
26 | 27 |
|
... | ... | |
71 | 72 |
id = (InnerItem.Symbol_ID != null) ? "|SymbolID|" + InnerItem.Symbol_ID : ""; |
72 | 73 |
MarkupData += "|OR|" + data.ConvertData + id; |
73 | 74 |
} |
74 |
|
|
75 |
Clipboard.SetText(MarkupData,TextDataFormat.Text); |
|
76 |
} |
|
75 |
|
|
76 |
Dispatcher.CurrentDispatcher.Invoke(() => |
|
77 |
{ |
|
78 |
Clipboard.SetData(DataFormats.StringFormat,MarkupData); |
|
79 |
}, DispatcherPriority.Background); |
|
80 |
} |
|
77 | 81 |
} |
78 | 82 |
} |
79 | 83 |
} |
KCOM/Events/Implementation/TopMenuEvent.cs | ||
---|---|---|
25 | 25 |
using System.Web; |
26 | 26 |
using Markus.Fonts; |
27 | 27 |
using System.Threading.Tasks; |
28 |
using System.Windows.Threading; |
|
28 | 29 |
|
29 | 30 |
namespace KCOM.Views |
30 | 31 |
{ |
... | ... | |
2423 | 2424 |
|
2424 | 2425 |
#region Copy |
2425 | 2426 |
case "Copy": |
2426 |
Copy_Start(); |
|
2427 |
CopyCommand.Instance.Execute(); |
|
2428 |
//Copy_Start(); |
|
2427 | 2429 |
instanceToggle.IsChecked = false; |
2428 | 2430 |
ViewerDataModel.Instance.SelectedControl = ""; |
2429 | 2431 |
ViewerDataModel.Instance.ControlTag = null; |
... | ... | |
2444 | 2446 |
#endregion |
2445 | 2447 |
#region Paste |
2446 | 2448 |
case "Paste": |
2447 |
Paste_Start(); |
|
2449 |
PasteCommand.Instance.Execute(); |
|
2450 |
//Paste_Start(); |
|
2448 | 2451 |
instanceToggle.IsChecked = false; |
2449 | 2452 |
ViewerDataModel.Instance.SelectedControl = ""; |
2450 | 2453 |
ViewerDataModel.Instance.ControlTag = null; |
... | ... | |
3008 | 3011 |
|
3009 | 3012 |
foreach (var item in this.ParentOfType<MainWindow>().dzMainMenu.SelectLayer.Children) |
3010 | 3013 |
{ |
3014 |
string id = string.Empty; |
|
3011 | 3015 |
if (item.GetType().Name == "AdornerFinal") |
3012 | 3016 |
{ |
3013 | 3017 |
foreach (var InnerItem in (item as Controls.AdornerFinal).Members.Cast<Controls.AdornerMember>()) |
... | ... | |
3016 | 3020 |
if (!ViewerDataModel.Instance.MarkupControls.Contains(InnerItem.DrawingData)) |
3017 | 3021 |
{ |
3018 | 3022 |
MarkupToPDF.Controls.Parsing.MarkupParser.MarkupReturn res = MarkupParser.MarkupToString(InnerItem.DrawingData as MarkupToPDF.Common.CommentUserInfo, App.ViewInfo.UserID); |
3019 |
MarkupData += "|OR|" + res.ConvertData; |
|
3023 |
id = (InnerItem.Symbol_ID != null) ? "|SymbolID|" + InnerItem.Symbol_ID : ""; |
|
3024 |
MarkupData += "|OR|" + res.ConvertData + id; |
|
3020 | 3025 |
} |
3021 | 3026 |
} |
3022 |
Clipboard.SetDataObject(MarkupData); |
|
3027 |
|
|
3028 |
this.Dispatcher.Invoke(() => |
|
3029 |
{ |
|
3030 |
Clipboard.SetData(DataFormats.StringFormat, MarkupData); |
|
3031 |
}, DispatcherPriority.Background); |
|
3023 | 3032 |
} |
3024 | 3033 |
} |
3025 | 3034 |
} |
... | ... | |
3054 | 3063 |
public async void Paste_Start() |
3055 | 3064 |
{ |
3056 | 3065 |
//마크업 붙여넣기 |
3057 |
if (Clipboard.GetText().Contains("|OR||DZ|")) |
|
3066 |
|
|
3067 |
var markupData = Clipboard.GetData(DataFormats.StringFormat); |
|
3068 |
|
|
3069 |
if (markupData.GetType() == typeof(string) && markupData.ToString().Contains("|OR||DZ|")) |
|
3058 | 3070 |
{ |
3059 | 3071 |
List<MarkupToPDF.Common.CommentUserInfo> adornerSet = new List<MarkupToPDF.Common.CommentUserInfo>(); |
3060 | 3072 |
|
3061 | 3073 |
string[] delimiterChars = { "|OR|" }; |
3062 |
string[] data = Clipboard.GetText().Split(delimiterChars, StringSplitOptions.RemoveEmptyEntries);
|
|
3074 |
string[] data = markupData.ToString().Split(delimiterChars, StringSplitOptions.RemoveEmptyEntries);
|
|
3063 | 3075 |
|
3064 | 3076 |
SelectionSet.Instance.UnSelect(this.ParentOfType<MainWindow>().dzMainMenu); |
3065 | 3077 |
|
KCOM/Events/PasteCommand.cs | ||
---|---|---|
56 | 56 |
/// <param name="comments"></param> |
57 | 57 |
public async void Execute() |
58 | 58 |
{ |
59 |
if (Clipboard.GetText().Contains("|OR||DZ|")) |
|
59 |
var markupData = Clipboard.GetData(DataFormats.StringFormat); |
|
60 |
|
|
61 |
if (markupData?.ToString().Contains("|OR||DZ|") == true) |
|
60 | 62 |
{ |
61 | 63 |
string[] delimiterChars = { "|OR|" }; |
62 | 64 |
string[] delimiterChars2 = { "|OR|", "|SymbolID|" }; |
63 |
string[] data = Clipboard.GetText().Split(delimiterChars, StringSplitOptions.RemoveEmptyEntries);
|
|
65 |
string[] data = markupData.ToString().Split(delimiterChars, StringSplitOptions.RemoveEmptyEntries);
|
|
64 | 66 |
|
65 | 67 |
if (data.Count() > 0) |
66 | 68 |
{ |
KCOM/KCOM.csproj | ||
---|---|---|
1504 | 1504 |
call "PublishSign.bat" |
1505 | 1505 |
|
1506 | 1506 |
rem call "appCast_Daelim.bat" "@(VersionNumber)" |
1507 |
call "appCast_SNI.bat" "@(VersionNumber)" |
|
1507 |
call "appCast_SNI_SDMS.bat" "@(VersionNumber)" |
|
1508 |
call "appCast_SNI_XICNA.bat" "@(VersionNumber)" |
|
1508 | 1509 |
rem call "appCast_doftech.bat" "@(VersionNumber)" |
1509 | 1510 |
rem call "appCast_HS.bat" "@(VersionNumber)" |
1510 | 1511 |
rem "appCast_bseng.bat" "@(VersionNumber)" |
appCast_SNI.bat | ||
---|---|---|
1 |
@echo off |
|
2 |
rem datetime stamp file name |
|
3 |
|
|
4 |
@REM use FOR /F to 'break out' the components of %DATE% and %TIME%, assuming 'yyyy/mm/dd' format date i.e. |
|
5 |
|
|
6 |
for /F "tokens=1-6* delims=.:-/ " %%i IN ("%DATE% %TIME%") DO Set "YYYY=%%i"& Set "MM=%%j"& Set "DD=%%k"& Set "HH=%%l"& Set "MI=%%m"& Set "SS=%%n" |
|
7 |
|
|
8 |
@REM Switch the year and day if appropriate |
|
9 |
|
|
10 |
IF NOT "X%DD:~2%" == "X" Set "YYYY=%DD%"& Set "DD=%YYYY%" |
|
11 |
|
|
12 |
Set "TimeStamp=%YYYY%%MM%%DD%%HH%%MI%%SS%" |
|
13 |
|
|
14 |
rem datetime stamp file name |
|
15 |
|
|
16 |
rem version |
|
17 |
|
|
18 |
set hostbaseUrl=http://markus.xicna.com:5977/MarkusUpdate_V4/ |
|
19 |
set updateVersion=%1 |
|
20 |
|
|
21 |
IF [%hostbaseUrl%]==[] goto :ERROR |
|
22 |
if [%updateVersion%]==[] goto :ERROR |
|
23 |
|
|
24 |
echo "Update Version %updateVersion%" |
|
25 |
|
|
26 |
rem set APPCAST_PUBLISH_PATH=%cd%\publish\AppCast\%TimeStamp% |
|
27 |
set APPCAST_PUBLISH_PATH=%cd%\publish\AppCast_SNI\ |
|
28 |
SET MARKUS_PUBLISH_PATH=%cd%\Setup\Release_Default |
|
29 |
|
|
30 |
echo "current : %current_dir%" |
|
31 |
echo "APPCAST PUBLISH PATH : %APPCAST_PUBLISH_PATH%" |
|
32 |
|
|
33 |
IF NOT EXIST %APPCAST_PUBLISH_PATH%\. MKDIR %APPCAST_PUBLISH_PATH% |
|
34 |
|
|
35 |
IF "%2"=="" GOTO Continue |
|
36 |
|
|
37 |
IF NOT EXIST %LocalAppData%\netsparkle\NetSparkle_Ed25519.pub ( |
|
38 |
echo "generate-keys pass" |
|
39 |
del %LocalAppData%\netsparkle\*.* /q |
|
40 |
rem .\AppCast\generate_appcast.exe --key-path %APPCAST_PUBLISH_PATH%Keys |
|
41 |
.\AppCast\generate_appcast.exe --generate-keys |
|
42 |
) |
|
43 |
|
|
44 |
SET SIGNTOOLPATH="C:\Program Files (x86)\Windows Kits\10\bin\10.0.17763.0\x64\signtool.exe" |
|
45 |
set SolutionPath=%cd% |
|
46 |
SET SIGNPATH=%SolutionPath%\Sign\www.doftech.co.kr.pfx |
|
47 |
|
|
48 |
%SIGNTOOLPATH% sign /v /f %SIGNPATH% /p Doftech1073# /tr http://timestamp.digicert.com /td sha256 /fd sha256 %MARKUS_PUBLISH_PATH%\*.exe |
|
49 |
%SIGNTOOLPATH% sign /v /f %SIGNPATH% /p Doftech1073# /tr http://timestamp.digicert.com /td sha256 /fd sha256 %MARKUS_PUBLISH_PATH%\Plugin\*.exe |
|
50 |
|
|
51 |
start %APPCAST_PUBLISH_PATH% |
|
52 |
|
|
53 |
:Continue |
|
54 |
|
|
55 |
xcopy /s %cd%\INI\MARKUS_SNI.ini %MARKUS_PUBLISH_PATH%\MARKUS.* /Y /F |
|
56 |
|
|
57 |
Xcopy %cd%\Accessories\* %APPCAST_PUBLISH_PATH% /I /E /S /Y /F |
|
58 |
|
|
59 |
.\AppCast\generate_appcast.exe -u %hostbaseUrl% -p %cd%\ChangeLog -a %APPCAST_PUBLISH_PATH% -e * -b %MARKUS_PUBLISH_PATH% -o windows -n Markus -x -v %updateVersion% |
|
60 |
|
|
61 |
:ERROR |
|
62 |
echo arg1 exits |
|
63 |
echo ex : appCast.bat http://hostname:port x.x.x |
내보내기 Unified diff