38 class MSwtBrowser; |
39 class MSwtBrowser; |
39 class MSwtMenu; |
40 class MSwtMenu; |
40 |
41 |
41 |
42 |
42 /* |
43 /* |
43 * SWT style constants |
44 * SWT style constants, used by the native libraries |
44 */ |
45 */ |
45 const TInt KSwtStyleBar = 1 << 1; |
46 const TInt KSwtStyleBar = 1 << 1; |
46 const TInt KSwtStyleDropDown = 1 << 2; |
|
47 const TInt KSwtStylePopUp = 1 << 3; |
47 const TInt KSwtStylePopUp = 1 << 3; |
48 const TInt KSwtStyleSeparator = 1 << 1; |
48 const TInt KSwtStyleSeparator = 1 << 1; |
49 const TInt KSwtStyleToggle = 1 << 1; |
49 const TInt KSwtStyleToggle = 1 << 1; |
50 const TInt KSwtStyleArrow = 1 << 2; |
|
51 const TInt KSwtStylePush = 1 << 3; |
50 const TInt KSwtStylePush = 1 << 3; |
52 const TInt KSwtStyleRadio = 1 << 4; |
51 const TInt KSwtStyleRadio = 1 << 4; |
53 const TInt KSwtStyleCheck = 1 << 5; |
52 const TInt KSwtStyleCheck = 1 << 5; |
54 const TInt KSwtStyleCascade = 1 << 6; |
53 const TInt KSwtStyleCascade = 1 << 6; |
55 const TInt KSwtStyleMulti = 1 << 1; |
54 const TInt KSwtStyleMulti = 1 << 1; |
56 const TInt KSwtStyleSingle = 1 << 2; |
55 const TInt KSwtStyleSingle = 1 << 2; |
57 const TInt KSwtStyleReadOnly = 1 << 3; |
56 const TInt KSwtStyleReadOnly = 1 << 3; |
58 const TInt KSwtStyleWrap = 1 << 6; |
57 const TInt KSwtStyleWrap = 1 << 6; |
59 const TInt KSwtStyleSimple = 1 << 6; |
|
60 const TInt KSwtStylePassword = 1 << 22; |
58 const TInt KSwtStylePassword = 1 << 22; |
61 const TInt KSwtStyleShadowIn = 1 << 2; |
59 const TInt KSwtStyleShadowIn = 1 << 2; |
62 const TInt KSwtStyleShadowOut = 1 << 3; |
60 const TInt KSwtStyleShadowOut = 1 << 3; |
63 const TInt KSwtStyleShadowEtchedIn = 1 << 4; |
|
64 const TInt KSwtStyleShadowEtchedOut = 1 << 6; |
|
65 const TInt KSwtStyleShadowNone = 1 << 5; |
|
66 const TInt KSwtStyleIndeterminate = 1 << 1; |
61 const TInt KSwtStyleIndeterminate = 1 << 1; |
67 const TInt KSwtStyleTool = 1 << 2; |
|
68 const TInt KSwtStyleNoTrim = 1 << 3; |
62 const TInt KSwtStyleNoTrim = 1 << 3; |
69 const TInt KSwtStyleResize = 1 << 4; |
|
70 const TInt KSwtStyleTitle = 1 << 5; |
63 const TInt KSwtStyleTitle = 1 << 5; |
71 const TInt KSwtStyleClose = 1 << 6; |
|
72 const TInt KSwtStyleMenu = KSwtStyleClose; |
|
73 const TInt KSwtStyleMin = 1 << 7; |
|
74 const TInt KSwtStyleMax = 1 << 10; |
|
75 const TInt KSwtStyleHScroll = 1 << 8; |
64 const TInt KSwtStyleHScroll = 1 << 8; |
76 const TInt KSwtStyleVScroll = 1 << 9; |
65 const TInt KSwtStyleVScroll = 1 << 9; |
77 const TInt KSwtStyleBorder = 1 << 11; |
66 const TInt KSwtStyleBorder = 1 << 11; |
78 const TInt KSwtStyleClipChildren = 1 << 12; |
|
79 const TInt KSwtStyleClipSiblings = 1 << 13; |
|
80 const TInt KSwtStyleOnTop = 1 << 14; |
67 const TInt KSwtStyleOnTop = 1 << 14; |
81 const TInt KSwtStyleModeless = 0; |
68 const TInt KSwtStyleModeless = 0; |
82 const TInt KSwtStylePrimaryModal = 1 << 15; |
69 const TInt KSwtStylePrimaryModal = 1 << 15; |
83 const TInt KSwtStyleApplicationModal = 1 << 16; |
70 const TInt KSwtStyleApplicationModal = 1 << 16; |
84 const TInt KSwtStyleSystemModal = 1 << 17; |
71 const TInt KSwtStyleSystemModal = 1 << 17; |
85 const TInt KSwtStyleHideSelection = 1 << 15; |
72 const TInt KSwtStyleHideSelection = 1 << 15; |
86 const TInt KSwtStyleFullSelection = 1 << 16; |
73 const TInt KSwtStyleFullSelection = 1 << 16; |
87 const TInt KSwtStyleFlat = 1 << 23; |
74 const TInt KSwtStyleFlat = 1 << 23; |
88 const TInt KSwtStyleSmooth = 1 << 16; |
75 const TInt KSwtStyleSmooth = 1 << 16; |
89 const TInt KSwtStyleNoBackground = 1 << 18; |
76 const TInt KSwtStyleNoBackground = 1 << 18; |
90 const TInt KSwtStyleNoFocus = 1 << 19; |
|
91 const TInt KSwtStyleNoRedrawResize = 1 << 20; |
77 const TInt KSwtStyleNoRedrawResize = 1 << 20; |
92 const TInt KSwtStyleNoMergePaints = 1 << 21; |
78 const TInt KSwtStyleNoMergePaints = 1 << 21; |
93 const TInt KSwtStyleNoRadioGroup = 1 << 22; |
79 const TInt KSwtStyleNoRadioGroup = 1 << 22; |
94 const TInt KSwtStyleLeftToRight = 1 << 25; |
80 const TInt KSwtStyleLeftToRight = 1 << 25; |
95 const TInt KSwtStyleRightToLeft = 1 << 26; |
81 const TInt KSwtStyleRightToLeft = 1 << 26; |
96 const TInt KSwtStyleMirrored = 1 << 27; |
|
97 const TInt KSwtStyleEmbedded = 1 << 24; |
|
98 const TInt KSwtStyleVirtual = 1 << 28; |
|
99 const TInt KSwtStyleUp = 1 << 7; |
82 const TInt KSwtStyleUp = 1 << 7; |
100 const TInt KSwtStyleDown = 1 << 10; |
83 const TInt KSwtStyleDown = 1 << 10; |
101 const TInt KSwtStyleLead = 1 << 14; |
84 const TInt KSwtStyleLead = 1 << 14; |
102 const TInt KSwtStyleTrail = 1 << 17; |
85 const TInt KSwtStyleTrail = 1 << 17; |
103 const TInt KSwtStyleCenter = 1 << 24; |
86 const TInt KSwtStyleCenter = 1 << 24; |
104 const TInt KSwtStyleHorizontal = 1 << 8; |
87 const TInt KSwtStyleHorizontal = 1 << 8; |
105 const TInt KSwtStyleVertical = 1 << 9; |
88 const TInt KSwtStyleVertical = 1 << 9; |
106 const TInt KSwtStyleBeginning = 1; |
|
107 const TInt KSwtStyleFill = 4; |
|
108 const TInt KSwtStyleOpen = 1 << 12; |
89 const TInt KSwtStyleOpen = 1 << 12; |
109 const TInt KSwtStyleSave = 1 << 13; |
90 const TInt KSwtStyleSave = 1 << 13; |
110 |
|
111 |
|
112 // Although the styles KSwtStyleShellTrim and KSwtStyleDialogTrim use |
|
113 // the KSwtStyleNormalStatusPane in Mobile Extension, we still do not bitwise OR |
|
114 // them with KSwtStyleNormalStatusPane, to keep the compatibility when Mobile |
|
115 // Extensions is not used. |
|
116 const TInt KSwtStyleShellTrim = KSwtStyleTitle | KSwtStyleClose | KSwtStyleMin | KSwtStyleMax | KSwtStyleResize; |
|
117 const TInt KSwtStyleDialogTrim = KSwtStyleTitle | KSwtStyleClose | KSwtStyleBorder; |
|
118 |
91 |
119 |
92 |
120 /** |
93 /** |
121 * Binary mask for the modality styles |
94 * Binary mask for the modality styles |
122 */ |
95 */ |
175 ESwtMsgBoxBtnRetryCancel = KSwtMsgBoxStyleRetry | KSwtMsgBoxStyleCancel |
148 ESwtMsgBoxBtnRetryCancel = KSwtMsgBoxStyleRetry | KSwtMsgBoxStyleCancel |
176 }; |
149 }; |
177 |
150 |
178 |
151 |
179 /** |
152 /** |
180 * Default value of the ProgressBar |
|
181 */ |
|
182 const TInt KDefaultProgressBarSelectionValue= 0; |
|
183 const TInt KDefaultProgressBarMinValue = 0; |
|
184 const TInt KDefaultProgressBarMaxValue = 100; |
|
185 |
|
186 |
|
187 /** |
|
188 * Retrieves the message box's button from it's style |
153 * Retrieves the message box's button from it's style |
189 */ |
154 */ |
190 inline TMsgBoxButtons SwtMsgBoxButtons(TInt aMsgBoxStyle) |
155 inline TMsgBoxButtons SwtMsgBoxButtons(TInt aMsgBoxStyle) |
191 { |
156 { |
192 return static_cast<TMsgBoxButtons>(aMsgBoxStyle & KSwtMsgBoxButtonMask); |
157 return static_cast<TMsgBoxButtons>(aMsgBoxStyle & KSwtMsgBoxButtonMask); |
193 } |
158 } |
194 |
159 |
195 |
160 |
196 /** |
161 /** |
197 * Greatest number of pages in a CSwtMultiPageDialog |
162 * SWT error code, , used by the native libraries. |
198 */ |
|
199 const TInt KMultiPageDialogNbPageMax = 5; |
|
200 |
|
201 |
|
202 /** |
|
203 * SWT error code |
|
204 */ |
163 */ |
205 enum TSwtError |
164 enum TSwtError |
206 { |
165 { |
207 ESwtErrorNone = 0, |
|
208 ESwtErrorUnspecified = 1, |
166 ESwtErrorUnspecified = 1, |
209 ESwtErrorNoHandles = 2, |
167 ESwtErrorNoHandles = 2, |
210 ESwtErrorNoMoreCallbacks = 3, |
|
211 ESwtErrorNullArgument = 4, |
168 ESwtErrorNullArgument = 4, |
212 ESwtErrorInvalidArgument = 5, |
169 ESwtErrorInvalidArgument = 5, |
213 ESwtErrorInvalidRange = 6, |
170 ESwtErrorInvalidRange = 6, |
214 ESwtErrorCannotBeZero = 7, |
171 ESwtErrorCannotBeZero = 7, |
215 ESwtErrorCannotGetItem = 8, |
|
216 ESwtErrorCannotGetSelection = 9, |
172 ESwtErrorCannotGetSelection = 9, |
217 ESwtErrorCannotGetItemHeight = 11, |
|
218 ESwtErrorCannotGetText = 12, |
|
219 ESwtErrorCannotSetText = 13, |
|
220 ESwtErrorItemNotAdded = 14, |
173 ESwtErrorItemNotAdded = 14, |
221 ESwtErrorItemNotRemoved = 15, |
|
222 ESwtErrorNotImplemented = 20, |
|
223 ESwtErrorMenuNotDropDown = 21, |
|
224 ESwtErrorThreadInvalidAccess = 22, |
174 ESwtErrorThreadInvalidAccess = 22, |
225 ESwtErrorWidgetDisposed = 24, |
|
226 ESwtErrorMenuItemNotCascade = 27, |
|
227 ESwtErrorCannotSetSelection = 28, |
175 ESwtErrorCannotSetSelection = 28, |
228 ESwtErrorCannotSetMenu = 29, |
|
229 ESwtErrorCannotSetEnabled = 30, |
|
230 ESwtErrorCannotGetEnabled = 31, |
|
231 ESwtErrorInvalidParent = 32, |
|
232 ESwtErrorMenuNotBar = 33, |
|
233 ESwtErrorCannotGetCount = 36, |
|
234 ESwtErrorMenuNotPopUp = 37, |
|
235 ESwtErrorUnsupportedDepth = 38, |
176 ESwtErrorUnsupportedDepth = 38, |
236 ESwtErrorIO = 39, |
177 ESwtErrorIO = 39, |
237 ESwtErrorInvalidImage = 40, |
178 ESwtErrorInvalidImage = 40, |
238 ESwtErrorUnsupportedFormat = 42, |
|
239 ESwtErrorInvalidSubclass = 43, |
|
240 ESwtErrorGraphicDisposed = 44, |
|
241 ESwtErrorDeviceDisposed = 45, |
|
242 ESwtErrorFailedExec = 46, |
|
243 ESwtErrorFailedLoadLibrary = 47 |
179 ESwtErrorFailedLoadLibrary = 47 |
244 }; |
180 }; |
245 |
181 |
246 |
182 |
247 /* |
183 /* |
251 const TInt KSwtBold = 1 << 0; |
187 const TInt KSwtBold = 1 << 0; |
252 const TInt KSwtItalic = 1 << 1; |
188 const TInt KSwtItalic = 1 << 1; |
253 |
189 |
254 |
190 |
255 /** |
191 /** |
256 * SWT event type |
192 * SWT events (constant values specifed in eSWT API) |
257 */ |
193 */ |
258 enum TSwtEventType |
194 enum TSwtEventType |
259 { |
195 { |
260 // SWT events (constant values specifed in eSWT API) |
|
261 ESwtEventNone = 0, |
196 ESwtEventNone = 0, |
262 ESwtEventKeyDown = 1, |
197 ESwtEventKeyDown = 1, |
263 ESwtEventKeyUp = 2, |
198 ESwtEventKeyUp = 2, |
264 ESwtEventMouseDown = 3, |
199 ESwtEventMouseDown = 3, |
265 ESwtEventMouseUp = 4, |
200 ESwtEventMouseUp = 4, |
266 ESwtEventMouseMove = 5, |
201 ESwtEventMouseMove = 5, |
267 ESwtEventMouseEnter = 6, |
|
268 ESwtEventMouseExit = 7, |
|
269 ESwtEventMouseDoubleClick = 8, |
202 ESwtEventMouseDoubleClick = 8, |
270 ESwtEventPaint = 9, |
203 ESwtEventPaint = 9, |
271 ESwtEventMove = 10, |
204 ESwtEventMove = 10, |
272 ESwtEventResize = 11, |
205 ESwtEventResize = 11, |
273 ESwtEventDispose = 12, |
206 ESwtEventDispose = 12, |
275 ESwtEventDefaultSelection = 14, |
208 ESwtEventDefaultSelection = 14, |
276 ESwtEventFocusIn = 15, |
209 ESwtEventFocusIn = 15, |
277 ESwtEventFocusOut = 16, |
210 ESwtEventFocusOut = 16, |
278 ESwtEventExpand = 17, |
211 ESwtEventExpand = 17, |
279 ESwtEventCollapse = 18, |
212 ESwtEventCollapse = 18, |
280 ESwtEventIconify = 19, |
|
281 ESwtEventDeiconify = 20, |
|
282 ESwtEventClose = 21, |
213 ESwtEventClose = 21, |
283 ESwtEventShow = 22, |
214 ESwtEventShow = 22, |
284 ESwtEventHide = 23, |
215 ESwtEventHide = 23, |
285 ESwtEventModify = 24, |
216 ESwtEventModify = 24, |
286 ESwtEventVerify = 25, |
217 ESwtEventVerify = 25, |
287 ESwtEventActivate = 26, |
218 ESwtEventActivate = 26, |
288 ESwtEventDeactivate = 27, |
219 ESwtEventDeactivate = 27, |
289 ESwtEventHelp = 28, |
|
290 ESwtEventDragDetect = 29, |
|
291 ESwtEventArm = 30, |
|
292 ESwtEventTraverse = 31, |
220 ESwtEventTraverse = 31, |
293 ESwtEventMouseHover = 32, |
|
294 ESwtEventHardKeyDown = 33, |
|
295 ESwtEventHardKeyUp = 34, |
|
296 ESwtEventMenuDetect = 35, |
|
297 ESwtEventSetData = 36, |
|
298 ESwtEventSettings = 39, //added in eSWT 1.1 |
221 ESwtEventSettings = 39, //added in eSWT 1.1 |
299 // Custom events |
222 // Custom events |
300 ESwtEventLocation = 1000, |
223 ESwtEventLocation = 1000, |
301 ESwtEventProgress = 1002, |
224 ESwtEventProgress = 1002, |
302 ESwtEventStatusText = 1003, |
225 ESwtEventStatusText = 1003, |
303 ESwtEventTitle = 1004, |
226 ESwtEventTitle = 1004, |
304 ESwtEventExit = 1005, |
|
305 ESwtEventForeground = 1006, |
227 ESwtEventForeground = 1006, |
306 ESwtEventDialogStringResult = 1007, |
228 ESwtEventDialogStringResult = 1007, |
307 ESwtEventDialogIntegerResult = 1008, |
229 ESwtEventDialogIntegerResult = 1008, |
308 ESwtEventDialogRgbResult = 1009, |
230 ESwtEventDialogRgbResult = 1009, |
309 ESwtEventShowFocusedControl = 1010 |
231 ESwtEventShowFocusedControl = 1010 |
535 KSwtDisposalFillPrevious = 0x3 // Indicates that the disposal method is to restore the previous picture |
444 KSwtDisposalFillPrevious = 0x3 // Indicates that the disposal method is to restore the previous picture |
536 }; |
445 }; |
537 |
446 |
538 |
447 |
539 /** |
448 /** |
540 * System colour ID |
449 * System color IDs used from the native libs (the values are defined by the eSWT API) |
541 */ |
450 */ |
542 enum TSwtColorId |
451 enum TSwtColorId |
543 { |
452 { |
544 // Default colours |
|
545 ESwtColorWhite = 1, // Default colour white. |
|
546 ESwtColorBlack = 2, // Default colour black. |
|
547 ESwtColorRed = 3, // Default colour red. |
|
548 ESwtColorDarkRed = 4, // Default colour dark red. |
|
549 ESwtColorGreen = 5, // Default colour green. |
|
550 ESwtColorDarkGreen = 6, // Default colour dark green. |
|
551 ESwtColorYellow = 7, // Default colour yellow. |
|
552 ESwtColorDarkYellow = 8, // Default colour dark yellow. |
|
553 ESwtColorBlue = 9, // Default colour blue. |
|
554 ESwtColorDarkBlue = 10, // Default colour dark blue. |
|
555 ESwtColorMagenta = 11, // Default colour magenta. |
|
556 ESwtColorDarkMagenta = 12, // Default colour dark magenta. |
|
557 ESwtColorCyan = 13, // Default colour cyan. |
|
558 ESwtColorDarkCyan = 14, // Default colour dark cyan. |
|
559 ESwtColorGray = 15, // Default colour gray. |
|
560 ESwtColorDarkGray = 16, // Default colour dark gray. |
|
561 |
|
562 // System colours |
|
563 ESwtColorWidgetDarkShadow = 17, // System colour used to paint dark shadow areas. |
453 ESwtColorWidgetDarkShadow = 17, // System colour used to paint dark shadow areas. |
564 ESwtColorWidgetNormalShadow = 18, // System colour used to paint normal shadow areas. |
454 ESwtColorWidgetNormalShadow = 18, // System colour used to paint normal shadow areas. |
565 ESwtColorWidgetLightShadow = 19, // System colour used to paint light shadow areas. |
455 ESwtColorWidgetLightShadow = 19, // System colour used to paint light shadow areas. |
566 ESwtColorWidgetHighlightShadow = 20, // System colour used to paint highlight shadow areas. |
456 ESwtColorWidgetHighlightShadow = 20, // System colour used to paint highlight shadow areas. |
567 ESwtColorWidgetForeground = 21, // System colour used to paint foreground areas. |
457 ESwtColorWidgetForeground = 21, // System colour used to paint foreground areas. |
577 ESwtColorTitleInactiveForeground = 33, // System colour used to paint inactive title text. |
467 ESwtColorTitleInactiveForeground = 33, // System colour used to paint inactive title text. |
578 ESwtColorTitleInactiveBackground = 34, // System colour used to paint inactive title background areas. |
468 ESwtColorTitleInactiveBackground = 34, // System colour used to paint inactive title background areas. |
579 ESwtColorTitleInactiveBackgroundGradient = 35 // System colour used to paint inactive title background gradient. |
469 ESwtColorTitleInactiveBackgroundGradient = 35 // System colour used to paint inactive title background gradient. |
580 }; |
470 }; |
581 |
471 |
582 |
472 /** |
583 /** |
473 * Default Text colors |
584 * Orientation |
474 */ |
585 */ |
475 const TInt KHighlightedTextColor = EAknsCIQsnTextColorsCG8; |
586 enum TSwtOrientation |
476 const TInt KNonHighlightedTextColor = EAknsCIQsnTextColorsCG6; |
587 { |
|
588 ESwtLeftToRight = KSwtStyleLeftToRight, // Left to right orientation |
|
589 ESwtRightToLeft = KSwtStyleRightToLeft // Right to left orientation |
|
590 }; |
|
591 |
|
592 |
|
593 /* |
|
594 * Image transparency type |
|
595 */ |
|
596 const TInt KSwtTransparencyNone = 0x0; // The image contains no transparency |
|
597 const TInt KSwtTransparencyAlpha = 1 << 0; // The image contains alpha transparency information |
|
598 const TInt KSwtTransparencyMask = 1 << 1; // The image contains a transparency mask |
|
599 const TInt KSwtTransparencyPixel = 1 << 2; // The image contains a transparent pixel |
|
600 |
|
601 |
|
602 /** |
|
603 * Image Copy type |
|
604 */ |
|
605 enum TSwtImageCopyType |
|
606 { |
|
607 /** |
|
608 * The Image constructor argument indicating that |
|
609 * the new image should be a copy of the image provided as |
|
610 * an argument (value is 0). |
|
611 */ |
|
612 ESwtImageCopy = 0, // Simple image copy |
|
613 ESwtImageDisabled = 1, // The copy must look like the "disabled" original |
|
614 ESwtImageGray = 2 // The copy must be a gray scaled version of the original |
|
615 }; |
|
616 |
|
617 |
|
618 /** |
|
619 * Default width for a widget |
|
620 */ |
|
621 const TInt KSwtDefaultWidth = 64; |
|
622 |
|
623 |
|
624 /** |
|
625 * Default height for a widget |
|
626 */ |
|
627 const TInt KSwtDefaultHeight = 64; |
|
628 |
|
629 |
477 |
630 /** |
478 /** |
631 * Window priorities. By default the CCoeControl window priority is 0. |
479 * Window priorities. By default the CCoeControl window priority is 0. |
632 * The eSWT status pane must be always behind second level shells. |
480 * The eSWT status pane must be always behind second level shells. |
633 * Second level shells must be always behind any other control. |
481 * Second level shells must be always behind any other control. |