The promised attachment. "This time fer shur, Rocky!"
#!/usr/bin/python
import os import sys from ldtp import * import threading # Give names to some strings # window title of a localbuilt LibreOffice ttlLo = '*LibreOffice*[OOO*' # window title of our LibreOffice ttlLoOurs = "Untitled 1 - LibreOffice Writer [OOO*" # TODO: (*) Are these strings robust "enough"? # (*) Why exclude an installed LibreOffice? Hmm? # command to run our LibreOffice loCmd = "/home/terry/lo_hacking/git/libo/install/program/soffice.bin " \ "--norestore " \ "--writer " \ "2>/dev/null 1>/dev/null" # Hide messages. Questionable. # TODO: (*) This is completely peculiar to my (tje, 2012-10-15) # setup. How do this better? If this script were part # of LO, then it could calculate a location relative to # its own directory, but even that is bad in that it # makes it hard to move the script from one place to # another; it would be particularly hard to move it to # a different level below SRCDIR. # (*) For testing, it is confusing to see all the console # output.things. # We want our own invocation of master build, not somebody else's. # ... not somebody else's invocation if guiexist ( ttlLo ) : print "FAIL: It seems localbuilt LibreOffice is already running. " \ "That's no good." sys.exit() # ... but our own, if you please. # TODO: This is transcribed with little understanding from # the python tutorial. Better read some more, Terry. class AsyncLo( threading.Thread ) : def __init__( self ) : threading.Thread.__init__( self ) def run( self ) : os.system( loCmd ) print "Finished our asynchronous LibreOffice" # debug background = AsyncLo() background.start () waittillguiexist ( ttlLoOurs ) print "The main program continues to run in the foreground." # debug # TODO: Actual work, if there were any, would go here. # Clean up # In the python interactive interpreter, I can select both levels # of menu in one call. In this script, not. Is this a question # of timing, or sump'n? Should the tutorial mention this? selectmenuitem ( ttlLoOurs, 'mnuFile' ) selectmenuitem ( ttlLoOurs, 'mnuExit LibreOffice' ) background.join () sys.exit ()
_______________________________________________ List Name: Libreoffice-qa mailing list Mail address: Libreoffice-qa@lists.freedesktop.org Change settings: http://lists.freedesktop.org/mailman/listinfo/libreoffice-qa Problems? http://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/ Posting guidelines + more: http://wiki.documentfoundation.org/Netiquette List archive: http://lists.freedesktop.org/archives/libreoffice-qa/