git.ucc.asn.au
/
tpg
/
acess2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Usermode/libaxwin4 - Fix to reply waiting (thread safety), added DrawControl
[tpg/acess2.git]
/
KernelLand
/
Kernel
/
drv
/
vterm.h
diff --git
a/KernelLand/Kernel/drv/vterm.h
b/KernelLand/Kernel/drv/vterm.h
index
4ca241b
..
75128ba
100644
(file)
--- a/
KernelLand/Kernel/drv/vterm.h
+++ b/
KernelLand/Kernel/drv/vterm.h
@@
-42,6
+42,12
@@
enum eVT_InModes {
typedef struct sVTerm tVTerm;
// === STRUCTURES ===
typedef struct sVTerm tVTerm;
// === STRUCTURES ===
+typedef struct
+{
+ unsigned short Row;
+ unsigned short Col;
+} tVT_Pos;
+
struct sVTerm
{
int Mode; //!< Current Mode (see ::eTplTerminal_Modes)
struct sVTerm
{
int Mode; //!< Current Mode (see ::eTplTerminal_Modes)
@@
-56,15
+62,15
@@
struct sVTerm
Uint32 CurColour; //!< Current Text Colour
Uint32 CurColour; //!< Current Text Colour
-
int ViewPos;
//!< View Buffer Offset (Text Only)
-
int
WritePos; //!< Write Buffer Offset (Text Only)
+
size_t ViewTopRow;
//!< View Buffer Offset (Text Only)
+
tVT_Pos
WritePos; //!< Write Buffer Offset (Text Only)
tVT_Char *Text;
tVT_Char *Text;
+ tVT_Pos AltWritePos; //!< Alternate write position
tVT_Char *AltBuf; //!< Alternate Screen Buffer
tVT_Char *AltBuf; //!< Alternate Screen Buffer
- int AltWritePos; //!< Alternate write position
short ScrollTop; //!< Top of scrolling region (smallest)
short ScrollHeight; //!< Length of scrolling region
short ScrollTop; //!< Top of scrolling region (smallest)
short ScrollHeight; //!< Length of scrolling region
-
int
SavedWritePos; //!< Saved cursor position (\e[s and \e[u)
+
tVT_Pos
SavedWritePos; //!< Saved cursor position (\e[s and \e[u)
char EscapeCodeCache[16];
size_t EscapeCodeLen;
char EscapeCodeCache[16];
size_t EscapeCodeLen;
@@
-88,6
+94,11
@@
struct sVTerm
int CachePos;
char Cache[32];
size_t PreEat;
int CachePos;
char Cache[32];
size_t PreEat;
+ union {
+ struct {
+ size_t Offset;
+ } Push;
+ } CmdInfo;
} Cmd2D;
tPTY *PTY;
} Cmd2D;
tPTY *PTY;
@@
-125,8
+136,13
@@
extern void VT_int_PutRawString(tVTerm *Term, const Uint8 *String, size_t Bytes)
extern void VT_int_PutChar(tVTerm *Term, Uint32 Ch);
extern void VT_int_ScrollText(tVTerm *Term, int Count);
extern void VT_int_ClearLine(tVTerm *Term, int Num);
extern void VT_int_PutChar(tVTerm *Term, Uint32 Ch);
extern void VT_int_ScrollText(tVTerm *Term, int Count);
extern void VT_int_ClearLine(tVTerm *Term, int Num);
+extern void VT_int_ClearInLine(tVTerm *Term, int Row, int FirstCol, int LastCol);
extern void VT_int_Resize(tVTerm *Term, int NewWidth, int NewHeight);
extern void VT_int_ToggleAltBuffer(tVTerm *Term, int Enabled);
extern void VT_int_Resize(tVTerm *Term, int NewWidth, int NewHeight);
extern void VT_int_ToggleAltBuffer(tVTerm *Term, int Enabled);
+extern void VT_int_PutFBData(tVTerm *Term, size_t Offset, size_t Length, const void *Buffer);
+
+extern tVT_Pos *VT_int_GetWritePosPtr(tVTerm *Term);
+extern size_t VT_int_GetBufferRows(tVTerm *Term);
#endif
#endif
UCC
git Repository :: git.ucc.asn.au