예제 #1
0
 protected internal void UpdateRulers()
 {
     if ((this.owner != null) && (this.rulers != EditRulers.None))
     {
         IEditPage page1 = this.GetPageAt(this.owner.DisplayLines.PointToDisplayPoint(this.owner.Position));
         if (page1 != null)
         {
             Rectangle rectangle1 = page1.BoundsRect;
             Rectangle rectangle2 = page1.ClientRect;
             if ((this.rulers & EditRulers.Horizonal) != EditRulers.None)
             {
                 IEditRuler ruler1 = this.HorzRuler;
                 ruler1.RulerStart = rectangle1.Left - ruler1.Left;
                 ruler1.RulerWidth = rectangle1.Width;
                 ruler1.PageStart  = rectangle2.Left - ruler1.Left;
                 ruler1.PageWidth  = rectangle2.Width;
                 ruler1.MarkWidth  = this.owner.Painter.FontWidth;
                 ruler1.Update();
             }
             if ((this.rulers & EditRulers.Vertical) != EditRulers.None)
             {
                 IEditRuler ruler2 = this.VertRuler;
                 ruler2.RulerStart = rectangle1.Top - ruler2.Top;
                 ruler2.RulerWidth = rectangle1.Height;
                 ruler2.PageStart  = rectangle2.Top - ruler2.Top;
                 ruler2.PageWidth  = rectangle2.Height;
                 ruler2.MarkWidth  = this.owner.Painter.FontWidth;
                 ruler2.Update();
             }
         }
     }
 }
예제 #2
0
 public void Assign(IEditRuler Source)
 {
     this.Vertical   = Source.Vertical;
     this.PageStart  = Source.PageStart;
     this.PageWidth  = Source.PageWidth;
     this.RulerStart = Source.RulerStart;
     this.RulerWidth = Source.RulerWidth;
     this.MarkWidth  = Source.MarkWidth;
     this.Units      = Source.Units;
     this.Options    = Source.Options;
 }
예제 #3
0
 protected virtual void RulerChanged(object sender, EventArgs e)
 {
     if ((this.owner != null) && (sender is IEditRuler))
     {
         int num1;
         int num2;
         if (this.owner.Selection.IsEmpty())
         {
             num1 = this.GetPageIndexAt(this.owner.DisplayLines.PointToDisplayPoint(this.owner.Position));
             num2 = num1;
         }
         else
         {
             Rectangle rectangle1 = this.owner.Selection.SelectionRect;
             num1 = this.GetPageIndexAt(this.owner.DisplayLines.PointToDisplayPoint(rectangle1.Location));
             num2 = this.GetPageIndexAt(this.owner.DisplayLines.PointToDisplayPoint(rectangle1.Right, rectangle1.Bottom));
         }
         this.BeginUpdate();
         try
         {
             IEditRuler  ruler1  = (IEditRuler)sender;
             RulerIndent indent1 = ((RulerEventArgs)e).Object as RulerIndent;
             for (int num3 = Math.Max(num1, 0); num3 <= num2; num3++)
             {
                 EditPage page1 = this[num3] as EditPage;
                 if (ruler1.Vertical)
                 {
                     if (indent1.Orientation == IndentOrientation.Near)
                     {
                         page1.TopIndent = indent1.Indent;
                     }
                     else
                     {
                         page1.BottomIndent = indent1.Indent;
                     }
                 }
                 else if (indent1.Orientation == IndentOrientation.Near)
                 {
                     page1.LeftIndent = indent1.Indent;
                 }
                 else
                 {
                     page1.RightIndent = indent1.Indent;
                 }
             }
         }
         finally
         {
             this.EndUpdate();
         }
     }
 }