Search Results

Search found 29791 results on 1192 pages for 'iphone os 4 0'.

Page 422/1192 | < Previous Page | 418 419 420 421 422 423 424 425 426 427 428 429  | Next Page >

  • How to check whether data is stored in core data ?

    - by Warrior
    i am new to iphone development. I am trying to save a static values in to core data database.I want to check whether the data is stored to the database, i am not able to retrieve the data from the database, so i want to check myself whether i made mistake in retrieving the data or in storing the data itself. NSManagedObjectContext *context = [self managedObjectContext]; NSManagedObject *event = [NSEntityDescription insertNewObjectForEntityForName:@"Event" inManagedObjectContext:context]; [event setValue:fname forKey:@"firstname"]; [event setValue:lname forKey:@"lastname"]; i put the above code in the submit button of my formclass. when i restart the app i fetch the data in main view class using this code NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init]; NSEntityDescription *entity = [NSEntityDescription entityForName:@"Event" inManagedObjectContext:self.managedObjectContext]; [fetchRequest setEntity:entity]; NSError *error; NSArray *items = [self.managedObjectContext executeFetchRequest:fetchRequest error:&error]; for (Event *info in items) { NSLog(@"the selected value is : %@", [info valueForKey:@"firstname"]); } [fetchRequest release]; i dont know where i am going wrong.Please help me out.Thanks.

    Read the article

  • LLVM/Clang bug found in convenience method and NSClassFromString(...) alloc/release

    - by pirags
    I am analyzing Objective-C iPhone project with LLVM/Clang static analyzer. I keep getting two reported bugs, but I am pretty sure that the code is correct. 1) Convenience method. + (UILabel *)simpleLabel { UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(100, 10, 200, 25)]; label.adjustsFontSizeToFitWidth = YES; [label autorelease]; // Object with +0 retain counts returned to caller where a +1 (owning) retain count is expected. return label; } 2) The [NSClassFromString(...) alloc] returns retainCount + 1. Am I right? Class detailsViewControllerClass = NSClassFromString(self.detailsViewControllerName); UIViewController *detailsViewController = [[detailsViewControllerClass alloc] performSelector:@selector(initWithAdditive:) withObject:additive]; [self.parentController.navigationController pushViewController:detailsViewController animated:YES]; [detailsViewController release]; // Incorrect decrement of the reference count of an object is not owned... Are these some Clang issues or I am totally mistaken in these both cases?

    Read the article

  • Nokia et Intel lancent la première version de Meego, l'OS pour les appareils mobiles issu de la fusi

    Maemo et moblin sont heureux de vous présenter leur premier bébé Meego[IMG]http://meego.com/sites/all/files/users/u3/peep_arms.png[/IMG] Pour ceux qui commence à me prendre pour fou, le 15 fèvrier dernier, nokia et Intel on annoncé lors du "Mobile World Congress" un partenariat pour le développement d'un nouvel OS mobile : Meego. Une combinaison de leurs OS Maemo (nokia) et moblin (Intel). Où Qt est le toolkit officiel [IMG]http://meego.c...

    Read the article

  • HTC lance le HTC One M8 for Windows sous Windows Phone 8.1, l'OS mobile de Microsoft et Android sur un même smartphone ?

    HTC lance le HTC One M8 for Windows sous Windows Phone 8.1 l'OS de Microsoft et Android sur un même smartphone ?Décidément, Windows Phone ne compte pas se laisser abattre par le monopole d'Android et d'Apple. Ce mardi 19 août, HTC vient de lancer un tout nouveau smartphone embarquant l'OS mobile de Microsoft. Dénommé HTC One M8 for Windows, ce nouveau membre de la famille HTC 8X est la copie conforme du HTC One M8, en recourant à la même plateforme matérielle. D'ailleurs Microsoft ironise sur...

    Read the article

  • Un représentant d'Intel très confiant sur l'avenir de MeeGo, Nokia aurait augmenté les salaires des employés travaillant sur l'OS

    Un représentant d'Intel très confiant sur l'avenir de MeeGo Nokia aurait augmenté les salaires des employés travaillant sur l'OS Peter Biddle, ancien employé emblématique de Microsoft actuellement manager général des produits et services chez Intel, s'est exprimé sur la controverse créée par l'annonce du partenariat stratégique entre Nokia et Microsoft. Selon lui, son impact serait très exagéré sur l'avenir de MeeGo. D'après Biddle, MeeGo a beaucoup de potentiel à long terme et peut toujours prétendre à la troisième place du marché des OS mobiles derrière Android et iOS. La possibilité de dév...

    Read the article

  • Windows Embedded Standard 8 : la CTP 2 disponible, 6.000 développeurs utiliseraient déjà l'OS embarqué dérivé de Windows 8

    Windows Embedded Standard 8 : la deuxième CTP disponible Plus de 6 000 développeurs utilisent déjà l'OS embarqué dérivé de Windows 8 Mise à jour du 07/06/12 Hier, au salon Computex de Taïwan, Steven Guggenheimer, vice-président du service OEM de Microsoft, est monté sur scène pour présenter les dernières technologies de Microsoft sur les « systèmes intelligents » (appareils qui embarquent un OS et qui permettent de se connecter à des terminaux spécialisés ou à des services en ligne comme des serveurs distants ou des bases de données). Il en a profité pour annoncer la disponibilité de la deuxième community technology preview (CTP) de Windows Embedded Standard 8...

    Read the article

  • BlackBerry 10 : premières fonctionnalités et premières images exclusives de l'OS fondé sur QNX qui doit sauver RIM

    BlackBerry 10 : premières fonctionnalités et premières images exclusives Du futur OS mobile qui doit sauver RIM RIM a profité de sa conférence pour développeurs, le BlackBerry Jam, de passage à Paris pour dévoiler les premières informations sur son prochain OS. Si certains participants sont repartis avec des téléphones expérimentaux, des BlackBerry Dev Alpha - mélange de tablette PlayBook miniature et d'iPhone sans aucun bouton - ces appareils ne donnent cependant pas beaucoup d'indices sur ce que sera le système. Ces appareils ne sont en effet équipés que d'un simple navigateur. C'est en aparté que David Derrida, Directeur produit chez RIM France, a fait une première démon...

    Read the article

  • Apple publie la Beta 2 d'OS X 10.10 Yosemite qui reprend l'essentiel des nouveautés de la Developper Preview 6

    Apple publie la Beta 2 d'OS X 10.10 Yosemite qui reprend l'essentiel des nouveautés de la Developper Preview 6 Depuis hier soir sur Apple a rendu disponible en téléchargement la bêta 2 de d'OS X 10.10 Yosemite. Un mois seulement après la première bêta, cette mouture reprend l'essentiel des améliorations de l'édition Developer Preview 6, dont disposent les développeurs depuis quelques jours. Parmi les nouveautés reprises de Developer Preview 6 figurent une option dans Safari pour afficher l'adresse...

    Read the article

  • Oracle sort Solaris 11 pour les architectures SPARC et x86 et l'annonce comme le "premier OS Cloud"

    Oracle sort Solaris 11 pour les architectures SPARC et x86 Et l'annonce comme le "premier OS Cloud" Mise à jour du 10 novembre 2011 par Idelways Le grand chantier de Sun, puis d'Oracle Solaris 11 est enfin achevé. L'implémentation Unix au nom de code « Nevada » sort pour les architectures Sparc et x86 et s'annonce par ses créateurs comme « le premier OS Cloud ». Cette communication d'Oracle autour de Solaris 11 s'inscrit dans le sillage de son ado...

    Read the article

  • Windows Phone : Microsoft sort un Toolkit additionnel pour ajouter de nouveaux contrôles aux applications des version 7 et 8 de l'OS

    Windows Phone : Microsoft sort un nouveau « Toolkit » additionnel Qui permet d'ajouter des contrôles aux applications des version 7 et 8 de l'OS Microsoft vient de rendre disponible son « Toolkit » pour Windows Phone. A ne pas confondre avec le SDK de Windows Phone 8, cette boite à outils s'adresse aussi bien aux versions 7 que 8 de l'OS mobile. Il s'agit en effet d'un un package additionnel de contrôles à intégrer dans vos applications. A noter que l'installation se fait exclusivement via NuGet. Voici quelques exemples parmi les 14 nouveaux contrôles :

    Read the article

  • Windows Embedded 8 sortira en mars 2013, Microsoft publie la Roadmap et une préversion de son OS embarqué, fondé sur Windows 8

    Windows Embedded Standard 8 : la deuxième CTP disponible Plus de 6 000 développeurs utilisent déjà l'OS embarqué dérivé de Windows 8 Mise à jour du 07/06/12 Hier, au salon Computex de Taïwan, Steven Guggenheimer, vice-président du service OEM de Microsoft, est monté sur scène pour présenter les dernières technologies de Microsoft sur les « systèmes intelligents » (appareils qui embarquent un OS et qui permettent de se connecter à des terminaux spécialisés ou à des services en ligne comme des serveurs distants ou des bases de données). Il en a profité pour annoncer la disponibilité de la deuxième community technology preview (CTP) de Windows Embedded Standard 8...

    Read the article

  • Projet Magenta : un clone d'iOS voit le jour, une développeuse reconstruit un iPhone OS 1 libre et matériel-agnostique

    Projet Magenta : un clone d'iOS voit le jour Une développeuse reconstruit un iPhone OS 1 libre et matériel-agnostique La domination des OS mobiles est depuis quelque temps cloîtrée à un triumvirat de tête qui semble accaparer innovation et parts de marché : Android, iOS et Windows Phone. Une percée remarquable d'un nouveau système peut paraître improbable, sauf si le challenger venait à naître de l'un de ces mastodontes du marché. Non, il ne s'agit pas de l'annonce fantasmatique d'un fork d'Android, mais d'u...

    Read the article

  • Google publie le code source d'Android 4, le kit de développement natif de l'OS supporte désormais les API de cette version

    Google publie le code source d'Android 4 Le kit de développement natif de l'OS supporte désormais les API de cette version Sur la mailing-list d'Android, un ingénieur de Google annonce la publication progressive du code source d'Ice Cream Sandwish sur son serveur Git public, d'où il peut être librement téléchargé. Cette ouverture constitue un pas significatif pour Android, car il s'agit de la première fois qu'une base de code de l'OS, adaptée aux tablettes, soit accessible. Android 4 représente un environnement unifié pour les s...

    Read the article

  • Intel veut accélérer la mise sur le marché de MeeGo et présente une tablette équipée de son OS mobile développé avec Nokia

    Intel veut accélérer la mise sur le marché de MeeGo Et présente une tablette équipée de son OS mobile développé avec Nokia En collaboration avec Hinault Romarick A l'occasion du Mobile World Congress 2011 de Barcelone, Intel a publié une démonstration filmée de son OS mobile open-source MeeGo s'exécutant sur une tablette. Le constructeur, partenaire de Nokia dans le développement du système d'exploitation, renouvelle ainsi son engagement dans le projet. Une vidéo sous forme de réponse quelques jours après le choix de Windows Phone 7 par Nokia pour équiper sa prochaine gé...

    Read the article

  • Windows XP : une modification du registre permettrait de recevoir des mises à jour en faisant passer l'OS pour Windows Embedded POSReady 2009

    Windows XP : une modification du registre permettrait de recevoir des mises à jour gratuitement en faisant passer l'OS pour Windows Embedded POSReady 2009Windows XP est depuis pratiquement un mois à la merci des pirates, qui peuvent exploiter les failles du système d'exploitation qui ne seront plus corrigées par Microsoft. Pourtant, l'OS demeure encore très utilisé.Certaines organisations, notamment le gouvernement du Royaume-Uni ou encore le fisc américain se seraient tournées vers un support...

    Read the article

  • Microsoft défend Windows 8 suite aux accusations de la télévision d'Etat chinoise sur l'exploitation de l'OS par la NSA pour espionner

    Microsoft défend Windows 8 suite aux accusations de la télévision d'Etat chinoise sur l'exploitation de l'OS par la NSA pour espionnerWindows 8 est sûr et ne partage avec aucun gouvernement les informations sur ses utilisateurs. C'est le message fort qu'adresse Microsoft à la Chine suite à la diffusion d'un reportage sur le média d'État chinois CCTV, remettant en cause la sécurité de l'OS.La Chine et Microsoft sont dans un conflit depuis que la société a rejeté la requête du gouvernement chinois...

    Read the article

  • Chrome : Google continuera le support du navigateur sur XP au moins jusqu'en 2015, un an après l'arrêt officiel du support de l'OS

    Chrome : Google continuera le support du navigateur sur XP au moins jusqu'en 2015, un an après l'arrêt officiel du support de l'OS En dépit de l'annonce faite par Microsoft d'arrêter le support de Windows XP le 8 avril 2014, Google a annoncé prolonger le support de Chrome sur l'OS d'au moins un an. Ainsi, jusqu'en avril 2015, Google continuera de proposer des mises à jour et correctifs de sécurité pour Chrome.Rappelons que NetApplication situe encore la part des utilisateurs Windows XP à plus...

    Read the article

  • WWDC : Apple présente OS X 10.10 avec un nouveau design et plusieurs nouveautés, Yosemite fait un pas de plus dans le rapprochement avec iOS

    WWDC : Apple dévoile OS X 10.10 avec un nouveau design et plusieurs nouveautés Yosemite fait un pas de plus dans le rapprochement avec iOSOS X aura également droit à une mise jour. À la suite d'iOS 8, Apple a présenté la prochaine version de son système d'exploitation pour les ordinateurs Mac.Baptisé « Yosemite », OS X 10.10 introduit une nouvelle interface utilisateur, une intégration plus poussée avec les dispositifs sous iOS, mais également un lot de nouvelles fonctionnalités pour offrir un...

    Read the article

  • Problems extracting information from RSS feed description field

    - by Graeme
    Hi, I've built an iPhone application using the parsing code from the TopSongs sample iPhone application. I've hit a problem though - the feed I'm trying to parse data from doesn't have a separate field for every piece of information (i.e. if it was for a feed about dogs, all the information such as dog type, dog age and dog price is contained in the feed. However, the TopSongs app relies on information having its own tags, so instead of using it uses and . So my question is this. How do I extract this information from the description field so that it can be parsed using the TopSongs parser? Can you somehow extract the dog age, price and type information using Yahoo Pipes and use that RSS feed for the feed? Or is there code that I can add to do it in application? Update: To view the code of my application parser (based on the TopSongs Core Data Apple provided application, see below. Here's a sample of one item from the the actual RSS feed I'm using (the description is longer, and has status,size, and a couple of other fields, but they're all formatted the same.: <item> <title>MOE, MARGRET STREET</title> <description> <b>District/Region:</b>&nbsp;REGION 09</br><b>Location:</b>&nbsp;MOE</br><b>Name:</b>&nbsp;MARGRET STREET</br></description> <pubDate>Thu,11 Mar 2010 05:43:03 GMT</pubDate> <guid>1266148</guid> </item> /* File: iTunesRSSImporter.m Abstract: Downloads, parses, and imports the iTunes top songs RSS feed into Core Data. Version: 1.1 Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Inc. ("Apple") in consideration of your agreement to the following terms, and your use, installation, modification or redistribution of this Apple software constitutes acceptance of these terms. If you do not agree with these terms, please do not use, install, modify or redistribute this Apple software. In consideration of your agreement to abide by the following terms, and subject to these terms, Apple grants you a personal, non-exclusive license, under Apple's copyrights in this original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the Apple Software, with or without modifications, in source and/or binary forms; provided that if you redistribute the Apple Software in its entirety and without modifications, you must retain this notice and the following text and disclaimers in all such redistributions of the Apple Software. Neither the name, trademarks, service marks or logos of Apple Inc. may be used to endorse or promote products derived from the Apple Software without specific prior written permission from Apple. Except as expressly stated in this notice, no other rights or licenses, express or implied, are granted by Apple herein, including but not limited to any patent rights that may be infringed by your derivative works or by other works in which the Apple Software may be incorporated. The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE OR IN COMBINATION WITH YOUR PRODUCTS. IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE, REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Copyright (C) 2009 Apple Inc. All Rights Reserved. */ #import "iTunesRSSImporter.h" #import "Song.h" #import "Category.h" #import "CategoryCache.h" #import <libxml/tree.h> // Function prototypes for SAX callbacks. This sample implements a minimal subset of SAX callbacks. // Depending on your application's needs, you might want to implement more callbacks. static void startElementSAX(void *context, const xmlChar *localname, const xmlChar *prefix, const xmlChar *URI, int nb_namespaces, const xmlChar **namespaces, int nb_attributes, int nb_defaulted, const xmlChar **attributes); static void endElementSAX(void *context, const xmlChar *localname, const xmlChar *prefix, const xmlChar *URI); static void charactersFoundSAX(void *context, const xmlChar *characters, int length); static void errorEncounteredSAX(void *context, const char *errorMessage, ...); // Forward reference. The structure is defined in full at the end of the file. static xmlSAXHandler simpleSAXHandlerStruct; // Class extension for private properties and methods. @interface iTunesRSSImporter () @property BOOL storingCharacters; @property (nonatomic, retain) NSMutableData *characterBuffer; @property BOOL done; @property BOOL parsingASong; @property NSUInteger countForCurrentBatch; @property (nonatomic, retain) Song *currentSong; @property (nonatomic, retain) NSURLConnection *rssConnection; @property (nonatomic, retain) NSDateFormatter *dateFormatter; // The autorelease pool property is assign because autorelease pools cannot be retained. @property (nonatomic, assign) NSAutoreleasePool *importPool; @end static double lookuptime = 0; @implementation iTunesRSSImporter @synthesize iTunesURL, delegate, persistentStoreCoordinator; @synthesize rssConnection, done, parsingASong, storingCharacters, currentSong, countForCurrentBatch, characterBuffer, dateFormatter, importPool; - (void)dealloc { [iTunesURL release]; [characterBuffer release]; [currentSong release]; [rssConnection release]; [dateFormatter release]; [persistentStoreCoordinator release]; [insertionContext release]; [songEntityDescription release]; [theCache release]; [super dealloc]; } - (void)main { self.importPool = [[NSAutoreleasePool alloc] init]; if (delegate && [delegate respondsToSelector:@selector(importerDidSave:)]) { [[NSNotificationCenter defaultCenter] addObserver:delegate selector:@selector(importerDidSave:) name:NSManagedObjectContextDidSaveNotification object:self.insertionContext]; } done = NO; self.dateFormatter = [[[NSDateFormatter alloc] init] autorelease]; [dateFormatter setDateStyle:NSDateFormatterLongStyle]; [dateFormatter setTimeStyle:NSDateFormatterNoStyle]; // necessary because iTunes RSS feed is not localized, so if the device region has been set to other than US // the date formatter must be set to US locale in order to parse the dates [dateFormatter setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"US"] autorelease]]; self.characterBuffer = [NSMutableData data]; NSURLRequest *theRequest = [NSURLRequest requestWithURL:iTunesURL]; // create the connection with the request and start loading the data rssConnection = [[NSURLConnection alloc] initWithRequest:theRequest delegate:self]; // This creates a context for "push" parsing in which chunks of data that are not "well balanced" can be passed // to the context for streaming parsing. The handler structure defined above will be used for all the parsing. // The second argument, self, will be passed as user data to each of the SAX handlers. The last three arguments // are left blank to avoid creating a tree in memory. context = xmlCreatePushParserCtxt(&simpleSAXHandlerStruct, self, NULL, 0, NULL); if (rssConnection != nil) { do { [[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate distantFuture]]; } while (!done); } // Display the total time spent finding a specific object for a relationship NSLog(@"lookup time %f", lookuptime); // Release resources used only in this thread. xmlFreeParserCtxt(context); self.characterBuffer = nil; self.dateFormatter = nil; self.rssConnection = nil; self.currentSong = nil; [theCache release]; theCache = nil; NSError *saveError = nil; NSAssert1([insertionContext save:&saveError], @"Unhandled error saving managed object context in import thread: %@", [saveError localizedDescription]); if (delegate && [delegate respondsToSelector:@selector(importerDidSave:)]) { [[NSNotificationCenter defaultCenter] removeObserver:delegate name:NSManagedObjectContextDidSaveNotification object:self.insertionContext]; } if (self.delegate != nil && [self.delegate respondsToSelector:@selector(importerDidFinishParsingData:)]) { [self.delegate importerDidFinishParsingData:self]; } [importPool release]; self.importPool = nil; } - (NSManagedObjectContext *)insertionContext { if (insertionContext == nil) { insertionContext = [[NSManagedObjectContext alloc] init]; [insertionContext setPersistentStoreCoordinator:self.persistentStoreCoordinator]; } return insertionContext; } - (void)forwardError:(NSError *)error { if (self.delegate != nil && [self.delegate respondsToSelector:@selector(importer:didFailWithError:)]) { [self.delegate importer:self didFailWithError:error]; } } - (NSEntityDescription *)songEntityDescription { if (songEntityDescription == nil) { songEntityDescription = [[NSEntityDescription entityForName:@"Song" inManagedObjectContext:self.insertionContext] retain]; } return songEntityDescription; } - (CategoryCache *)theCache { if (theCache == nil) { theCache = [[CategoryCache alloc] init]; theCache.managedObjectContext = self.insertionContext; } return theCache; } - (Song *)currentSong { if (currentSong == nil) { currentSong = [[Song alloc] initWithEntity:self.songEntityDescription insertIntoManagedObjectContext:self.insertionContext]; } return currentSong; } #pragma mark NSURLConnection Delegate methods // Forward errors to the delegate. - (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error { [self performSelectorOnMainThread:@selector(forwardError:) withObject:error waitUntilDone:NO]; // Set the condition which ends the run loop. done = YES; } // Called when a chunk of data has been downloaded. - (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data { // Process the downloaded chunk of data. xmlParseChunk(context, (const char *)[data bytes], [data length], 0); } - (void)connectionDidFinishLoading:(NSURLConnection *)connection { // Signal the context that parsing is complete by passing "1" as the last parameter. xmlParseChunk(context, NULL, 0, 1); context = NULL; // Set the condition which ends the run loop. done = YES; } #pragma mark Parsing support methods static const NSUInteger kImportBatchSize = 20; - (void)finishedCurrentSong { parsingASong = NO; self.currentSong = nil; countForCurrentBatch++; // Periodically purge the autorelease pool and save the context. The frequency of this action may need to be tuned according to the // size of the objects being parsed. The goal is to keep the autorelease pool from growing too large, but // taking this action too frequently would be wasteful and reduce performance. if (countForCurrentBatch == kImportBatchSize) { [importPool release]; self.importPool = [[NSAutoreleasePool alloc] init]; NSError *saveError = nil; NSAssert1([insertionContext save:&saveError], @"Unhandled error saving managed object context in import thread: %@", [saveError localizedDescription]); countForCurrentBatch = 0; } } /* Character data is appended to a buffer until the current element ends. */ - (void)appendCharacters:(const char *)charactersFound length:(NSInteger)length { [characterBuffer appendBytes:charactersFound length:length]; } - (NSString *)currentString { // Create a string with the character data using UTF-8 encoding. UTF-8 is the default XML data encoding. NSString *currentString = [[[NSString alloc] initWithData:characterBuffer encoding:NSUTF8StringEncoding] autorelease]; [characterBuffer setLength:0]; return currentString; } @end #pragma mark SAX Parsing Callbacks // The following constants are the XML element names and their string lengths for parsing comparison. // The lengths include the null terminator, to ensure exact matches. static const char *kName_Item = "item"; static const NSUInteger kLength_Item = 5; static const char *kName_Title = "title"; static const NSUInteger kLength_Title = 6; static const char *kName_Category = "category"; static const NSUInteger kLength_Category = 9; static const char *kName_Itms = "itms"; static const NSUInteger kLength_Itms = 5; static const char *kName_Artist = "description"; static const NSUInteger kLength_Artist = 7; static const char *kName_Album = "description"; static const NSUInteger kLength_Album = 6; static const char *kName_ReleaseDate = "releasedate"; static const NSUInteger kLength_ReleaseDate = 12; /* This callback is invoked when the importer finds the beginning of a node in the XML. For this application, out parsing needs are relatively modest - we need only match the node name. An "item" node is a record of data about a song. In that case we create a new Song object. The other nodes of interest are several of the child nodes of the Song currently being parsed. For those nodes we want to accumulate the character data in a buffer. Some of the child nodes use a namespace prefix. */ static void startElementSAX(void *parsingContext, const xmlChar *localname, const xmlChar *prefix, const xmlChar *URI, int nb_namespaces, const xmlChar **namespaces, int nb_attributes, int nb_defaulted, const xmlChar **attributes) { iTunesRSSImporter *importer = (iTunesRSSImporter *)parsingContext; // The second parameter to strncmp is the name of the element, which we known from the XML schema of the feed. // The third parameter to strncmp is the number of characters in the element name, plus 1 for the null terminator. if (prefix == NULL && !strncmp((const char *)localname, kName_Item, kLength_Item)) { importer.parsingASong = YES; } else if (importer.parsingASong && ( (prefix == NULL && (!strncmp((const char *)localname, kName_Title, kLength_Title) || !strncmp((const char *)localname, kName_Category, kLength_Category))) || ((prefix != NULL && !strncmp((const char *)prefix, kName_Itms, kLength_Itms)) && (!strncmp((const char *)localname, kName_Artist, kLength_Artist) || !strncmp((const char *)localname, kName_Album, kLength_Album) || !strncmp((const char *)localname, kName_ReleaseDate, kLength_ReleaseDate))) )) { importer.storingCharacters = YES; } } /* This callback is invoked when the parse reaches the end of a node. At that point we finish processing that node, if it is of interest to us. For "item" nodes, that means we have completed parsing a Song object. We pass the song to a method in the superclass which will eventually deliver it to the delegate. For the other nodes we care about, this means we have all the character data. The next step is to create an NSString using the buffer contents and store that with the current Song object. */ static void endElementSAX(void *parsingContext, const xmlChar *localname, const xmlChar *prefix, const xmlChar *URI) { iTunesRSSImporter *importer = (iTunesRSSImporter *)parsingContext; if (importer.parsingASong == NO) return; if (prefix == NULL) { if (!strncmp((const char *)localname, kName_Item, kLength_Item)) { [importer finishedCurrentSong]; } else if (!strncmp((const char *)localname, kName_Title, kLength_Title)) { importer.currentSong.title = importer.currentString; } else if (!strncmp((const char *)localname, kName_Category, kLength_Category)) { double before = [NSDate timeIntervalSinceReferenceDate]; Category *category = [importer.theCache categoryWithName:importer.currentString]; double delta = [NSDate timeIntervalSinceReferenceDate] - before; lookuptime += delta; importer.currentSong.category = category; } } else if (!strncmp((const char *)prefix, kName_Itms, kLength_Itms)) { if (!strncmp((const char *)localname, kName_Artist, kLength_Artist)) { NSString *string = importer.currentSong.artist; NSArray *strings = [string componentsSeparatedByString: @", "]; //importer.currentSong.artist = importer.currentString; } else if (!strncmp((const char *)localname, kName_Album, kLength_Album)) { importer.currentSong.album = importer.currentString; } else if (!strncmp((const char *)localname, kName_ReleaseDate, kLength_ReleaseDate)) { NSString *dateString = importer.currentString; importer.currentSong.releaseDate = [importer.dateFormatter dateFromString:dateString]; } } importer.storingCharacters = NO; } /* This callback is invoked when the parser encounters character data inside a node. The importer class determines how to use the character data. */ static void charactersFoundSAX(void *parsingContext, const xmlChar *characterArray, int numberOfCharacters) { iTunesRSSImporter *importer = (iTunesRSSImporter *)parsingContext; // A state variable, "storingCharacters", is set when nodes of interest begin and end. // This determines whether character data is handled or ignored. if (importer.storingCharacters == NO) return; [importer appendCharacters:(const char *)characterArray length:numberOfCharacters]; } /* A production application should include robust error handling as part of its parsing implementation. The specifics of how errors are handled depends on the application. */ static void errorEncounteredSAX(void *parsingContext, const char *errorMessage, ...) { // Handle errors as appropriate for your application. NSCAssert(NO, @"Unhandled error encountered during SAX parse."); } // The handler struct has positions for a large number of callback functions. If NULL is supplied at a given position, // that callback functionality won't be used. Refer to libxml documentation at http://www.xmlsoft.org for more information // about the SAX callbacks. static xmlSAXHandler simpleSAXHandlerStruct = { NULL, /* internalSubset */ NULL, /* isStandalone */ NULL, /* hasInternalSubset */ NULL, /* hasExternalSubset */ NULL, /* resolveEntity */ NULL, /* getEntity */ NULL, /* entityDecl */ NULL, /* notationDecl */ NULL, /* attributeDecl */ NULL, /* elementDecl */ NULL, /* unparsedEntityDecl */ NULL, /* setDocumentLocator */ NULL, /* startDocument */ NULL, /* endDocument */ NULL, /* startElement*/ NULL, /* endElement */ NULL, /* reference */ charactersFoundSAX, /* characters */ NULL, /* ignorableWhitespace */ NULL, /* processingInstruction */ NULL, /* comment */ NULL, /* warning */ errorEncounteredSAX, /* error */ NULL, /* fatalError //: unused error() get all the errors */ NULL, /* getParameterEntity */ NULL, /* cdataBlock */ NULL, /* externalSubset */ XML_SAX2_MAGIC, // NULL, startElementSAX, /* startElementNs */ endElementSAX, /* endElementNs */ NULL, /* serror */ }; Thanks.

    Read the article

  • NSFetchedResultsController fetch request - updating predicate and UITableView

    - by Macatomy
    In my iPhone Core Data app I have it configured in a master-detail view setup. The master view is a UITableView that lists objects of the List entity. The List entity has a to-many relationship with the Task entity (called "tasks"), and the Task entity has an inverse to-one relationship with List called "list". When a List object is selected in the master view, I want the detail view (another UITableView) to list the Task objects that correspond to that List object. What I've done so far is this: In the detail view controller I've declared a property for a List object: @property (nonatomic, retain) List *list; Then in the master view controller I use this table view delegate method to set the list property of the detail view controller when a list is selected: - (void)tableView:(UITableView *)aTableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { NSManagedObject *selectedObject = [[self fetchedResultsController] objectAtIndexPath:indexPath]; detailViewController.list = (List*)selectedObject; } Then, I've overriden the setter for the list property in the detail view controller like this: - (void)setList:(List*)newList { if (list != newList) { [list release]; list = [newList retain]; NSPredicate *newPredicate = [NSPredicate predicateWithFormat:@"(list == %@)", list]; [NSFetchedResultsController deleteCacheWithName:@"Root"]; [[[self fetchedResultsController] fetchRequest] setPredicate:newPredicate]; NSError *error = nil; if (![[self fetchedResultsController] performFetch:&error]) { NSLog(@"Unresolved error %@, %@", error, [error userInfo]); abort(); } } } What I'm doing here is setting a predicate on the fetched results to filter out the objects so that I only get the ones that belong to the selected List object. The fetchedResultsController getter for the detail view controller looks like this: - (NSFetchedResultsController *)fetchedResultsController { if (fetchedResultsController == nil) { NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init]; NSEntityDescription *entity = [NSEntityDescription entityForName:@"Task" inManagedObjectContext:managedObjectContext]; [fetchRequest setEntity:entity]; NSPredicate *predicate = [NSPredicate predicateWithFormat:@"FALSEPREDICATE"]; [fetchRequest setPredicate:predicate]; NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"name" ascending:YES]; NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor, nil]; [fetchRequest setSortDescriptors:sortDescriptors]; NSFetchedResultsController *aFetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:managedObjectContext sectionNameKeyPath:nil cacheName:@"Root"]; aFetchedResultsController.delegate = self; self.fetchedResultsController = aFetchedResultsController; [aFetchedResultsController release]; [fetchRequest release]; [sortDescriptor release]; [sortDescriptors release]; } return fetchedResultsController; } Its almost unchanged from the default in the Core Data project template, the change I made is to add a predicate that always returns false, the reason being that when there is no List selected I don't want any items to be displayed in the detail view (if a list is selected the predicate is changed in the setter for the list property). However, when I select a list item, nothing really happens. Nothing in the table view changes, it stays empty. I'm sure my logic is flawed in several places, advice is appreciated Thanks

    Read the article

  • Mac OS X Terminal: mouse support?

    - by avetis.kazarian
    Is there a native option (ie. without installing extra soft/package/plugins) to enable mouse support in the Terminal app? Actually, I'm using a lot vim with the option set mouse=a (activating mouse features). But it seems that Terminal don't support all xterm's features. It appears (after some googling) that Terminal had once the mouse support, but I wonder where did it go. N.B: I really want mouse support in Terminal, not only for vim, so please, don't suggest MacVim :]

    Read the article

  • Installing The ruby-gmail rubygem on Mac OS Snow Leopard

    - by johnnygoodman
    I'm working off these instructions: http://github.com/dcparker/ruby-gmail From the home directory I do a standard install and good stuff happens: Johnny-Goodmans-MacBook-Pro:gmail johnnygoodman$ sudo gem install ruby-gmail Successfully installed ruby-gmail-0.2.1 1 gem installed Installing ri documentation for ruby-gmail-0.2.1... Installing RDoc documentation for ruby-gmail-0.2.1... I head over to my ~/www dir where I run scripts that include other rubygems successfully and create a gmail directory. I create a script that includes rubygems and gmail, but does nothing else: Johnny-Goodmans-MacBook-Pro:gmail johnnygoodman$ pwd /Users/johnnygoodman/www/gmail Johnny-Goodmans-MacBook-Pro:gmail johnnygoodman$ ls test-send.rb Johnny-Goodmans-MacBook-Pro:gmail johnnygoodman$ cat test-send.rb require 'rubygems' require 'gmail' I run this script and the errors begin: Johnny-Goodmans-MacBook-Pro:gmail johnnygoodman$ ruby test-send.rb /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- mime/message (LoadError) from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `require' from /Library/Ruby/Gems/1.8/gems/ruby-gmail-0.2.1/lib/gmail/message.rb:1 from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `gem_original_require' from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `require' from /Library/Ruby/Gems/1.8/gems/ruby-gmail-0.2.1/lib/gmail.rb:168 from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:36:in `gem_original_require' from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:36:in `require' from test-send.rb:2 Johnny-Goodmans-MacBook-Pro:gmail johnnygoodman$ Here's my gem env: Johnny-Goodmans-MacBook-Pro:gmail johnnygoodman$ gem environment RubyGems Environment: - RUBYGEMS VERSION: 1.3.7 - RUBY VERSION: 1.8.7 (2009-06-08 patchlevel 173) [universal-darwin10.0] - INSTALLATION DIRECTORY: /Library/Ruby/Gems/1.8 - RUBY EXECUTABLE: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby - EXECUTABLE DIRECTORY: /usr/bin - RUBYGEMS PLATFORMS: - ruby - universal-darwin-10 - GEM PATHS: - /Library/Ruby/Gems/1.8 - /Users/johnnygoodman/.gem/ruby/1.8 - /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8 - GEM CONFIGURATION: - :update_sources => true - :verbose => true - :benchmark => false - :backtrace => false - :bulk_threshold => 1000 - :sources => ["http://rubygems.org/", "http://gems.github.com"] - REMOTE SOURCES: - http://rubygems.org/ - http://gems.github.com The path that the errors give when I run the script is not the same as the GEM PATHS given in the env output. However, I don't know how to make them match or if that's the significant thing here.

    Read the article

< Previous Page | 418 419 420 421 422 423 424 425 426 427 428 429  | Next Page >