|
Héritée de : aucune
Classes mélangées : BArchivable
Déclarée dans : be/app/Cursor.h
Bibliothèque : libbe.so
Résumé : plus...
Vous pouvez utiliser un BCursor pour représenter un curseur de souris comme un objet au lieu d'un bloc de pixels ; ceci peut être plus pratique dans certaines situations. De même, si vous voulez appeler BApplication::SetCursor() sans forcer une synchronisation immédiate avec le Serveur d'application, vous devez utiliser un BCursor.
Les BCursors par défaut sont B_CURSOR_SYSTEM_DEFAULT pour le curseur en forme de "main" et B_CURSOR_I_BEAM pour le curseur d'édition en forme de "I".
Les quatre premiers octets des données du curseur donnent des informations sur le curseur :
- Octet 1: Taille en pixels-par-côté. les curseurs sont toujours carrés ; à ce jour, seuls des curseurs 16-par-16 sont autorisés.
- Octet 2: Profondeur de couleur en bits-par-pixel. A ce jour, seul un-bit monochrome est autorisé.
- Octets 3&4: Coordonnées du point sensible. Données en "coordonnées curseur" où (0,0) est le coin supérieur gauche de la grille du curseur, l'octet 3 représente la coordonnée Y du point sensible et l'octet 4 sa coordonnée X. Le point sensible est un unique pixel, "activé" quand l'utilisateur clique la souris. Par exemple, pour presser un bouton, le point sensible doit être à l'intérieur des limites du bouton.
Un tableau de pixels de données couleur vient ensuite. Les pixels sont spécifiés de la gauche vers la droite, en rangées débutant en haut de l'image et se poursuivant vers le bas. La taille d'un élément du tableau est la profondeur de l'image. Pour une profondeur de un-bit :
- le tableau 16x16 prend 32 octets.
- 1 vaut noir et 0 vaut blanc.
Puis on trouve ensuite le masque de transparence des pixels, donné de gauche à droite et du haut vers le bas. 1 vaut pour opaque et 0 pour transparent. La transparence s'applique seulement aux pixels blancs, les pixels noirs sont toujours opaques.
![]() | BCursor() |
BCursor(const void *cursorData)
BCursor(BMessage *archive)Initialise le nouvel objet curseur. Si vous spécifiez une valeur non NULL pour cursorData, le curseur est initialisé avec les données du curseur spécifiées.
Si vous spécifiez une valeur NULL pour cursorData, le curseur est sans utilité ; comme cette classe ne fournit pas aujourd'hui un moyen de configurer les données du curseur une fois que l'objet est instancié, vous n'y pouvez plus rien, alors pourquoi vous en faire ?
BCursor n'implémente pas aujourd'hui l'archivage, aussi vous ne devriez pas utiliser la seconde forme.
![]() | ~BCursor() |
virtual ~BCursor() Libère toutes les ressources utilisées par le curseur.
![]() | Instantiate() |
static BArchivable *Instantiate(BMessage *archive) Non implémentée aujourd'hui ; renvoie toujours NULL.
Voir également : BArchivable::Instantiate(), instantiate_object(), Archive()
|
Copyright © 2000 Be, Inc. All rights reserved..