Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CVCalendar News Issue #221

Open
mozharovsky opened this issue Jan 31, 2016 · 0 comments
Open

CVCalendar News Issue #221

mozharovsky opened this issue Jan 31, 2016 · 0 comments
Labels

Comments

@mozharovsky
Copy link
Member

This issue is a work in progress. Links and more info will be added soon.

What's going on

A lot of developers who use CVCalendar on a daily basis in their apps wonder what is currently happening with the project and why there is so many issues unsolved. We want to make things clear. First off, the project is not dead. It's now mainly maintained by @elsesiy, but neither he nor me can't instantly solve issues as they appear, since issues have to extend existing API and it takes time. It's been a year since this library was first released and we're proud to be one of the most popular open-source library among Calendar UI. So we want to thank you, first of all, for all contributions you've made, for all ideas you've given us and for all the support we've gotten from you. Thank you!

Further goals

At the moment of writing this issue, CVCalendar has 86 issues opened. This means there is a ton of changes we're going to bring off. In addition to reported issues we have a few great ideas. Of course you will get the range date selection support and custom views as markers (instead of having only dot markers), but we look deeper and thus you'll also get a year mode, improved API, IBDesignable CVCalendarView and much more.

Version 2.0.0

This is going to be the biggest change CVCalendar has ever had. But we are not scared, so are you, right? We'll mostly concentrate on improving the API. Let's have a quick tour.

We find such things weird:

    public func dayLabelWeekdayOutTextColor() -> UIColor {
        return UIColor.grayColor()
    }

    public func dayLabelWeekdayInTextColor() -> UIColor {
        return UIColor.lightGrayColor()
    }

    public func dayLabelPresentWeekdaySelectedBackgroundColor() -> UIColor {
        return UIColor(hex: 0xEE4252)
    }

    public func dayLabelPresentWeekdaySelectedBackgroundAlpha() -> CGFloat {
        return 1
    }

    public func dayLabelPresentWeekdayTextColor() -> UIColor {
        return UIColor(hex: 0xEE4252)
    }

    public func dayLabelWeekdaySelectedBackgroundAlpha() -> CGFloat {
        return 1
    }

    public func dayLabelWeekdaySelectedBackgroundColor() -> UIColor {
        return UIColor(hex: 0xEE4252)
    }

    public func dayOfWeekTextColor() -> UIColor {
        return UIColor.lightGrayColor()
    }  

Doesn't it look better?

    public func setup() {
        calendarView.dayLabelWeekdayOutTextColor = UIColor.grayColor()
        calendarView.dayLabelWeekdayInTextColor = UIColor.lightGrayColor()
        calendarView.dayLabelPresentWeekdaySelectedBackgroundColor = UIColor(hex: 0xEE4252)
        calendarView.dayLabelPresentWeekdaySelectedBackgroundAlpha = 1
        calendarView.dayLabelPresentWeekdayTextColor = UIColor(hex: 0xEE4252)
        calendarView.dayLabelWeekdaySelectedBackgroundAlpha = 1
        calendarView.dayLabelWeekdaySelectedBackgroundColor = UIColor(hex: 0xEE4252)
        calendarView.dayOfWeekTextColor = UIColor.lightGrayColor()
    }

Oh, we're absolutely sure you dislike this thing:

    public override func viewDidLayoutSubviews() {
        super.viewDidLayoutSubviews()

        calendarView.commitCalendarViewUpdate()
        menuView.commitMenuViewUpdate()
    }

Should it look like this?

    public override func viewDidLayoutSubviews() {
        super.viewDidLayoutSubviews()
        // Your code here...
    }

Yes, it should. How? Well, AutoLayout is coming! 😄

We're extremely excited to support IBDesignable interface. So you can apply your changes and see the result instantly for most of UI properties. This is something you've been waiting for so long, right?

What about Documentation?

We'll work hard on making an exhaustive documentation for this project. A new design style is coming as well!

Tests?

Right you are. The major version will be covered by Unit Tests. And for contributors it will be running with Travis-CI.

Discussion

Feel free to participate in our open API discussion.

We'll be bringing new threads for discussions and questions in the following days. General API and change-log threads will come soon.

@CVCalendar CVCalendar locked and limited conversation to collaborators Jan 31, 2016
@elsesiy elsesiy removed the News label Mar 8, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

2 participants