merge the formfield patch from ooo-build
[ooovba.git] / testautomation / graphics / optional / includes / global / g_line.inc
blob8a1d839b01e61ac9b0a07e7a091ee4b4527c600b
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: g_line.inc,v $
11 '* $Revision: 1.2 $
13 '* last change: $Author: rt $ $Date: 2008-08-28 11:42:35 $
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 : wolfram.garten@sun.com
36 '* short description :
38 '**************************************************************************************
39 ' #1 tiFormatLine
40 ' #1 tLineConnect
41 '\*************************************************************************************
42 testcase tiFormatLine
44     Dim ZaehlerStil
45     Dim ZaehlerFarbe
46     Dim ZaehlerTransp
47     Dim i               'Variable fuer Stil (Anzahl)
48     Dim j               'Variable fur Farbe (Anzahl)
49     Dim k               'Variable fuer Transparenz (Anzahl)
50     Dim l
51     Dim ZaehlerStilLinks
52     
53     Call hNewDocument       '/// New impress document
54     sleep 3
55     Call hRechteckErstellen (10,10,60,60)     '/// create rectangle
56     sleep 2
57     FormatLine        '/// open Format line dialog
58     Kontext
59     Active.SetPage TabLinie '///Open TabLine Tabpage
60     Kontext "TabLinie"
61     sleep 2
62     Stil.GetItemCount       '/// Get item count for style ///'
63     Farbe.GetItemCount       '/// Get item count for color ///'
64     Breite.More 1        '/// change value for ///'
65     ZaehlerStil = Stil.GetItemCount
66     ZaehlerFarbe = Farbe.GetItemCount
67     
68     for i=1 to ZaehlerStil      '/// Apply every style to the rectangle ///'
69        wait 10
70        Stil.Select i
71        wait 10
72        TabLinie.OK '/// Closing dialog with ok
73     '    Kontext "DocumentImpress"
74        FormatLine '///Open TabLine Tabpage
75        Kontext
76        Active.SetPage TabLinie
77        Kontext "TabLinie"
78     next i
79     
80     for j=1 to ZaehlerFarbe      '/// Apply every color to the rectangle///'
81        PrintLog "-- " + Farbe.GetSelText
82        wait 10
83        Farbe.Select j
84        wait 10
85        TabLinie.OK
86     '    Kontext "DocumentImpress"
87        FormatLine
88        Kontext
89        Active.SetPage TabLinie
90        Kontext "TabLinie"
91     next j
92     Breite.More 3        '/// change Breite ///'
93     Breite.Less 2
94     for k=1 to 6
95        Transparenz.More 1      '/// change tranparence///'
96     next k
97     TabLinie.OK
98     '---------------------------------------
99     sleep 2
100     EditSelectAll     '/// Select all objects in document ///'
101     sleep 2
102     hTypeKeys "<DELETE>"     '/// Delete objects ///'
103     sleep 2
104     FormatLine
105     
106     Kontext
107     Active.SetPage TabLinie      '/// TabLine ///'
108     Kontext "TabLinie"
109     StilLinks.GetItemCount
110     ZaehlerStilLinks=StilLinks.GetItemCount
111     for l=1 to ZaehlerStilLinks      '/// Apply all line end styles///'
112       wait 10
113       if EndenSynchronisieren.IsChecked=False Then EndenSynchronisieren.Check '/// check synchronize ///'
114       wait 10
115       StilLinks.Select l
116       if StilLinks.GetSelText<>StilRechts.GetSelText Then
117          WarnLog "  Ends not synchronized. " + StilLinks.GetSelText + "   Right:  " + StilRechts.GetSelText   '/// check if style is automatically applied for both ends ///'
118       else
119          PrintLog "  Left:  " + StilLinks.GetSelText + "   Right:  " + StilRechts.GetSelText
120       end if
121        EndenSynchronisieren.UnCheck
122     next l
123     ZentriertLinks.Check
124     if ZentriertRechts.isChecked = True Then PrintLog "  Centered right does work"
125     i = CornerStyle.GetItemCount
126     if i <> 4 then warnlog "CornerStyle should contain four options, but currently has: " + i
127     for i = 1 to 4
128     CornerStyle.Select i
129     if CornerStyle.GetSelIndex <> i then warnlog "Corner Styles was: " + CornerStyle.GetSelIndex + ", should have been " + i
130     Printlog "Corner Style nr: " + i + " = " + CornerStyle.GetSelText
131     next i
132     TabLinie.OK
133     '------------------------------------------
134     sleep 2
135     FormatLine
136     Kontext
137     Active.SetPage TabLinienstile
138     Kontext "TabLinienstile"
139     Hinzufuegen.Click        '/// Add new line style ///'
140     Kontext "NameDlg"
141     Eingabefeld.SetText "Testlinie2"      '/// insert name of style (Testlinie2) ///'
142     NameDlg.OK
143     sleep 1
144     Kontext
145     Active.SetPage TabLinienstile
146     Kontext "TabLinienstile"
147     Loeschen.Click         '/// delete created style ///'
148     Kontext "Active"
149     Active.Yes
150     Kontext
151     Active.SetPage TabLinienstile
152     Kontext "TabLinienstile"
153     TypLinks.Select 2
154     TypRechts.Select 2
155     AnzahlLinks.SetText "20"
156     AnzahlRechts.SetText "5"
157     LaengeLinks.More 3
158     LaengeRechts.More 3
159     Abstand.SetText "0,1"
160     if AnLinienbreite.IsChecked = True Then AnLinienbreite.Click   '/// all fields changed in TabLinienstile ///'
161     PrintLog "  All controls could be manipulated."
162     TypLinks.Select 1
163     TypRechts.Select 1
164     if LaengeLinks.IsEnabled And LaengeRechts.IsEnabled =True Then  '/// check if its possible to apply a length to a point ///'
165      WarnLog "  A point where you can change its length is not a point anymore"
166     else
167      PrintLog "  Line style pint tested"    '/// All styles for points are changed  ///'
168     end if
169     sleep 1
170     try
171      Linienstil.Select 1
172     catch
173      if Linienstil.GetItemCount = 0 then     '/// check if style list is filled ///'
174         Warnlog "- The list for line styles is empty"
175         Hinzufuegen.Click      '/// new style ///'
176         Kontext "NameDlg"
177         NameDlg.OK
178      end if
179     endcatch
180     Kontext
181     Active.SetPage TabLinienstile
182     Kontext "TabLinienstile"
183     Aendern.Click         '/// change style ///'
184     Kontext "NameDlg"
185     Eingabefeld.SetText Eingabefeld.GetText + "1"     '/// new name for changed style ///'
186     SetClipboard Eingabefeld.GetText      '/// put name into clipboard ///'
187     NameDlg.OK
188     Kontext
189     Active.SetPage TabLinienstile
190     Kontext "TabLinienstile"
191     TabLinienstile.OK
192     sleep 2
193     FormatLine
194     Kontext
195     Active.SetPage TabLinienstile
196     Kontext "TabLinienstile"
197     try
198     Aendern.Click
199     catch
200     Hinzufuegen.Click
201     endcatch
202     Kontext "NameDlg"
203     if Eingabefeld.GetText <> GetClipboardText Then WarnLog "No changes for Line style"  '/// check if changed style is in list ///'
204     NameDlg.Cancel
205     sleep 2
206     Kontext
207     Active.SetPage TabLinienstile
208     Kontext "TabLinienstile"
209     sleep 1
210     try
211      Loeschen.Click           '/// delete changed style ///'
212      Kontext "Active"
213      Active.Yes
214      sleep 3
215     catch
216     if Linienstile.GetItemCount = 0 Then
217        Hinzufuegen.Click
218        Kontext "NameDlg"
219        sleep 1
220        Eingabefeld.SetText "Delete"
221        NameDlg.OK
222     end if
223     endcatch
224     Kontext
225     Active.SetPage TabLinienstile
226     Kontext "TabLinienstile"
227     sleep 1
228     TabLinienstile.OK
229     '--------------------------------------------
230     sleep 2
231     Call hRechteckErstellen (40,40,80,50)         '/// create rectangle ///'
232     sleep 2
233     FormatLine
234     Kontext
235     Active.SetPage TabLinienenden
236     Kontext "TabLinienenden"
237     sleep 2
238     Kontext "Linienstil"
239     if Linienstil.Exists then Aendern.Click        '/// change style ///'
240     sleep 1
241     Kontext
242     Active.SetPage TabLinienenden
243     Kontext "TabLinienenden"
244     sleep 1
245     Liste.GetItemCount
246     Liste.Select 3
247     Hinzufuegen.Click           '/// add style ///'
248     Kontext "NameDlg"
249     NameDlg.OK
250     
251     Kontext
252     Active.SetPage TabLinienenden
253     Kontext "TabLinienenden"
254     Aendern.Click            '/// change style ///'
255     Kontext "Active"
256     Printlog Active.GetText
257     Active.OK
258     Kontext "NameDlg"
259     Eingabefeld.SetText Eingabefeld.GetText + "1"
260     PrintLog "  Name inserted"
261     NameDlg.OK
262     
263     Kontext
264     if active.GetRt=304 then
265      active.ok
266      Kontext "NameDlg"
267      Eingabefeld.SetText Eingabefeld.GetText + "1"
268      PrintLog "  Name inserted"
269      NameDlg.OK
270     endif
271     if active.GetRt=304 then
272      active.ok
273      warnlog "still not a valid name :-("
274     endif
275     Kontext
276     Active.SetPage TabLinienenden
277     Kontext "TabLinienenden"
278     Loeschen.Click           '/// delete style ///'
279     Kontext "Active"
280     Active.Yes
281     
282     Kontext
283     Active.SetPage TabLinienenden
284     Kontext "TabLinienenden"
285     sleep 1
286     Speichern.Click          '/// save style ///'
287     sleep 1
288     Kontext "SpeichernDlg"
289     sleep 1
290     SpeichernDlg.Cancel
291     
292     Kontext "TabLinienenden"
293     TabLinienenden.Cancel
294     sleep 2
295     
296     '///New part for line
297     'EditSelectAll     '/// Select all objects in document ///'
298     'sleep 2
299     'hTypeKeys "<DELETE>"     '/// Delete objects ///'
300     'sleep 2
301     
302     '/// Create line to test shadow tabpage in line dialog
303     'kontext "Toolbar"
304     'Kurven.Click
305     'sleep 1
306     'if (gApplication = "DRAW") then
307     '    Kontext "DocumentDraw"
308     '    gMouseMove (30,50, 40,60)
309     '    sleep 1
310     'else
311     '    Kontext "DocumentImpress"
312     '    gMouseMove (30,50, 40,60)
313     '    sleep 1
314     'endif
315     'FormatLine
316     'Kontext
317     'Active.SetPage TabSchatten
318     
319    ' FormatLine.Cancel
320     Call hCloseDocument          '/// close document ///'
321     
322 endcase 'tiFormatLine
323 '-------------------------------------------------------------------------------'
324 testcase tLineConnect
326     Dim value1 as integer
327     Dim value2 as integer
328     Dim value3 as integer
329     Dim StatusBarText as string
330     Dim i as integer
331     Dim cname as string
332     Dim cfirst as integer
333     
334     if bAsianLan then 
335      QaErrorLog "tLineConnect ends because Asian languages are not fully supported."
336      goto Endsub
337     end if
338     
339     Call hNewDocument   '/// New Impress / Draw document ///'
340     sleep 3
341     kontext "GraphicObjectbar"
342     if GraphicObjectbar.Exists then
343      if GraphicObjectbar.isDocked = False then
344         GraphicObjectbar.Move 900,900
345      endif
346     endif
347     kontext "Gluepointsobjectbar"
348     if Gluepointsobjectbar.Exists then
349      if Gluepointsobjectbar.isDocked = false then
350         Gluepointsobjectbar.Move 900,900
351      endif
352     endif
353     kontext "Optionsbar"
354     if Optionsbar.Exists then
355      if Optionsbar.isDocked = false then
356         Optionsbar.Move 900,900
357      end if
358     endif
359     
360     '/// Create 2 lines ///'
361     kontext "Toolbar"
362     Kurven.Click
363     sleep 1
364     if (gApplication = "DRAW") then
365      Kontext "DocumentDraw"
366      gMouseMove (30,50, 40,60)
367      sleep 1
368      kontext "Toolbar"
369      Kurven.Click
370      Kontext "DocumentDraw"
371      gMouseMove (70,50, 60,60)
372     else
373      Kontext "DocumentImpress"
374      gMouseMove (30,50, 40,60)
375      sleep 1
376      kontext "Toolbar"
377      Kurven.Click
378      Kontext "DocumentImpress"
379      gMouseMove (70,50, 60,60)
380     endif
381     
382     printlog "'" + (gApplication) +"'"
383     
384     '/// Check the amount of objects ///'
385     gMouseClick (10, 10)
386     sleep 1
387     EditSelectAll
388     sleep 1
389     if (gApplication = "IMPRESS") then
390         StatusBarText = DocumentImpress.StatusGetText(DocumentImpress.StatusGetItemID(1))
391     else
392         kontext "DocumentDraw"
393         StatusBarText = DocumentDraw.StatusGetText(DocumentDraw.StatusGetItemID(1))
394     endif
395     if bAsianLan then 
396         value1 = left(StatusBarText,(InStr(StatusBarText, "2" ))) 
397         if value1 <> 2 then
398             warnlog "UH? There is supposed to be two objects visible, but was: " + value1 + " and the StatusBarText said: " + StatusBarText + "."
399         end if
400     else
401         value1 = left(StatusBarText,1)
402         printlog "StatusBarText was: " + StatusBarText
403         if value1 <> 2 then
404             warnlog "UH? There is supposed to be two objects visible, but we found " + value1 + " objects."
405         end if
406     end if
407     
408     '/// Connect the two objects selected ///'
409     hOpenContextMenu
410     sleep 1
411     hMenuSelectNr(13)
412     sleep 1
413     '/// Check the amount of objects ///'
414     gMouseClick (10, 10)
415     sleep 1
416     EditSelectAll
417     sleep 1
418     if (gApplication = "IMPRESS") then
419      StatusBarText = DocumentImpress.StatusGetText(DocumentImpress.StatusGetItemID(1))
420     else
421      kontext "DocumentDraw"
422      StatusBarText = DocumentDraw.StatusGetText(DocumentDraw.StatusGetItemID(1))
423     endif
424     value2 = left(StatusBarText,1)
425     printlog "StatusBarText was: " + StatusBarText
426     
427     '/// if same as the first value = wrong ///'
428     if value1 = value2 then
429      warnlog "Expected to find one object, but found " + value2 + " instead."
430     endif
431     if value2 = "2" then
432      warnlog "Connect was not successful. We should have one object, but have " + value2 + " instead."
433     endif
434     
435     '/// unmark the objects, thereafter mark them again ///'
436     gMouseClick (10, 10)
437     sleep 1
438     EditSelectAll
439     sleep 1
440     '/// Break them from eachother ///'
441     hOpenContextMenu
442     sleep 1
443     hMenuSelectNr(11)
444     sleep 1
445     '/// unmark the objects, thereafter mark them again ///'
446     gMouseClick (10, 10)
447     sleep 1
448     EditSelectAll
449     sleep 1
450     '/// Check the amount of objects ///'
451     if (gApplication = "IMPRESS") then
452      StatusBarText = DocumentImpress.StatusGetText(DocumentImpress.StatusGetItemID(1))
453     else
454      kontext "DocumentDraw"
455      StatusBarText = DocumentDraw.StatusGetText(DocumentDraw.StatusGetItemID(1))
456     endif
457     value3 = left(StatusBarText,1)
458     
459     printlog "StatusBarText was: " + StatusBarText
460     
461     '/// if the same as any of the ones before: Wrong ///'
462     if (value3 = value1 OR value3 = value2) then
463      warnlog "Expected to find three objects, but found " + value3 + " instead."
464     endif
465     
466     '/// if 3 objects, then everything is ok ///'
467     if value3 = 3 then
468      printlog "Found three objects. Means the test was successful."
469     else
470      warnlog "Wrong value, expected three objects, but found " + value3 + "."
471     endif
472     
473     '/// Go through the different Corner-styles ///'
474     
475     hOpenContextMenu
476     sleep 1
477     hMenuSelectNr(2) 'Choose "Line"
478     
479     Kontext "TabLinie"
480     if TabLinie.Exists(2) then
481         cfirst = CornerStyle.GetSelIndex
482     else
483         sleep 1
484     endif
485     
486     For i = 1 to CornerStyle.GetItemCount
487       Kontext "TabLinie"
488       if (i > 1) AND (cname <> CornerStyle.GetSelText) then
489          warnlog "Cornerstylename wasnt saved. Should have been: " + cname + ". But was: " + CornerStyle.GetSelText
490       endif
491       CornerStyle.Select i
492       cname = CornerStyle.GetSelText
493       Printlog " Found and selected Corner-Style: " + cname
494       TabLinie.Ok
495       sleep 1
496       hOpenContextMenu
497       hMenuSelectNr(2) 'Choose "Line"
498     Next i
499     
500     Kontext "TabLinie"
501     CornerStyle.Select cfirst
502     TabLinie.Ok
503     
504     '/// And a nice finish to make life a bit happier for anyone who looks at the test ///'
505     kontext "Toolbar"
506     Ellipsen.Click
507     if (gApplication = "DRAW") then
508     Kontext "DocumentDraw"
509     gMouseMove (40,40, 50,30)
510     sleep 1
511     kontext "Toolbar"
512     Ellipsen.Click
513     Kontext "DocumentDraw"
514     gMouseMove (51,40, 61,30)
515     kontext "Toolbar"
516     Ellipsen.Click
517     Kontext "DocumentDraw"
518     gMouseMove (48,43, 53,50)
519     else
520     Kontext "DocumentImpress"
521     gMouseMove (40,40, 50,30)
522     sleep 1
523     kontext "Toolbar"
524     Ellipsen.Click
525     Kontext "DocumentImpress"
526     gMouseMove (51,40, 61,30)
527     kontext "Toolbar"
528     Ellipsen.Click
529     Kontext "DocumentImpress"
530     gMouseMove (48,43, 53,50)
531     endif
532     gMouseClick (10, 10)
533     '/// Close the document ///'
534     hCloseDocument
535     '/// Endcase ///'
536     
537 endcase 'tiLineConnect
538 '-------------------------------------------------------------------------------'