프로젝트

일반

사용자정보

개정판 43d2041c

ID43d2041c14f7d4c7e57d768f6673d20d011708ae
상위 1b2cf911
하위 43a743e4

김태성이(가) 4년 이상 전에 추가함

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

클립보드 이미지 추가 (최대 크기: 500 MB)