Skip to content

Commit

Permalink
fixed issues on non-retina devices, added selected states for headers
Browse files Browse the repository at this point in the history
  • Loading branch information
dimitribouniol committed Oct 18, 2011
1 parent b84d72e commit a4e4612
Show file tree
Hide file tree
Showing 42 changed files with 73 additions and 124 deletions.
5 changes: 5 additions & 0 deletions Classes/MDSpreadView.h
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,11 @@

NSUInteger selectedRow;
NSUInteger selectedSection;

UIView *anchorCell;
UIView *anchorRowHeaderCell;
UIView *anchorColumnHeaderCell;
UIView *anchorCornerHeaderCell;
}

@property (nonatomic, assign) IBOutlet id <MDSpreadViewDataSource> dataSource;
Expand Down
140 changes: 42 additions & 98 deletions Classes/MDSpreadView.m
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,26 @@ - (void)_performInit

selectedRow = NSNotFound;
selectedSection = NSNotFound;

anchorCell = [[UIView alloc] init];
anchorCell.hidden = YES;
[self addSubview:anchorCell];
[anchorCell release];

anchorRowHeaderCell = [[UIView alloc] init];
anchorRowHeaderCell.hidden = YES;
[self addSubview:anchorRowHeaderCell];
[anchorRowHeaderCell release];

anchorColumnHeaderCell = [[UIView alloc] init];
anchorColumnHeaderCell.hidden = YES;
[self addSubview:anchorColumnHeaderCell];
[anchorColumnHeaderCell release];

anchorCornerHeaderCell = [[UIView alloc] init];
anchorCornerHeaderCell.hidden = YES;
[self addSubview:anchorCornerHeaderCell];
[anchorCornerHeaderCell release];
}

- (id<MDSpreadViewDelegate>)delegate
Expand Down Expand Up @@ -118,6 +138,9 @@ - (void)reloadData
[dequeuedCells addObjectsFromArray:[descriptor allCells]];
[descriptor clearAllCells];

calculatedSize.width -= 1;
calculatedSize.height -= 1;

self.contentSize = calculatedSize;

// if (selectedSection != NSNotFound || selectedRow!= NSNotFound) {
Expand All @@ -135,16 +158,12 @@ - (void)layoutSubviews
[super layoutSubviews];

CGPoint offset = self.contentOffset;
// CGSize contentSize = self.contentSize;
CGSize boundsSize = self.bounds.size;

NSUInteger numberOfColumnSections = [descriptor columnSectionCount];
NSUInteger numberOfRowSections = [descriptor rowSectionCount];

CGPoint cellOrigin = CGPointZero;

// MDSpreadViewCell *recentHeader = nil;
// MDSpreadViewColumnDescriptor *recentColumnHeader = nil;
CGRect cellFrame;

CGFloat headerWidth = self.sectionColumnHeaderWidth;
Expand All @@ -167,6 +186,16 @@ - (void)layoutSubviews
} else {
for (int rowSection = 0; rowSection < numberOfRowSections; rowSection++) {
NSUInteger numberOfRows = [descriptor rowCountForSection:rowSection];
cellFrame = CGRectZero;

if (cellOrigin.x >= offset.x) {
cellFrame.origin.x = cellOrigin.x;
} else if (cellOrigin.x + columnWidth * numberOfColumns < offset.x) {
cellFrame.origin.x = cellOrigin.x + columnWidth * numberOfColumns;
} else {
cellFrame.origin.x = offset.x;
}

if (cellOrigin.y + headerHeight + cellHeight * numberOfRows < offset.y || cellOrigin.y >= offset.y+boundsSize.height) {
MDSpreadViewCell *cell = [descriptor cellForHeaderInRowSection:rowSection forColumnSection:columnSection];
[cell removeFromSuperview];
Expand All @@ -181,18 +210,10 @@ - (void)layoutSubviews
}

if ([cell superview] != self) {
[self addSubview:cell];
[self insertSubview:cell aboveSubview:anchorCornerHeaderCell];
}

cellFrame = CGRectMake(0, 0, headerWidth, headerHeight);

if (cellOrigin.x >= offset.x) {
cellFrame.origin.x = cellOrigin.x;
} else if (cellOrigin.x + columnWidth * numberOfColumns < offset.x) {
cellFrame.origin.x = cellOrigin.x + columnWidth * numberOfColumns;
} else {
cellFrame.origin.x = offset.x;
}
cellFrame.size = CGSizeMake(headerWidth, headerHeight);

if (cellOrigin.y >= offset.y) {
cellFrame.origin.y = cellOrigin.y;
Expand All @@ -206,6 +227,7 @@ - (void)layoutSubviews
}

cellOrigin.y += headerHeight;
cellFrame.size = CGSizeMake(headerWidth, rowHeight);

for (int row = 0; row < numberOfRows; row++) {
NSIndexPath *rowIndexPath = [NSIndexPath indexPathForRow:row inSection:rowSection];
Expand All @@ -223,18 +245,10 @@ - (void)layoutSubviews
}

if ([cell superview] != self) {
[self insertSubview:cell atIndex:0];
[self insertSubview:cell aboveSubview:anchorColumnHeaderCell];
}

cellFrame = CGRectMake(0, cellOrigin.y, headerWidth, rowHeight);

if (cellOrigin.x >= offset.x) {
cellFrame.origin.x = cellOrigin.x;
} else if (cellOrigin.x + columnWidth * numberOfColumns < offset.x) {
cellFrame.origin.x = cellOrigin.x + columnWidth * numberOfColumns;
} else {
cellFrame.origin.x = offset.x;
}
cellFrame.origin.y = cellOrigin.y;

[cell setFrame:cellFrame];
}
Expand Down Expand Up @@ -272,7 +286,7 @@ - (void)layoutSubviews
}

if ([cell superview] != self) {
[self insertSubview:cell atIndex:0];
[self insertSubview:cell aboveSubview:anchorRowHeaderCell];
}

cellFrame = CGRectMake(cellOrigin.x, 0, columnWidth, headerHeight);
Expand All @@ -289,6 +303,7 @@ - (void)layoutSubviews
}

cellOrigin.y += headerHeight;
cellFrame = CGRectMake(cellOrigin.x, cellOrigin.y, columnWidth, rowHeight);

for (int row = 0; row < numberOfRows; row++) {
NSIndexPath *rowIndexPath = [NSIndexPath indexPathForRow:row inSection:rowSection];
Expand All @@ -306,10 +321,10 @@ - (void)layoutSubviews
}

if ([cell superview] != self) {
[self insertSubview:cell atIndex:0];
[self insertSubview:cell aboveSubview:anchorCell];
}

cellFrame = CGRectMake(cellOrigin.x, cellOrigin.y, columnWidth, rowHeight);
cellFrame.origin.y = cellOrigin.y;

[cell setFrame:cellFrame];
}
Expand All @@ -320,46 +335,7 @@ - (void)layoutSubviews

cellOrigin.x += cellWidth;
}

// cellOrigin += headerHeight;
//
// for (int row = 0; row < numberOfRows; row++) {
// if (cellOrigin + rowHeight < offset || cellOrigin >= offset+clipHeight) {
// //NSLog(@"%d:%d cell: %@", section, row, [self cellForRow:row inSection:section]);
// [self setCell:nil forRow:row inSection:section];
// } else {
// MDTableViewCell *cell = [self cellForRow:row inSection:section];
// //NSLog(@" %d:%d cell: %@", section, row, cell);
// if (!cell) {
// cell = [self tableView:self cellForRow:row inSection:section];
// [self setCell:cell forRow:row inSection:section];
// }
//
// if ([cell superview] != self) {
// [self addSubview:cell positioned:NSWindowBelow relativeTo:nil];
// }
//
// [cell setHidden:NO];
// cell.selected = (section == selectedSection && row == selectedRow);
// cell.alternatedRow = row % 2;
//
// cellFrame = NSMakeRect(0, actualHeight-cellOrigin-rowHeight, cellWidth, rowHeight);
//
// NSRect cellFrameAdjustments = cell.frameAdjustments;
//
// cellFrame.origin.x += cellFrameAdjustments.origin.x;
// cellFrame.origin.y += cellFrameAdjustments.origin.y;
// cellFrame.size.width += cellFrameAdjustments.size.width;
// cellFrame.size.height += cellFrameAdjustments.size.height;
//
// [cell setFrame:cellFrame];
// [cell setNeedsDisplay:YES];
// }
// cellOrigin += rowHeight;
// }
}

