Article View: pl.comp.sys.xwindow
Article #625Re: Odswiezanie okna w Xlib
From: Slon
Date: Fri, 08 May 1998 18:10
Date: Fri, 08 May 1998 18:10
57 lines
3353 bytes
3353 bytes
On 7 May 1998, Andrzej Chojnowski wrote: > Czesc ! > > Jestem poczatkujacym programista Xlib (nie pytajcie mnie czemu Xlib akurat a > nie Motif czy inne takie, tak wypadlo). Mam dwa problemy, ktore pojawily sie > w trakcie pisania programow: > 1. jaki event (nazwa eventu i jego maski) odpowiada za przycisniecie > gadzetu zamykajacego okno ? Co masz na mysli piszac "gadzetu zamykajacego okno" ? Jezeli chodzi ci o ten cicik w lewym gornym rogu, ktory otwiera manu z opcja "close" (Motif !), to on nie jest twoj tylko Window Menager'a ! Jezeli interesuje cie informacja o tym, ze user usiluje zamknac twoje okno musisz uzyskac atom WM_PROTOCOLS (XInternAtom()) i ustawic protokol Window Menager'a (XSetWMProtocols()) WM_SAVE_YOURSELF (powiadamianie) lub WM_DELETE_WINDOW (kontrola). Oba, przy probie zamkniecia okna, przesylaja komunikat zawierajacy wlasny atom, czyli dostaniesz ClientMessage event ! Zreszta, opis obu jest w ORA Xlib Programming Manual (vol. I) w roadziale 12 ! > 2. czy mozna zrzucic na system utrzymywanie zawartosci okna w jako takim > porzadku, tzn. odswiezanie okna gdy zostanie przez cos zakryte ? > Wyczytalem ze odpowiedzialny za to jest atrybut backing-store ale kazda Nie ! backing_store to jest "hints" ! Xserver moze go obslugiwac, ale nie musi. To zalezy od Xserver'a (czy swiadczy taka obsluge) jak i od np. aktualnego obciazenia (jak zbyt malo pamieci, to najpierw wy... obrazy backing_stote i save_under !). Generalna zasada w X'ach jest, ze proces dba o odswiezanie swoich okien. backing_store jest "potencjalna mozliwoscia" przyspieszenia dzialania aplikacji (konkretnego okna) gdzy obsluga (glownie) Expose jest kosztowna bo wymaga np. dostepu do dysku, sieci, ... lub skomplikowanego rysowania. W takiej sytuacji Xserver szybciej odtworzy to z zapamietanej pixmapy, ale kosztem pamieci. Jest sobie makro DoesBackingStore(), ktorym mozesz sprawdzic czy Xserver moze obslugiwac backing_store. To samo mozna sprawdzic standardowym xdpyinfo ! Pamietaj tylko o uzytkownikach Xterminali z mala iloscia ramu !!! > proba ustawienia go XSetWindowAttributes konczy sie segmentation fault > (to znaczy XSetWindowAttribute sie wywala) > Bo pewnie cos s... :-))) Czy nie trzeba czasami tego ustawiac razem z backing_planes i backing_pixel ??? > Pomocy ; za wszelka pomoc dziekuje > > Amdrzej. > > > -- > Andrzej Chojnowski, e-mail/http: microbe@eris.phys.uni.torun.pl > "Jestem fizykiem, mam prawo zachowania energii." (Hugo Steinhaus) > > Pozdrowienia ... Slon
Technical Details
Message-ID:
<Pine.LNX.3.95.980508192912.26952A-100000@astro.coig.katowice.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!orion.cst.tpsa.pl!news.tpnet.pl!not-for-mailReferences:
<6isb8d$98e$1@flis.man.torun.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!orion.cst.tpsa.pl!news.tpnet.pl!not-for-mail Newsgroups: pl.comp.sys.xwindow From: Slon <slon@astro.coig.katowice.pl> To: Andrzej Chojnowski <microbe@phys.uni.torun.pl> Subject: Re: Odswiezanie okna w Xlib In-Reply-To: <6isb8d$98e$1@flis.man.torun.pl> Message-ID: <Pine.LNX.3.95.980508192912.26952A-100000@astro.coig.katowice.pl> References: <6isb8d$98e$1@flis.man.torun.pl> MIME-Version: 1.0 Lines: 66 Date: Fri, 08 May 1998 18:10:09 GMT NNTP-Posting-Host: astro.coig.katowice.pl NNTP-Posting-Date: Fri, 08 May 1998 20:10:09 MET DST Organization: TPNET - http://www.tpnet.pl Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit