summaryrefslogtreecommitdiff
path: root/noncore/apps
authoribotty <ibotty>2002-10-07 13:23:14 (UTC)
committer ibotty <ibotty>2002-10-07 13:23:14 (UTC)
commit68d98791b05217163f97d7c233952df8075416bb (patch) (unidiff)
treeda2ad4d16d62053ca5b836cd08d37364ec12b635 /noncore/apps
parenta513a88322196c8caa21b00b83d454feae84200c (diff)
downloadopie-68d98791b05217163f97d7c233952df8075416bb.zip
opie-68d98791b05217163f97d7c233952df8075416bb.tar.gz
opie-68d98791b05217163f97d7c233952df8075416bb.tar.bz2
changed WidgetLayer to a new (well partial) image storage
WidgetLayer is now to be considered stable. there wont be any api removals. newwidget.{h,cpp} will inherit WidgetLayer, soon. i will try to be logic compatible with current widget.{h,cpp}, but will NOT guarantee api compatibility.
Diffstat (limited to 'noncore/apps') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/opie-console/widget_layer.cpp26
-rw-r--r--noncore/apps/opie-console/widget_layer.h27
2 files changed, 36 insertions, 17 deletions
diff --git a/noncore/apps/opie-console/widget_layer.cpp b/noncore/apps/opie-console/widget_layer.cpp
index 28227e4..f428ed4 100644
--- a/noncore/apps/opie-console/widget_layer.cpp
+++ b/noncore/apps/opie-console/widget_layer.cpp
@@ -22,6 +22,4 @@
22 22
23#define loc(X,Y) ((Y)*m_columns+(X))
24 23
25 24WidgetLayer::WidgetLayer( QWidget *parent, const char *name ) : QFrame( parent, name )
26WidgetLayer::WidgetLayer( QObject *parent, const char *name ) : QObject( parent, name )
27{ 25{
@@ -39,8 +37,13 @@ WidgetLayer::WidgetLayer( QObject *parent, const char *name ) : QObject( parent
39 37
40 m_image = QArray<Character>(); 38 // just for demonstrating
39 //m_image = QArray<Character>( m_lines * m_columns );
40 m_image = QArray<Character>( 1 );
41
41} 42}
42 43
44
43WidgetLayer::~WidgetLayer() 45WidgetLayer::~WidgetLayer()
44{ 46{
45 // clean up! 47 // clean up
48 delete m_image;
46} 49}
@@ -60,3 +63,3 @@ void WidgetLayer::propagateSize()
60{ 63{
61 QArray<Character> oldimage = m_image; 64 QArray<Character> oldimage = m_image.copy();
62 int oldlines = m_lines; 65 int oldlines = m_lines;
@@ -67,6 +70,4 @@ void WidgetLayer::propagateSize()
67 // copy old image, to reduce flicker 70 // copy old image, to reduce flicker
68 if ( oldimage ) 71 if ( ! oldimage.isEmpty() )
69 { 72 {
70 //FIXME: is it possible to do this with QArray.dublicate()?
71
72 int lins = QMIN( oldlines, m_lines ); 73 int lins = QMIN( oldlines, m_lines );
@@ -79,3 +80,2 @@ void WidgetLayer::propagateSize()
79 } 80 }
80 //free( oldimage );
81 } 81 }
@@ -84,2 +84,4 @@ void WidgetLayer::propagateSize()
84 84
85 delete oldimage;
86
85 m_resizing = true; 87 m_resizing = true;
@@ -92,4 +94,4 @@ void WidgetLayer::makeImage()
92 calcGeometry(); 94 calcGeometry();
93 m_image = QArray<Character>(); 95 m_image = QArray<Character>( m_columns * m_lines );
94 clearImage(); 96 clearImage();
95} 97}
diff --git a/noncore/apps/opie-console/widget_layer.h b/noncore/apps/opie-console/widget_layer.h
index 07ec12a..99d248e 100644
--- a/noncore/apps/opie-console/widget_layer.h
+++ b/noncore/apps/opie-console/widget_layer.h
@@ -17,2 +17,4 @@
17#include <qapplication.h> 17#include <qapplication.h>
18#include <qframe.h>
19#include <qarray.h>
18#include <qtimer.h> 20#include <qtimer.h>
@@ -26,3 +28,12 @@
26 28
27class WidgetLayer : public QObject 29/*
30 * given a pseudo location ( column, line ),
31 * returns the actual index, in the QArray<Character>
32 */
33#define loc(X,Y) ((Y)*m_columns+(X))
34
35
36
37
38class WidgetLayer : public QFrame
28{ Q_OBJECT 39{ Q_OBJECT
@@ -34,3 +45,3 @@ public:
34 */ 45 */
35 WidgetLayer( QObject *parent=0, const char *name=0 ); 46 WidgetLayer( QWidget *parent=0, const char *name=0 );
36 47
@@ -45,3 +56,3 @@ public:
45 */ 56 */
46 virtual void setImage( const Character* const newimg, int lines, int colums ) = 0; 57 virtual void setImage( QArray<Character> const newimg, int lines, int colums );
47 58
@@ -143,3 +154,3 @@ protected:
143 /** 154 /**
144 * 155 *determines count of lines and columns
145 */ 156 */
@@ -175,2 +186,8 @@ protected:
175 * current character image 186 * current character image
187 *
188 * a Character at loc( column, line )
189 * has the actual index:
190 * ix = line * m_columns + column;
191 *
192 * use loc( x, y ) macro to access.
176 */ 193 */
@@ -194,3 +211,3 @@ protected:
194 /** 211 /**
195 * whether widget was resized 212 * whether widget is resizing
196 */ 213 */