Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

emulation_widget.h

Go to the documentation of this file.
00001 // opie console includes
00002 #include "widget_layer.h"
00003 #include "profile.h"
00004 #include "common.h"
00005 
00006 // qt includes
00007 #include <qwidget.h>
00008 #include <qpainter.h>
00009 #include <qstring.h>
00010 #include <qarray.h>
00011 #include <qrect.h>
00012 
00013 
00014 
00020 class EmulationWidget : public WidgetLayer
00021 { Q_OBJECT
00022 
00023 public:
00024 
00031     EmulationWidget( const Profile& config, QWidget *parent=0, const char *name =0 );
00032 
00036     ~EmulationWidget();
00037 
00044     virtual void setImage( QArray<Character> const newimg, int columns, int lines );
00045 
00050     virtual void reloadConfig( const Profile& config );
00051 
00055     virtual void setScroll( int cursor, int slines );
00056 
00061     virtual void scroll( int value );
00062 
00063     virtual QSize calcSize( int cols, int lins ) const;
00064 
00065 protected:
00066 
00070     virtual void calcGeometry();
00071 
00072 
00073     void paintEvent( QPaintEvent* event );
00074 
00078     void setColorTable( const ColorEntry table[] );
00079 
00089     void drawAttrString( QString& string, QPainter& painter, QRect rect, Character attr, bool pm, bool clear );
00090 
00091 protected:
00092 
00093     enum ScrollLocation
00094       {
00095         SCRNONE,
00096         SCRLEFT,
00097         SCRIGHT
00098       };
00099 
00100         int f_height;
00101         int f_width;
00102         int f_ascent;
00103         int m_blX;
00104         int m_blY;
00105         int m_brX;
00106 
00107         int m_bY;
00108         int m_bX;
00109         QScrollBar* m_scrollbar;
00110 
00111         ScrollLocation scrollLoc;
00112 
00113 //      ColorEntry* color_table;
00114 
00115         bool blinking;
00116 };

Generated on Sat Nov 5 16:16:49 2005 for OPIE by  doxygen 1.4.2