Refactoring (Edit > Refactor)

AliGatorAliGator Membre, Modérateur
Bonjour à  tous,

Continuant à  faire mumuse avec des petits programmes iPhone, j'ai voulu à  un moment renommer une classe de mon projet utilisée un peu partout (y compris dans les XIB).
Je me dis, tiens, c'est l'occasion de tester l'outil de Refactoring dont j'ai entendu parler dispo dans Xcode 3 !

Ni une ni deux, je vais dans le menu Edit... et là  l'item "Refactor..." est grisé !
J'ai beau sélectionner un fichier, sélectionner dans le code le nom de ma classe, sélectionner tout le bloc @implementation...@end ou quoi, il reste imperturbablement grisé :'( Pourtant mon projet est relativement neuf, il a été créé avec la version actuelle de Xcode (pas de mise à  jour depuis)... je vois pas :-\\

En fait je crois que j'avais déjà  remarqué ça et que je n'ai jamais vu ce menuitem disponible... Que ce soit dans un projet iPhone/CocoaTouch ou OSX/Cocoa...
Cet item est dispo, chez vous ? Que faut-il faire pour le rendre disponible ??

Réponses

  • Philippe49Philippe49 Membre
    23:18 modifié #2
    dans 1227973750:


    Cet item est dispo, chez vous ? Que faut-il faire pour le rendre disponible ??

    Oui, je l'utilise pour l'instant en sélectionnant un "mot" nom de classe, de variable, de méthode ...
  • AliGatorAliGator Membre, Modérateur
    23:18 modifié #3
    Bon, après avoir quitté Xcode, rechargé le projet, et sélectionné un nom de classe, j'ai enfin l'item disponible...
    Bug passager, sans doute.
  • AliGatorAliGator Membre, Modérateur
    23:18 modifié #4
    Bon tu parles de passager...
    Ca me réarrive régulièrement en fait. Et j'ai beau fermer le projet et le réouvrir, que dalle il reste toujours grisé, j'ai même quitté Xcode puis relancé, toujours grisé.
    Mon projet viens d'être buildé, aucune erreur donc le tout est consistant...
    Ca m'énerve ce bug !
  • Philippe49Philippe49 Membre
    23:18 modifié #5
    C'est bizarre . C'est sur quel type d'identificateur qu'il fait cela ?

    J'ai eu des refus de réaliser le Refactoring mais pas cet aspect grisé du menu.
  • AliGatorAliGator Membre, Modérateur
    23:18 modifié #6
    Sur tous, que je sélectionne une variable, une classe dans mon code source, un fichier... toujours grisé !
  • Philippe49Philippe49 Membre
    23:18 modifié #7
    Je lis le XCode Refactoring Guide, je vois que ce refactoring interagit avec les snapshots .. une piste ?
  • AliGatorAliGator Membre, Modérateur
    23:18 modifié #8
    Ah. C'est pas bête, j'avais dû louper ce point !

    Bon en effet j'ai créé des snapshots dans mon projet, mais c'est tout récent (genre y'a quelques heures), histoire de tester encore une fonctionnalité de Xcode que je n'ai pas l'habitude d'utiliser pour découvrir (en plus cette appli est un peu un tuto je devrais expliquer pas à  pas les étapes de réalisation donc pour revenir en arrière ou faire une avance rapide ça me paraà®t pratique sans avoir à  mettre un SVN en place et tout juste pour ça)

    Mais bon, j'avais quand même le problème avant de faire mes snapshots... je retesterai dans un projet tout frais, mais quand même...
  • MalaMala Membre, Modérateur
    mars 2009 modifié #9
    Je déterre un peu ce topic mais je me demandais si personne connaissait un outil un peu plus complet que le refactoring d'Xcode pour l'Objective-C.

    Voilà  par curiosité.
  • AliGatorAliGator Membre, Modérateur
    23:18 modifié #10
    Bon je vais pas répondre dans le sens de ta question puisque c'est une méthode MOINS complète que le refactoring dont je vais toucher 2 mots ici : quand on passe sur une variable genre paramètre d'une fonction, si on choisit "Edit All in Scope", cela sélectionne toutes les occurrences de ce paramètre/cette variable dans le contexte du bloc... et si on tape alors un nouveau nom, il modifie donc le nom de toutes les occurrences à  la fois.

    C'est moins global que "Refactor", mais c'est toujours utile. En fait j'ai découvert ça l'autre jour, c'est rien d'extraordinaire mais y'a tellement de trucs dans Xcode qu'on ne connaà®t pas car on ne fouille pas...  ;)
  • MalaMala Membre, Modérateur
    23:18 modifié #11
    dans 1236196087:

    C'est moins global que "Refactor", mais c'est toujours utile. En fait j'ai découvert ça l'autre jour, c'est rien d'extraordinaire mais y'a tellement de trucs dans Xcode qu'on ne connaà®t pas car on ne fouille pas...  ;)

    Je connaissais pas non plus. Pratique en effet! 
  • CéroceCéroce Membre, Modérateur
    23:18 modifié #12
    Ouep, à  mettre dans les trucs et astuces !
Connectez-vous ou Inscrivez-vous pour répondre.