IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Qt Discussion :

Grouper / dégrouper des items : gestion des undo / redo command


Sujet :

Qt

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2008
    Messages
    125
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 125
    Par défaut Grouper / dégrouper des items : gestion des undo / redo command
    Bonjour,

    Je rencontre un petit soucis avec la gestion des undo / redo command liés à des actions de groupage / dégroupage d'items :
    Dans l'action redo : je recrée le groupe et le stocke dans une variable x
    Dans l'action undo :

    A) Si j'appelle la méthode removeItem(x) de la scène, le groupe est supprimé ainsi que ses enfants. Ce qui n'est pas bon car les enfants doivent rester. La doc dit d'ailleurs qu'un appel à cette méthode supprime bel et bien le groupe ainsi que ses fils. Du coup je change d'astuce en passant à B.

    B) Puisque removeItem(x) supprime l'arboresence (groupe et fils), j'appelle plutôt la méthode destroyItemGroup(x) de la scène qui elle laisse bien mes objets sur la scène et supprime le groupe. De prime à bord, ça répond à ce que je veux. Mais en manipulant, je me rend compte que cette méthode détruit le groupe x et donc je n'ai plus aucun moyen de retrouver ses enfants pour un éventuel appel à redo (qui lui doit se servir de la liste des fils pour recréer le groupe).
    Et c'est là où commence les ennuis : je me dis qu'en stockant la liste des fils ça réglerait le problème mais là aussi, lorsque je regroupe des groupes de groupes d'items et que j'effectue une série de undo (qui annule le groupage) suivis de redo (qui rétablit le groupage) ça crashe pour cause que la méthode destoryItemGroup a détruit des objets qui n'existent plus sauf dans ma liste (donc référence vers des objets NULL) !!!

    Après ce long discours (qui peut être n'est pas du tout clair), est-ce que quelqu'un a déjà eu à implémenter ces actions de undo / redo et à une solution ?

    Merci.

  2. #2
    Inactif  


    Homme Profil pro
    Inscrit en
    Novembre 2008
    Messages
    5 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2008
    Messages : 5 288
    Par défaut
    Bonjour hisoft

    Peux tu détailler ton code pour les undo et les redo ? Utilises tu le framework Undo de Qt ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] Gestion des Item dans un TCD en VBA
    Par BAHIRI dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 05/03/2012, 01h51
  2. [XSD] Gestion des namespaces et des imports
    Par fedfil dans le forum Valider
    Réponses: 1
    Dernier message: 12/01/2006, 14h54
  3. Réponses: 4
    Dernier message: 30/12/2005, 11h07
  4. Réponses: 6
    Dernier message: 05/10/2005, 14h22
  5. Gestion des transactions - Gestion des erreurs
    Par devdev dans le forum MS SQL Server
    Réponses: 14
    Dernier message: 23/03/2005, 20h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo