/IdealCocoa

Tiny extensions of Cocoa library

Primary LanguageObjective-COtherNOASSERTION

IdealCocoa README

	Copyright 2010 3rddev.org. All rights reserved.

	Most of this library is distributed under GPL v3.
	see COPYING for details about GPL v3.
	see Lisence section about exceptions


Abstract

This library include some light tools for UIKit and simple extension of Apple Cocoa or UIKit.

Because this library is started from just a file, it don't look well-organized.
But this is helpful enough for small project.


Lisence

Most of this library is GPL v3. See COPYING for GPL v3 details.
If you want to use this library as GPL v3, read this section carefully

1. ICSqlite3 is following sqlite3 lisence. As like it, I disclaims copyright to ICSqlite3.h and ICSqlite3.m. See below for details
/*
 ** 2001 September 15
 **
 ** The author disclaims copyright to original source code.  In place of
 ** a legal notice, here is a blessing:
 **
 **    May you do good and not evil.
 **    May you find forgiveness for yourself and forgive others.
 **    May you share freely, never taking more than you give.
 **
 */ 

2. ICCoverFlowView is following its original lisence, from FlowCover. It is firstly written by Chaos In Motion.

**THIS LISENCE IS NOT COMPATABLE WITH GPLv3**
**THIS LISENCE IS NOT COMPATABLE WITH GPLv3**
**THIS LISENCE IS NOT COMPATABLE WITH GPLv3**

You should not use ICCoverFlowView.* for GPL v3. This lisence is BSD-like one and cannot be distributed as GPL v3.
Any other part of this library do not have dependency to this files and will notdo so.
This files have dependency to ICUtility.* and I allow GPL-free-use of ICUtility.* for ICCoverFlowView.*

See below for details:
/***
 
 Copyright 2008 William Woody, All Rights Reserved.
 
 Redistribution and use in source and binary forms, with or without 
 modification, are permitted provided that the following conditions are met:
 
 Redistributions of source code must retain the above copyright notice, this 
 list of conditions and the following disclaimer.
 
 Neither the name of Chaos In Motion nor the names of its contributors may be 
 used to endorse or promote products derived from this software without 
 specific prior written permission.
 
 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
 ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
 LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
 CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
 SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 
 INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
 CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 
 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF 
 THE POSSIBILITY OF SUCH DAMAGE.
 
 Contact William Woody at woody@alumni.caltech.edu or at 
 woody@chaosinmotion.com. Chaos In Motion is at http://www.chaosinmotion.com
 
 ***/


How to use

1. Compiled library
	THIS IS NEVER TESTED ON OSX.
	1. build project
	2. add 'include' to 'header search path'
	3. add IdealUIKit target as dependency
	4. add '-force_load <path_for_libIdealUIKit.a> to 'other linker flags'
		If you don't use any features about category, skip this
		This is bug of linker for non-i386 archietecture
2. Directy source
	1. add files what you need to your project
	2. add Foundation.h ( and UIKit.h for iOS ) to prefix header
	This way may help you to reduce complex jobs


Common Terms

* AbstractPath: If path include protocol prefix, it is processed by dynamic checker. 'http://', 'https://', 'res://' available
* cachedSomething: This method provides ICCache abstraction. If path pointing remote resource, it would be cached by ICCache policy.
* Other terms are following apple guidelines.