Update ooo320-m1
[ooovba.git] / testautomation / global / tools / includes / required / t_doc1.inc
blobf1bc0f5387225849b294e8226bbf434f65e3c73f
1 'encoding UTF-8  Do not remove or change this line!
2 '**************************************************************************
3 '* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 '*
5 '* Copyright 2008 by Sun Microsystems, Inc.
6 '*
7 '* OpenOffice.org - a multi-platform office productivity suite
8 '*
9 '* $RCSfile: t_doc1.inc,v $
11 '* $Revision: 1.1 $
13 '* last change: $Author: jsi $ $Date: 2008-06-13 10:27:10 $
15 '* This file is part of OpenOffice.org.
17 '* OpenOffice.org is free software: you can redistribute it and/or modify
18 '* it under the terms of the GNU Lesser General Public License version 3
19 '* only, as published by the Free Software Foundation.
21 '* OpenOffice.org is distributed in the hope that it will be useful,
22 '* but WITHOUT ANY WARRANTY; without even the implied warranty of
23 '* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
24 '* GNU Lesser General Public License version 3 for more details
25 '* (a copy is included in the LICENSE file that accompanied this code).
27 '* You should have received a copy of the GNU Lesser General Public License
28 '* version 3 along with OpenOffice.org.  If not, see
29 '* <http://www.openoffice.org/license.html>
30 '* for a copy of the LGPLv3 License.
32 '/************************************************************************
34 '* owner : thorsten.bosbach@sun.com
36 '* short description : Global Routines for Document Handling
38 '\*************************************************************************************
40 sub hNewDocument ( optional bANewDoc )
41     '/// hNewDocument : open a new document dependent on 'gApplication' ///'
42     dim sTemp as string
43     gApplication = gApplication
45     if IsMissing ( bANewDoc ) <> TRUE then
46         if bANewDoc = TRUE then
47             gNoNewDoc = FALSE
48         else
49             gNoNewDoc = TRUE
50         end if
51     end if
53     select case gApplication
54     case "WRITER"
55         Kontext "DocumentWriter"
56         if gNoNewDoc = TRUE then
57             FileOpen "FileName", "private:factory/swriter", "SynchronMode", TRUE
58         else
59             FileOpen "FileName", "private:factory/swriter", "FrameName", "_default", "SynchronMode", TRUE
60         end if
61         if ( DocumentWriter.IsMax() = false ) then              
62                         DocumentWriter.Maximize()
63                         Wait( 2000 )
64                 end if                                  
65     case "CALC"
66         Kontext "DocumentCalc"
67         if gNoNewDoc = TRUE then
68             FileOpen "FileName", "private:factory/scalc", "SynchronMode", TRUE
69         else
70             FileOpen "FileName", "private:factory/scalc", "FrameName", "_default", "SynchronMode", TRUE
71         end if
72         if ( DocumentCalc.IsMax() = false ) then                
73                         DocumentCalc.Maximize()
74                         Wait( 2000 )
75                 end if                                                  
76     case "IMPRESS"
77         Kontext "DocumentImpress"
78         if gNoNewDoc = TRUE then
79             FileOpen "FileName", "private:factory/simpress", "SynchronMode", TRUE
80         else
81             FileOpen "FileName", "private:factory/simpress", "FrameName", "_default", "SynchronMode", TRUE
82             Kontext "AutoPilotPraesentation1"
83             if AutoPilotPraesentation1.Exists (2) then
84                 Printlog "------------------------------The Impress-Autopilot was active------------------"
85                 Startwithwizard.Check             ' opposite of the checkboxs' title
86                 AutoPilotPraesentation1.OK
87                 Sleep 2
88                 Kontext "SeitenLayout"
89                 SeitenLayout.Cancel
90             end if
91             Kontext "DocumentImpress"
92             Sleep 2
93             if ( DocumentImpress.IsMax() = false ) then         
94                 DocumentImpress.Maximize()
95                 Wait( 2000 )
96             end if                                                              
97         end if
98     case "DRAW"
99         Kontext "DocumentDraw"
100         if gNoNewDoc = TRUE then
101             FileOpen "FileName", "private:factory/sdraw", "SynchronMode", TRUE
102         else
103             FileOpen "FileName", "private:factory/sdraw", "FrameName", "_default", "SynchronMode", TRUE
104         end if
105         if ( DocumentDraw.IsMax() = false ) then                
106                         DocumentDraw.Maximize()
107                         Wait( 2000 )
108                 end if                                                                          
109     case "MASTERDOCUMENT"
110         Kontext "DocumentMasterDoc"
111         if gNoNewDoc = TRUE then
112             FileOpen "FileName", "private:factory/swriter/GlobalDocument", "SynchronMode", TRUE
113         else
114             FileOpen "FileName", "private:factory/swriter/GlobalDocument", "FrameName", "_default", "SynchronMode", TRUE
115         end if
116         Kontext "Navigator"
117         sleep (1)
118         if Navigator.Exists(5) then Navigator.Close
119         Kontext "DocumentMasterDoc"
120         if ( DocumentMasterDoc.IsMax() = false ) then           
121                         DocumentMasterDoc.Maximize()
122                         Wait( 2000 )
123                 end if                                                                                          
124     case "MATH"
125         Kontext "DocumentMath"
126         if gNoNewDoc = TRUE then
127             FileOpen "FileName", "private:factory/smath", "SynchronMode", TRUE
128         else
129             FileOpen "FileName", "private:factory/smath", "FrameName", "_default", "SynchronMode", TRUE
130         end if
131         Kontext "DocumentMath"
132         if ( DocumentMath.IsMax() = false ) then                
133                         DocumentMath.Maximize()
134                         Wait( 2000 )
135                 end if                                                                                                          
136     case "HTML"
137         Kontext "DocumentWriterWeb"
138         if gNoNewDoc = TRUE then
139             FileOpen "FileName", "private:factory/swriter/web", "SynchronMode", TRUE
140         else
141             FileOpen "FileName", "private:factory/swriter/web", "FrameName", "_default", "SynchronMode", TRUE
142         end if
143         Kontext "DocumentWriterWeb"
144         if ( DocumentWriterWeb.IsMax() = false ) then           
145                         DocumentWriterWeb.Maximize()
146                         Wait( 2000 )
147                 end if                                                                                                                          
148     case "DATABASE"
149         FileOpen "FileName", "private:factory/sdatabase?Interactive", "FrameName", "_default", "SynchronMode", TRUE
150         Kontext "DatabaseWizard"
151         if DatabaseWizard.exists(5) then
152             FinishBtn.click
153             kontext "SpeichernDlg"
154             if SpeichernDlg.exists(5) then
155                 if (Dateiname.getSelText = "") then
156                     sTemp = convertPath(gOfficePath + "user/work/hNewDocument.odb")
157                     if fileExists(sTemp) then
158                         app.kill(sTemp)
159                     endif
160                     qaErrorlog "## lost default filename"
161                     Dateiname.setText "hNewDocument"
162                 endif
163                 Speichern.click
164                 Kontext "DATABASE"
165             else
166                 warnlog "t_doc1.inc::hNewDocument():: Can't create Database Document 2"
167             endif
168         else
169             warnlog "t_doc1.inc::hNewDocument():: Can't create Database Document 1"
170         endif
171     case "BASIC"
172         ToolsMacroMacro
173         kontext "makro"
174         if makro.exists(5) then
175             MakroAus.typeKeys "<home>"
176             sTemp = ""
177             while (NOT bearbeiten.isEnabled) AND (sTemp <> MakroAus.getSelText)
178                 sTemp = MakroAus.getSelText
179                 MakroAus.typeKeys "<down>+"
180             wend
181             if (bearbeiten.isEnabled) then
182                 bearbeiten.click
183             else
184                 qaErrorlog "Can't edit document."
185             endif
186         else
187             warnlog "Can't open Basic IDE."
188         endif
189     case else             : WarnLog "hNewDocument: No Applikation named '" + gApplication + "' exists in this routine!"
190     end select
191     Sleep 2
192 end sub
194 '-------------------------------------------------------------------------------
196 function hCreateLabels() as Boolean
197     '/// hCreateLabels : open the tab-dialog for making a new lable (file/new/lable) ///'
198     FileOpen "FileName", "private:factory/swriter?slot=21051", "FrameName", "_default", "SynchronMode", TRUE
199     Sleep (2)
200     Kontext
201     Active.Setpage TabEtiketten
202     Kontext "TabEtiketten"
203     if Not TabEtiketten.Exists then
204         Warnlog "Dialog for Labels is not up!"
205         hCreateLabels = False
206     else
207         hCreateLabels = True
208     endif
209     Sleep (2)
210 end function
212 '-------------------------------------------------------------------------------
214 function hCreateBusinessCards() as Boolean
215     '/// hCreateBusinessCards : open the tab-dialog for making a new business card (file/new/business cards) ///'
216     FileOpen "FileName", "private:factory/swriter?slot=21052", "FrameName", "_default", "SynchronMode", TRUE
217     Sleep (2)
218     Kontext
219     Active.Setpage TabEtikettenMedium
220     Kontext "TabEtikettenMedium"
221     if Not TabEtikettenMedium.Exists then
222         Warnlog "Dialog for BusinessCards is not up!"
223         hCreateBusinessCards = False
224     else
225         hCreateBusinessCards = True
226     endif
227     Sleep (2)
228 end function
230 '-------------------------------------------------------------------------------
232 sub hCloseDocument ( optional bANewDoc )
233     '/// hCloseDocument : close a document without saving ///'
234     '///+ all documents will be closed without saving ///'
235     Dim sFehler$
237     if IsMissing ( bANewDoc ) <> TRUE then
238         if bANewDoc = TRUE then
239             gNoNewDoc = FALSE
240         else
241             gNoNewDoc = TRUE
242         end if
243     end if
245     ' if no new document was created, it isn't closed
246     if gNoNewDoc = TRUE then
247         exit sub
248     end if
250     Sleep 3
251     try
252         FileClose
253     catch
254         Exceptlog
255         exit sub
256     endcatch
258     Sleep 1
259     Kontext "Active"
260     if Active.Exists(2) then
261         try
262             Active.No
263         catch
264             Active.Click ( 202 )
265         endcatch
266     end if
267     Sleep (2)
268 end sub
270 '-------------------------------------------------------------------------------
272 sub gMouseClick ( X%, Y%, optional mb% )
273     '/// gMouseClick ( x_Position, y-Position ) : make a mouseclick on the document (dependent on 'gApplication') ///'
274     '/// default left mousebutton will be used otherwise you can optionally give the mousebutton to press
275     '/// 1 = left mouse button
276     '/// 2 = left mouse button
277     '/// 3 = left mouse button
279     gApplication = gApplication
281     if IsMissing(mb%) then mb% = 1
283     select case gApplication
284     case "BACKGROUND"
285         Kontext "BACKGROUND"
286         autoexecute = false
287         Desktop.MouseDown ( X%, Y%, mb% )
288         Desktop.MouseUp ( X%, Y%, mb% )
289         autoexecute = true
290     case "CALC"
291         Kontext "DocumentCalc"
292         autoexecute = false
293         DocumentCalc.MouseDown ( X%, Y%, mb% )
294         DocumentCalc.MouseUp ( X%, Y%, mb% )
295         autoexecute = true
296     case "DRAW"
297         Kontext "DocumentDraw"
298         autoexecute=false
299         DocumentDraw.MouseDown ( X%, Y%, mb% )
300         DocumentDraw.MouseUp ( X%, Y%, mb% )
301         autoexecute=true
302     case "WRITER"
303         Kontext "DocumentWriter"
304         autoexecute=false
305         DocumentWriter.MouseDown ( X%, Y%, mb% )
306         DocumentWriter.MouseUp ( X%, Y%, mb% )
307         autoexecute=true
308     case "HTML"
309         Kontext "DocumentWriterWeb"
310         autoexecute=false
311         DocumentWriterWeb.MouseDown ( X%, Y%, mb% )
312         DocumentWriterWeb.MouseUp ( X%, Y%, mb% )
313         autoexecute=true
314     case "MASTERDOCUMENT"
315         Kontext "DocumentMasterDoc"
316         autoexecute=false
317         DocumentMasterDoc.MouseDown ( X%, Y%, mb% )
318         DocumentMasterDoc.MouseUp ( X%, Y%, mb% )
319         autoexecute=true
320     case "IMPRESS"
321         Kontext "DocumentImpress"
322         autoexecute=false
323         DocumentImpress.MouseDown ( X%, Y%, mb% )
324         DocumentImpress.MouseUp ( X%, Y%, mb% )
325         autoexecute=true
326     case "MATH"
327         Kontext "DocumentMath"
328         autoexecute=false
329         DocumentMath.MouseDown ( X%, Y%, mb% )
330         DocumentMath.MouseDown ( X%, Y%, mb% )
331         autoexecute=true
332     case "CHART"
333         Kontext "DocumentChart"
334         autoexecute=false
335         DocumentChart.MouseDown ( X%, Y%, mb% )
336         DocumentChart.MouseUp ( X%, Y%, mb% )
337         autoexecute=true
338     end select
339     sleep (2)
340 end sub
342 '-------------------------------------------------------------------------------
344 sub gMouseDoubleClick ( X%, Y% )
345     '/// gMouseDoubleClick ( x_Position, y-Position ) : make a mouse-doubleclick on the document ( dependent on 'gApplication' ) ///'
346     gApplication = gApplication
348     select case gApplication
349     case "CALC"
350         Kontext "DocumentCalc"
351         DocumentCalc.MouseDoubleClick ( X%, Y% )
352     case "DRAW"
353         Kontext "DocumentDraw"
354         DocumentDraw.MouseDoubleClick ( X%, Y% )
355     case "BACKGROUND"
356         Kontext "BACKGROUND"
357         Desktop.MouseDoubleClick ( X%, Y% )
358     case "WRITER"
359         Kontext "DocumentWriter"
360         DocumentWriter.MouseDoubleClick ( X%, Y% )
361     case "HTML"
362         Kontext "DocumentWriterWeb"
363         DocumentWriterWeb.MouseDoubleClick ( X%, Y% )
364     case "MASTERDOCUMENT"
365         Kontext "DocumentMasterDoc"
366         DocumentMasterDoc.MouseDoubleClick ( X%, Y% )
367     case "IMPRESS"
368         Kontext "DocumentImpress"
369         DocumentImpress.MouseDoubleClick ( X%, Y% )
370     case "MATH"
371         Kontext "DocumentMath"
372         DocumentMath.MouseDoubleClick ( X%, Y% )
373     end select
374     Sleep (2)
375 end sub
377 '-------------------------------------------------------------------------------
379 sub gMouseMove ( BeginX%, BeginY%, EndX%, EndY% )
380     '/// gMouseMove ( BeginX, BeginY, EndX, EndY ) : make a mousemove trom Bx,By to Ex,Ey on the document ( dependent on 'gApplication' ) ///'
381     gApplication = gApplication
383     select case gApplication
384     case "CALC"
385         Kontext "DocumentCalc"
386         DocumentCalc.MouseDown ( BeginX%, BeginY% )
387         DocumentCalc.MouseMove ( EndX%, EndY%)
388         DocumentCalc.MouseUp ( EndX%, EndY% )
389     case "DRAW"
390         Kontext "DocumentDraw"
391         DocumentDraw.MouseDown ( BeginX%, BeginY% )
392         DocumentDraw.MouseMove ( EndX%, EndY% )
393         DocumentDraw.MouseUp ( EndX%, EndY% )
394     case "WRITER"
395         Kontext "DocumentWriter"
396         DocumentWriter.MouseDown ( BeginX%, BeginY% )
397         DocumentWriter.MouseMove ( EndX%, EndY%)
398         DocumentWriter.MouseUp ( EndX%, EndY% )
399     case "HTML"
400         Kontext "DocumentWriterWeb"
401         DocumentWriterWeb.MouseDown ( BeginX%, BeginY% )
402         DocumentWriterWeb.MouseMove ( EndX%, EndY%)
403         DocumentWriterWeb.MouseUp ( EndX%, EndY% )
404     case "MASTERDOCUMENT"
405         Kontext "DocumentMasterDoc"
406         DocumentMasterDoc.MouseDown ( BeginX%, BeginY% )
407         DocumentMasterDoc.MouseMove ( EndX%, EndY%)
408         DocumentMasterDoc.MouseUp ( EndX%, EndY% )
409     case "IMPRESS"
410         Kontext "DocumentImpress"
411         DocumentImpress.MouseDown ( BeginX%, BeginY% )
412         DocumentImpress.MouseMove ( EndX%, EndY%)
413         DocumentImpress.MouseUp ( EndX%, EndY% )
414     case "MATH"
415         Kontext "DocumentMath"
416         DocumentMath.MouseDown ( BeginX%, BeginY% )
417         DocumentMath.MouseMove ( EndX%, EndY%)
418         DocumentMath.MouseDown ( EndX%, EndY% )
419     end select
420     Sleep (2)
421 end sub
423 '-------------------------------------------------------------------------------
425 sub gMouseDown ( BeginX%, BeginY% )
426     '/// gMouseDown ( x_Position, y-Position ) : make a mousedown on the document (dependent on 'gApplication') ///'
427     '///+ DON'T FORGETT to call gMouseUp !  ///'
428     gApplication = gApplication
430     select case gApplication
431     case "CALC"
432         Kontext "DocumentCalc"
433         DocumentCalc.MouseDown ( BeginX%, BeginY% )
434     case "DRAW"
435         Kontext "DocumentDraw"
436         DocumentDraw.MouseDown ( BeginX%, BeginY% )
437     case "WRITER"
438         Kontext "DocumentWriter"
439         DocumentWriter.MouseDown ( BeginX%, BeginY% )
440     case "HTML"
441         Kontext "DocumentWriterWeb"
442         DocumentWriterWeb.MouseDown ( BeginX%, BeginY% )
443     case "MASTERDOCUMENT"
444         Kontext "DocumentMasterDoc"
445         DocumentMasterDoc.MouseDown ( BeginX%, BeginY% )
446     case "IMPRESS"
447         Kontext "DocumentImpress"
448         DocumentImpress.MouseDown ( BeginX%, BeginY% )
449     case "MATH"
450         Kontext "DocumentMath"
451         DocumentMath.MouseDown ( BeginX%, BeginY% )
452     end select
453     Sleep (2)
454 end sub
456 '-------------------------------------------------------------------------------
458 sub gMouseMove2 ( EndX%, EndY% )
459     '/// gMouseMove2 ( x_Position, y-Position ) : move the pointer to position on the document (dependent on 'gApplication') ///'
460     gApplication = gApplication
462     select case gApplication
463     case "CALC"
464         Kontext "DocumentCalc"
465         DocumentCalc.MouseMove ( EndX%, EndY%)
466     case "DRAW"
467         Kontext "DocumentDraw"
468         DocumentDraw.MouseMove ( EndX%, EndY% )
469     case "WRITER"
470         Kontext "DocumentWriter"
471         DocumentWriter.MouseMove ( EndX%, EndY%)
472     case "HTML"
473         Kontext "DocumentWriterWeb"
474         DocumentWriterWeb.MouseMove ( EndX%, EndY%)
475     case "MASTERDOCUMENT"
476         Kontext "DocumentMasterDoc"
477         DocumentMasterDoc.MouseMove ( EndX%, EndY%)
478     case "IMPRESS"
479         Kontext "DocumentImpress"
480         DocumentImpress.MouseMove ( EndX%, EndY%)
481     case "MATH"
482         Kontext "DocumentMath"
483         DocumentMath.MouseMove ( EndX%, EndY%)
484     end select
485     Sleep (2)
486 end sub
488 '-------------------------------------------------------------------------------
490 sub gMouseUp ( EndX%, EndY% )
491     '/// gMouseUp ( x_Position, y-Position ) : make a release button on the document (dependent on 'gApplication') ///'
492     gApplication = gApplication
494     select case gApplication
495     case "CALC"
496         Kontext "DocumentCalc"
497         DocumentCalc.MouseUp ( EndX%, EndY% )
498     case "DRAW"
499         Kontext "DocumentDraw"
500         DocumentDraw.MouseUp ( EndX%, EndY% )
501     case "WRITER"
502         Kontext "DocumentWriter"
503         DocumentWriter.MouseUp ( EndX%, EndY% )
504     case "HTML"
505         Kontext "DocumentWriterWeb"
506         DocumentWriterWeb.MouseUp ( EndX%, EndY% )
507     case "MASTERDOCUMENT"
508         Kontext "DocumentMasterDoc"
509         DocumentMasterDoc.MouseUp ( EndX%, EndY% )
510     case "IMPRESS"
511         Kontext "DocumentImpress"
512         DocumentImpress.MouseUp ( EndX%, EndY% )
513     case "MATH"
514         Kontext "DocumentMath"
515         DocumentMath.MouseUp ( EndX%, EndY% )
516     end select
517     Sleep (2)
518 end sub
520 '-------------------------------------------------------------------------------
522 sub hTypeKeys ( OutputText , optional iLoop as Integer )
523     '/// hTypeKeys  ( OutputText , optional iLoop as Integer ): type the keys in 'outputtext' 'iLoop' times ///'
524     Dim i as integer
526     If IsMissing(iLoop) = True then iLoop = 1
527     For i = 1 to iLoop
528         Select Case Ucase(gApplication)
529         Case "WRITER"
530             Kontext "DocumentWriter"
531             DocumentWriter.TypeKeys OutputText
532         Case "MASTERDOCUMENT"
533             Kontext "DocumentMasterDoc"
534             DocumentMasterDoc.TypeKeys OutputText
535         Case "HTML"
536             Kontext "DocumentWriterWeb"
537             DocumentWriterWeb.TypeKeys OutputText
538         case "CALC"
539             Kontext "DocumentCalc"
540             DocumentCalc.TypeKeys OutputText
541         case "DRAW"
542             Kontext "DocumentDraw"
543             DocumentDraw.TypeKeys OutputText
544         case "IMPRESS"
545             Kontext "DocumentImpress"
546             DocumentImpress.TypeKeys OutputText
547         case "MATH"
548             Kontext "DocumentMath"
549             DocumentMath.TypeKeys OutputText
550         end select
551         wait 500
552     next i
553 end sub