Content-type: text/html Manpage of XConfigureWindow

XConfigureWindow

Section: XLIB FUNCTIONS (3X11)
Updated: Release 6.4
Index Return to Main Contents
 

NOM

XConfigureWindow, XMoveWindow, XResizeWindow, XMoveResizeWindow, XSetWindowBorderWidth, XWindowChanges - configuration de fenêtre et structure des modifications de fenêtre  

SYNTAXE

XConfigureWindow(display, f, masque, valeurs)

      Display *display;

      Window f;

      unsigned int masque;

      XWindowChanges *valeurs;

XMoveWindow(display, f, x, y)

      Display *display;

      Window f;

      int xy;

XResizeWindow(display, f, largeur, hauteur)

      Display *display;

      Window f;

      unsigned int largeurhauteur;

XMoveResizeWindow(display, f, x, y, largeur, hauteur)

      Display *display;

      Window f;

      int xy;

      unsigned int largeurhauteur;

XSetWindowBorderWidth(display, f, largeur_bordure)

      Display *display;

      Window f;

      unsigned int largeur_bordure;  

ARGUMENTS

display
Spécifie la connexion au serveur X.
masque
Spécifie les valeurs de la fenêtre qui sont définies dans l'argument valeurs. Ce masque est la combinaison par un OU inclusif bit à bit des masques correspondant aux valeurs valides. Si le masque vaut zéro, les valeurs sont ignorées et ne sont pas référencées.
valeurs
Spécifie la structure XWindowChanges.
f
Spécifie la fenêtre à configurer, déplacer ou dimensionner.
largeur_bordure
Spécifie la largeur de la bordure de la fenêtre.
largeur

hauteur
Spécifient la largeur et la hauteur, qui sont les dimensions intérieures de la fenêtre.
x

y
Spécifient les coordonnées x et y, qui définissent le nouvel emplacement du pixel supérieur-gauche de la bordure de la fenêtre ou de la fenêtre elle-même si elle n'a pas de bordure ou définissent la nouvelle position de la fenêtre relativement à sa fenêtre mère.
 

DESCRIPTION

La fonction XConfigureWindow utilise les valeurs spécifiées dans la structure XWindowChanges pour reconfigurer la taille, la position, la bordure et le niveau dans la pile de la fenêtre. Les valeurs non spécifiées sont reprises de la géométrie courante de la fenêtre.

