Lines Matching refs:dgawin
40 static void dgai_win_getLastSeqs (_Dga_window dgawin, DgaLastSeqsPtr pLastSeqs);
41 static int dgai_win_syncAgain (_Dga_window dgawin, DgaLastSeqsPtr pLastSeqs);
42 static void dgai_win_mb_update (_Dga_window dgawin);
43 static void dgai_mbwin_syncLockSubj (_Dga_window dgawin);
72 dgai_win_update (_Dga_window dgawin, short bufIndex)
88 dgai_win_getLastSeqs(dgawin, &lastSeqs);
91 dgawin->changeMask = 0;
97 if (dgai_mbsmemb_syncZombie(dgawin)) {
104 if (lastSeqs.mbufseq != *dgawin->s_mbufseq_p) {
105 dgai_win_mb_update(dgawin);
106 lastSeqs.mbufseq = *dgawin->s_mbufseq_p;
107 dgawin->c_mbufseq = lastSeqs.mbufseq;
113 if (DGA_LOCKSUBJ_WINDOW(dgawin, dgawin->eLockSubj)) {
114 dgai_win_syncChanges(dgawin, &lastSeqs);
115 } else if (DGA_LOCKSUBJ_VMBUFFER(dgawin, dgawin->eLockSubj)) {
116 dgai_vmbuf_syncChanges(dgawin, &lastSeqs, bufIndex);
123 } while (dgai_win_syncAgain(dgawin, &lastSeqs));
126 dgai_mbsmemb_devinfo_update(dgawin);
136 dgai_mbsmemb_figureDerivChgs(dgawin);
144 dgai_mbsmemb_notify(dgawin);
151 /* the dgawin client structure is now fully synchronized with the
153 dgawin->c_wm_chngcnt[bufIndex + 1] = *dgawin->s_chngcnt_p;
159 if (dgawin->isOverlay && dgawin->c_ovlstate != DGA_OVLSTATE_CONFLICT)
160 *dgawin->s_ovlshapevalid_p = 0;
167 return (dgawin->changeMask);
172 dgai_win_getLastSeqs (_Dga_window dgawin, DgaLastSeqsPtr pLastSeqs)
174 pLastSeqs->mbufseq = dgawin->c_mbufseq;
175 pLastSeqs->clipseq = dgawin->c_clipseq;
176 pLastSeqs->curseq = dgawin->c_curseq;
177 pLastSeqs->rtnseq = dgawin->c_rtnseq;
186 dgai_win_syncAgain (_Dga_window dgawin, DgaLastSeqsPtr pLastSeqs)
189 if (pLastSeqs->mbufseq != *dgawin->s_mbufseq_p) {
197 if (DGA_LOCKSUBJ_WINDOW(dgawin, dgawin->eLockSubj)) {
198 if ((pLastSeqs->clipseq == *dgawin->s_clipseq_p) &&
199 (pLastSeqs->curseq == *dgawin->s_curseq_p) &&
200 (pLastSeqs->rtnseq == *dgawin->s_rtnseq_p) &&
201 (!dgawin->isOverlay
202 || dgawin->c_ovlstate == *dgawin->s_ovlstate_p)) {
205 } else if (DGA_LOCKSUBJ_VMBUFFER(dgawin, dgawin->eLockSubj)) {
206 if ((pLastSeqs->clipseq == *dgawin->s_clipseq_p) &&
207 (pLastSeqs->curseq == *dgawin->s_curseq_p)) {
223 ** At the return of this routine, dgawin->eLockSubj indicates the member
228 dgai_win_mb_update (_Dga_window dgawin)
231 dgai_mbsmemb_syncMbufset(dgawin);
234 if (dgawin->pMbs) {
237 dgai_mbwin_syncLockSubj(dgawin);
240 dgai_mbsmemb_syncRendBuf(dgawin);
245 if (DGA_LOCKSUBJ_WINDOW(dgawin, dgawin->eLockSubj)) {
247 } else if (DGA_LOCKSUBJ_VMBUFFER(dgawin, dgawin->eLockSubj)) {
253 dgawin->changeMask |= (DGA_CHANGE_MBUFSET | reportChanges);
262 dgai_mbwin_syncLockSubj (_Dga_window dgawin)
266 infop = (WXINFO *) dgawin->w_info;
274 dgawin->eLockSubj = infop->wx_dbuf.display_buffer;
276 if (dgawin->eLockSubj != dgawin->eLockSubjPrev) {
279 dgawin->changeMask |= (DGA_CHANGE_ALIAS | DGA_WIN_CHANGEABLE_ATTRS);
291 dgai_win_syncChanges (_Dga_window dgawin, DgaLastSeqsPtr pLastSeqs)
294 if (pLastSeqs->clipseq != *dgawin->s_clipseq_p) {
295 dgawin->changeMask |= DGA_CHANGE_CLIP;
296 dgai_win_clip_update(dgawin);
297 pLastSeqs->clipseq = *dgawin->s_clipseq_p;
301 if (pLastSeqs->curseq != *dgawin->s_curseq_p) {
302 dgawin->changeMask |= DGA_CHANGE_CURSOR;
303 dgai_win_curs_update(dgawin);
304 pLastSeqs->curseq = *dgawin->s_curseq_p;
308 if ((pLastSeqs->rtnseq != *dgawin->s_rtnseq_p) ||
309 ((dgawin->rtn_flags & RTN_GRABBED) &&
310 !(dgawin->rtn_flags & RTN_MAPPED))) {
311 dgawin->changeMask |= DGA_CHANGE_BSTORE;
312 dgai_win_rtn_update(dgawin);
313 pLastSeqs->rtnseq = *dgawin->s_rtnseq_p;
316 if (dgawin->isOverlay && dgawin->c_ovlstate != *dgawin->s_ovlstate_p) {
317 dgawin->changeMask |= DGA_CHANGE_OVLSTATE;
318 dgawin->c_ovlstate = *dgawin->s_ovlstate_p;