// NSLog(@"%d", self.subviews.count);
}

- (MDSpreadViewCell *)dequeueReusableCellWithIdentifier:(NSString *)identifier
Expand All @@ -380,38 +356,6 @@ - (MDSpreadViewCell *)dequeueReusableCellWithIdentifier:(NSString *)identifier

#pragma mark - Fetchers

//- (NSUInteger)tableView:(MDSectionedTableView *)tableView numberOfRowsInSection:(NSUInteger)section
//{
// NSInteger returnValue = 0;
//
// if (dataSource && [dataSource respondsToSelector:@selector(tableView:numberOfRowsInSection:)])
// returnValue = [dataSource tableView:tableView numberOfRowsInSection:section];
//
// return returnValue;
//}
//
//- (MDTableViewCell *)tableView:(MDSectionedTableView *)tableView cellForRow:(NSUInteger)row inSection:(NSUInteger)section
//{
// MDTableViewCell *returnValue = nil;
//
// if (dataSource && [dataSource respondsToSelector:@selector(tableView:cellForRow:inSection:)])
// returnValue = [dataSource tableView:tableView cellForRow:row inSection:section];
//
// return returnValue;
//}
//
//- (MDTableViewCell *)tableView:(MDSectionedTableView *)tableView cellForHeaderOfSection:(NSUInteger)section
//{
// MDTableViewCell *returnValue = nil;
//
// if (dataSource && [dataSource respondsToSelector:@selector(tableView:cellForHeaderOfSection:)])
// returnValue = [dataSource tableView:tableView cellForHeaderOfSection:section];
//
// return returnValue;
//}
//


- (CGFloat)_widthForColumnHeaderInSection:(NSInteger)columnSection
{
NSInteger returnValue = self.sectionColumnHeaderWidth;
Expand Down
4 changes: 2 additions & 2 deletions Classes/MDSpreadViewCell.m
Original file line number Diff line number Diff line change
Expand Up @@ -34,13 +34,13 @@ - (id)initWithStyle:(MDSpreadViewCellStyle)aStyle reuseIdentifier:(NSString *)aR

UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"MDSpreadViewCell.png"]];
imageView.contentMode = UIViewContentModeScaleToFill;
imageView.contentStretch = CGRectMake(1./imageView.bounds.size.width, 1./imageView.bounds.size.height, 1./imageView.bounds.size.width, 1./imageView.bounds.size.height);
imageView.contentStretch = CGRectMake(2./imageView.frame.size.width, 2./imageView.frame.size.height, 1./imageView.frame.size.width, 1./imageView.frame.size.height);
self.backgroundView = imageView;
[imageView release];

imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"MDSpreadViewCellSelected.png"]];
imageView.contentMode = UIViewContentModeScaleToFill;
imageView.contentStretch = CGRectMake(1./imageView.bounds.size.width, 1./imageView.bounds.size.height, 1./imageView.bounds.size.width, 1./imageView.bounds.size.height);
imageView.contentStretch = CGRectMake(2./imageView.frame.size.width, 2./imageView.frame.size.height, 1./imageView.frame.size.width, 1./imageView.frame.size.height);
self.highlightedBackgroundView = imageView;
[imageView release];

