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

Java Discussion :

[Conception][graphisme] réaliser un système "d'anchor" (ancre)


Sujet :

Java

  1. #1
    Membre habitué
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Juin 2005
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Juin 2005
    Messages : 175
    Points : 145
    Points
    145
    Par défaut [Conception][graphisme] réaliser un système "d'anchor" (ancre)
    bonjour,

    j'ai réalisé une application qui est grosso-modo un editeur de projet. Il y a une interface "composants" ou on crée des composanst en leur affectant entre autre une image.

    il y a une interface "projets" dans laquelle on ajoute, deplace, redimentionne et supprime des composants (qui sont des extensions de JComponent que je paint dans le meme contexte graphique que le panel de display du projet en affichant leur image). ces components son contenus dans un Vector special de la classe Projet.

    ca macrhe plutot pas mal, mais le denrier truc a faire est un systeme d'ancrage a la Visio pour ceux qui connaissent. En gros pourvoir lier graphiquement des composants les uns aux autres, et faciliter le "scotchage des composants" un peu a la manière de winam et de sa sous fenetre de playlist ou d'equalizer.

    Ceux qui ont compris ce que je voulais (devais !) faire, avez vous une idée de comment m'y prndre? j'avoue etre un peu a cours d'idée sur ce sujet.

    Merci d'avance

  2. #2
    Membre expérimenté Avatar de herve91
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    1 282
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 282
    Points : 1 608
    Points
    1 608
    Par défaut
    Je dirais que les composants doivent potentiellement se comporter comme des groupes de composants.
    Donc, soit un composant A est détaché de tout autre, soit il est lié à un autre B. Dans ce dernier cas, A pourrait conserver une référence vers B, et B devrait comporter un tableau des composants qui lui sont liés (A et B étant interchangeables évidemment). A partir du moment où un composant est lié, il doit disparaître du "Vector special de la classe Projet". Ensuite, ta méthode de dessin doit être adaptée pour traiter le cas des composants "composites" (je crois qu'il s'agit du Design Pattern Composite...)
    Bon, ce n'est qu'une idée...

  3. #3
    Membre habitué
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Juin 2005
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Juin 2005
    Messages : 175
    Points : 145
    Points
    145
    Par défaut
    Tout d'abord merci de ta réponse. Ce que je demande, ce sont effectivement des idées qui peuvent m'en donner d'autres. pas forcément des solutions toutes faites pour un probleme si vague ce serait la Lune.

    Si je te suis, je peux faire un Vecteur de Parts(on va dire d'IDs pour ne pas dupliquer bêtement) qui sera un parametre de Part, et si je déplace le part en question avec un evenement mouseDrag, je deplac aussi de la meme maniere les composants dont les IDs sont dans ce vecteur de parts.

    Ca se tient. Bon le problème est de voir comment on va lier ces composants d'un point de vue IHM. (j'ai bien un menu contextuel de dispo pour mes Parts mais ca peut vite devenir lourd pour l'utilisateur final, de faire "clic-lier, clic -lier"). il faut trouver autre choseet je ne vois pas quoi, surtout que j'ai déjà utilisé un précédent post pour un probleme d'interface lourdingue ("résolu" soit dit en passant)

    Apres cette technique à ces limites. ca ne fera pas dans le redimensionnement automatique de fils, comme ce qu'on peut faire avec Viso ,PSpice , Orcad par exemple. ca se cantonnera au deplacement.

    en effet : si A est lié à B mais que B n'st pas lié à A, je ne doit pas pouvoir deplacer B, d'ou cassage de lien.

    mais plus subtil : A est lié à B, B est lié à A, B est lié à C mais C n'est pas lié à B. (C est fixe). si je déplace A (qui serait genre un controlleur), il faudarit logiquement que ca redimentionne B (qui serait un fil).

    scahant que mes composants "fils" (BUS) sont des rectangles, il n'est pas non plus possible de faire un truc du style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    _____
            |
            |
            -----------
    avec un seul BUS, il faudrait recréer des parts, ca devient impossible.

    Si malgré tout, vous avez d'autres idées , ou mieux si quelq'un a déjà travaillé sur ce genre de problème, je prends avec plaisir.

    Merci d'avance

Discussions similaires

  1. [Concept] Métadatas ?
    Par melinda dans le forum Décisions SGBD
    Réponses: 5
    Dernier message: 10/11/2004, 11h56
  2. [Concept] Réplication
    Par melinda dans le forum Décisions SGBD
    Réponses: 4
    Dernier message: 31/03/2003, 17h29
  3. [VB6][Graphisme] Zoom
    Par Troopers dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 10/10/2002, 17h30
  4. [Concept] Curseur coté client et curseur coté serveur
    Par freud dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 13/09/2002, 22h13
  5. [Concept] Stabilité d'une base de donnée
    Par lassmust dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 03/07/2002, 16h16

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