1 comment so far
Version 1.0.1 was released in the Mac App Store on 10 May 2011. While that version was working through the approval process at Apple I was working on the updates for the next version. I’m pleased to say that the changes have gone well and I think that TrafficCamNZ users will be pleased with this update. Here’s a peek at what’s coming: * Image update activity in progress is displayed now indicated for each image * Stability and performance improvements related to memory handling * The Main window will remain the active window after splash screen dissapears * Clicking an image in the main window will cause it to refresh
* Right clicking an image in the main window will zoom the image to full screen and refresh the image
And the big new feature in this release is: TIMELAPSE CAPTURE
TimeLapse capture of cameras generate quicktime movies – for each camera that you wish to perform a timelapse capture on you define how many seconds to to wait before the next capture – you can set up more than one camera to be captured in a single run. You stop the capture by clicking the stop button and the movie for each camera is created.
Before I submit this update to the Apple for approval I need to conduct some performance testing. In the mean time I’ve pasted a screenshot of TrafficCamNZ and the new TimeLapse window below. You may have to click on the image to see it full size.
I hope you like the updates so far. I you have comments/suggestions leave them here or e-mail them direct to me. I would also be happy to receive new cameras pre-loaded in the TrafficCamNZ XML file format for inclusion into the main data feed. So if you have something, please get in contact.
There is a update to the Mac OS TrafficCamNZ application. It is currently being reviewed by Apple. The enhancements in this release include:
- Smoother updating of images on screen as they arrive – image positions are pre-determined
- Fixed an image retrieval cacheing issue – now the most recently available image will always be requested from the hosting server
- Fixed the horizontal page scrolling in the main window when clicking on the scrollbar, it now scrolls whole images
- Stability and performance improvements related to memory handling
Even greater news!
I have continued to work on the way images are retrieved from the internet and displayed on screen. Activity in progress for each image being retrieved is displayed within each image and the handling of image refreshes are much improved which should result in better performance. I’ve got some more work to do on this prior to submitting the update.
Tags: NSImageView, NSProgressIndicator, programmatically
add a comment
I have been battling to get NSProgressIndicator overlaid on my NSImageView programmatically. I didn’t have a xib (nib) file for this so the challenge was all mine. The thing is that the NSImageView is resized along the way and I wanted the NSProgressIndicator to remain centered in the image… and I didn’t want to be the one responsible for shifting it around. When I managed to get the NSProgressIndicator visible eventually and almost working I found there to be a strange rectangle around the outside of the spinning progress animation… it turned out that when I resized the image this tended to shift around a bit… this became my final clue to solving the puzzle the issue was to do with my configuration of the autoresizingmask.
So… in case you ever have a similar need… I would like to share this snippet of code with you. Hopefully this will save you some considerable time.
float default_width = 30.0; float default_height = 30.0; NSRect initialFrame = NSMakeRect(0.0, 0.0, default_width, default_height); itemImageView = [[NSButton alloc] init]; [itemImageView setFrame:initialFrame]; [itemImageView setToolTip:@"Click the image for full screen, click again to return to normal size."]; [itemImageView setTarget:self]; [itemImageView setAction:@selector(imageClicked:)]; [itemImageView setBordered:NO]; [itemImageView setFrame:self.frame]; [itemImageView setAutoresizesSubviews:TRUE]; [itemImageView.cell setImageScaling:NSImageScaleAxesIndependently]; float new_width = 500.0; float new_height = 500.0; NSRect newFrame = NSMakeRect(0.0, 0.0, new_width, new_height); [itemImageView setFrame:newFrame]; [itemImageView setImage:itemImageViewOriginal.image]; [self addSubview:itemImageView]; refreshInProgressActivityIndicator = [[NSProgressIndicator alloc] init]; NSRect newProgressFrame = NSMakeRect(itemImageView.bounds.size.width / 2.0, itemImageView.bounds.size.height / 2.0, 0.0, 0.0); [refreshInProgressActivityIndicator setFrame:newProgressFrame]; [refreshInProgressActivityIndicator setStyle:NSProgressIndicatorSpinningStyle]; [refreshInProgressActivityIndicator setIndeterminate:YES]; [refreshInProgressActivityIndicator setDisplayedWhenStopped:FALSE]; [refreshInProgressActivityIndicator setHidden:NO]; [refreshInProgressActivityIndicator setControlSize:NSRegularControlSize]; [refreshInProgressActivityIndicator sizeToFit]; [refreshInProgressActivityIndicator setAutoresizingMask:(NSViewMaxXMargin | NSViewMinXMargin | NSViewMaxYMargin | NSViewMinYMargin)]; // [refreshInProgressActivityIndicator setUsesThreadedAnimation:YES]; [refreshInProgressActivityIndicator startAnimation:self]; [refreshInProgressActivityIndicator stopAnimation:self]; [itemImageView addSubview:refreshInProgressActivityIndicator];
The image above shows the NSProgressIndicator in action. You will have to click on the image to enhance your viewing experience.
add a comment
Updates have been submitted to Apple for Approval/Release to the following Applications:
TrafficCamNZ (runs on iPhone, iPad, iPod Touch).
TrafficCamNZ Free (runs on iPhone, iPad, iPod Touch).
TrafficCamNZ (runs on Macintosh Desktop).
There are 2 x significant changes incorporated:
1. A minor memory leak has been found and fixed.
2. The application will now always request the most current image from the web servers / ISP proxy servers / your local machine cache. Previously you could receive an image that was not necessarily the latest, behaviour was inconsistent.
There are other minor improvements in different areas to the i versions and the desktop version which correct some interface irritations. Additionally the Free version incorporates a updated built-in datafile.
Hopefully these updated will be approved and released soon.