Si une fenêtre soeur est spécifiée sans stack_mode (mode d'empilement) ou si la fenêtre n'est pas en réalité une fenêtre soeur, une erreur BadMatch est générée. Noter que les calculs pour BottomIf, TopIf, et Opposite sont effectués selon la géométrie finale de la fenêtre (telle qu'elle est décrite par les autres arguments passés à XConfigureWindow), et non selon sa géométrie initiale. Les contenus mémorisés (backing store) de la fenêtre, de ses descendantes et de toute fenêtre nouvellement visible sont soit perdus soit modifiés pour refléter les contenus présents sur l'écran (selon l'implémentation).

XConfigureWindow peut générer les erreurs BadMatch, BadValue, et BadWindow.

La fonction XMoveWindow déplace la fenêtre spécifiée aux coordonnées x et y spécifiées, mais ne change ni sa taille, ni son statut d'affichage et ne modifie pas sa position dans la pile. Déplacer une fenêtre affichée peut éventuellement provoquer la perte de son contenu si elle est cachée par une fenêtre non fille et si aucun contenu mémorisé n'existe. Si le contenu de la fenêtre est perdu, le serveur X génère des événements Expose. Déplacer une fenêtre affichée provoque la génération d'événements Expose pour toute fenêtre précédemment cachée.

Si le flag override-redirect (NDT. « surcharge-de-la-redirection ») de la fenêtre est False et si un autre client a sélectionné SubstructureRedirectMask sur la fenêtre parente, le serveur X génère un événement ConfigureRequest et aucun traitement supplémentaire n'est réalisé. Sinon, la fenêtre est déplacée.

XMoveWindow peut générer une erreur BadWindow.

La fonction XResizeWindow modifie les dimensions intérieures de la fenêtre spécifiée, sans inclure ses bords. Cette fonction ne change pas les coordonnées du point supérieur-gauche ou l'origine et ne change pas le niveau de la fenêtre dans la pile. Modifier la taille d'une fenêtre affichée peut conduire à la perte de son contenu et générer des événements Expose. Si une fenêtre affichée est rendue plus petite, modifier sa taille génère des événements Expose sur les fenêtres qu'elle cachait précédemment.

Si le flag override-redirect de la fenêtre est False et si un autre client a sélectionné SubstructureRedirectMask sur la fenêtre parente, le serveur X génère un événement ConfigureRequest et aucun traitement supplémentaire n'est réalisé. Si la largeur ou la hauteur valent zéro, une erreur BadValue est générée.

XResizeWindow peut générer des erreurs BadValue et BadWindow.

La fonction XMoveResizeWindow modifie la taille et l'emplacement de la fenêtre spécifiée sans changer son niveau dans la pile. Déplacer et redimensionner une fenêtre affichée peut générer un événement Expose sur la fenêtre. Selon les nouvelles taille et position passées en paramètre, déplacer et redimensionner une fenêtre peut générer des événements Expose sur les fenêtres qu'elle cachait précédemment.

Si le flag override-redirect de la fenêtre est False et si un autre client a sélectionné SubstructureRedirectMask sur la fenêtre parente, le serveur X génère un événement ConfigureRequest et aucun traitement supplémentaire n'est réalisé. Sinon, la taille et la position de la fenêtre sont modifiées.

XMoveResizeWindow peut générer des erreurs BadValue et BadWindow.

La fonction XSetWindowBorderWidth change la largeur de la bordure de la fenêtre spécifiée en lui donnant la valeur spécifiée.

XSetWindowBorderWidth peut générer une erreur BadWindow.  

STRUCTURES

La structure XWindowChanges contient :

/* Bits du masque de valeurs de configuration d'une fenêtre */

#define CWX (1<<0)
#define CWY (1<<1)
#define CWWidth (1<<2)
#define CWHeight (1<<3)
#define CWBorderWidth (1<<4)
#define CWSibling (1<<5)
#define CWStackMode (1<<6)



/* Valeurs */

typedef struct {
     int x, y;
     int width, height;
     int border_width;
     Window sibling;
     int stack_mode;
} XWindowChanges;


Les membres x et y sont utilisés pour modifier les coordonnées x et y de la fenêtre, qui sont relatives à l'origine de sa fenêtre parente et indiquent la position du coin extérieur supérieur-gauche de la fenêtre. Les membres width (largeur) et height (hauteur) sont utilisés pour modifier les dimensions intérieures de la fenêtre, sans inclure la bordure, et doivent être non nuls, sinon une erreur BadValue est générée. Une tentative de configuration de la fenêtre racine n'a aucun effet.

Le membre border_width est utilisé pour modifier la largeur de la bordure (exprimée en pixels). Noter que modifier uniquement la largeur de la bordure ne change pas la position du coin extérieur supérieur-gauche de la fenêtre mais change la position absolue de l'origine de la fenêtre. Si l'on essaie de fixer l'attribut border-width d'une fenêtre de classe InputOnly à une valeur non nulle, une erreur BadMatch est générée.

Le membre sibling (fenêtre soeur) est utilisé pour déterminer la fenêtre soeur de référence pour la modification de l'empilement. Le stack_mode (mode d'empilement) est utilisé pour déterminer comment l'empilement de la fenêtre sera modifié et peut valoir Above, Below, TopIf, BottomIf, ou Opposite.  

DIAGNOSTICS

BadMatch
Une fenêtre de classe InputOnly est utilisée à la place d'un Drawable.
BadMatch
Des arguments ou paires d'arguments ont des types et des valeurs corrects, mais ne satisfont pas à d'autres contraintes induites par la requête.
BadValue
Des valeurs numériques sont hors des limites autorisées par la requête. Sauf précision contraire, toutes les valeurs permises par le type d'un argument sont acceptées par une requête. Un argument défini par une énumération de valeurs peut générer cette erreur.
BadWindow
La valeur d'un argument Window ne désigne pas une fenêtre définie.
 

VOIR AUSSI

XChangeWindowAttributes(3X11), XCreateWindow(3X11), XDestroyWindow(3X11), XMapWindow(3X11), XRaiseWindow(3X11), XUnmapWindow(3X11)
Xlib - C Language X Interface  

TRADUCTION

Bertrand Duret, 2001.


 

Index

NOM
SYNTAXE
ARGUMENTS
DESCRIPTION
STRUCTURES
DIAGNOSTICS
VOIR AUSSI
TRADUCTION

This document was created by man2html, using the manual pages.
Time: 21:37:51 GMT, July 10, 2005