Expand Down
12 changes: 6 additions & 6 deletions Classes/MDSpreadViewCellColumnHeaderBackground.m
Original file line number Diff line number Diff line change
Expand Up @@ -12,17 +12,17 @@ @implementation MDSpreadViewCellColumnHeaderBackground

- (void)prepareBackground
{
UIImage *left = [UIImage imageNamed:@"MDSpreadViewColumnHeaderLeft.png"];
backgroundLeft = [[UIImageView alloc] initWithImage:left highlightedImage:left];
backgroundLeft = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"MDSpreadViewColumnHeaderLeft.png"]
highlightedImage:[UIImage imageNamed:@"MDSpreadViewColumnHeaderLeftSelected.png"]];
backgroundLeft.contentMode = UIViewContentModeScaleToFill;
backgroundLeft.contentStretch = CGRectMake(2./backgroundLeft.bounds.size.width, 1./backgroundLeft.bounds.size.height, 1./backgroundLeft.bounds.size.width, 1./backgroundLeft.bounds.size.height);
backgroundLeft.contentStretch = CGRectMake(3./backgroundLeft.bounds.size.width, 2./backgroundLeft.bounds.size.height, 1./backgroundLeft.bounds.size.width, 1./backgroundLeft.bounds.size.height);
[self addSubview:backgroundLeft];
[backgroundLeft release];

UIImage *right = [UIImage imageNamed:@"MDSpreadViewColumnHeaderRight.png"];
backgroundRight = [[UIImageView alloc] initWithImage:right highlightedImage:right];
backgroundRight = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"MDSpreadViewColumnHeaderRight.png"]
highlightedImage:[UIImage imageNamed:@"MDSpreadViewColumnHeaderRightSelected.png"]];
backgroundRight.contentMode = UIViewContentModeScaleToFill;
backgroundRight.contentStretch = CGRectMake(1./backgroundRight.bounds.size.width, 1./backgroundRight.bounds.size.height, 1./backgroundRight.bounds.size.width, 1./backgroundRight.bounds.size.height);
backgroundRight.contentStretch = CGRectMake(2./backgroundRight.bounds.size.width, 2./backgroundRight.bounds.size.height, 1./backgroundRight.bounds.size.width, 1./backgroundRight.bounds.size.height);
[self addSubview:backgroundRight];
[backgroundRight release];
}
Expand Down
24 changes: 12 additions & 12 deletions Classes/MDSpreadViewCellCornerHeaderBackground.m
Original file line number Diff line number Diff line change
Expand Up @@ -12,31 +12,31 @@ @implementation MDSpreadViewCellCornerHeaderBackground

- (void)prepareBackground
{
UIImage *topLeft = [UIImage imageNamed:@"MDSpreadViewCornerTopLeft.png"];
backgroundTopLeft = [[UIImageView alloc] initWithImage:topLeft highlightedImage:topLeft];
backgroundTopLeft = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"MDSpreadViewCornerTopLeft.png"]
highlightedImage:[UIImage imageNamed:@"MDSpreadViewCornerTopLeftSelected.png"]];
backgroundTopLeft.contentMode = UIViewContentModeScaleToFill;
backgroundTopLeft.contentStretch = CGRectMake(2./backgroundTopLeft.bounds.size.width, 2./backgroundTopLeft.bounds.size.height, 1./backgroundTopLeft.bounds.size.width, 1./backgroundTopLeft.bounds.size.height);
backgroundTopLeft.contentStretch = CGRectMake(3./backgroundTopLeft.bounds.size.width, 3./backgroundTopLeft.bounds.size.height, 1./backgroundTopLeft.bounds.size.width, 1./backgroundTopLeft.bounds.size.height);
[self addSubview:backgroundTopLeft];
[backgroundTopLeft release];

