Joseph Spiros [Mon, 28 Dec 2009 14:12:42 +0000 (09:12 -0500)]
Upgrading ITKit to Xcode 3.0 and the Mac OS X 10.5 SDK.
Joseph Spiros [Thu, 23 Jul 2009 22:54:37 +0000 (18:54 -0400)]
Licensing ITKit under the GNU Lesser General Public License version 2.1.
Joseph Spiros [Sun, 11 Jan 2009 09:06:38 +0000 (04:06 -0500)]
Licensing ITKit under the GNU General Public License version 2.
Previous revisions of ITKit are provided only for historical purposes,
and the rights to those revisions are reserved by iThink Software. Each revision
is licensed under the terms specified in the file COPYING, if it exists.
Updating headers to remove CVS/Subversion keywords, and modernize copyright
notices to account for new licensing.
Joseph Spiros [Sun, 11 Jan 2009 03:32:04 +0000 (03:32 +0000)]
Removing ITKit dependencies on F-Script framework. Currently working on ITBridging framework that satisfies this capability for applications.
Joseph Spiros [Fri, 19 Sep 2008 12:36:57 +0000 (12:36 +0000)]
Updating ITKit with additions to support Haven development.
ITApplicationController is a subclass of ITSharedController from ITFoundation, and provides
a standard debug menu, generic plugin loading, and fscriptplugin loading if FScript is loaded.
ITCategory-NSApplication adds a method to NSApplication for determining the application's name.
Kent Sutherland [Thu, 11 May 2006 02:00:00 +0000 (02:00 +0000)]
CoreImage effect loads only with OS X 10.4.0 through 10.4.5. It crashes 10.4.6 currently.
Kent Sutherland [Wed, 10 May 2006 23:06:10 +0000 (23:06 +0000)]
Eliminated old custom code for ignoresMouseEvents that isn't needed under 10.3+
Kent Sutherland [Thu, 23 Feb 2006 23:33:41 +0000 (23:33 +0000)]
Fixed a crash when Core Image was available.
Kent Sutherland [Thu, 23 Feb 2006 23:30:47 +0000 (23:30 +0000)]
Renamed "Core Image - Ripple" to "Ripple"
Ripple effect added to effects list only if CoreImage acceleration is available.
Kent Sutherland [Thu, 23 Feb 2006 22:29:04 +0000 (22:29 +0000)]
Using the 10.4 SDK to build universal
Kent Sutherland [Tue, 21 Feb 2006 20:06:07 +0000 (20:06 +0000)]
Fixed a crash in the core image effect. Using proper transparent bit in the CoreGraphics hacks so that it doesn't throw that annoying console warning every launch.
Kent Sutherland [Mon, 13 Feb 2006 01:31:59 +0000 (01:31 +0000)]
Updated ripple effect.
Kent Sutherland [Sun, 5 Feb 2006 07:44:44 +0000 (07:44 +0000)]
Added a new core image ripple effect.
Kent Sutherland [Mon, 26 Dec 2005 06:42:05 +0000 (06:42 +0000)]
Using CFBundleName + CFBundleVersion instead of the weird shoft bundle version string.
Joseph Spiros [Tue, 6 Dec 2005 20:39:29 +0000 (20:39 +0000)]
Updating ITKit to use standard configuration names.
Kent Sutherland [Sat, 26 Nov 2005 17:53:26 +0000 (17:53 +0000)]
Changed controlKey display character, per Alex's request.
Joseph Spiros [Thu, 10 Nov 2005 02:00:27 +0000 (02:00 +0000)]
I've added a one second cache to the NSMenu proxy because otherwise the menu provider may be creating new instances on every method call, and when a menu is displayed, something like 24 methods are called, so that's 24 (potentially different) instances.
I also had the ITStatusItem directly set the cell's menu, rather than setting itself's menu, this way, everything will work fine if you change your mind and decide to use setMenu: instead of setMenuProvider:.
Joseph Spiros [Wed, 9 Nov 2005 23:18:03 +0000 (23:18 +0000)]
Adding support for menu providers to ITStatusItem using NSProxy subclass.
Joseph Spiros [Wed, 9 Nov 2005 21:20:26 +0000 (21:20 +0000)]
Adding API to ITStatusItem for callbacks to get dynamic menus.
Joseph Spiros [Fri, 30 Sep 2005 19:02:17 +0000 (19:02 +0000)]
Fixing project references due to the previous upgrade from .xcode to .xcodeproj.
Joseph Spiros [Tue, 9 Aug 2005 02:35:56 +0000 (02:35 +0000)]
Making ITAboutWindowController header public.
Joseph Spiros [Tue, 9 Aug 2005 02:31:36 +0000 (02:31 +0000)]
Updating the ITKit header to reference the change in name
of ITAboutBox to ITAboutWindowController.
Joseph Spiros [Tue, 9 Aug 2005 02:22:20 +0000 (02:22 +0000)]
Upgrading ITKit to Xcode 2.1 and fixing problems with
ITAboutBox, which has also been renamed to ITAboutWindowController.
Kent Sutherland [Fri, 5 Aug 2005 02:29:48 +0000 (02:29 +0000)]
Not worrying about that stupid clicky URL text field for now.
Kent Sutherland [Thu, 4 Aug 2005 17:50:52 +0000 (17:50 +0000)]
Added a new about box class. Added a text field that will eventually be clickable to go to a URL. Added the about box nib.
Joseph Spiros [Mon, 2 May 2005 16:24:10 +0000 (16:24 +0000)]
Fixing inconsistent method prototype and implementation of -sharedWindow in
the ITTransientStatusWindow class.
Kent Sutherland [Tue, 5 Apr 2005 01:46:06 +0000 (01:46 +0000)]
Finally fixed this piece of crap so it works on all monitors.
Joseph Spiros [Mon, 4 Apr 2005 22:03:21 +0000 (22:03 +0000)]
Fixing header imports.
Joseph Spiros [Thu, 3 Mar 2005 19:17:50 +0000 (19:17 +0000)]
I hereby decree that from this moment forward we will configure our Xcode
installations to use a shared build directory, eliminating the need for those
lame confusing problematic framework search paths (when combined with my
recent use of Xcode project references.
Joseph Spiros [Thu, 3 Mar 2005 18:15:06 +0000 (18:15 +0000)]
Changing project referencing of ITFoundation to reference the ITFoundation
xcode project which lets me do more complicated dependencies and also
lets me build everything with one click.
Joseph Spiros [Thu, 3 Mar 2005 17:45:59 +0000 (17:45 +0000)]
Some more code cleanup, converting spaces to tabs. Redid ITKit.h framework
header, and added ITLoginItem.h and .m which used to be a part of
ITFoundation. ITKit now links with ITFoundation, so to use ITKit, you must
use ITFoundation as well. I've added ITFoundation to ITKit's precompiled
prefix header.
Joseph Spiros [Thu, 3 Mar 2005 16:51:53 +0000 (16:51 +0000)]
Finished setting proper SVN properties on files and cleaned up some
localizations and the Showcase code layout.
Joseph Spiros [Thu, 3 Mar 2005 16:14:08 +0000 (16:14 +0000)]
Huge audit of ITKit, mostly everything has been updated to current coding
style and I've removed things that we don't need/that don't belong in ITKit
anymore. The only things really left untouched are the class files for
anything related to ITTSW.
Kent Sutherland [Mon, 20 Dec 2004 00:53:52 +0000 (00:53 +0000)]
Fixed multi-monitorness except with Pivot, which is only half fixed.
Kent Sutherland [Wed, 8 Dec 2004 18:41:30 +0000 (18:41 +0000)]
SplashScreen is always key now, to keep the progressbar blue.
Kent Sutherland [Wed, 1 Dec 2004 02:37:14 +0000 (02:37 +0000)]
Fixing the effects so they work on multiple monitors where the screen
origin isn't going to always be zero.
Added a setScreen and overrode -screen to the status window class.
Kent Sutherland [Wed, 24 Nov 2004 18:40:59 +0000 (18:40 +0000)]
Added ITSplashScreen stuff. Added ITSplashScreen.h to ITKit header.
Joseph Spiros [Tue, 26 Oct 2004 23:40:29 +0000 (23:40 +0000)]
Added an instance method to NSMenu that will remove all of the items in
the reciever. Also added an instance method to NSView that allows for
subview removal from the superview's point of view, including a check
that is often rewritten whenever needed. This should save a few lines of
code whenever this aspect is required.
Kent Sutherland [Thu, 7 Oct 2004 02:20:20 +0000 (02:20 +0000)]
Fixed the problem in NSFont where a badly named font will leak.
ITIconAndTextStatusWindow.m - Lucida Grande Bold changed to LucidaGrande-Bold
ITStatusItem.m - Lucida Grande changed to LucidaGrande
Controller.m - Lucida Grande Bold changed to LucidaGrande-Bold
Kent Sutherland [Sat, 25 Sep 2004 23:53:29 +0000 (23:53 +0000)]
Added a disable/enable method to the hotkey center
Kent Sutherland [Tue, 17 Aug 2004 22:25:09 +0000 (22:25 +0000)]
Fixed the effect number.
Kent Sutherland [Fri, 2 Jul 2004 03:39:25 +0000 (03:39 +0000)]
Spin & Zoom effect.
Kent Sutherland [Thu, 1 Jul 2004 02:59:24 +0000 (02:59 +0000)]
Changed hot key panel to allow longer hot key names
Kent Sutherland [Wed, 30 Jun 2004 03:21:15 +0000 (03:21 +0000)]
Added a new spin effect. Silly, but looks cool :)
Kent Sutherland [Tue, 29 Jun 2004 05:30:37 +0000 (05:30 +0000)]
New zoom effect.
Joseph Spiros [Sun, 27 Jun 2004 02:30:20 +0000 (02:30 +0000)]
Fixed a possible crasher where an ITMultilineTextFieldCell is treated as
an NSTextFieldCell, in having an NSString set as it's objectValue.
Previously, ITMultilineTextFieldCell assumed an NSArray as it's objectValue.
Joseph Spiros [Sat, 6 Mar 2004 07:03:45 +0000 (07:03 +0000)]
Adding the ITMultilineTextFieldCell work I've done so far...
Alexander Strange [Sat, 14 Feb 2004 05:25:03 +0000 (05:25 +0000)]
Disable non-English
Alexander Strange [Wed, 11 Feb 2004 03:49:36 +0000 (03:49 +0000)]
Another cleanup that doesn't seem to actually help
Kent Sutherland [Fri, 30 Jan 2004 21:34:11 +0000 (21:34 +0000)]
Changed the NSMenu category from NSMenuItem * to id <NSMenuItem>
Kent Sutherland [Thu, 22 Jan 2004 23:06:10 +0000 (23:06 +0000)]
Added sizing to the main status window class, and added a basic icon and
text status window.
Joseph Spiros [Thu, 25 Dec 2003 23:29:31 +0000 (23:29 +0000)]
Adding some new classes that ease access of Carbon/Mac-style resource files/forks.
These classes are also easily extensible to add support for getting native forms
of the data contained within various resources.
Also fixed some random warnings in Status Window code.
Matthew Judy [Wed, 3 Dec 2003 13:45:00 +0000 (13:45 +0000)]
Shadowless StatusWindow graphics, as well as an ITImageView which casts a shadow.
Matthew Judy [Wed, 3 Dec 2003 11:34:32 +0000 (11:34 +0000)]
Positioning Fixes. The window might still do some weirdness if you change its position when its appearing or vanishing, but the weirdness isn't as weird, and the window will recover and perform correctly on its next entrance or exit.
Matthew Judy [Mon, 24 Nov 2003 18:53:02 +0000 (18:53 +0000)]
This about does it. I want to do a couple more things, especially multiple screen support. With the way I've got this set up, it should be pretty easy, but I need sleep first. If you want it in there, I'll do it after some sleep.
Matthew Judy [Mon, 24 Nov 2003 07:46:39 +0000 (07:46 +0000)]
Positioning changes are now reflected properly by the prefs. When changing positions, effects will be disabled/changed accordingly. Position prefs are now reflected when the panel opens.
Matthew Judy [Sun, 23 Nov 2003 15:08:31 +0000 (15:08 +0000)]
Checking in improvements to the effect availability heuristic.
Matthew Judy [Sun, 23 Nov 2003 10:36:48 +0000 (10:36 +0000)]
Intermediary checkin, just to mark my place and back up, in case Panther decides to be an ass again.
Matthew Judy [Sat, 22 Nov 2003 14:26:26 +0000 (14:26 +0000)]
Intermediary checkin for effect list... more coming.
Matthew Judy [Thu, 20 Nov 2003 14:37:58 +0000 (14:37 +0000)]
Lots more stuff merged in. Added an ITImageView/ITImageCell object to allow smooth scaling, but it doesn't seem to be doing the trick. Nonetheless, MenuTunes is using it, and if we can get it to work, MT will simply pick up that benefit.
Matthew Judy [Thu, 20 Nov 2003 05:07:30 +0000 (05:07 +0000)]
Project fixes so that stuff builds, updates to the Background view, tweaks all over.
Matthew Judy [Wed, 19 Nov 2003 06:08:09 +0000 (06:08 +0000)]
File named changed. Noted in this log message.
Matthew Judy [Wed, 19 Nov 2003 06:03:03 +0000 (06:03 +0000)]
Fixing the project's missing files, and updating the background view for renaming
Matthew Judy [Wed, 19 Nov 2003 05:39:38 +0000 (05:39 +0000)]
Getting things in order for the bigger stuff...
Kent Sutherland [Fri, 14 Nov 2003 12:51:43 +0000 (12:51 +0000)]
Fixed pivot padding from the right.
Kent Sutherland [Fri, 14 Nov 2003 12:42:48 +0000 (12:42 +0000)]
Added pivot to the right side, except for a small position problem.
Joseph Spiros [Fri, 14 Nov 2003 10:45:26 +0000 (10:45 +0000)]
Fixing some build errors related to return types from undefined methods
(for methods that have different implementations under Jaguar and Panther)
Kent Sutherland [Fri, 14 Nov 2003 00:11:01 +0000 (00:11 +0000)]
The dissolve, cut and slides all work properly now, I hope :D
Kent Sutherland [Thu, 13 Nov 2003 21:25:47 +0000 (21:25 +0000)]
Added sliding in from all four corners both horizontal and vertical.
Joseph Spiros [Thu, 13 Nov 2003 16:30:15 +0000 (16:30 +0000)]
Silly Kent, the idea was to have the status windows slide out from the
right side of the screen, until the right most edge of said status window
is 32 pixels away from the right edge of the screen. Your code doesn't do
that. Your code slides it out from the right edge of the screen, until
the left edge of the status window hits the exact middle of the screen.
Bad, bad, bad, BAD Kent.
Anyway, Here's code that actually works! Took some work, and it might not
look the best, so feel free to update it's syntax (just make sure that
the outcome is the same, otherwise you die).
Oh, yeah, don't use NSLogs in things you commit. That's what ITDebugLog()
is for, if anything.
Kent Sutherland [Thu, 13 Nov 2003 12:43:13 +0000 (12:43 +0000)]
Weeeeeeeeee, from the right!
Joseph Spiros [Thu, 13 Nov 2003 06:30:37 +0000 (06:30 +0000)]
Removing support for multiple screens in ITTransientStatusWindow, being
as the current implementation is volitile with the way screens are
added/removed dynamically to a system. Considering that positioning is
more important anyway, and that if someone does set this to a screen, and
then that screen disappears, we'll have all sorts of problems, I'm
recommending we keep this functionality out until we can figure out a
better way of implementing it.
Joseph Spiros [Thu, 13 Nov 2003 02:30:49 +0000 (02:30 +0000)]
Fixing the project/target settings so that ITKitShowcase will build and run.
Joseph Spiros [Wed, 29 Oct 2003 03:59:05 +0000 (03:59 +0000)]
Updating ITKit project settings to target 10.2.
Joseph Spiros [Wed, 29 Oct 2003 03:48:04 +0000 (03:48 +0000)]
Updating ITKit to be an Xcode project.
Joseph Spiros [Tue, 28 Oct 2003 12:44:37 +0000 (12:44 +0000)]
-respondsToSelector is an instance method, not a class method, so I have
to fix my Panther fix of menu item indentation stuff.
Joseph Spiros [Tue, 28 Oct 2003 02:23:40 +0000 (02:23 +0000)]
Updating NSMenu category so that indentation methods use the
setIndentationLevel: method on NSMenuItems, introduced with Panther.
Joseph Spiros [Wed, 1 Oct 2003 19:19:55 +0000 (19:19 +0000)]
Updated ITButtonCell with custom drawing of title. Stupid NSButtonCell
not aligning things :(.
Matthew Judy [Wed, 1 Oct 2003 15:39:31 +0000 (15:39 +0000)]
Adding quick fix get-the-fuck-out-of-the-way positioning
Joseph Spiros [Tue, 30 Sep 2003 10:12:05 +0000 (10:12 +0000)]
"Fixed" ITButton... it's not REALLY fixed, as that's impossible, but it
looks and feels like it is, and it even has a kinda nice side effect...
Matthew Judy [Tue, 30 Sep 2003 06:26:16 +0000 (06:26 +0000)]
Checking in so Joe can work on view glitches.
Joseph Spiros [Sun, 28 Sep 2003 20:32:26 +0000 (20:32 +0000)]
Updating default indent level... 2 is too much, 1 is the way to go.
Kent Sutherland [Sun, 28 Sep 2003 01:06:56 +0000 (01:06 +0000)]
Fixed the menu indent.
Joseph Spiros [Sat, 27 Sep 2003 12:31:45 +0000 (12:31 +0000)]
Whoops! Forgot to declare the methods in the interface (ITCategory-NSMenu)
Joseph Spiros [Sat, 27 Sep 2003 12:30:36 +0000 (12:30 +0000)]
DAMN YOU PROJECT BUILDER FOR IMPORTING ONLY FOUNDATION!!!
Joseph Spiros [Sat, 27 Sep 2003 12:29:34 +0000 (12:29 +0000)]
Added category on NSMenu which supports indenting items (uses Carbon in
the backend)
Matthew Judy [Thu, 25 Sep 2003 11:28:51 +0000 (11:28 +0000)]
w00t. ITButton and ITButtonCell. Also, ITTextField is now correctly implemented, using its cell for all drawing.
Matthew Judy [Sun, 14 Sep 2003 06:59:39 +0000 (06:59 +0000)]
Adding ITTextFieldCell to the kit, for use in matrices, etc.
Joseph Spiros [Thu, 4 Sep 2003 02:28:10 +0000 (02:28 +0000)]
Adding easy constructor for creating ITKeyCombos from Plist Representations
Joseph Spiros [Thu, 4 Sep 2003 01:42:26 +0000 (01:42 +0000)]
Whoops... Fixing encoding of EffectSupport.txt
Joseph Spiros [Thu, 4 Sep 2003 01:36:01 +0000 (01:36 +0000)]
Adding HotKeys to ITKit... This is the new HotKey code by Quentin of
RogueAmoeba, added to ITKit with his permission. Also added support for
non-modifier FKeys as global HotKeys.
Matthew Judy [Mon, 14 Jul 2003 07:33:44 +0000 (07:33 +0000)]
Checking in ITKit changes of late
Matthew Judy [Thu, 24 Apr 2003 00:12:20 +0000 (00:12 +0000)]
Making bevel a non-window-moving area for now, due to a glitch with using it in AG.
Matthew Judy [Wed, 23 Apr 2003 14:11:53 +0000 (14:11 +0000)]
Whoops. Haha. :D Lemme just slip this fix in there.
Matthew Judy [Wed, 23 Apr 2003 13:42:20 +0000 (13:42 +0000)]
Tweaks to the bevel view. It sucks right now for a couple reasons... If it's not in a tab view, it glitches. No fucking clue why. I may have actually just fixed that with something i just did, but I found a way to put it in a tab view in AG and have it look fscking sweet. The other thing about the bevel view is that when you use it in IB, you have to make sure that its subview is NOT sized to fill it completely. Otherwise drawRect: doesn't get called.
Matthew Judy [Wed, 23 Apr 2003 12:18:34 +0000 (12:18 +0000)]
Adding a BevelView to the kit, for use in AG.
Matthew Judy [Tue, 15 Apr 2003 13:22:22 +0000 (13:22 +0000)]
Forgot to cancel the vanish timer if an ITTSW consumer manually vanishes a window set for delayed exit. Fixing now.
Matthew Judy [Mon, 14 Apr 2003 12:31:41 +0000 (12:31 +0000)]
HUGE ITTSW Checkin. For those only interested in the short version, it is as
follows: ITTransientStatusWindow is now feature complete except for positioning. All
currently planned effects work, and you can use the Showcase to play with them.
- Renamed the visibility state constants, removing the string "StatusWindow" from
them, since window visibility is a protocol not limited to ITTSW.
- Implemented ITSlideHorizontallyWindowEffect and ITSlideVerticallyWindowEffect.
This completes the 1.0 planned suite.
- Implemented a heuristic for effects to be able to release themselves when idle,
so that an effect can finish a transition smoothly, and release gracefully,
instead of crashing.
- Made all effects return the window to normal after vanish, so that they don't
have to worry about doing so when they appear. Some do anyway.
- Implemented timed exit, and the various logic to make the two exit modes work
seamlessly.
- Modified the Showcase Controller and nib to allow use and testing of all ITTSW's
features. Unavailable features are disabled. Removed the switch/case block and
used an if/else block instead. Switch/case sucks. Hard.
- Decided against a separate cancelVanishEffect. I like our way better, and I
think it's a better UE than Apple's, so... fuck Apple. Fuck them in their stupid
asses.
REMAINING:
----------
- Positioning
- MT Status Window Controller.
Should be able to complete at least one of those tomorrow. Positioning comes first.
Matthew Judy [Sun, 13 Apr 2003 15:19:26 +0000 (15:19 +0000)]
Fairly large ITTSW checkin.
- Created ITCutWindowEffect for simple appear and vanish without a
transition. Better than using nil in the ITTSW.
- Moved the concept of effect progress out of the effects and into the
window itself, as a method in the ITWindowMobility protocol (formerly
known as ITWindowPositioning).
- Moved the logic to start the vanish timer into ITTSW's setVisibility
callback method. If an effect sets the window's visibility to the
"Visible" state (having completely appeared, or completely canceled
vanishing), the timer will begin.
- Cleaned up a lot of code, and improved performance a bit. Looks even
better than before on my old dual 450... who knows, it might be good on a
G3 :)
Stuff that's left in the Kit side of MT's statuswindows:
- Implement vanish timer.
- Finalize ITSlide*allyWindowEffect
- ( Warning... long. )
Cancelling a window appearing should always use a reverse of the entry
effect. But sometimes, a different effect may be desired for cancelling
a vanishing window than the reverse of the exit effect. For example,
a window "Cuts" in, and begins to "Dissolve" out. As of now, cancelling
the dissolve out will cause a very fast dissolve back in, however, to
match Apple's style, a simple "cut" back in would be desired.
It's not as simple as always using an inverse of the entry effect to
cancel vanish. Some effects are too radically different (consider trying to
cancel a "Pivot" exit with the inverse of a "SlideHorizontally". It just
wouldn't work.
Personally, i think it's actually better to keep the heuristic as it
is, and in the case of "Cut" in / "Dissolve" out, fuck the way Apple does
it... Ours looks better. However, a third effect object could be
instantiated to handle the cancel vanish effect, which would be used for
that purpose if present. This is a big maybe, and is definitely not a
showstopper for MT FCS.
Matthew Judy [Sun, 13 Apr 2003 09:58:59 +0000 (09:58 +0000)]
Adding a better cancel job to the Pivot effect. Also redoing the showcase interface to ITTSW for simplicity and stress testing.