summaryrefslogtreecommitdiff
path: root/Source/Kernel/VTManager/SimpleVT.class.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Kernel/VTManager/SimpleVT.class.h')
-rw-r--r--Source/Kernel/VTManager/SimpleVT.class.h42
1 files changed, 42 insertions, 0 deletions
diff --git a/Source/Kernel/VTManager/SimpleVT.class.h b/Source/Kernel/VTManager/SimpleVT.class.h
new file mode 100644
index 0000000..6a50549
--- /dev/null
+++ b/Source/Kernel/VTManager/SimpleVT.class.h
@@ -0,0 +1,42 @@
+#ifndef DEF_SIMPLEVT_CLASS_H
+#define DEF_SIMPLEVT_CLASS_H
+
+#include <VTManager/VirtualTerminal.proto.h>
+
+class SimpleVT : public VirtualTerminal {
+ protected:
+ vtchr* m_buff;
+ u32int m_rows, m_cols;
+ u8int m_color;
+
+ u32int m_maprow, m_mapcol;
+ bool m_mapped;
+
+ u32int m_csrlin, m_csrcol;
+
+ public:
+ SimpleVT(u32int rows, u32int cols, u8int fgcolor = 7, u8int bgcolor = 0);
+ virtual ~SimpleVT();
+
+ virtual void putChar(u32int row, u32int col, WChar c);
+ void clear();
+ void setColor(u8int fgcolor, u8int bgcolor = 0xFF);
+ bool isBoxed() { return true; }
+
+ void map(s32int row = -1, s32int col = -1);
+ void unmap();
+ virtual void redraw();
+ virtual void scroll(); //Scrolls 1 line
+
+ virtual void updateCursor();
+ void moveCursor(u32int row, u32int col);
+ void setCursorLine(u32int line);
+ void setCursorCol(u32int col);
+
+ void put(WChar c, bool updatecsr = true);
+
+ virtual void hexDump(u8int* ptr, u32int sz, bool addnl = false); //Ignore parameter addnl
+};
+
+#endif
+