コード例 #1
0
ファイル: Outlining.cs プロジェクト: stevencohn/Orqa
 protected internal bool IsMouseOnOutlineButton(int X, int Y, out IOutlineRange Range)
 {
     Range = null;
     if (((this.owner != null) && this.AllowOutlining) && ((this.OutlineOptions & River.Orqa.Editor.OutlineOptions.DrawButtons) != River.Orqa.Editor.OutlineOptions.None))
     {
         Rectangle rectangle1;
         if (this.owner.Pages.PageType == PageType.PageLayout)
         {
             IEditPage page1 = this.owner.Pages.GetPageAtPoint(X, Y);
             rectangle1 = page1.ClientRect;
         }
         else
         {
             rectangle1 = this.owner.ClientRect;
         }
         int num1 = ((Gutter)this.owner.Gutter).GetWidth();
         rectangle1.X     += num1;
         rectangle1.Width -= num1;
         if (rectangle1.Contains(X, Y))
         {
             Point point1 = this.owner.ScreenToDisplay(X, Y);
             point1 = this.displayLines.DisplayPointToPoint(point1.X, point1.Y, false, true, false);
             Range  = this.displayLines.GetOutlineRange(point1);
             if (Range != null)
             {
                 return(!Range.Visible);
             }
         }
     }
     return(false);
 }
コード例 #2
0
ファイル: Outlining.cs プロジェクト: stevencohn/Orqa
 public string GetOutlineHint(IOutlineRange Range)
 {
     if (this.displayLines == null)
     {
         return(string.Empty);
     }
     return(this.displayLines.GetOutlineHint(Range));
 }
コード例 #3
0
 public void InitHitTestInfo()
 {
     this.HitTest      = River.Orqa.Editor.HitTest.None;
     this.Item         = null;
     this.String       = null;
     this.Word         = null;
     this.Url          = null;
     this.GutterImage  = -1;
     this.OutlineRange = null;
     this.Page         = -1;
 }
コード例 #4
0
 public void UpdateRange(IOutlineRange Rng, bool Update)
 {
     if (base.UpdateCount <= 0)
     {
         Point point1 = Point.Empty;
         int   num1   = 0;
         int   num2   = 0;
         this.collapsedList.Clear();
         int num3 = this.owner.Lines.Count;
         this.collapsedList.BeginUpdate();
         try
         {
             foreach (IOutlineRange range1 in this)
             {
                 if (range1.Visible || !this.IsVisible(range1.StartPoint))
                 {
                     continue;
                 }
                 num2 += (Math.Min(range1.EndPoint.Y, (int)(num3 - 1)) - Math.Min(range1.StartPoint.Y, (int)(num3 - 1)));
                 if (range1.StartPoint.Y != point1.Y)
                 {
                     num1 = 0;
                 }
                 num1 += ((range1.EndPoint.X - range1.StartPoint.X) - range1.DisplayText.Length);
                 this.collapsedList.Add(new CollapsedRange(null, range1.StartPoint, range1.EndPoint, -num1, -num2, 0, range1.DisplayText));
                 point1 = range1.EndPoint;
             }
         }
         finally
         {
             this.collapsedList.EndUpdate();
         }
         this.collapsedList.CollapsedCount = num2;
         if (Update)
         {
             this.owner.CollapseChanged(Rng);
         }
     }
 }