diff --git a/macSVG/MacSVG-Info.plist b/macSVG/MacSVG-Info.plist index 838a437..d14a604 100644 --- a/macSVG/MacSVG-Info.plist +++ b/macSVG/MacSVG-Info.plist @@ -105,7 +105,7 @@ CFBundleSignature ???? CFBundleVersion - 2896 + 2908 LSApplicationCategoryType public.app-category.graphics-design LSMinimumSystemVersion diff --git a/macSVG/SVGDocument Classes/XMLOutlineController.m b/macSVG/SVGDocument Classes/XMLOutlineController.m index b459f46..042b30f 100644 --- a/macSVG/SVGDocument Classes/XMLOutlineController.m +++ b/macSVG/SVGDocument Classes/XMLOutlineController.m @@ -1976,20 +1976,30 @@ NSInteger clickedRow = -1; - if ([senderButton.superview isKindOfClass:[NSTableRowView class]] == YES) + NSTableCellView * tableCellView = NULL; + + if ([senderButton.superview.superview isKindOfClass:[NSTableRowView class]] == YES) { - NSTableRowView * tableRowView = (NSTableRowView *)senderButton.superview; + tableCellView = (NSTableCellView *)senderButton.superview; + + XMLOutlineRowView * tableRowView = (XMLOutlineRowView *)tableCellView.superview; clickedRow = [self.xmlOutlineView rowForView:tableRowView]; } if (clickedRow >= 0) { - id checkboxButtonObject = (NSButton *)[self outlineView:self.xmlOutlineView viewForTableColumn:aTableColumn item:sender]; + NSXMLNode * selectedXMLNode = [self.xmlOutlineView itemAtRow:clickedRow]; + + id checkboxCellViewObject = (NSButton *)[self outlineView:self.xmlOutlineView viewForTableColumn:aTableColumn item:selectedXMLNode]; - if ([checkboxButtonObject isKindOfClass:[NSButton class]] == YES) + if ([checkboxCellViewObject isKindOfClass:[NSTableCellView class]] == YES) { - NSButton * checkboxButton = (NSButton *)checkboxButtonObject; + NSTableCellView * tableCellView = (NSTableCellView *)checkboxCellViewObject; + + NSArray * subviews = tableCellView.subviews; + + NSButton * checkboxButton = (NSButton *)subviews.firstObject; if (checkboxButton.enabled) { @@ -2663,7 +2673,7 @@ checkboxButton.refusesFirstResponder = YES; // object locking is not implemented yet //[checkboxButton setTarget:self]; - //[checkboxButton setAction:@selector(visibilityCheckboxAction:)]; + //[checkboxButton setAction:@selector(lockedCheckboxAction:)]; [checkboxButton setIntValue:[resultValue intValue]]; }