/// <summary/>
            protected virtual void Dispose(bool fDisposing)
            {
                System.Diagnostics.Debug.WriteLineIf(!fDisposing, "****** Missing Dispose() call for " + GetType().ToString() + " *******");
                if (fDisposing && !IsDisposed)
                {
                    // Dispose managed resources here.
                    if (m_PulldownArrowPic != null)
                    {
                        m_PulldownArrowPic.Dispose();
                    }
                }

                // Dispose unmanaged resources here, whether disposing is true or false.
                m_sandbox          = null;       // Client gave it to us, so has to deal with it.
                m_caches           = null;       // Client gave it to us, so has to deal with it.
                m_PulldownArrowPic = null;
                m_tsf                  = null;
                m_tssMissingEntry      = null;            // Same as m_tssMissingMorphs, so just null it.
                m_tssMissingWordPos    = null;            // Same as m_tssMissingMorphPos, so just null it.
                m_tssMissingMorphs     = null;
                m_tssEmptyAnalysis     = null;
                m_tssEmptyVern         = null;
                m_tssMissingMorphGloss = null;
                m_tssMissingMorphPos   = null;
                IsDisposed             = true;
            }
 /// <summary/>
 protected virtual void Dispose(bool fDisposing)
 {
     System.Diagnostics.Debug.WriteLineIf(!fDisposing, "****** Missing Dispose() call for " + GetType().ToString() + " *******");
     if (fDisposing && !IsDisposed)
     {
         // dispose managed and unmanaged objects
         if (m_picture != null)
         {
             m_picture.Dispose();
         }
     }
     IsDisposed = true;
 }