Martin Carlberg f666367b5d Fixed: Optimization for bindings with longer key paths in table views.
This prevents a buildup of large arrays with a lot of values and then choose one row and throw away the rest. This is great for speed and a must for lazy loading.

Previous there was a optimization for this but it was only effective for short combined key path like 'a.b'. This pull request makes it effective for any kind of length of a combined key path like 'a.b.c.d...'.

This is done by returning the object at a row in the first found CPArray in the key path
that is divided in a first and second part.
The first part is never a combined key path. The second part can be a combined key path.
If this optimization is not done we will create an array with the valueForKeyPath value on each row and then pick
the wanted value for the row and throw away all the other rows. It is much more effective to first
pick the row and then do the valueForKeyPath on the rest of the key path.
2019-06-26 09:37:40 +02:00
2018-04-03 12:07:01 -07:00
2008-09-04 03:52:20 -07:00
2018-09-06 18:38:52 +01:00
2018-09-06 18:38:52 +01:00

Build Status Join the chat at https://gitter.im/cappuccino/cappuccino

Welcome to Cappuccino!

Introduction

Cappuccino is an open source framework that makes it easy to build desktop-caliber applications that run in a web browser.

With Cappuccino, you don't concern yourself with HTML, CSS, or the DOM. You write applications with the APIs from Apple's Cocoa frameworks and the Objective-J language.

Check out a live demo of the widgets in Cappuccino

Check out some live demos and tutorials

For more information, see the

Follow @cappuccino on Twitter for updates on the project.

If you discover any bugs, please file a ticket.

System Requirements

To run Cappuccino applications, all you need is a HTML5 compliant web browser.

Our tight integration with Xcode on MacOS brings the full power of visual Cocoa development to the web.

However, you can also work on other platforms using only a simple text editor.

Getting Started

To write you first application, download the starter package.

To contribute to Cappuccino, please read here: Getting and Building the Source.

License

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

S
Description
No description provided
Readme LGPL-2.1
98 MiB
Languages
Objective-J 66.7%
HTML 19.7%
JavaScript 10%
Objective-C 1.8%
Python 0.9%
Other 0.7%