Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
4 changed files
with
173 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
_site |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,78 @@ | ||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" | ||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> | ||
|
||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> | ||
<head> | ||
<meta http-equiv="content-type" content="text/html;charset=UTF-8" /> | ||
<title>GitHub Pages - {{ page.title }}</title> | ||
<link href="http://github.com/stylesheets/bundle_common.css" media="screen" rel="stylesheet" type="text/css" /> | ||
<link href="http://github.com/stylesheets/bundle_github.css" media="screen" rel="stylesheet" type="text/css" /> | ||
<link href="/stylesheets/screen.css" media="screen" rel="stylesheet" type="text/css" /> | ||
</head> | ||
<body> | ||
<div id="main"> | ||
<div id="header" class="basic"> | ||
|
||
<div class="site"> | ||
<div class="logo"> | ||
<a href="/"><img src="http://github.com/images/modules/header/logo_pages.png" alt="github pages" /></a> | ||
</div> | ||
<div class="actions"> | ||
<a href="http://github.com">home</a> | ||
<a href="http://github.com/login">login</a> | ||
<a href="http://github.com/signup">signup!</a> | ||
</div> | ||
</div> | ||
</div> | ||
|
||
<div id="content" class="site"> | ||
|
||
{{ content }} | ||
|
||
</div> | ||
|
||
<div class="push"></div> | ||
</div> | ||
|
||
<div id="footer"> | ||
<div class="site"> | ||
|
||
<div class="info"> | ||
<div class="links"> | ||
<a href="http://github.com/blog/148-github-shirts-now-available">T-Shirts</a> | | ||
<a href="http://github.com/blog">Blog</a> | | ||
<a href="http://support.github.com/">Support</a> | | ||
<a href="http://github.com/training">Git Training</a> | | ||
<a href="http://github.com/contact">Contact</a> | | ||
<a href="http://groups.google.com/group/github/">Google Group</a> | | ||
<a href="http://github.wordpress.com">Status</a> | ||
</div> | ||
<div class="company"> | ||
GitHub is <a href="http://logicalawesome.com/">Logical Awesome</a> ©2009 | <a href="http://github.com/site/terms">Terms of Service</a> | <a href="http://github.com/site/privacy">Privacy Policy</a> | ||
</div> | ||
</div> | ||
<div class="sponsor"> | ||
<div> | ||
Powered by the <a href="http://www.rackspace.com ">Dedicated | ||
Servers</a> and<br/> <a href="http://www.rackspacecloud.com">Cloud | ||
Computing</a> of Rackspace Hosting<span>®</span> | ||
</div> | ||
<a href="http://www.rackspace.com"> | ||
<img src="http://github.com/images/modules/footer/rackspace_logo.png" alt="Dedicated Server" /> | ||
</a> | ||
</div> | ||
</div> | ||
</div> | ||
|
||
<script type="text/javascript"> | ||
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www."); | ||
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E")); | ||
</script> | ||
<script type="text/javascript"> | ||
var pageTracker = _gat._getTracker("UA-3769691-2"); | ||
pageTracker._initData(); | ||
pageTracker._trackPageview(); | ||
</script> | ||
|
||
</body> | ||
</html> |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,94 @@ | ||
--- | ||
layout: default | ||
title: FTUtils iPhone Utility Code Library | ||
--- | ||
|
||
FTUtils iPhone Utility Code Library | ||
=================================== | ||
|
||
The code in FTUtils is common utility code extracted from [Free Time Studios](http://www.freetimestudios.com/) iPhone projects. Currently, there is only one primary utility (`FTAnimationManager`) and some simple preprocessor macros. Some unit tests exist for the code, but more are needed. The documentation is also still under development. | ||
|
||
Setting Up FTUtils | ||
------------------ | ||
|
||
FTUtils is most easily used by simply copying `FTUtils.h`, `FTAnimationManager.h` and `FTAnimationManager.m` into your project. Be sure to add the QuartzCore framework to your project as well (step 5 below). The preferred way to integrate FTUtils into your projects is by adding it as a static library. This will keep it separate from your code. | ||
|
||
The following is the process to add the FTUtils static library to your Xcode project (these steps were borrowed from the [three20 project](http://github.com/joehewitt/three20/tree/master "joehewitt's three20 at master - GitHub") and modified): | ||
|
||
1. Clone the ftutils git repository: `git clone git://github.com/neror/ftutils.git`. Make sure you store the repository in a permanent place because Xcode will need to reference the files every time you compile your project. | ||
|
||
1(a). If you are already using git to manage your source files, you can also add the ftutils repository as a submodule to your project. | ||
|
||
2. Locate the "FTUtils.xcodeproj" file under "ftutils". Drag FTUtils.xcodeproj and drop it onto the root of your Xcode project's "Groups and Files" sidebar. A dialog will appear -- make sure "Copy items" is unchecked and "Reference Type" is "Relative to Project" before clicking "Add". | ||
|
||
3. Now you need to link the FTUtils static library to your project. Click the "FTUtils.xcodeproj" item that has just been added to the sidebar. Under the "Details" table, you will see a single item: libFTUtils.a. Check the checkbox on the far right of libFTUtils.a. | ||
|
||
4. Now you need to add FTUtils as a dependency of your project, so Xcode compiles it whenever you compile your project. Expand the "Targets" section of the sidebar and double-click your application's target. Under the "General" tab you will see a "Direct Dependencies" section. Click the "+" button, select "FTUtils", and click "Add Target". | ||
|
||
5. Now you need to add the Core Animation framework to your project. Right click on the "Frameworks" group in your project (or equivalent) and select Add > Existing Frameworks. Then locate QuartzCore.framework and add it to the project. | ||
|
||
6. Finally, we need to tell your project where to find the FTUtils headers. Open your "Project Settings" and go to the "Build" tab. Look for "Header Search Paths" and double-click it. Add the relative path from your project's directory to the "ftutils/Headers" directory. | ||
|
||
7. While you are in Project Settings, go to "Other Linker Flags" under the "Linker" section, and add "-ObjC" and "-all_load" to the list of flags. | ||
|
||
You're ready to go! Just import the header(s) in your code for the parts of the library you'd like to use. The FTAnimation.h header includes everything in the library. So you can just include it: | ||
|
||
#import <FTUtils/FTAnimation.h> | ||
|
||
Enjoy! And extra super special thanks to [Joe Hewitt](http://www.joehewitt.com/ "Joe Hewitt") for writing these steps out for his [three20 project](http://github.com/joehewitt/three20/tree/master "joehewitt's three20 at master - GitHub")! I don't think I have the patience to pull it off. | ||
|
||
Using FTAnimation | ||
----------------- | ||
|
||
FTAnimation was designed to make complex Core Animation based animations simple to create and use. The primary interface into the pre-built animations is a category on `UIView`. Animating a view is as simple as: | ||
|
||
[myView slideInFrom:kFTAnimationBottom duration:.33f delegate:self]; | ||
|
||
You can also access the `CAAnimation` instances that power the category methods via the `FTAnimationManager` singleton like so: | ||
|
||
CAAnimation *anim = [[FTAnimationManager sharedManager] slideInAnimationFor:myView direction:kFTAnimationBottom | ||
duration:.33f delegate:self]; | ||
modify it to your satisfaction and/or add it to a `CAAnimationGroup` and add it to the view's layer when you're ready to use it: | ||
|
||
anim.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInOut]; | ||
[myView.layer addAnimation:anim forKey:@"MySpecialAnimation"]; | ||
|
||
See the code for details. | ||
|
||
The FTAnimation UIView Category | ||
------------------------------- | ||
|
||
FTAnimation ships with 13 canned `UIView` animations for animating the showing and hiding of views in the interface. These animations are all available through a category on the `UIView` class. | ||
|
||
|
||
|
||
Contributors | ||
------------ | ||
|
||
FTUtils was written by [Nathan Eror](http://www.neror.com/ "neror.com") ([@neror](http://twitter.com/neror)) for use in iPhone games built and distributed by [Free Time Studios](http://www.freetimestudios.com/ "Free Time Studios") ([@freetimestudios](http://twitter.com/freetimestudios)). | ||
|
||
License | ||
------- | ||
The MIT License | ||
|
||
Copyright (c) 2009 Free Time Studios and Nathan Eror | ||
|
||
Permission is hereby granted, free of charge, to any person obtaining a copy | ||
of this software and associated documentation files (the "Software"), to deal | ||
in the Software without restriction, including without limitation the rights | ||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
copies of the Software, and to permit persons to whom the Software is | ||
furnished to do so, subject to the following conditions: | ||
|
||
The above copyright notice and this permission notice shall be included in | ||
all copies or substantial portions of the Software. | ||
|
||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||
THE SOFTWARE. | ||