summaryrefslogtreecommitdiff
path: root/noncore/apps/opie-console/widget_layer.h
Unidiff
Diffstat (limited to 'noncore/apps/opie-console/widget_layer.h') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/opie-console/widget_layer.h104
1 files changed, 87 insertions, 17 deletions
diff --git a/noncore/apps/opie-console/widget_layer.h b/noncore/apps/opie-console/widget_layer.h
index cf2a1e5..3cdd6aa 100644
--- a/noncore/apps/opie-console/widget_layer.h
+++ b/noncore/apps/opie-console/widget_layer.h
@@ -1,130 +1,200 @@
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
14#define WIDGET_LAYER_H
15
16// qt includes
17#include <qapplication.h>
18#include <qtimer.h>
19#include <qkeycode.h>
20#include <qclipboard.h>
21
22
23// opie-console includes
24#include "session.h"
25#include "common.h"
13 26
14class WidgetLayer : public QObject 27class WidgetLayer : public QObject
15{ QObject 28{ Q_OBJECT
16 29
17public: 30public:
31
18 /** 32 /**
19 * constructor 33 * constructor
20 */ 34 */
21 WidgetLayer(); 35 WidgetLayer( QObject *parent=0, const char *name=0 );
22 36
23 /** 37 /**
24 * destructor 38 * destructor
25 */ 39 */
26 virtual ~WidgetLayer(); 40 virtual ~WidgetLayer();
27 41
42public:
28 /** 43 /**
29 * sets the image 44 * sets the image
30 */ 45 */
31 virtual void setImage( const Character* const newimg, int lines, int colums ); 46 virtual void setImage( const Character* const newimg, int lines, int colums );
32 47
33 /** 48 /**
34 * annoy the user 49 * annoy the user
35 */ 50 */
36 void bell(); 51 void bell();
37 52
38 /** 53 /**
39 * return the lines count 54 * return the lines count
40 */ 55 */
41 int lines(){ return m_lines; } 56 int lines(){ return m_lines; }
42 57
43 /** 58 /**
44 * return the columns count 59 * return the columns count
45 */ 60 */
46 int columns(){ return m_columns } 61 int columns(){ return m_columns; }
47 62
48 /** 63 /**
49 * copy selection into clipboard, etc 64 * insert current selection (currently this is only the clipboard)
50 */ 65 */
51 void emitSelection(); 66 void insertSelection();
52 67
53 /** 68 /**
69 * insert text
70 */
71 void insertText( QString text );
72 /**
54 * set selection (clipboard) to text 73 * set selection (clipboard) to text
55 */ 74 */
56 void setSelection( QString &text ) 75 void setSelection( const QString &text );
57 76
58 /** 77 /**
59 * paste content of clipboard 78 * paste content of clipboard
60 */ 79 */
61 void pasteClipboard(); 80 void pasteClipboard();
62 81
63 82
64signals: 83signals:
65 84
66 /** 85 /**
67 * key was pressed 86 * key was pressed
68 */ 87 */
69 keyPressed( QKeyEvent *e ); 88 void keyPressed( QKeyEvent *e );
70 89
71 /** 90 /**
72 * whenever Mouse selects something 91 * whenever Mouse selects something
73 * 0left Button 92 * 0left Button
74 * 3Button released 93 * 3Button released
75 * // numbering due to layout in old TEWidget 94 * // numbering due to layout in old TEWidget
76 */ 95 */
77 mousePressed( int button, int x, int y ); 96 void mousePressed( int button, int x, int y );
78 97
79 /** 98 /**
80 * size of image changed 99 * size of image changed
81 */ 100 */
82 imageSizeChanged( int lines, int columns ); 101 void imageSizeChanged( int lines, int columns );
83 102
84 /** 103 /**
85 * cursor in history changed 104 * cursor in history changed
86 */ 105 */
87 historyCursorChanged( int value ); 106 void historyCursorChanged( int value );
88 107
89 /** 108 /**
90 * selection should be cleared 109 * selection should be cleared
91 */ 110 */
92 void selectionCleared(); 111 void selectionCleared();
93 112
94 /** 113 /**
95 * selection begin 114 * selection begin
96 */ 115 */
97 void selectionBegin( const int x, const int y ) 116 void selectionBegin( const int x, const int y );
98 117
99 /** 118 /**
100 * selection extended 119 * selection extended
101 * (from begin s.a. to x, y) 120 * (from begin (s.a.) to x, y)
102 */ 121 */
103 void selectionExtended( const int x, const int y ); 122 void selectionExtended( const int x, const int y );
104 123
105 /** 124 /**
106 * selection end 125 * selection end
107 * bool: preserve line breaks in selection 126 * bool: preserve line breaks in selection
108 */ 127 */
109 void selectionEnd( const bool lineBreakPreserve ); 128 void selectionEnd( const bool lineBreakPreserve );
110 129
111slots: 130
131
132// protected methods
133protected:
134
135 // image operations
136
137 /**
138 * changes image, to suit new size
139 * TODO: find meaningful name!
140 */
141 void propagateSize();
142
143 /**
144 *
145 */
146 virtual void calcGeometry();
147
148 /**
149 * makes an empty image
150 */
151 void makeImage();
152
153 /**
154 * clears the image
155 */
156 void clearImage();
157
158protected slots:
112 159
113 /** 160 /**
114 * clear selection 161 * clear selection
115 */ 162 */
116 onClearSelection(); 163 void onClearSelection();
164
117 165
118// protected vars 166// protected vars
119protected: 167protected:
120 168
121 /** 169 /**
122 * current Session 170 * current Session
123 */ 171 */
124 Session m_session; 172 Session *m_session;
173
174 /**
175 * current character image
176 */
177 QArray<Character> m_image;
125 178
126 /** 179 /**
127 * other misc vars 180 * lines count
128 */ 181 */
182 int m_lines;
129 183
184 /**
185 * columns count
186 */
187 int m_columns;
188
189 /**
190 * clipboard
191 */
192 QClipboard* m_clipboard;
193
194 /**
195 * whether widget was resized
196 */
197 bool m_resizing;
130}; 198};
199
200#endif // WIDGET_LAYER_H