[SUSPENDU] Utiliser RBSplitView

Paisible.frPaisible.fr Membre
août 2008 modifié dans API AppKit #1
Bonjour,

Je cherche à¡ utiliser le Framework RBSplitView dans mon projet. Il s'agit d'un framework proposant des solutions à¡ certaines limite du NSSplitView.

N'étant pas très familier avec XCode, je n'ai pas réussi à¡ l'intégrer à¡ mon projet pour l'utiliser, à¡ part installer le plug-in pour interface builder.

J'ai beau lire et relire la documentation du framework et me documenter sur l'utilisation de xcode je n'y suis pas encore parvenu.

Donc si quelqu'un pouvait m'expliquer, ou me donner des pistes au faire un tuto, qu'il soit grandement remercié. :why?:

PS : Je connais bien une personne sur le forum ayant utilisé le projet et donc susceptible de m'aider, mais je ne citerais personne  ;)

Réponses

  • Philippe49Philippe49 Membre
    14:43 modifié #2
    C'est quoi la nature du problème que tu rencontres ?
    L'addition de framework dans un projet est un sujet qui a souvent été abordé sur ce forum, et la marche à  suivre est clairement expliquée plusieurs fois.
  • Paisible.frPaisible.fr Membre
    14:43 modifié #3
    J'ai essayé de suivre les conseils du ChatNoir prodigués ici :
    http://www.objective-cocoa.org/forum/index.php/topic,1970.0.html

    Je bute dés l'étape 4. J'utilise XCode 3 et au vu de la date de l'article Le chat noir devais être sous une version précédente.
  • Paisible.frPaisible.fr Membre
    14:43 modifié #4
    J'ai avancé un petit peu dans ma compréhension grâce à  cette vidéo :
    http://rentzsch.com/share/embeddingFrameworks.mov

    Voici la façon dont je procède et les problèmes/questions rencontrés :
    • Téléchargement du framework RBSPlitView
    • Création d'un projet CoreData (myApp) avec l'assistant de XCode
    • Run and Go dans Xcode
    • Ouverture du RBSplitView.xcodeproj en parallèle de mon project
    • Glisser déposer du projet NBSplitView dans le groupe myApp/Product. Je coche l'option Copy Items Files et je met le path en Relative to project
    • Dans Targets/MyApp clic droit et Add->add new build phase ->New copy file build phase. Je choisis framework comme destination
    • Glisser deposer de Product/RBSplitView/libRBSplitView.a dans Targer/myApp/Copy Files
    • Dans target/myApp j'affiche les préferences et j'ajoute une dependance sur RBSplitView Library
    • Je fais un Run and go


    Résultat :
    error: There is no SDK at specified SDKROOT_ppc path &#39;/Developer/SDKs/MacOSX10.3.9.sdk<br /><br />
    
  • Philippe49Philippe49 Membre
    14:43 modifié #5
    dans 1215250206:

    Résultat :
    error: There is no SDK at specified SDKROOT_ppc path '/Developer/SDKs/MacOSX10.3.9.sdk

    As-tu vérifié si tu avais ce répertoire /Developer/SDKs/MacOSX10.3.9.sdk ?
    (moi, par exemple, je ne l'ai pas car lors de l'installation de XCode j'ai choisi 10.4 et 10.5)

  • juillet 2008 modifié #6
    Salut,

    Je me souviens vaguement de RBSplitView. Je crois avoir eu des pb avec le framework j'ai donc implémenté directement les classes (voir image jointe).

    Pour ensuite l'utiliser tu vas devoir prendre ta classe principale et faire :
    <br />#import &quot;RBSplitView.h&quot;<br />
    

    avant le @interface évidemment.

    Vu que tu as mis le plug-in pour Interface Builder, il te suffit de glisser ta RBSplitView sur ta fenetre et l'organiser comme bon te semble. Sans oublier de la déclarer dans ton header :
    <br />IBOutlet RBSplitSubview*	splitSub;<br />
    


    Et comme je révise pour le rattrapage du bac, j'ai pas trop le temps de me repencher sur RBSplitView. Mais au vu de mon code il semblait obligatoire d'implémenter ça dans ton .m :
    <br />#pragma mark RBSplitView delegate<br /><br />- (void)splitView:(RBSplitView*)sender wasResizedFrom:(float)oldDimension to:(float)newDimension {<br />&nbsp; &nbsp; &nbsp; RBSplitSubview *subview = [sender subviewAtPosition:0];<br />&nbsp; &nbsp; &nbsp; [sender adjustSubviewsExcepting:subview];<br />}<br /><br />- (NSTimeInterval)splitView:(RBSplitView*)sender willAnimateSubview:(RBSplitSubview*)ssubview withDimension:(float)dimension <br />{<br />	NSTimeInterval duration = 0.2*dimension/150;<br />	if ([[NSApp currentEvent] modifierFlags]&amp;NSShiftKeyMask) {<br />		duration *= 5.0;<br />	}<br />	return duration;<br />}<br /><br />
    

    Donc ne pas oublier le delegate du RBSplitView vers ta classe.
    En tout cas, toute la doc RBSplitView est fournie dans un HTML ou RTF je crois.

    Edit : le 2eme delegate sert juste à  gérer l'effet de ralentissement lorsqu'on maintient la touche shift enfoncée, c'est un plus mais vraiment pas obligatoire :p Par contre il gère aussi  l'animation si tu fais une sorte de "toggle" pour afficher/masquer.
Connectez-vous ou Inscrivez-vous pour répondre.