View Single Post
Old 02-18-2018, 09:48 AM   #68
KevinH
Sigil Developer
KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.
 
Posts: 7,644
Karma: 5433388
Join Date: Nov 2009
Device: many
Changing the basewidth should make the height smaller as well since I use that dimension to determine the others.

But either way, I should add code to prevent the height from ever being larger than the full screen height. And ditto for the width just to make sure the window is sane. I will add that for the next release.

Updated: I have now hopefully fixed this in master:

Code:
def GUIUpdateFromList(title, list, basewidth):
    localRoot = tkinter.Tk()
    ls = updateList(localRoot, title, list, basewidth)
    ls.pack(side="top", fill="both", expand=True)
    localRoot.withdraw()
    localRoot.update_idletasks()
    w = localRoot.winfo_screenwidth()
    h = localRoot.winfo_screenheight()
    # make sure our frame actually fits on the users screen
    framewidth = basewidth*2
    frameheight = basewidth*2
    if framewidth > w:
        framewidth = w
    if frameheight > h:
        frameheight = h
    framesize = (framewidth, frameheight)
    x = w//2 - framesize[0]//2
    y = h//2 - framesize[1]//2
    localRoot.geometry("%dx%d+%d+%d" % (framesize + (x,y)))
    localRoot.deiconify()
    localRoot.mainloop()
    # exits with quit but don't destroy until after read out results
    # and cleaned up
    results = []
    for (alabel, afield) in ls.cblist:
        imgpath = alabel.imgpath
        # attempt to prevent issues on Windows by explicitly closing
        # all original image files
        # alabel.origimg.close()
        altnew = afield.get(1.0,"end")
        altnew = altnew.strip()
        if not ls.cancelled:
            results.append([imgpath, altnew])
    localRoot.destroy()
    return results
See my github repo to get access to any changes early:

https://github.com/kevinhendricks/Access-Aide

This fix will appear in the next release.

You can also simply download the latest version of accessgui.py from there is you want to update your local copy before the next official release.

Last edited by KevinH; 02-18-2018 at 02:19 PM. Reason: added repo info and fix available
KevinH is offline   Reply With Quote