static void Touchline(PANEL *pan, int start, int count) { char s80[80]; sprintf(s80, "Touchline s=%d c=%d", start, count); dPanel(s80, pan); touchline(pan->win, start, count); }
//------------------------------------------------------------------------------ static void _calculate_obscure( void ) { __QCS_FCONTEXT( "_calculate_obscure" ); PANEL* pan, *pan2; PANELOBS* tobs; // "this" one PANELOBS* lobs; // last one pan = _bottom_panel; while( pan ) { if( pan->obscure ) { _free_obscure( pan ); } lobs = (PANELOBS*)0; pan2 = _bottom_panel; while( pan2 ) { if( _panels_overlapped( pan, pan2 ) ) { if( ( tobs = (PANELOBS*)( malloc( sizeof(PANELOBS) ) ) ) == NULL ) { return; } tobs->pan = pan2; dPanel( "obscured", pan2 ); tobs->above = (PANELOBS*)0; if( lobs ) { lobs->above = tobs; } else { pan->obscure = tobs; } lobs = tobs; } pan2 = pan2->above; } _override( pan, 1 ); pan = pan->above; } }
_nc_dStack(const char *fmt, int num, const PANEL * pan) { char s80[80]; sprintf(s80, fmt, num, pan); _tracef("%s b=%s t=%s", s80, (_nc_bottom_panel) ? USER_PTR(_nc_bottom_panel->user) : "--", (_nc_top_panel) ? USER_PTR(_nc_top_panel->user) : "--"); if (pan) _tracef("pan id=%s", USER_PTR(pan->user)); pan = _nc_bottom_panel; while (pan) { dPanel("stk", pan); pan = pan->above; } }
static void dStack(char *fmt, int num, PANEL *pan) { char s80[80]; sprintf(s80, fmt, num, pan); PDC_LOG(("%s b=%s t=%s", s80, _bottom_panel ? _bottom_panel->user : "******", _top_panel ? _top_panel->user : "******")); if (pan) PDC_LOG(("pan id=%s", pan->user)); pan = _bottom_panel; while (pan) { dPanel("stk", pan); pan = pan->above; } }
static void _calculate_obscure(void) { PANEL *pan, *pan2; PANELOBS *tobs; /* "this" one */ PANELOBS *lobs; /* last one */ pan = _bottom_panel; while (pan) { if (pan->obscure) _free_obscure(pan); lobs = (PANELOBS *)0; pan2 = _bottom_panel; while (pan2) { if (_panels_overlapped(pan, pan2)) { if ((tobs = malloc(sizeof(PANELOBS))) == NULL) return; tobs->pan = pan2; dPanel("obscured", pan2); tobs->above = (PANELOBS *)0; if (lobs) lobs->above = tobs; else pan->obscure = tobs; lobs = tobs; } pan2 = pan2->above; } _override(pan, 1); pan = pan->above; } }
/*+------------------------------------------------------------------------- __calculate_obscure() --------------------------------------------------------------------------*/ void _nc_calculate_obscure(void) { PANEL *pan; PANEL *pan2; PANELCONS *tobs; /* "this" one */ PANELCONS *lobs = (PANELCONS *)0; /* last one */ pan = _nc_bottom_panel; while(pan) { if(pan->obscure) _nc_free_obscure(pan); dBug(("--> __calculate_obscure %s", USER_PTR(pan->user))); lobs = (PANELCONS *)0; /* last one */ pan2 = _nc_bottom_panel; /* This loop builds a list of panels obsured by pan or obscuring pan; pan itself is in the list; all panels before pan are obscured by pan, all panels after pan are obscuring pan. */ while(pan2) { if(__panels_overlapped(pan,pan2)) { if(!(tobs = (PANELCONS *)malloc(sizeof(PANELCONS)))) return; tobs->pan = pan2; dPanel("obscured",pan2); tobs->above = (PANELCONS *)0; if(lobs) lobs->above = tobs; else pan->obscure = tobs; lobs = tobs; } pan2 = pan2->above; } _nc_override(pan,P_TOUCH); pan = pan->above; } }
static void Touchpan(PANEL *pan) { dPanel("Touchpan", pan); touchwin(pan->win); }
static void Wnoutrefresh(PANEL *pan) { dPanel("wnoutrefresh", pan); wnoutrefresh(pan->win); }
void _nc_Wnoutrefresh(const PANEL *pan) { dPanel("wnoutrefresh",pan); wnoutrefresh(pan->win); }
void _nc_Touchpan(const PANEL *pan) { dPanel("Touchpan",pan); touchwin(pan->win); }
//------------------------------------------------------------------------------ static void Touchpan( PANEL* pan ) { __QCS_FCONTEXT( "Touchpan" ); dPanel( "Touchpan", pan ); touchwin( pan->win ); }
//------------------------------------------------------------------------------ static void Wnoutrefresh( PANEL* pan ) { __QCS_FCONTEXT( "Wnoutrefresh" ); dPanel( "wnoutrefresh", pan ); wnoutrefresh( pan->win ); }