public void OptionsChanged()
        {
            textArea.OptionsChanged();

            if (textArea.TextEditorProperties.ShowHorizontalRuler)
            {
                if (hRuler == null)
                {
                    hRuler = new HRuler(textArea);
                    Controls.Add(hRuler);
                    ResizeTextArea();
                }
                else
                {
                    hRuler.Invalidate();
                }
            }
            else
            {
                if (hRuler != null)
                {
                    Controls.Remove(hRuler);
                    hRuler.Dispose();
                    hRuler = null;
                    ResizeTextArea();
                }
            }

            AdjustScrollBars();
        }
 protected override void Dispose(bool disposing)
 {
     if (disposing)
     {
         if (!disposed)
         {
             disposed = true;
             Document.TextContentChanged -= DocumentTextContentChanged;
             Document.DocumentChanged    -= AdjustScrollBarsOnDocumentChange;
             Document.UpdateCommited     -= DocumentUpdateCommitted;
             motherTextEditorControl      = null;
             if (vScrollBar != null)
             {
                 vScrollBar.Dispose();
                 vScrollBar = null;
             }
             if (hScrollBar != null)
             {
                 hScrollBar.Dispose();
                 hScrollBar = null;
             }
             if (hRuler != null)
             {
                 hRuler.Dispose();
                 hRuler = null;
             }
         }
     }
     base.Dispose(disposing);
 }