summaryrefslogtreecommitdiff
path: root/noncore/apps/opie-console/emulation_widget.h
Side-by-side diff
Diffstat (limited to 'noncore/apps/opie-console/emulation_widget.h') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/opie-console/emulation_widget.h38
1 files changed, 35 insertions, 3 deletions
diff --git a/noncore/apps/opie-console/emulation_widget.h b/noncore/apps/opie-console/emulation_widget.h
index 56ea15f..e185534 100644
--- a/noncore/apps/opie-console/emulation_widget.h
+++ b/noncore/apps/opie-console/emulation_widget.h
@@ -8,12 +8,13 @@
#include <qpainter.h>
#include <qstring.h>
#include <qarray.h>
#include <qrect.h>
+
/**
* EmulationWidget
* simple implementation of EmulationLayer
* (doesn't support scrollbar, history, etc, yet)
*/
class EmulationWidget : public WidgetLayer
@@ -37,19 +38,19 @@ public:
/**
* sets the image
* @param QArray<Character> const newimg, the new image
* @param int lines, lines of the new image
* @param int columns, columns of the new image
*/
- virtual void setImage( QArray<Character> const newimg, int columns, int lines ) {};
+ virtual void setImage( QArray<Character> const newimg, int columns, int lines );
/**
* reloads configuration
* @param const Profile& config, configuration
*/
- virtual void reloadConfig( const Profile& config ) {};
+ virtual void reloadConfig( const Profile& config );
/**
* sets the scrollbar (not yet implemented)
*/
virtual void setScroll( int cursor, int slines );
@@ -61,20 +62,51 @@ public:
protected:
/**
* calculates current image bounds
*/
- virtual void calcGeometry() {};
+ virtual void calcGeometry();
+
+
+ /**
+ * @param const ColorEntry* table, the new color table
+ */
+ void setColorTable( const ColorEntry table[] );
/**
* draws a String
* @param QString& string, string to be drawn
* @param QPainter& painter, painter, that should draw
* @param QRect rect, rect to be drawn into
* @param Character attr, attributes of Characters
* @param bool usePixmap, if to use the background pixmap (currently not supported)
* @param bool clear, if rect should be cleared
*/
void drawAttrString( QString& string, QPainter& painter, QRect rect, Character attr, bool pm, bool clear );
+protected:
+
+ enum ScrollLocation
+ {
+ SCRNONE,
+ SCRLEFT,
+ SCRIGHT
+ };
+
+ int f_height;
+ int f_width;
+ int f_ascent;
+ int m_blX;
+ int m_blY;
+ int m_brX;
+
+ int m_bY;
+ int m_bX;
+ QScrollBar* m_scrollbar;
+
+ ScrollLocation scrollLoc;
+
+ ColorEntry* color_table;
+
+ bool blinking;
};