- [context restoreGraphicsState];
-}
-
-// wxDCBase functions
-int wxDCBase::DeviceToLogicalX(int x) const
-{
- return x;
-}
-
-int wxDCBase::DeviceToLogicalY(int y) const
-{
- return y;
-}
-
-int wxDCBase::DeviceToLogicalXRel(int x) const
-{
- return x;
-}
-
-int wxDCBase::DeviceToLogicalYRel(int y) const
-{
- return y;
-}
-
-int wxDCBase::LogicalToDeviceX(int x) const
-{
- return x;
-}
-
-int wxDCBase::LogicalToDeviceY(int y) const
-{
- return y;
-}
+ int underlineStyle = GetFont().GetUnderlined() ? NSUnderlineStyleSingle : NSUnderlineStyleNone;
+ NSRange lineGlyphRange;
+ NSRect lineRect = [sm_cocoaNSLayoutManager lineFragmentRectForGlyphAtIndex:0 effectiveRange:&lineGlyphRange];