KPCTabsControlKPCJumpBarControlKPCSplitPanesKPCAppTerminationKPCSearchableOutlineViewKPCImportSheetController


KPCTabsControl

Build Status Version License Platform Carthage compatible Codewake

A multi-tabs control first designed to look and behave like the tab control in Apple’s Numbers spreadsheet, with enhanced capabilities, but now with new tab styles, such as Chrome & Safari, as well as custom ones.

On master, you’ll find the latest Swift3 releases. If you need to stay with Swift2.2, switch to the swift-2.2 branch.

Demo Tabs Screenshot

KPCTabsControl provides the following features:

  • Custom styles and themes! Default (Numbers.app-like), Chrome and Safari are provided. But you can easily write your own!
  • Styles & themes comprise title styles, title editor style, (un)selected/unselectable backgrounds, borders, colors, fonts etc.
  • Common dataSource/delegate Cocoa APIs
  • Tabs can span the whole view width, or be flexible inside min&max.
  • Tabs can be reordered, and renamed in place.
  • When provided, the title can be replaced by an alternative icon when the width is too narrow for the title to be drawn.

Demo Auxiliary Icons

Installation

Using Carthage: add github "onekiloparsec/KPCTabsControl" to your Cartfile and then run carthage update.

Using CocoaPods: pod 'KPCTabsControl'.

Usage

KPCTabsControl is designed for you to use only the KPCTabsControl class, and its associated data source methods. Simply place a NSView in a xib, where you need tabs, change its class to KPCTabsControl and assign its dataSource property. Then implement the data source methods in your controller.

You can also assign a delegate if you want to play with the editing and the reordering of the tab titles.

Authors

Cédric Foellmi (@onekiloparsec)
Christian Tietze (@ctietze)

LICENSE & NOTES

KPCTabsControl is licensed under the MIT license and hosted on GitHub at https://github.com/onekiloparsec/KPCTabsControl/ Fork the project and feel free to send pull requests with your changes!