UIImage *topRight = [UIImage imageNamed:@"MDSpreadViewCornerTopRight.png"];
backgroundTopRight = [[UIImageView alloc] initWithImage:topRight highlightedImage:topRight];
backgroundTopRight = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"MDSpreadViewCornerTopRight.png"]
highlightedImage:[UIImage imageNamed:@"MDSpreadViewCornerTopRightSelected.png"]];
backgroundTopRight.contentMode = UIViewContentModeScaleToFill;
backgroundTopRight.contentStretch = CGRectMake(1./backgroundTopRight.bounds.size.width, 2./backgroundTopRight.bounds.size.height, 1./backgroundTopRight.bounds.size.width, 1./backgroundTopRight.bounds.size.height);
backgroundTopRight.contentStretch = CGRectMake(2./backgroundTopRight.bounds.size.width, 3./backgroundTopRight.bounds.size.height, 1./backgroundTopRight.bounds.size.width, 1./backgroundTopRight.bounds.size.height);
[self addSubview:backgroundTopRight];
[backgroundTopRight release];

UIImage *bottomLeft = [UIImage imageNamed:@"MDSpreadViewCornerBottomLeft.png"];
backgroundBottomLeft = [[UIImageView alloc] initWithImage:bottomLeft highlightedImage:bottomLeft];
backgroundBottomLeft = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"MDSpreadViewCornerBottomLeft.png"]
highlightedImage:[UIImage imageNamed:@"MDSpreadViewCornerBottomLeftSelected.png"]];
backgroundBottomLeft.contentMode = UIViewContentModeScaleToFill;
backgroundBottomLeft.contentStretch = CGRectMake(2./backgroundBottomLeft.bounds.size.width, 1./backgroundBottomLeft.bounds.size.height, 1./backgroundBottomLeft.bounds.size.width, 1./backgroundBottomLeft.bounds.size.height);
backgroundBottomLeft.contentStretch = CGRectMake(3./backgroundBottomLeft.bounds.size.width, 2./backgroundBottomLeft.bounds.size.height, 1./backgroundBottomLeft.bounds.size.width, 1./backgroundBottomLeft.bounds.size.height);
[self addSubview:backgroundBottomLeft];
[backgroundBottomLeft release];

UIImage *bottomRight = [UIImage imageNamed:@"MDSpreadViewCornerBottomRight.png"];
backgroundBottomRight = [[UIImageView alloc] initWithImage:bottomRight highlightedImage:bottomRight];
backgroundBottomRight = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"MDSpreadViewCornerBottomRight.png"]
highlightedImage:[UIImage imageNamed:@"MDSpreadViewCornerBottomRightSelected.png"]];
backgroundBottomRight.contentMode = UIViewContentModeScaleToFill;
backgroundBottomRight.contentStretch = CGRectMake(5./backgroundBottomRight.bounds.size.width, 5./backgroundBottomRight.bounds.size.height, 1./backgroundBottomRight.bounds.size.width, 1./backgroundBottomRight.bounds.size.height);
backgroundBottomRight.contentStretch = CGRectMake(6./backgroundBottomRight.bounds.size.width, 6./backgroundBottomRight.bounds.size.height, 1./backgroundBottomRight.bounds.size.width, 1./backgroundBottomRight.bounds.size.height);
[self addSubview:backgroundBottomRight];
[backgroundBottomRight release];
}
Expand Down
12 changes: 6 additions & 6 deletions Classes/MDSpreadViewCellRowHeaderBackground.m
Original file line number Diff line number Diff line change
Expand Up @@ -12,17 +12,17 @@ @implementation MDSpreadViewCellRowHeaderBackground

- (void)prepareBackground
{
UIImage *top = [UIImage imageNamed:@"MDSpreadViewRowHeaderTop.png"];
backgroundTop = [[UIImageView alloc] initWithImage:top highlightedImage:top];
backgroundTop = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"MDSpreadViewRowHeaderTop.png"]
highlightedImage:[UIImage imageNamed:@"MDSpreadViewRowHeaderTopSelected.png"]];
backgroundTop.contentMode = UIViewContentModeScaleToFill;
backgroundTop.contentStretch = CGRectMake(1./backgroundTop.bounds.size.width, 2./backgroundTop.bounds.size.height, 1./backgroundTop.bounds.size.width, 1./backgroundTop.bounds.size.height);
backgroundTop.contentStretch = CGRectMake(2./backgroundTop.bounds.size.width, 3./backgroundTop.bounds.size.height, 1./backgroundTop.bounds.size.width, 1./backgroundTop.bounds.size.height);
[self addSubview:backgroundTop];
[backgroundTop release];

