diff --git a/Frameworks/RSCore/RSCore/NSView+RSCore.h b/Frameworks/RSCore/RSCore/NSView+RSCore.h index 8545f561d..db3070f6f 100755 --- a/Frameworks/RSCore/RSCore/NSView+RSCore.h +++ b/Frameworks/RSCore/RSCore/NSView+RSCore.h @@ -27,5 +27,6 @@ - (NSRect)rs_rectCentered:(NSRect)originalRect; +- (NSTableView *)rs_enclosingTableView; @end diff --git a/Frameworks/RSCore/RSCore/NSView+RSCore.m b/Frameworks/RSCore/RSCore/NSView+RSCore.m index 255502909..6424ab327 100755 --- a/Frameworks/RSCore/RSCore/NSView+RSCore.m +++ b/Frameworks/RSCore/RSCore/NSView+RSCore.m @@ -65,4 +65,18 @@ } +- (NSTableView *)rs_enclosingTableView { + + NSView *nomad = self.superview; + + while (nomad != nil) { + if ([nomad isKindOfClass:[NSTableView class]]) { + return nomad; + } + nomad = nomad.superview; + } + + return nil; +} + @end