40 virtual void HScroll(
unsigned total,
unsigned visible,
unsigned start ) {}
42 virtual void VScroll(
unsigned total,
unsigned visible,
unsigned start ) {}
44 virtual void ScrollHead(
NCursesWindow & w,
unsigned ccol ) {}
46 virtual void AdjustPadSize(
wsze & minsze ) {}
66 redirect->ScrollHead( w, ccol );
69 void VSet(
unsigned total,
unsigned visible,
unsigned start )
71 redirect->VScroll( total, visible, start );
74 void HSet(
unsigned total,
unsigned visible,
unsigned start )
76 redirect->HScroll( total, visible, start );
79 virtual void SetPadSize(
wsze & minsze )
81 redirect->AdjustPadSize( minsze );
87 void SendSchrollCB(
NCSchrollCB * to ) { redirect = ( to ? to : this ); }
89 virtual void SendHead() {}
131 virtual int dirtyPad() { dirty =
false;
return setpos( CurPos() ); }
133 virtual int setpos(
const wpos & newpos );
135 int adjpos(
const wpos & offset )
137 return setpos( CurPos() + offset );
140 virtual void updateScrollHint();
164 virtual void resize(
wsze nsze );
165 virtual int resize(
int lines,
int columns ) {
return NCursesWindow::resize(
lines, columns );}
166 virtual void wRecoded();
167 virtual void setDirty() { dirty =
true; }
170 virtual int setpos() {
return setpos( CurPos() ); }
172 virtual wpos CurPos()
const {
return srect.Pos; }
174 int ScrlTo(
const wpos & newpos )
176 return setpos( newpos );
179 int ScrlLine(
const int line )
181 return setpos(
wpos( line, srect.Pos.C ) );
184 int ScrlCol(
const int col )
186 return setpos(
wpos( srect.Pos.L, col ) );
189 int ScrlDown(
const int lines = 1 )
194 int ScrlUp(
const int lines = 1 )
199 int ScrlRight(
const int cols = 1 )
204 int ScrlLeft(
const int cols = 1 )
209 virtual bool handleInput( wint_t key );
virtual void directDraw(NCursesWindow &w, const wrect at, unsigned lineno)
Directly draw a table item at a specific location.
int vheight() const
The (virtual) height of the Pad (even if truncated).
static int lines()
Number of lines on terminal, not window.
int height() const
Number of lines in this window.
static int cols()
Number of cols on terminal, not window.
WINDOW * w
the curses WINDOW
bool pageing() const
Whether the Pad is truncated (we're pageing).