~ / RICM5 / IHM / tps / 2-marking-menu /

TP 2 - Marking Menu

© 2014 - Renaud Blanch

Le but de ce TP est d'implémenter, avec Java/SWING (ou tout autre technologie portable à votre convenance), une interface proposant des interactions avancées non-standard. Il faudra pour cela réaliser un widget qui n'est pas fourni par les boîtes à outils classiques de construction d'interface : le Marking Menu qui est une alternative au menu contextuel classique.

Menus circulaires

Pie Menu

Les menus circulaires (pie menus) ont été proposés en 1991 par Don Hopkins. L'image ci-dessous montre leur implémentation originale.

Ce menu circulaire a un premier intérêt : tous les éléments sont à égale distance du curseur de la souris, et sont donc également accessibles. Le second intérêt et que l'utilisateur peut se rappeler facilement de la direction des commandes qu'il utilise couramment. Cette propriété a permis la mise au point d'un mode expert pour le menu circulaire : le marking menu.

Marking Menu

Les marking menus sont des menus circulaires qui peuvent être utilisés en effectuant des gestes (traits dans une direction), plutôt que des clics, pour sélectionner la cible voulue. Cela permet à l'utilisateur d'être plus efficace. Ces menus ont été en particulier popularisé par la hotbox de Maya. Leur usage est décrit dans la vidéo ci-dessous.

Application de dessin

Récupérez le squelette d'application de dessin fourni, lisez, puis exécutez le code:

% javac Paint.java
% java Paint

Ajoutez un outil de tracé d'ellipses, ainsi que la possibilité de choisir la couleur du tracé parmi un ensemble de couleurs disponibles sous forme de boutons dans la barre d'outils.

Réalisez un menu circulaire qui doit permettre d'afficher 8 items. Pour son rendu et son placement, inspirez-vous de celui de Maya (petit cercle au centre, huit étiquettes autour). Si il y a plus de 8 items, on utilisera le placement suivant:

Utilisez votre menu pour pouvoir choisir l'outil et la couleur utilisés dans votre application de dessin (menu à deux niveaux: d'abord outil ou couleur, puis la liste des outils et la liste des couleurs).

Ajoutez le mode expert à votre menu circulaire pour qu'il devienne un marking menu.

mise à jour : 28 novembre 2014