-
Notifications
You must be signed in to change notification settings - Fork 0
Changes Between Ver. 0.71 and the now merged jake loader branches
This page will cover changes in implementation that have occurred between the previous release .71 and the soon to exist .8, the latest master, which has now been merged with the jake and loader branches.
The focus is on what needs to be modified to make existing code have the same results when run with the new frameworks, and best practices that have changed since the previous release. The details of changes in the source itself are only mentioned when they are relevant to understanding how implementation has changed.
If you see something inaccurate (high likelihood of this :)), or something that is a bug rather than a change, please correct.
CPTableView has been completely rewritten since version .71.
A class called CPTableColumnHeaderView now exists in addition to CPTableHeaderView and contains a single instance variable, _textField, a CPTextField. Calling sizeToFit: sets the size of the CPTextField. Therefore, if you are automatically resizing your columns to the width of CPTableHeaderView as in this tutorial, you should now replace:
[column setWidth:[[column headerView] frame].size.width];
with:
[column setWidth:[[[column headerView] textField] frame].size.width];
setWidth:forSegment: now adds the specified width of the segment to the frame width of CPSegmentedControl. So, previously if you initWithFrame: a CPSegmentedControl with width of 200 and then setWidth: of each of two segments to 100, you would get a CPSegmentedControl consisting of two segments, each 100 wide. Now, this would result in a CPSegmentedControl with width of 400, the first segment being 100 and the other the rest of the control.
So CPSegmentedControl should be initWithFrame: with a width of 0, and then add the segments and set them to the desired widths.