This is useless as we don't use wxTextMeasure in this case but just forward to
the wxDC itself, and also results in an assert in wxMSW wxTextMeasure
implementation.
Closes #14916.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73292
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
virtual void BeginMeasuring() { }
virtual void EndMeasuring() { }
+ // This is another method which is only used by MeasuringGuard.
+ bool IsUsingDCImpl() const { return m_useDCImpl; }
+
protected:
// RAII wrapper for the two methods above.
class MeasuringGuard
public:
MeasuringGuard(wxTextMeasureBase& tm) : m_tm(tm)
{
- m_tm.BeginMeasuring();
+ // BeginMeasuring() should only be called if we have a native DC,
+ // so don't call it if we delegate to a DC of unknown type.
+ if ( !m_tm.IsUsingDCImpl() )
+ m_tm.BeginMeasuring();
}
~MeasuringGuard()
{
- m_tm.EndMeasuring();
+ if ( !m_tm.IsUsingDCImpl() )
+ m_tm.EndMeasuring();
}
private: