Fluid swipe and scrolling 10.7 style - cocoa

I'm looking to add two finger "fluid swiping" to my app. Anyone who has used the week view in the Calendar app that comes with OSX will have seen what I'm trying to do.
I have a scroll view, and I want to be able to use swipe gestures and scrolling to move the content view in the horizontal axis of my NSScrollView, ie a day or a week.
The video from WWDC 2011 titled "Scrolling, Swiping, Dragging: Now with more animation" was quite useful, and looks like it will be able to explain what I want to do, but unfortunately the sample code for PictureSwiper isn't provided with the video.
I'm aware that a newer version of PictureSwiper is avaliable, but it uses NSPageController and I'm really looking for the older Lion 10.7 way of handling things as I can't use NSPageController. Is it still possible to find the old PictureSwiper somewhere?
If not could someone explain how the PictureSwiper sample on Lion worked? I'm aware of the App note https://developer.apple.com/library/mac/#releasenotes/Cocoa/AppKitOlderNotes.html (search for "scrollWheel:") but that has only gone part of the way to explaining the kind of functionality I am after.
Many thanks for any help.
David.

For anyone looking to this for an answer I eventually used one of my "Developer Technical Support" queries that came with my paid Dev account to ask for the old code. A few days latter an Apple engineer emailed me the old Picture Swiper.
Now that I have seen the code the App note makes complete sense! Picture Swiper moves CALayers around, but in my case I just use NSClipView's scrollToPoint:.
Within the scroll handler I just do something like: (gestureAmount * columnWidth) + currentColumnIndexOffset.
Seems to work!

Related

Are there any visual differences between WKWebView and UIWebView?

I wanted to migrate away from the deprecated UIWebView in Xamarin Forms iOS, and I read online that WKWebView is now the default in Xamarin Forms 4.x, and I was currently in 3.6.0.x.
So I decided to update hoping that the Webview would automatically update for me, but I realized there is no way to tell because I don't know what, and if there even is a difference in how the webviews look. I've looked online but can't find any side by side pictures of the same app/interface using WK vs. UI. Is there a difference at all?
The only difference I saw after updating, was that on one of the pages, the loading icon wouldn't disappear whereas it did after a couple of seconds in UI.
Thanks!
Welcome to StackOverflow! :)
The easiest way to answer this question is simply going to be to test it. To my knowledge, both UIWebView and WKWebView use the exact same underlying WebKit code/engine to render HTML content. There may be differences due to separate defaults and properties that one has vs. the other, but for the most part, they should be identical. But you shouldn't take my word for it! If you can, give it a try.

3 finger swipe gesture

In an iOS app I've seen that swiping with three fingers from top to bottom triggers an action.
I'm trying to do the same but even cross platform.
Since the gesture topic seems to be an ingoing development at Xamarin, I would like to ask if this gesture recognition is already built-in in the current Xamarin.Forms version (and cross-platform), or if I have to use a third party solution or try to program it myself.
I haven't been able to find a clear statement as the discussions and projects are so widely spread and perhaps not up to date anymore.
I created a small sample to how to add swipe gesture in Xamarin forms take a look on this. https://github.com/ricardoromo/SwipeGestureEffectXF, if you have any question feel free to ask.

Develop an iPhoto-like cocoa app for mac OSX

I plan to develop a mac OSX app that has a UI similar to that of iPhoto - a panel on the left and a grid view of images on the right. I am thinking of using NSSplitView to create two panels and using NSCollectionView for the grid.
I guess this must be a pretty popular and common UI pattern for mac apps. I am new to cocoa development. Can anyone with previous experience point me to any related cocoa code samples and design document?
Thanks a lot in advance.
N.B.
This missing piece here is an NSOutlineView in source list mode, put that in your left pane. But otherwise seems like a good place to start.
You might also be interested to see what the developer of Sonora approached this problem; although this is a music app the layout is almost the same.

How to make an NSPanel immovable

Hey all, quick question that has been bugging me about NSPanel. I like the look of The NSPanel HUD but for the project I am doing I need the Panel to not be moved. Does anyone know of any possible solutions to make it were my NSPanel cannot be moved at all but maintain its buttons interactivity? I've been searching for any questions similar to this for awhile now. Any insight on the issue would be helpful! Thanks.
Don't forget to look in superclasses. A panel is a kind of window, and since Mac OS X 10.6, it's possible to set a window's movable property to NO.
I'm with Dave DeLong, though: I hope you have a good reason to break this functionality. Users expect to be able to move windows, especially those with title bars and HUD windows by their backgrounds, out of their way. And remember, you're not the only application on the system; the user may have something important to get to in a window in another application.

Gray NSTableView à la iTunes

How can I achieve the dark gray NSTableView look (used in iTunes, Delicious Library, etc.) in my own application?
I always thought this was an option in NSTableView (or NSTableHeaderView) but I never tried actually doing it.
After hours of searching, I'm pretty convinced that no such option exists, and that I need to do my own drawing.
Before going any further, I just want to make sure there isn't an (undocumented) API for this, and that I'm not missing something.
A good friend of mine created a whole control kit called BGHUDAppKit. It's for the new HUD stuff that Apple introduced a while ago. I believe his controls are themable, and they come with source. I personally haven't done anything with Cocoa, but he has and I know he could answer some questions. Unfortunately, he doesn't lurk here, so you'll have to contact him. I'll see if I can get him to come here. :)
Look at this page under iTableColumnHeader. Also there are many custom UI elements similar to Apple's

Resources