UIImage *bottom = [UIImage imageNamed:@"MDSpreadViewRowHeaderBottom.png"];
backgroundBottom = [[UIImageView alloc] initWithImage:bottom highlightedImage:bottom];
backgroundBottom = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"MDSpreadViewRowHeaderBottom.png"]
highlightedImage:[UIImage imageNamed:@"MDSpreadViewRowHeaderBottomSelected.png"]];
backgroundBottom.contentMode = UIViewContentModeScaleToFill;
backgroundBottom.contentStretch = CGRectMake(1./backgroundBottom.bounds.size.width, 1./backgroundBottom.bounds.size.height, 1./backgroundBottom.bounds.size.width, 1./backgroundBottom.bounds.size.height);
backgroundBottom.contentStretch = CGRectMake(2./backgroundBottom.bounds.size.width, 2./backgroundBottom.bounds.size.height, 1./backgroundBottom.bounds.size.width, 1./backgroundBottom.bounds.size.height);
[self addSubview:backgroundBottom];
[backgroundBottom release];
}
Expand Down
Binary file modified Images/MDSpreadViewCell.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified Images/MDSpreadViewCell@2x.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified Images/MDSpreadViewCellSelected.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified Images/MDSpreadViewCellSelected@2x.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified Images/MDSpreadViewColumnHeaderLeft.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified Images/MDSpreadViewColumnHeaderLeft@2x.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Images/MDSpreadViewColumnHeaderLeftSelected.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Images/MDSpreadViewColumnHeaderLeftSelected@2x.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified Images/MDSpreadViewColumnHeaderRight.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified Images/MDSpreadViewColumnHeaderRight@2x.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Images/MDSpreadViewColumnHeaderRightSelected.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Images/MDSpreadViewColumnHeaderRightSelected@2x.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified Images/MDSpreadViewCornerBottomLeft.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified Images/MDSpreadViewCornerBottomLeft@2x.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Images/MDSpreadViewCornerBottomLeftSelected.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Images/MDSpreadViewCornerBottomLeftSelected@2x.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified Images/MDSpreadViewCornerBottomRight.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified Images/MDSpreadViewCornerBottomRight@2x.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Images/MDSpreadViewCornerBottomRightSelected.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Images/MDSpreadViewCornerBottomRightSelected@2x.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified Images/MDSpreadViewCornerTopLeft.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified Images/MDSpreadViewCornerTopLeft@2x.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Images/MDSpreadViewCornerTopLeftSelected.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Images/MDSpreadViewCornerTopLeftSelected@2x.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified Images/MDSpreadViewCornerTopRight.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified Images/MDSpreadViewCornerTopRight@2x.png
Binary file added Images/MDSpreadViewCornerTopRightSelected.png
Binary file added Images/MDSpreadViewCornerTopRightSelected@2x.png
Binary file modified Images/MDSpreadViewRowHeaderBottom.png
Binary file modified Images/MDSpreadViewRowHeaderBottom@2x.png
Binary file added Images/MDSpreadViewRowHeaderBottomSelected.png
Binary file added Images/MDSpreadViewRowHeaderBottomSelected@2x.png
Binary file modified Images/MDSpreadViewRowHeaderTop.png
Binary file modified Images/MDSpreadViewRowHeaderTop@2x.png
Binary file added Images/MDSpreadViewRowHeaderTopSelected.png
Binary file added Images/MDSpreadViewRowHeaderTopSelected@2x.png

0 comments on commit a4e4612

Please sign in to comment.