summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/opie-console/widget_layer.cpp2
-rw-r--r--noncore/apps/opie-console/widget_layer.h4
2 files changed, 3 insertions, 3 deletions
diff --git a/noncore/apps/opie-console/widget_layer.cpp b/noncore/apps/opie-console/widget_layer.cpp
index f428ed4..8d68857 100644
--- a/noncore/apps/opie-console/widget_layer.cpp
+++ b/noncore/apps/opie-console/widget_layer.cpp
@@ -1,157 +1,157 @@
1/* ------------------------------------------------------------------------- */ 1/* ------------------------------------------------------------------------- */
2/* */ 2/* */
3/* widget_layer.cpp Widget Layer */ 3/* widget_layer.cpp Widget Layer */
4/* */ 4/* */
5/* opie developers <opie@handhelds.org> */ 5/* opie developers <opie@handhelds.org> */
6/* */ 6/* */
7/* ------------------------------------------------------------------------- */ 7/* ------------------------------------------------------------------------- */
8 8
9 9
10 10
11#include "widget_layer.h" 11#include "widget_layer.h"
12 12
13#include <qclipboard.h> 13#include <qclipboard.h>
14#include <qregexp.h> 14#include <qregexp.h>
15#include <qglobal.h> 15#include <qglobal.h>
16 16
17#include <string.h> 17#include <string.h>
18//#include < 18//#include <
19 19
20#include "common.h" 20#include "common.h"
21 21
22 22
23 23
24WidgetLayer::WidgetLayer( QWidget *parent, const char *name ) : QFrame( parent, name ) 24WidgetLayer::WidgetLayer( const Profile &config, QWidget *parent, const char *name ) : QFrame( parent, name )
25{ 25{
26 // get the clipboard 26 // get the clipboard
27 m_clipboard = QApplication::clipboard(); 27 m_clipboard = QApplication::clipboard();
28 28
29 // when data on clipboard changes, clear selection 29 // when data on clipboard changes, clear selection
30 QObject::connect( (QObject*) m_clipboard, SIGNAL( dataChanged() ), 30 QObject::connect( (QObject*) m_clipboard, SIGNAL( dataChanged() ),
31 (QObject*)this, SLOT( onClearSelection() ) ); 31 (QObject*)this, SLOT( onClearSelection() ) );
32 32
33 // initialize vars: 33 // initialize vars:
34 m_lines = 1; 34 m_lines = 1;
35 m_columns = 1; 35 m_columns = 1;
36 m_resizing = false; 36 m_resizing = false;
37 37
38 // just for demonstrating 38 // just for demonstrating
39 //m_image = QArray<Character>( m_lines * m_columns ); 39 //m_image = QArray<Character>( m_lines * m_columns );
40 m_image = QArray<Character>( 1 ); 40 m_image = QArray<Character>( 1 );
41 41
42} 42}
43 43
44 44
45WidgetLayer::~WidgetLayer() 45WidgetLayer::~WidgetLayer()
46{ 46{
47 // clean up 47 // clean up
48 delete m_image; 48 delete m_image;
49} 49}
50 50
51/* --------------------------------- audio ---------------------------------- */ 51/* --------------------------------- audio ---------------------------------- */
52 52
53void WidgetLayer::bell() 53void WidgetLayer::bell()
54{ 54{
55 QApplication::beep(); 55 QApplication::beep();
56} 56}
57 57
58 58
59/* --------------------------------- screen --------------------------------- */ 59/* --------------------------------- screen --------------------------------- */
60 60
61 61
62void WidgetLayer::propagateSize() 62void WidgetLayer::propagateSize()
63{ 63{
64 QArray<Character> oldimage = m_image.copy(); 64 QArray<Character> oldimage = m_image.copy();
65 int oldlines = m_lines; 65 int oldlines = m_lines;
66 int oldcolumns = m_columns; 66 int oldcolumns = m_columns;
67 67
68 makeImage(); 68 makeImage();
69 69
70 // copy old image, to reduce flicker 70 // copy old image, to reduce flicker
71 if ( ! oldimage.isEmpty() ) 71 if ( ! oldimage.isEmpty() )
72 { 72 {
73 int lins = QMIN( oldlines, m_lines ); 73 int lins = QMIN( oldlines, m_lines );
74 int cols = QMIN( oldcolumns, m_columns ); 74 int cols = QMIN( oldcolumns, m_columns );
75 for ( int lin = 0; lin < lins; ++lin ) 75 for ( int lin = 0; lin < lins; ++lin )
76 { 76 {
77 memcpy( (void*) &m_image[m_columns*lin], 77 memcpy( (void*) &m_image[m_columns*lin],
78 (void*) &oldimage[oldcolumns*lin], 78 (void*) &oldimage[oldcolumns*lin],
79 cols*sizeof( Character ) ); 79 cols*sizeof( Character ) );
80 } 80 }
81 } 81 }
82 else 82 else
83 clearImage(); 83 clearImage();
84 84
85 delete oldimage; 85 delete oldimage;
86 86
87 m_resizing = true; 87 m_resizing = true;
88 emit imageSizeChanged( m_lines, m_columns ); 88 emit imageSizeChanged( m_lines, m_columns );
89 m_resizing = false; 89 m_resizing = false;
90} 90}
91 91
92void WidgetLayer::makeImage() 92void WidgetLayer::makeImage()
93{ 93{
94 calcGeometry(); 94 calcGeometry();
95 m_image = QArray<Character>( m_columns * m_lines ); 95 m_image = QArray<Character>( m_columns * m_lines );
96 clearImage(); 96 clearImage();
97} 97}
98 98
99void WidgetLayer::clearImage() 99void WidgetLayer::clearImage()
100{ 100{
101 //should this belong here?? 101 //should this belong here??
102 for ( int y = 0; y < m_lines; y++ ) 102 for ( int y = 0; y < m_lines; y++ )
103 for ( int x = 0; x < m_columns; x++ ) 103 for ( int x = 0; x < m_columns; x++ )
104 { 104 {
105 m_image[loc(x,y)].c = 0xff; 105 m_image[loc(x,y)].c = 0xff;
106 m_image[loc(x,y)].f = 0xff; 106 m_image[loc(x,y)].f = 0xff;
107 m_image[loc(x,y)].b = 0xff; 107 m_image[loc(x,y)].b = 0xff;
108 m_image[loc(x,y)].r = 0xff; 108 m_image[loc(x,y)].r = 0xff;
109 } 109 }
110} 110}
111 111
112/* --------------------------------- selection ------------------------------ */ 112/* --------------------------------- selection ------------------------------ */
113 113
114void WidgetLayer::pasteClipboard() 114void WidgetLayer::pasteClipboard()
115{ 115{
116 insertSelection(); 116 insertSelection();
117} 117}
118 118
119 119
120void WidgetLayer::insertSelection() 120void WidgetLayer::insertSelection()
121{ 121{
122 QString text = QApplication::clipboard()->text(); 122 QString text = QApplication::clipboard()->text();
123 if ( ! text.isNull() ) 123 if ( ! text.isNull() )
124 { 124 {
125 text.replace( QRegExp( "\n" ), "\r" ); 125 text.replace( QRegExp( "\n" ), "\r" );
126 insertText( text ); 126 insertText( text );
127 // selection should be unselected 127 // selection should be unselected
128 emit selectionCleared(); 128 emit selectionCleared();
129 } 129 }
130} 130}
131 131
132void WidgetLayer::insertText( QString text ) 132void WidgetLayer::insertText( QString text )
133{ 133{
134 // text is inserted as key event 134 // text is inserted as key event
135 QKeyEvent e( QEvent::KeyPress, 0, -1, 0, text); 135 QKeyEvent e( QEvent::KeyPress, 0, -1, 0, text);
136 emit keyPressed( &e ); 136 emit keyPressed( &e );
137} 137}
138 138
139void WidgetLayer::onClearSelection() 139void WidgetLayer::onClearSelection()
140{ 140{
141 emit selectionCleared(); 141 emit selectionCleared();
142} 142}
143 143
144void WidgetLayer::setSelection( const QString& text ) 144void WidgetLayer::setSelection( const QString& text )
145{ 145{
146 // why get the clipboard, we have it as instance var... 146 // why get the clipboard, we have it as instance var...
147 QObject *m_clipboard = QApplication::clipboard(); 147 QObject *m_clipboard = QApplication::clipboard();
148 148
149 // we know, that cliboard changes, when we change clipboard 149 // we know, that cliboard changes, when we change clipboard
150 QObject::disconnect( (QObject*) m_clipboard, SIGNAL( dataChanged() ), 150 QObject::disconnect( (QObject*) m_clipboard, SIGNAL( dataChanged() ),
151 (QObject*) this, SLOT( selectionCleared() ) ); 151 (QObject*) this, SLOT( selectionCleared() ) );
152 152
153 QApplication::clipboard()->setText( text ); 153 QApplication::clipboard()->setText( text );
154 154
155 QObject::connect( (QObject*) m_clipboard, SIGNAL( dataChanged() ), 155 QObject::connect( (QObject*) m_clipboard, SIGNAL( dataChanged() ),
156 (QObject*) this, SLOT( selectionCleared() ) ); 156 (QObject*) this, SLOT( selectionCleared() ) );
157} 157}
diff --git a/noncore/apps/opie-console/widget_layer.h b/noncore/apps/opie-console/widget_layer.h
index d821f1d..0056061 100644
--- a/noncore/apps/opie-console/widget_layer.h
+++ b/noncore/apps/opie-console/widget_layer.h
@@ -1,237 +1,237 @@
1/* -------------------------------------------------------------------------- */ 1/* -------------------------------------------------------------------------- */
2/* */ 2/* */
3/* [widget_layer.h] Widget Layer */ 3/* [widget_layer.h] Widget Layer */
4/* */ 4/* */
5/* -------------------------------------------------------------------------- */ 5/* -------------------------------------------------------------------------- */
6 6
7// proposal of a widget Layer in opie-console 7// proposal of a widget Layer in opie-console
8// 8//
9// fellow devels: 9// fellow devels:
10// just mail me (ibotty@web.de), what you additionally need from the main widget 10// just mail me (ibotty@web.de), what you additionally need from the main widget
11// (or say in chat) 11// (or say in chat)
12 12
13#ifndef WIDGET_LAYER_H 13#ifndef WIDGET_LAYER_H
14#define WIDGET_LAYER_H 14#define WIDGET_LAYER_H
15 15
16// qt includes 16// qt includes
17#include <qapplication.h> 17#include <qapplication.h>
18#include <qframe.h> 18#include <qframe.h>
19#include <qarray.h> 19#include <qarray.h>
20#include <qtimer.h> 20#include <qtimer.h>
21#include <qkeycode.h> 21#include <qkeycode.h>
22#include <qclipboard.h> 22#include <qclipboard.h>
23 23
24 24
25// opie-console includes 25// opie-console includes
26#include "session.h" 26#include "session.h"
27#include "common.h" 27#include "common.h"
28 28#include "profile.h"
29/* 29/*
30 * given a pseudo location ( column, line ), 30 * given a pseudo location ( column, line ),
31 * returns the actual index, in the QArray<Character> 31 * returns the actual index, in the QArray<Character>
32 */ 32 */
33#define loc(X,Y) ((Y)*m_columns+(X)) 33#define loc(X,Y) ((Y)*m_columns+(X))
34 34
35 35
36 36
37 37
38class WidgetLayer : public QFrame 38class WidgetLayer : public QFrame
39{ Q_OBJECT 39{ Q_OBJECT
40 40
41public: 41public:
42 42
43 /** 43 /**
44 * constructor 44 * constructor
45 * @param const Profile &config, the configuration for this widget 45 * @param const Profile &config, the configuration for this widget
46 * @param QWidget *parent, the parent widget 46 * @param QWidget *parent, the parent widget
47 * @param const char *name, the name of the widget, defaults to "" 47 * @param const char *name, the name of the widget, defaults to ""
48 */ 48 */
49 WidgetLayer( const Profile &config, QWidget *parent=0, const char *name=0 ); 49 WidgetLayer( const Profile& config, QWidget *parent=0, const char *name=0 );
50 50
51 /** 51 /**
52 * destructor 52 * destructor
53 */ 53 */
54 virtual ~WidgetLayer(); 54 virtual ~WidgetLayer();
55 55
56public: 56public:
57 /** 57 /**
58 * sets the image 58 * sets the image
59 * @param QArray<Character> const newimg, the new image 59 * @param QArray<Character> const newimg, the new image
60 * @param int lines, lines count of newimg 60 * @param int lines, lines count of newimg
61 * @param int columns, columns count of newimg 61 * @param int columns, columns count of newimg
62 */ 62 */
63 virtual void setImage( QArray<Character> const newimg, int lines, int colums ) = 0; 63 virtual void setImage( QArray<Character> const newimg, int lines, int colums ) = 0;
64 64
65 /** 65 /**
66 * annoy the user 66 * annoy the user
67 */ 67 */
68 void bell(); 68 void bell();
69 69
70 /** 70 /**
71 * @return int m_lines, the lines count 71 * @return int m_lines, the lines count
72 */ 72 */
73 int lines(){ return m_lines; } 73 int lines(){ return m_lines; }
74 74
75 /** 75 /**
76 * @return int m_columns, the columns count 76 * @return int m_columns, the columns count
77 */ 77 */
78 int columns(){ return m_columns; } 78 int columns(){ return m_columns; }
79 79
80 /** 80 /**
81 * insert current selection (currently this is only the clipboard) 81 * insert current selection (currently this is only the clipboard)
82 */ 82 */
83 void insertSelection(); 83 void insertSelection();
84 84
85 /** 85 /**
86 * insert text 86 * insert text
87 * @param QString text, the text to be inserted 87 * @param QString text, the text to be inserted
88 */ 88 */
89 void insertText( QString text ); 89 void insertText( QString text );
90 90
91 /** 91 /**
92 * set selection (clipboard) to text 92 * set selection (clipboard) to text
93 * @param const QString &text, the text to be selected 93 * @param const QString &text, the text to be selected
94 */ 94 */
95 void setSelection( const QString &text ); 95 void setSelection( const QString &text );
96 96
97 /** 97 /**
98 * paste content of clipboard 98 * paste content of clipboard
99 */ 99 */
100 void pasteClipboard(); 100 void pasteClipboard();
101 101
102 102
103signals: 103signals:
104 104
105 /** 105 /**
106 * key was pressed 106 * key was pressed
107 */ 107 */
108 void keyPressed( QKeyEvent *e ); 108 void keyPressed( QKeyEvent *e );
109 109
110 /** 110 /**
111 * whenever Mouse selects something 111 * whenever Mouse selects something
112 * @param int button, the button that us pressed : 112 * @param int button, the button that us pressed :
113 * 0left Button 113 * 0left Button
114 * 3Button released 114 * 3Button released
115 * @param int x, x position 115 * @param int x, x position
116 * @param int y, y position 116 * @param int y, y position
117 * 117 *
118 * // numbering due to layout in old TEWidget 118 * // numbering due to layout in old TEWidget
119 */ 119 */
120 void mousePressed( int button, int x, int y ); 120 void mousePressed( int button, int x, int y );
121 121
122 /** 122 /**
123 * size of image changed 123 * size of image changed
124 * @param int lines, line count of new size 124 * @param int lines, line count of new size
125 * @param int columns, column count of new size 125 * @param int columns, column count of new size
126 */ 126 */
127 void imageSizeChanged( int lines, int columns ); 127 void imageSizeChanged( int lines, int columns );
128 128
129 /** 129 /**
130 * cursor in history changed 130 * cursor in history changed
131 * @param int value, value of history cursor 131 * @param int value, value of history cursor
132 */ 132 */
133 void historyCursorChanged( int value ); 133 void historyCursorChanged( int value );
134 134
135 /** 135 /**
136 * selection should be cleared 136 * selection should be cleared
137 */ 137 */
138 void selectionCleared(); 138 void selectionCleared();
139 139
140 /** 140 /**
141 * selection begin 141 * selection begin
142 * @param const int x, x position 142 * @param const int x, x position
143 * @param const int y, y position 143 * @param const int y, y position
144 */ 144 */
145 void selectionBegin( const int x, const int y ); 145 void selectionBegin( const int x, const int y );
146 146
147 /** 147 /**
148 * selection extended 148 * selection extended
149 * (from begin (s.a.) to x, y) 149 * (from begin (s.a.) to x, y)
150 * @param const int x, x position 150 * @param const int x, x position
151 * @param const int y, y position 151 * @param const int y, y position
152 */ 152 */
153 void selectionExtended( const int x, const int y ); 153 void selectionExtended( const int x, const int y );
154 154
155 /** 155 /**
156 * selection end 156 * selection end
157 * @param const bool lineBreakPreserve, preserve line breaks in selection 157 * @param const bool lineBreakPreserve, preserve line breaks in selection
158 */ 158 */
159 void selectionEnd( const bool lineBreakPreserve ); 159 void selectionEnd( const bool lineBreakPreserve );
160 160
161 161
162 162
163// protected methods 163// protected methods
164protected: 164protected:
165 165
166 // image operations 166 // image operations
167 167
168 /** 168 /**
169 * changes image, to suit new size 169 * changes image, to suit new size
170 * TODO: find meaningful name! 170 * TODO: find meaningful name!
171 */ 171 */
172 void propagateSize(); 172 void propagateSize();
173 173
174 /** 174 /**
175 *determines count of lines and columns 175 *determines count of lines and columns
176 */ 176 */
177 virtual void calcGeometry() = 0; 177 virtual void calcGeometry() = 0;
178 178
179 /** 179 /**
180 * makes an empty image 180 * makes an empty image
181 */ 181 */
182 void makeImage(); 182 void makeImage();
183 183
184 /** 184 /**
185 * clears the image 185 * clears the image
186 */ 186 */
187 void clearImage(); 187 void clearImage();
188 188
189protected slots: 189protected slots:
190 190
191 /** 191 /**
192 * clear selection 192 * clear selection
193 */ 193 */
194 void onClearSelection(); 194 void onClearSelection();
195 195
196 196
197// protected vars 197// protected vars
198protected: 198protected:
199 199
200 /** 200 /**
201 * current Session 201 * current Session
202 */ 202 */
203 Session *m_session; 203 Session *m_session;
204 204
205 /** 205 /**
206 * current character image 206 * current character image
207 * 207 *
208 * a Character at loc( column, line ) 208 * a Character at loc( column, line )
209 * has the actual index: 209 * has the actual index:
210 * ix = line * m_columns + column; 210 * ix = line * m_columns + column;
211 * 211 *
212 * use loc( x, y ) macro to access. 212 * use loc( x, y ) macro to access.
213 */ 213 */
214 QArray<Character> m_image; 214 QArray<Character> m_image;
215 215
216 /** 216 /**
217 * lines count 217 * lines count
218 */ 218 */
219 int m_lines; 219 int m_lines;
220 220
221 /** 221 /**
222 * columns count 222 * columns count
223 */ 223 */
224 int m_columns; 224 int m_columns;
225 225
226 /** 226 /**
227 * clipboard 227 * clipboard
228 */ 228 */
229 QClipboard* m_clipboard; 229 QClipboard* m_clipboard;
230 230
231 /** 231 /**
232 * whether widget is resizing 232 * whether widget is resizing
233 */ 233 */
234 bool m_resizing; 234 bool m_resizing;
235}; 235};
236 236
237#endif // WIDGET_LAYER_H 237#endif // WIDGET_LAYER_H