개정판 43d2041c
Sync 회전 추가
Change-Id: Ibdbcadc7c19c3d4f62acbd4dd45b548096391ba0
KCOM/App.xaml | ||
---|---|---|
56 | 56 |
<Style TargetType="telerik:RadTabControl" BasedOn="{StaticResource RadTabControlStyle}"> |
57 | 57 |
<Setter Property="telerik:TabNavigationExtensions.IsTabStop" Value="False"/> |
58 | 58 |
</Style> |
59 |
<Style x:Key="PathButtonStyle" TargetType="{x:Type Path}"> |
|
60 |
<Setter Property="Width" Value="12"/> |
|
61 |
<Setter Property="Height" Value="12"/> |
|
62 |
<Setter Property="Fill" Value="White" /> |
|
63 |
<Setter Property="Stretch" Value="Fill" /> |
|
64 |
<Setter Property="HorizontalAlignment" Value="Right"/> |
|
65 |
<Setter Property="VerticalAlignment" Value="Center" /> |
|
66 |
</Style> |
|
67 |
<Style x:Key="PathButtonCenterStyle" TargetType="{x:Type Path}"> |
|
68 |
<Setter Property="Width" Value="12"/> |
|
69 |
<Setter Property="Height" Value="12"/> |
|
70 |
<Setter Property="Margin" Value="0"/> |
|
71 |
<Setter Property="Fill" Value="#FF686868" /> |
|
72 |
<Setter Property="Stretch" Value="Fill" /> |
|
73 |
<Setter Property="HorizontalAlignment" Value="Center"/> |
|
74 |
<Setter Property="VerticalAlignment" Value="Center" /> |
|
75 |
</Style> |
|
76 |
<Style x:Key="IconPathButton" TargetType="{x:Type telerik:RadPathButton}"> |
|
77 |
<Setter Property="Padding" Value="0"/> |
|
78 |
<Setter Property="PathStyle" Value="{StaticResource PathButtonCenterStyle}"/> |
|
79 |
</Style> |
|
59 | 80 |
</ResourceDictionary> |
60 | 81 |
|
61 | 82 |
</Application.Resources> |
KCOM/Controls/Sample.xaml | ||
---|---|---|
9 | 9 |
d:DesignHeight="600" d:DesignWidth="200" AllowDrop="False"> |
10 | 10 |
<UserControl.Resources> |
11 | 11 |
<converter:ColorListToBrushConverter x:Key="ColorListToBrushConverter"/> |
12 |
<Style x:Key="PathButtonStyle" TargetType="{x:Type Path}"> |
|
13 |
<Setter Property="Width" Value="12"/> |
|
14 |
<Setter Property="Height" Value="12"/> |
|
15 |
<Setter Property="Fill" Value="White" /> |
|
16 |
<Setter Property="Stretch" Value="Fill" /> |
|
17 |
<Setter Property="HorizontalAlignment" Value="Right"/> |
|
18 |
<Setter Property="VerticalAlignment" Value="Center" /> |
|
19 |
</Style> |
|
20 | 12 |
<converter:CommentTypeImgConverter x:Key="converterTypeImageConverter"/> |
21 | 13 |
<converter:MarkupDataToConverter x:Key="markupDataConverter"/> |
22 | 14 |
<converter:MarginCorrectionConverter x:Key="marginConverter"/> |
KCOM/Services/BaseServices.cs | ||
---|---|---|
130 | 130 |
{ |
131 | 131 |
e.Result.ForEach(d => |
132 | 132 |
{ |
133 |
d.Width = d.Width * 3;
|
|
134 |
d.Height = d.Height * 3;
|
|
133 |
d.Width = d.Width; |
|
134 |
d.Height = d.Height; |
|
135 | 135 |
var point = MarkupToPDF.Controls.Common.MathSet.getRectMiddlePoint(d); |
136 | 136 |
System.Windows.Shapes.Rectangle myEllipse = new System.Windows.Shapes.Rectangle(); |
137 | 137 |
myEllipse.Fill = new System.Windows.Media.SolidColorBrush(System.Windows.Media.Color.FromArgb(100,255,8,0)); |
... | ... | |
143 | 143 |
myEllipse.RenderTransformOrigin = point; |
144 | 144 |
canvas_compareBorder.Children.Add(myEllipse); |
145 | 145 |
}); |
146 |
|
|
146 |
canvas_compareBorder.Visibility = Visibility.Visible; |
|
147 | 147 |
da.From = 0.8; |
148 | 148 |
da.To = 0.1; |
149 | 149 |
da.Duration = new Duration(TimeSpan.FromSeconds(1)); |
KCOM/Views/MainMenu.xaml | ||
---|---|---|
253 | 253 |
</Grid> |
254 | 254 |
</telerik:RadDocumentPane> |
255 | 255 |
</telerik:RadPaneGroup> |
256 |
<telerik:RadPaneGroup Style="{DynamicResource Style_RadPanelGroup}" >
|
|
256 |
<telerik:RadPaneGroup Style="{DynamicResource Style_RadPanelGroup}"> |
|
257 | 257 |
<telerik:RadPane CanFloat="False" CanUserClose="False" Title="Document 1" PaneHeaderVisibility="Collapsed" x:Name="testPanel2" IsHidden="True" Margin="0,-20,0,0" > |
258 | 258 |
<Grid Background="{DynamicResource KCOMColor_DocumnetBackgroundBrush}"> |
259 | 259 |
<ZoomAndPan:ZoomAndPanControl x:Name="zoomAndPanControl2" AllowDrop="True" |
... | ... | |
268 | 268 |
ConstrainedContentViewportWidth="{Binding ContentViewportWidth, Mode=TwoWay, Source={x:Static common:ViewerDataModel.Instance}}" |
269 | 269 |
ConstrainedContentViewportHeight="{Binding ContentViewportHeight, Mode=TwoWay, Source={x:Static common:ViewerDataModel.Instance}}" |
270 | 270 |
Background="LightGray"> |
271 |
<Canvas x:Name="zoomAndPanCanvas2" Opacity="1" Background="White">
|
|
271 |
<Canvas x:Name="zoomAndPanCanvas2" Opacity="1" Background="Transparent">
|
|
272 | 272 |
<Canvas x:Name="drawingRotateCanvas2" |
273 | 273 |
Panel.ZIndex="1" |
274 | 274 |
Background="{Binding BackgroundImage, Mode=OneWay, Source={x:Static common:ViewerDataModel.Instance}}"> |
... | ... | |
293 | 293 |
Width="{Binding ImageViewWidth_C, Source={x:Static common:ViewerDataModel.Instance}}" |
294 | 294 |
Height="{Binding ImageViewHeight_C, Source={x:Static common:ViewerDataModel.Instance}}" > |
295 | 295 |
</Image> |
296 |
<Canvas x:Name="canvas_compareBorder" IsHitTestVisible="False" Width="{Binding ActualWidth, ElementName=zoomAndPanCanvas2}" Height="{Binding ActualHeight, ElementName=zoomAndPanCanvas2}" Panel.ZIndex="1"> |
|
296 |
<Canvas x:Name="canvas_compareBorder" IsHitTestVisible="False" |
|
297 |
Width="{Binding ActualWidth, ElementName=zoomAndPanCanvas2}" |
|
298 |
Height="{Binding ActualHeight, ElementName=zoomAndPanCanvas2}" Panel.ZIndex="1"> |
|
299 |
<!--RenderTransform="{Binding RenderTransform, ElementName=zoomAndPanControl2}"--> |
|
300 |
<Canvas.RenderTransform> |
|
301 |
<TransformGroup> |
|
302 |
<RotateTransform x:Name="rotate2CompareBorder" Angle="0"/> |
|
303 |
<TranslateTransform x:Name="translate2CompareBorder" X="0" Y="0"/> |
|
304 |
</TransformGroup> |
|
305 |
</Canvas.RenderTransform> |
|
297 | 306 |
<!--<Canvas.RenderTransform> |
298 |
--> |
|
299 |
<!--<RotateTransform Angle="{Binding Angle, Source={x:Static common:ViewerDataModel.Instance}}"/>--> |
|
300 |
<!-- |
|
301 |
<RotateTransform Angle="{Binding Angle, ElementName=zoomAndPanCanvas2}"/> |
|
307 |
<RotateTransform Angle="{Binding RenderTransform, ElementName=zoomAndPanControl2}"/> |
|
302 | 308 |
</Canvas.RenderTransform>--> |
303 | 309 |
</Canvas> |
304 | 310 |
<!--강인구 추가--> |
... | ... | |
358 | 364 |
|
359 | 365 |
<!--<telerik:RadRibbonToggleButton x:Name="MArkupMode" Content="Markup Mode" Foreground="White" Margin="5" Click="SyncChange_Click" BorderThickness="0" telerik:StyleManager.Theme="Office2013"/>--> |
360 | 366 |
<!--<telerik:RadRibbonToggleButton x:Name="BalanceMode" Content="Balance Mode" Foreground="White" Margin="5" Click="SyncPageBalance_Click" BorderThickness="0" telerik:StyleManager.Theme="Office2013"/>--> |
361 |
<telerik:RadRibbonButton Margin="5" Click="SyncPageChange_Click" Tag="-1" telerik:StyleManager.Theme="Office2013" VerticalAlignment="Center">
|
|
362 |
<Image Height="20" |
|
367 |
<telerik:RadPathButton Margin="5" Height="10" Width="20" Style="{StaticResource IconPathButton}" Click="SyncPageChange_Click" PathGeometry="{telerik:RadGlyph Glyph={StaticResource GlyphArrowChevronUp}}" Tag="-1" telerik:StyleManager.Theme="Office2013" VerticalAlignment="Center">
|
|
368 |
<!--<Image Height="20"
|
|
363 | 369 |
Source="/KCOM;component/Resources/Images/MenuImage_New/up-arrow.png" |
364 |
Stretch="Uniform" /> |
|
365 |
</telerik:RadRibbonButton>
|
|
366 |
<telerik:RadRibbonButton Margin="5" Click="SyncPageChange_Click" Tag="1" telerik:StyleManager.Theme="Office2013" VerticalAlignment="Center">
|
|
367 |
<Image Height="20" |
|
370 |
Stretch="Uniform" />-->
|
|
371 |
</telerik:RadPathButton>
|
|
372 |
<telerik:RadPathButton Margin="5" Height="10" Width="20" Style="{StaticResource IconPathButton}" Click="SyncPageChange_Click" PathGeometry="{telerik:RadGlyph Glyph={StaticResource GlyphArrowChevronDown}}" Tag="1" telerik:StyleManager.Theme="Office2013" VerticalAlignment="Center">
|
|
373 |
<!--<Image Height="20"
|
|
368 | 374 |
Source="/KCOM;component/Resources/Images/MenuImage_New/up-arrow.png" RenderTransformOrigin="0.5 0.5" |
369 | 375 |
Stretch="Uniform"> |
370 | 376 |
<Image.RenderTransform> |
371 | 377 |
<RotateTransform Angle="180"/> |
372 | 378 |
</Image.RenderTransform> |
373 |
</Image> |
|
374 |
</telerik:RadRibbonButton> |
|
375 |
<telerik:RadRibbonButton Margin="5" Click="SyncExit_Click" telerik:StyleManager.Theme="Office2013" VerticalAlignment="Center"> |
|
376 |
<Image Height="20" |
|
379 |
</Image>--> |
|
380 |
</telerik:RadPathButton> |
|
381 |
<telerik:RadPathButton Margin="5" Height="10" Width="20" Style="{StaticResource IconPathButton}" Click="SyncRotation_Click" PathGeometry="{telerik:RadGlyph Glyph={StaticResource GlyphReloadSmall}}" Tag="1" telerik:StyleManager.Theme="Office2013" VerticalAlignment="Center"/> |
|
382 |
<telerik:RadPathButton Margin="5" Height="10" Width="20" Style="{StaticResource IconPathButton}" Click="SyncRotation_Click" PathGeometry="{telerik:RadGlyph Glyph={StaticResource GlyphResetSmall}}" Tag="-1" telerik:StyleManager.Theme="Office2013" VerticalAlignment="Center"/> |
|
383 |
<telerik:RadPathButton Margin="5" Height="10" Width="20" Style="{StaticResource IconPathButton}" Click="SyncExit_Click" PathGeometry="{telerik:RadGlyph Glyph={StaticResource GlyphClose}}" telerik:StyleManager.Theme="Office2013" VerticalAlignment="Center"> |
|
384 |
<!--<Image Height="20" |
|
377 | 385 |
Source="/KCOM;component/Resources/Images/MenuImage_New/cancel.png" |
378 |
Stretch="Uniform" /> |
|
379 |
</telerik:RadRibbonButton>
|
|
386 |
Stretch="Uniform" />-->
|
|
387 |
</telerik:RadPathButton>
|
|
380 | 388 |
</StackPanel> |
381 | 389 |
<telerik:RadGridView telerik:StyleManager.Theme="Office2013" ShowGroupPanel="False" ShowGroupFooters="False" AutoExpandGroups="False" x:Name="gridViewRevMarkup" |
382 | 390 |
AutoGenerateColumns="False" HorizontalContentAlignment="Center" SelectionChanged="gridViewRevMarkup_SelectionChanged" SelectionMode="Multiple" BorderThickness="0" |
KCOM/Views/MainMenu.xaml.cs | ||
---|---|---|
4858 | 4858 |
} |
4859 | 4859 |
} |
4860 | 4860 |
|
4861 |
private void SyncRotation_Click(object sender,RoutedEventArgs e) |
|
4862 |
{ |
|
4863 |
var direction = int.Parse((sender as Telerik.Windows.Controls.RadPathButton).Tag.ToString()); |
|
4864 |
|
|
4865 |
double translateX = 0; |
|
4866 |
double translateY = 0; |
|
4867 |
double angle = rotate2.Angle; |
|
4868 |
|
|
4869 |
if (direction == 1) |
|
4870 |
{ |
|
4871 |
if (angle < 270) |
|
4872 |
{ |
|
4873 |
angle += 90; |
|
4874 |
} |
|
4875 |
else |
|
4876 |
{ |
|
4877 |
angle = 0; |
|
4878 |
} |
|
4879 |
} |
|
4880 |
else |
|
4881 |
{ |
|
4882 |
if (angle > 0) |
|
4883 |
{ |
|
4884 |
angle -= 90; |
|
4885 |
} |
|
4886 |
else |
|
4887 |
{ |
|
4888 |
angle = 270; |
|
4889 |
} |
|
4890 |
} |
|
4891 |
zoomAndPanControl2.RotationAngle = angle; |
|
4892 |
zoomAndPanControl2.ScaleToFit(); |
|
4893 |
|
|
4894 |
//if (angle == 90 || angle == 270) |
|
4895 |
//{ |
|
4896 |
double emptySize = zoomAndPanCanvas2.Width; |
|
4897 |
zoomAndPanCanvas2.Width = zoomAndPanCanvas2.Height; |
|
4898 |
zoomAndPanCanvas2.Height = emptySize; |
|
4899 |
//} |
|
4900 |
|
|
4901 |
if (angle == 90) |
|
4902 |
{ |
|
4903 |
translateX = zoomAndPanCanvas2.Width; |
|
4904 |
translateY = 0; |
|
4905 |
} |
|
4906 |
else if (angle == 180) |
|
4907 |
{ |
|
4908 |
translateX = zoomAndPanCanvas2.Width; |
|
4909 |
translateY = zoomAndPanCanvas2.Height; |
|
4910 |
} |
|
4911 |
else if (angle == 270) |
|
4912 |
{ |
|
4913 |
translateX = 0; |
|
4914 |
translateY = zoomAndPanCanvas2.Height; |
|
4915 |
} |
|
4916 |
zoomAndPanControl2.ContentViewportWidth = zoomAndPanCanvas2.Width; |
|
4917 |
zoomAndPanControl2.ContentViewportHeight = zoomAndPanCanvas2.Height; |
|
4918 |
translate2.X = translateX; |
|
4919 |
translate2.Y = translateY; |
|
4920 |
rotate2.Angle = angle; |
|
4921 |
//translate2CompareBorder.X = translateX; |
|
4922 |
//translate2CompareBorder.Y = translateY; |
|
4923 |
//rotate2CompareBorder.Angle = angle; |
|
4924 |
|
|
4925 |
} |
|
4926 |
|
|
4861 | 4927 |
private void SyncChange_Click(object sender, RoutedEventArgs e) |
4862 | 4928 |
{ |
4863 | 4929 |
if (MarkupMode.IsChecked) |
... | ... | |
4941 | 5007 |
/// </summary> |
4942 | 5008 |
private void SetCompareRect() |
4943 | 5009 |
{ |
5010 |
canvas_compareBorder.Children.Clear(); |
|
5011 |
|
|
4944 | 5012 |
if (CompareMode.IsChecked) |
4945 | 5013 |
{ |
4946 | 5014 |
if (ViewerDataModel.Instance.PageBalanceMode && ViewerDataModel.Instance.PageBalanceNumber == 0) |
... | ... | |
4955 | 5023 |
//Logger.sendReqLog("GetCompareRectAsync", _ViewInfo.ProjectNO + "," + _ViewInfo.DocumentItemID + "," + CurrentRev.DOCUMENT_ID +"," + pageNavigator.CurrentPage.PageNumber.ToString() + "," + ViewerDataModel.Instance.PageNumber.ToString() + "," + userData.COMPANY != "EXT" ? "true" : "false", 1); |
4956 | 5024 |
|
4957 | 5025 |
/// 비교대상원본, 비교할 대상 |
4958 |
BaseClient.GetCompareRectAsync(_ViewInfo.ProjectNO, CurrentRev.DOCUMENT_ID, _ViewInfo.DocumentItemID, pageNavigator.CurrentPage.PageNumber.ToString(), ViewerDataModel.Instance.PageNumber.ToString(), userData.COMPANY != "EXT" ? "true" : "false");
|
|
5026 |
BaseClient.GetCompareRectAsync(_ViewInfo.ProjectNO, CurrentRev.DOCUMENT_ID, _ViewInfo.DocumentItemID, ViewerDataModel.Instance.PageNumber.ToString(), pageNavigator.CurrentPage.PageNumber.ToString(), userData.COMPANY != "EXT" ? "true" : "false");
|
|
4959 | 5027 |
} |
4960 | 5028 |
else |
4961 | 5029 |
{ |
5030 |
canvas_compareBorder.Visibility = Visibility.Hidden; |
|
4962 | 5031 |
ClearCompareRect(); |
4963 | 5032 |
} |
4964 | 5033 |
} |
... | ... | |
5008 | 5077 |
|
5009 | 5078 |
zoomAndPanControl2.ApplyTemplate(); |
5010 | 5079 |
zoomAndPanControl2.UpdateLayout(); |
5080 |
|
|
5011 | 5081 |
if (Sync_Offset_Point != new Point(zoomAndPanControl.ContentOffsetX, zoomAndPanControl.ContentOffsetY)) |
5012 | 5082 |
{ |
5013 | 5083 |
zoomAndPanControl.ContentOffsetX = Sync_Offset_Point.X; |
... | ... | |
5020 | 5090 |
|
5021 | 5091 |
tlSyncRev.Text = String.Format("Rev. {0}", CurrentRev.RevNo); |
5022 | 5092 |
tlSyncPageNum.Text = String.Format("Current Page : {0}", pageNavigator.CurrentPage.PageNumber); |
5093 |
|
|
5094 |
zoomAndPanControl.ScaleToFit(); |
|
5095 |
zoomAndPanControl2.ScaleToFit(); |
|
5096 |
|
|
5023 | 5097 |
gridViewHistory_Busy.IsBusy = false; |
5024 | 5098 |
} |
5025 | 5099 |
|
... | ... | |
5030 | 5104 |
BaseClient.GetSyncMarkupInfoItemsCompleted -= GetSyncMarkupInfoItemshandler; |
5031 | 5105 |
} |
5032 | 5106 |
|
5033 |
ClearCompareRect(); |
|
5107 |
//ClearCompareRect();
|
|
5034 | 5108 |
SetCompareRect(); |
5035 | 5109 |
}; |
5036 | 5110 |
|
내보내기 Unified diff