Exemplo n.º 1
0
        public PTPMsgStrEditVM(MSGstr str, Tuple <ImageDrawing, ImageDrawing, ImageDrawing, RectangleGeometry> tuple, string oldEncoding, string newEncoding, int backgroundIndex)
        {
            this.str = str;
            strEW    = new EventWrapper(str, this);

            OldEncoding = Static.EncodingManager.GetPersonaEncoding(oldEncoding);
            NewEncoding = Static.EncodingManager.GetPersonaEncoding(newEncoding);
            OldText     = new TextVisual(Static.FontManager.GetPersonaFont(oldEncoding))
            {
                Tag = "Old"
            };
            NewText = new TextVisual(Static.FontManager.GetPersonaFont(newEncoding))
            {
                Tag = "New"
            };
            OldText.IsEnable = Settings.AppSetting.Default.PTPImageView;
            NewText.IsEnable = Settings.AppSetting.Default.PTPImageView;

            UpdateBackground(backgroundIndex);

            OldText.UpdateText(str.OldString);
            NewText.UpdateText(str.NewString.GetTextBaseList(NewEncoding));

            DrawingGroup oldDrawingGroup = new DrawingGroup();

            oldDrawingGroup.Children.Add(tuple.Item3);
            if (tuple.Item1 != null)
            {
                oldDrawingGroup.Children.Add(tuple.Item1);
            }
            oldDrawingGroup.Children.Add(OldText.TextDrawing);
            oldDrawingGroup.ClipGeometry = tuple.Item4;
            OldTextImage.Drawing         = oldDrawingGroup;

            DrawingGroup newDrawingGroup = new DrawingGroup();

            newDrawingGroup.Children.Add(tuple.Item3);
            if (tuple.Item2 != null)
            {
                newDrawingGroup.Children.Add(tuple.Item2);
            }
            newDrawingGroup.Children.Add(NewText.TextDrawing);
            newDrawingGroup.ClipGeometry = tuple.Item4;
            NewTextImage.Drawing         = newDrawingGroup;

            MovePrefixDown  = new RelayCommand(str.MovePrefixDown);
            MovePrefixUp    = new RelayCommand(str.MovePrefixUp);
            MovePostfixDown = new RelayCommand(str.MovePostfixDown);
            MovePostfixUp   = new RelayCommand(str.MovePostfixUp);
        }
Exemplo n.º 2
0
 public void UpdateNewEncoding(string newEncoding)
 {
     NewEncoding = Static.EncodingManager.GetPersonaEncoding(newEncoding);
     NewText.UpdateText(str.NewString.GetTextBases(NewEncoding), Static.FontManager.GetPersonaFont(newEncoding));
 }