Windows 2000 error simulator

  • Create
  • Explore
  • Ideas
  • About

    Windows 2000 crazy error » Remixes


    • mac os crazy error

      by windows777777


    • Ubuntu crazy error

      by maxerhero


    • Windows 2000 Crazy Error!

      by leafygamer55


    • Windows 2000 crazy error remix

      by masterofdisaster006


    • Windows 10 Crazy Error!

      by leafygamer55


    • All Your Windows 11 Antivirus Are Belong To Us

      by EzeWindows7Fav

    About Error Win 2000

    Error Win 2000 — the error simulator in Windows 2000

    Windows error! Error Windows 2000, as in the old days. Error Win 2000 is nostalgia for all Win 2000 users. Use the Error Win 2000 to remember the youth and please all the fans of Windows 2000.

    What’s new in the latest 1.0.3

    Last updated on 2018-05-19

    Error Windows 2000, as in the old days

    Gameplay and Screenshots

    Old Versions of Error Win 2000

    Thanks for your rating and feedback!

    You have already rated.

    About Error Win 2000

    Error Win 2000 — the error simulator in Windows 2000

    Windows error! Error Windows 2000, as in the old days. Error Win 2000 is nostalgia for all Win 2000 users. Use the Error Win 2000 to remember the youth and please all the fans of Windows 2000.

    What’s New in the Latest Version 1.0.3

    Last updated on May 19, 2018

    Error Windows 2000, as in the old days

    Translation Loading…

    Additional Game Information

    Latest Version

    1.0.3

    Uploaded by

    Aslan Eryılmaz

    Requires Android

    Android 4.1+

    Category

    Free
    Simulation Game

    Report

    Flag as inappropriate

    Error message title:

    Error message main text:

    Error message secondary text:

    icon:

    Each button has 3 values: text, style, and secondary value

    Style is a number which dictates the buttons look (the exact type of style is different for every os.)

    The secondary value controls things that are independent of style, most os’s dont use it except a few (mac, 3.1, and the 9x).

    button 1:

    button 2:

    button 3:

    active:

    secondary value (different behavior per os):

    click the button only ONCE, and wait a while. the first generation takes a minute, but after that it should be faster

    theme used from the amazing Skeuocord https://github.com/Marda33/SkeuoCord (link)

    { «packages»: [ «numpy», «Pillow» ]}

    from js import console, document, ImageData, Uint8ClampedArray, CanvasRenderingContext2D as Context2d, requestAnimationFrame, Image as jsImage
    #import generate
    from pyodide.ffi import to_js, create_proxy
    from pyodide.http import pyfetch
    from numpy import *
    from PIL import Image, ImageFont, ImageDraw, ImageMath,ImageChops, ImageOps
    from math import ceil,floor
    import asyncio
    import io

    cache = {}
    def blobbytes(x):
    print(«the x»)
    print(x)
    return x.arrayBuffer()
    async def imageopenGETBYTES(text):
    text = text.replace(«\\»,»/»)
    text = text.replace(«//»,»/»)
    text = text.replace(«./»,»»)
    if( not text.startswith(«http») ):
    url = f»https://raw.githubusercontent.com/relt-1/WindowCreator/main/{text}»
    response = await pyfetch(url)
    if response.status == 200:
    return await response.bytes()
    else:
    canvas = document.getElementById(«customiconcanvas»)
    img = document.getElementById(«customiconimg»)
    canvas.width = img.width
    canvas.height = img.height
    context = canvas.getContext(«2d»)
    context.drawImage(img,0,0,img.width,img.height,0,0,img.width,img.height)
    imagedatas = context.getImageData(0,0,img.width,img.height)
    imagepil = Image.frombytes(«RGBA»,(img.width,img.height),bytes(imagedatas.data))
    finalbytes = io.BytesIO()
    imagepil.save(finalbytes, format=»PNG»)
    return finalbytes.getvalue()
    async def imageopenWEB(text):
    global cache
    if text in cache:
    return cache[text]
    else:
    bytes_list = bytearray(await imageopenGETBYTES(text))
    bytes = io.BytesIO(bytes_list)
    image = Image.open(bytes).convert(«RGBA»)
    cache[text] = image
    return image
    def put(canvas, image,a,b,alignment=»00″):
    canvas.alpha_composite(image,(int(a)-( image.size[0] * int(alignment[0]) // 2 ),int(b)-( image.size[1] * int(alignment[1]) // 2) ) )
    return canvas
    def put7(canvas, image, a, b, alignment = «00»): #this is the same as put(), but using windows’s weird transparency algorithm. ImageRGB+(BackgroundRGB*ImageAlpha). this assumes that background alpha is 1(fully opaque), i haven’t figured out what it does on a transparent background
    x = int(a)-( image.size[0] * int(alignment[0]) // 2 )
    y = int(b)-( image.size[1] * int(alignment[1]) // 2 )
    cr, cg, cb, ca = canvas.crop((x,y,x+w(image),y+h(image))).split()
    ir, ig, ib, ia = image.split()
    r = ImageMath.eval(«convert( c+(b*(255-a)/255) ,’L’)»,c=ir,b=cr,a=ia)
    g = ImageMath.eval(«convert( c+(b*(255-a)/255) ,’L’)»,c=ig,b=cg,a=ia)
    b = ImageMath.eval(«convert( c+(b*(255-a)/255) ,’L’)»,c=ib,b=cb,a=ia)
    canvas.paste(Image.merge(«RGBA»,(r,g,b,ca)),(x,y))
    return canvas
    #async def ApplyRules(rules,width,height,
    def h(img): #get the height
    return img.size[1]
    def w(img): #get the width
    return img.size[0]
    def cropx(img,a,b): #crop but only x
    return img.crop((a,0,b,h(img)))
    def cropy(img,a,b): #crop but only y
    return img.crop((0,a,x(img),b))
    def gradient(width,height,colora,colorb):
    r = Image.frombytes(«L»,(width,1),uint8(linspace(colora[0],colorb[0],width)))
    g = Image.frombytes(«L»,(width,1),uint8(linspace(colora[1],colorb[1],width)))
    b = Image.frombytes(«L»,(width,1),uint8(linspace(colora[2],colorb[2],width)))
    final = Image.merge(«RGB»,(r,g,b)).convert(«RGBA»)
    return final.resize((width,height))

    async def createtext(text,fontdirectory,color=(255,255,255,255), buffersize=(1000,1000),underline=False,underlineoffset=0,kerningadjust=0):
    drawntext = Image.new(«RGBA»,buffersize,(255,127,127,0))
    width = 0
    height = 0
    line = 0
    cursorpos = 0
    newlinesize = int(await imageopenGETBYTES(fontdirectory+»newlinesize.txt»))
    if underline:
    i = text[0]
    if(i==»\n»):
    height += newlinesize
    line += newlinesize
    cursorpos = 0
    else:
    char = await imageopenWEB(fontdirectory+str(ord(i))+».png»)
    whitechar = await imageopenWEB(fontdirectory+»white»+str(ord(i))+».png»)
    char = put(char, Image.new(«RGBA»,(w(char),1),(255,255,255,255)),0,h(char)-2+underlineoffset)
    whitechar = put(whitechar, Image.new(«RGBA»,(w(char),1),(255,255,255,255)),0,h(char)-2+underlineoffset)
    cred, cgreen, wcblue, calpha = char.split()
    wcred, wcgreen, cblue, wcalpha = whitechar.split()
    alpha2 = ImageMath.eval(«convert( int( (r1-r2+255+g1-g2+255+b1-b2+255)/3*alp/255 ), ‘L’)»,r1 = cred,r2 = wcred,b1 = cblue,b2 = wcblue,g1 = cgreen,g2 = wcgreen, alp = (color[3]))
    r = Image.new(«L»,(w(char),h(char)),color[0])
    g = Image.new(«L»,(w(char),h(char)),color[1])
    b = Image.new(«L»,(w(char),h(char)),color[2])
    char = Image.merge(«RGBA»,(r,g,b,alpha2))
    drawntext.paste(char,(cursorpos,line))
    cursorpos +=w(char)+kerningadjust
    width = __builtins__.max(width,cursorpos)
    height = __builtins__.max(height,h(char))
    text = text[1:]
    for i in text:
    if(i==»\n»):
    height += newlinesize
    line += newlinesize
    cursorpos = 0
    continue
    char = await imageopenWEB(fontdirectory+str(ord(i))+».png»)
    whitechar = await imageopenWEB(fontdirectory+»white»+str(ord(i))+».png»)
    cred, cgreen, wcblue, calpha = char.split()
    wcred, wcgreen, cblue, wcalpha = whitechar.split()
    alpha2 = ImageMath.eval(«convert( int( (r1-r2+255+g1-g2+255+b1-b2+255)/3*alp/255 ), ‘L’)»,r1 = cred,r2 = wcred,b1 = cblue,b2 = wcblue,g1 = cgreen,g2 = wcgreen, alp = (color[3]))
    r = Image.new(«L»,(w(char),h(char)),color[0])
    g = Image.new(«L»,(w(char),h(char)),color[1])
    b = Image.new(«L»,(w(char),h(char)),color[2])
    char = Image.merge(«RGBA»,(r,g,b,alpha2))
    drawntext.paste(char,(cursorpos,line))
    cursorpos +=w(char)+kerningadjust
    width = __builtins__.max(width,cursorpos)
    height = __builtins__.max(height,h(char))
    return drawntext.crop((0,0,width,height))
    async def createtextmac(text,fontdirectory,color=(0,0,0,255), buffersize=(1000,1000),underline=False, underlineoffset=0,kerningadjust=0):
    drawntext = Image.new(«RGBA»,buffersize,(255,127,127,0))
    width = 0
    height = 0
    line = 0
    cursorpos = 0
    newlinesize = int(await imageopenGETBYTES(fontdirectory+»newlinesize.txt»))
    if(underline):
    i = text[0]
    if(i==»\n»):
    height += newlinesize
    line += newlinesize
    cursorpos = 0
    else:
    char = await imageopenWEB(fontdirectory+str(ord(i))+».png»)
    char = put(char, Image.new(«RGBA»,(w(char),1),(255,255,255,255)),0,h(char)-2+underlineoffset)
    colorimg = Image.new(«RGBA»,(w(char),h(char)),(color[0],color[1],color[2],255))
    char = ImageChops.multiply(char,colorimg)
    drawntext.paste(char,(cursorpos,line))
    cursorpos +=w(char)+kerningadjust
    width = __builtins__.max(width,cursorpos)
    height = __builtins__.max(height,h(char))
    text = text[1:]
    for i in text:
    if(i==»\n»):
    height += newlinesize
    line += newlinesize
    cursorpos = 0
    continue
    char = await imageopenWEB(fontdirectory+str(ord(i))+».png»)
    colorimg = Image.new(«RGBA»,(w(char),h(char)),(color[0],color[1],color[2],255))
    char = ImageChops.multiply(char,colorimg)
    drawntext.paste(char,(cursorpos,line))
    cursorpos +=w(char)+kerningadjust
    width = __builtins__.max(width,cursorpos)
    height = __builtins__.max(height,h(char))
    return drawntext.crop((0,0,width,height))
    async def createtext7(im,x,y,text,fontdirectory,color=(0,0,0,255), buffersize=(1000,1000),align=»00″, kerningadjust=0, fit=9999999):
    drawntext = Image.new(«RGBA»,buffersize,(255,255,0,0))
    whitedrawntext = Image.new(«RGBA»,buffersize,(0,0,255,0))
    width = 0
    height = 0
    line = 0
    cursorpos = 0
    newlinesize = int(await imageopenGETBYTES(fontdirectory+»newlinesize.txt»))
    for i in text:
    if(i==»\n»):
    height += newlinesize
    line += newlinesize
    cursorpos = 0
    continue
    char = await imageopenWEB(fontdirectory+str(ord(i))+».png»)
    if(cursorpos+w(char)+kerningadjust > fit):
    height += newlinesize
    line += newlinesize
    cursorpos = 0
    continue
    whitechar = await imageopenWEB(fontdirectory+»white»+str(ord(i))+».png»)
    #colorimg = Image.new(«RGBA»,(w(char),h(char)),(color[0],color[1],color[2],255))
    #char = ImageChops.multiply(char,colorimg)
    drawntext.paste(char,(cursorpos,line))
    whitedrawntext.paste(whitechar,(cursorpos,line))
    cursorpos +=w(char)+kerningadjust
    width = __builtins__.max(width,cursorpos)
    height = __builtins__.max(height,h(char))
    drawntext = drawntext.crop((0,0,width,height))
    drawntext = put(Image.new(«RGBA»,(w(im),h(im)),(0,0,0,0)),drawntext,x,y,align)
    whitedrawntext = whitedrawntext.crop((0,0,width,height))
    whitedrawntext = put(Image.new(«RGBA»,(w(im),h(im)),(0,0,0,0)),whitedrawntext,x,y,align)
    imgcolor = Image.new(«RGBA»,(w(im),h(im)),color)
    c = imgcolor.split()
    ir,ig,ib,ia = im.split()
    r,g,b,a = drawntext.split()
    wr,wg,wb,wa = whitedrawntext.split()
    r = ImageMath.eval(«convert( b*c/255+(255-w)*(255-c)/255 ,’L’)»,w=r,b=wr,c=c[0])
    g = ImageMath.eval(«convert( b*c/255+(255-w)*(255-c)/255 ,’L’)»,w=g,b=wg,c=c[1])
    b = ImageMath.eval(«convert( b*c/255+(255-w)*(255-c)/255 ,’L’)»,w=wb,b=b,c=c[2])
    #imgcolor.show()
    #drawntext.show()
    red = ImageMath.eval(«convert( int(((i*(255-t)/255+(c*t)/255)*a/255+i*(255-a)/255)*o/255+(i*(255-o))/255) , ‘L’)»,i=ir,t=r,c=c[0],a=a,o=c[3]) #i is the image RGB, t is the text RGB, c is the RGB color variable, a is the text alpha, o is the alpha color variable
    #ImageMath.eval(«convert( int((255-t)*255/255),’L’)»,i=ir,t=r,c=c[0]).show()
    green = ImageMath.eval(«convert( int(((i*(255-t)/255+(c*t)/255)*a/255+i*(255-a)/255)*o/255+(i*(255-o))/255) , ‘L’)»,i=ig,t=g,c=c[1],a=a,o=c[3])
    blue = ImageMath.eval(«convert( int(((i*(255-t)/255+(c*t)/255)*a/255+i*(255-a)/255)*o/255+(i*(255-o))/255) , ‘L’)»,i=ib,t=b,c=c[2],a=a,o=c[3])
    alpha = ImageMath.eval(«convert( int(((((r+g+b)/3+(255-(r+g+b)/3)*i/255))*t/255+(i*(255-t))/255)*o/255+(i*(255-o))/255) , ‘L’)»,i=ia,r=r,g=g,b=b,t=a,o=c[3]) #i is the image alpha, r,g,b are RGB values of the text, t is text alpha, o is color alpha
    result = Image.merge(«RGBA»,(red,green,blue,alpha))
    return result

    async def measuretext7(text,fontdirectory, buffersize=(1000,1000), kerningadjust=0, fit=9999999): #this gives width and height of text using windows 7 rendering
    #drawntext = Image.new(«RGBA»,buffersize,(255,127,127,0))
    width = 0
    height = 0
    line = 0
    cursorpos = 0
    newlinesize = int(await imageopenGETBYTES(fontdirectory+»newlinesize.txt»))
    for i in text:
    if(i==»\n»):
    height += newlinesize
    line += newlinesize
    cursorpos = 0
    continue
    char = await imageopenWEB(fontdirectory+str(ord(i))+».png»)
    if(cursorpos+w(char)+kerningadjust > fit):
    height += newlinesize
    line += newlinesize
    cursorpos = 0
    continue
    #colorimg = Image.new(«RGBA»,(w(char),h(char)),(color[0],color[1],color[2],255))
    #char = ImageChops.multiply(char,colorimg)
    #drawntext.paste(char,(cursorpos,line))
    cursorpos +=w(char)+kerningadjust
    width = __builtins__.max(width,cursorpos)
    height = __builtins__.max(height,h(char))
    return [width,height]

    async def createtextubuntu(im,x,y,text,fontdirectory,color=(0,0,0,255), buffersize=(1000,1000),align=»00″):
    drawntext = Image.new(«RGBA»,buffersize,(255,255,0,0))
    width = 0
    height = 0
    line = 0
    cursorpos = 0
    newlinesize = int(await imageopenGETBYTES(fontdirectory+»newlinesize.txt»))
    for i in text:
    if(i==»\n»):
    height += newlinesize
    line += newlinesize
    cursorpos = 0
    continue
    char = await imageopenWEB(fontdirectory+str(ord(i))+».png»)
    #colorimg = Image.new(«RGBA»,(w(char),h(char)),(color[0],color[1],color[2],255))
    #char = ImageChops.multiply(char,colorimg)
    drawntext.paste(char,(cursorpos,line))
    cursorpos +=w(char)
    width = __builtins__.max(width,cursorpos)
    height = __builtins__.max(height,h(char))
    drawntext = drawntext.crop((0,0,width,height))
    drawntext = put(Image.new(«RGBA»,(w(im),h(im)),(0,0,0,0)),drawntext,x,y,align)
    imgcolor = Image.new(«RGBA»,(w(im),h(im)),color)
    c = imgcolor.split()
    ir,ig,ib,ia = im.split()
    r,g,b,a = drawntext.split()
    #imgcolor.show()
    red = ImageMath.eval(«convert( int(((i*(255-t)/255+(c*t)/255)*a/255+i*(255-a)/255)*o/255+(i*(255-o))/255) , ‘L’)»,i=ir,t=r,c=c[0],a=a,o=c[3]) #i is the image RGB, t is the text RGB, c is the RGB color variable, a is the text alpha, o is the alpha color variable
    #ImageMath.eval(«convert( int((255-t)*255/255),’L’)»,i=ir,t=r,c=c[0]).show()
    green = ImageMath.eval(«convert( int(((i*(255-t)/255+(c*t)/255)*a/255+i*(255-a)/255)*o/255+(i*(255-o))/255) , ‘L’)»,i=ig,t=g,c=c[1],a=a,o=c[3])
    blue = ImageMath.eval(«convert( int(((i*(255-t)/255+(c*t)/255)*a/255+i*(255-a)/255)*o/255+(i*(255-o))/255) , ‘L’)»,i=ib,t=b,c=c[2],a=a,o=c[3])
    alpha = ImageMath.eval(«convert( int(((((r+g+b)/3+(255-(r+g+b)/3)*i/255))*t/255+(i*(255-t))/255)*o/255+(i*(255-o))/255) , ‘L’)»,i=ia,r=r,g=g,b=b,t=a,o=c[3]) #i is the image alpha, r,g,b are RGB values of the text, t is text alpha, o is color alpha
    result = Image.merge(«RGBA»,(red,green,blue,alpha))
    return result

    def resize(im,width,height,left,right,up,down,scalingmethod=Image.NEAREST): #this resizes image but keeps margins intact. think of Unity GUI elements
    if width < w(im):
    im = im.resize((width,h(im)),scalingmethod)
    left = 1
    right = 1
    if height < h(im):
    im = im.resize((w(im),height),scalingmethod)
    up = 1
    down = 1
    result = Image.new(«RGBA»,(width,height),(0,0,0,0))
    tl = im.crop((0,0,left,up))
    tm = im.crop((left,0,w(im)-right,up))
    tr = im.crop((w(im)-right,0,w(im),up))
    ml = im.crop((0,up,left,h(im)-down))
    mm = im.crop((left,up,w(im)-right,h(im)-down))
    mr = im.crop((w(im)-right,up,w(im),h(im)-down))
    dl = im.crop((0,h(im)-down,left,h(im)))
    dm = im.crop((left,h(im)-down,w(im)-right,h(im)))
    dr = im.crop((w(im)-right,h(im)-down,w(im),h(im)))
    result = put(result,tl,0,0)
    result = put(result,tm.resize((width-left-right,h(tm)),scalingmethod),left,0)
    result = put(result,tr,width,0,»20″)
    result = put(result,ml.resize((w(ml),height-up-down),scalingmethod),0,up)
    result = put(result,mm.resize((width-left-right,height-up-down),scalingmethod),left,up)
    result = put(result,mr.resize((w(mr),height-up-down),scalingmethod),width,up,»20″)
    result = put(result,dl,0,height,»02″)
    result = put(result,dm.resize((width-left-right,h(dm)),scalingmethod),left,height,»02″)
    result = put(result,dr,width,height,»22″)
    return result

    def resizeanchor(im,x1,y1,x2,y2,left,right,up,down,scalingmethod=Image.NEAREST): #this is resize, but you give it desired coordinates and it calculates the size the image should be
    return resize(im,x2-x1,y2-y1,left,right,up,down,scalingmethod)

    def tile(im,width,height): #this tiles an image
    result = Image.new(«RGBA»,(width,height),(0,0,0,0))
    for x in range(ceil(width/w(im))):
    for y in range(ceil(height/h(im))):
    result = put(result,im,x*w(im),y*h(im))
    return result

    #the button functions return an image of a button for the OS.

    async def CreateXPButton(text,style=0):
    styles = [«xp/Button.png»,»xp/Button Hovered.png»,»xp/Button Clicked.png»,»xp/Button Disabled.png»,»xp/Button Default.png»]
    style = __builtins__.min(style,len(styles)-1)
    Button = await imageopenWEB(styles[style])
    col = (0,0,0,255)
    if(style==3):
    col = (161,161,146,255)
    textgraphic = await createtext(text,».\\xp\\fonts\\text\\»,col)
    Button = resize(Button,__builtins__.max(w(textgraphic)+16,75),__builtins__.max(23,h(textgraphic)+10),8,8,9,9,Image.NEAREST)
    Button = put(Button,textgraphic,w(Button)//2-w(textgraphic)//2,5)
    return Button

    async def CreateMacButton(text,style=0):
    styles = [«mac/Button.png»,»mac/Button Disabled.png»]
    style = __builtins__.min(style,len(styles)-1)
    Button = await imageopenWEB(styles[style])
    col = (0,0,0,255)
    if(style==1):
    col = (161,161,146,255)
    textgraphic = await createtextmac(text,».\\mac\\fonts\\caption\\»,col)
    Button = resize(Button,__builtins__.max(w(textgraphic)+10,60),__builtins__.max(20,h(textgraphic)+4),2,2,2,2,Image.NEAREST)
    else:
    textgraphic = await createtextmac(text,».\\mac\\fonts\\caption\\»,col)
    Button = resize(Button,__builtins__.max(w(textgraphic)+10,60),__builtins__.max(20,h(textgraphic)+4),4,4,4,4,Image.NEAREST)
    Button = put(Button,textgraphic,floor(w(Button)/2-w(textgraphic)/2),2)
    return Button

    async def Create7Button(text,style=0):
    styles = [«7/Button.png»,»7/Button.png»,»7/Button.png»,»7/Button Disabled.png»,»7/Button Defaulted.png»,»7/Button Defaulted Animation.png»]
    Button = await imageopenWEB(styles[__builtins__.min(style,len(styles)-1)])
    col = (0,0,0,255)
    #if(style==3):
    # col = (161,161,146,255)
    #textgraphic = await createtext(text,».\\7\\fonts\\text\\»,col)
    textsize = await measuretext7(text,»7\\fonts\\text\\»,kerningadjust=-1)
    Button = resize(Button,__builtins__.max(textsize[0]+16,86),__builtins__.max(24,textsize[1]+9),3,3,3,3,Image.NEAREST)
    Button = await createtext7(Button,w(Button)//2-textsize[0]//2,4,text,»7\\fonts\\text\\»,kerningadjust=-1)
    return Button

    async def Create7TaskDialogButton(text,style=0):
    styles = [«7/Button.png»,»7/Button.png»,»7/Button.png»,»7/Button Disabled.png»,»7/Button Defaulted.png»,»7/Button Defaulted Animation.png»]
    Button = await imageopenWEB(styles[__builtins__.min(style,len(styles)-1)])
    col = (0,0,0,255)
    #if(style==3):
    # col = (161,161,146,255)
    #textgraphic = await createtext(text,».\\7\\fonts\\text\\»,col)
    textsize = await measuretext7(text,»7\\fonts\\text\\»,kerningadjust=-1)
    Button = resize(Button,__builtins__.max(textsize[0]+30,66),__builtins__.max(21,textsize[1]+6),3,3,3,3,Image.NEAREST)
    Button = await createtext7(Button,w(Button)//2-textsize[0]//2,3,text,»7\\fonts\\text\\»,kerningadjust=-1)
    return Button

    async def Create3_1Button(text,style=0,underline=False):
    styles = [«3.1/Button.png»,»3.1/Button Default.png»]
    style = __builtins__.min(style,len(styles)-1)
    Button = await imageopenWEB(styles[style])
    textgraphic = await createtextmac(text,»3.1//fonts//text//»,underline=underline)
    if style == 1:
    Button = resize(Button,__builtins__.max(58,w(textgraphic)+5+5),h(textgraphic)+6+6,4,4,4,4)
    Border = await imageopenWEB(«3.1//Button Text Outline.png»)
    BorderImg = tile(Border,__builtins__.max(58,w(textgraphic)+5+5),h(textgraphic)+6+6)
    textx = floor(w(Button)/2-w(textgraphic)/2-1)
    textendx = textx+w(textgraphic)
    Button = put(Button,textgraphic,textx,6,»00″)
    Button = put(Button,BorderImg.crop((textx-2, 6, textx-1, 7+h(textgraphic))), textx-2, 6)
    Button = put(Button,BorderImg.crop((textx-1, 7+h(textgraphic), textendx, 7+h(textgraphic)+1)), textx-1, 7+h(textgraphic))
    Button = put(Button,BorderImg.crop((textendx+1, 6, textendx+2, 7+h(textgraphic))), textendx+1, 6)
    Button = put(Button,BorderImg.crop((textx-1, 5, textendx, 6)), textx-1, 5)
    else:
    Button = resize(Button,__builtins__.max(58,w(textgraphic)+6+6),h(textgraphic)+6+6,3,3,3,3)
    Button = put(Button,textgraphic,floor(w(Button)/2-w(textgraphic)/2-1),6,»00″)
    return Button

    async def CreateUbuntuButton(text,style=0,predefinedsize=[]):
    styles = [«ubuntu/Button.png»,»ubuntu/Button Default.png»]
    Button = await imageopenWEB(styles[__builtins__.min(style,len(styles)-1)])
    if predefinedsize:
    size = predefinedsize
    else:
    size = await measuretext7(text,»ubuntu/fonts/text/»)
    size[0] += 16
    size[1] += 10
    size[0] = __builtins__.max(85,size[0])
    size[1] = __builtins__.max(29,size[1])
    Button = resize(Button,size[0],size[1],5,5,5,5,scalingmethod=Image.BICUBIC)
    Button = await createtextubuntu(Button, size[0]//2, size[1]//2, text, «ubuntu/fonts/text/»,(60,59,55,255),align=»11″)
    return Button

    async def Create95Button(text,style=0,underline=False):
    styles = [«95/Button.png»,»95/Button Default.png»]
    style = __builtins__.min(style,len(styles)-1)
    Button = await imageopenWEB(styles[style])
    textgraphic = await createtextmac(text,»95//fonts//text//»,underline=underline,underlineoffset=1)
    if style == 1:
    Button = resize(Button,__builtins__.max(75,w(textgraphic)+5+5),h(textgraphic)+6+4,3,3,3,3)
    Border = await imageopenWEB(«95//Button Text Outline.png»)
    BorderImg = tile(Border,__builtins__.max(75,w(textgraphic)+5+5),h(textgraphic)+6+4)
    textx = floor(w(Button)/2-w(textgraphic)/2)
    outx = 4
    outendx = __builtins__.max(75,w(textgraphic)+5+5)-4
    #BorderImg.show()
    Button = put(Button,textgraphic,textx,4)
    Button = put(Button,BorderImg.crop((outx, 4, outx+1, 6+h(textgraphic))), outx, 4)
    Button = put(Button,BorderImg.crop((outx, 5+h(textgraphic), outendx, 5+h(textgraphic)+1)), outx, 5+h(textgraphic))
    Button = put(Button,BorderImg.crop((outendx-1, 4, outendx, 6+h(textgraphic))), outendx-1, 4)
    Button = put(Button,BorderImg.crop((outx, 4, outendx, 5)), outx, 4)
    else:
    Button = resize(Button,__builtins__.max(75,w(textgraphic)+5+5),h(textgraphic)+4+6,2,2,2,2)
    Button = put(Button,textgraphic,floor(w(Button)/2-w(textgraphic)/2),4)
    return Button
    async def Create2000Button(text,style=0,underline=False):
    styles = [«2000/Button.png»,»2000/Button Default.png»]
    style = __builtins__.min(style,len(styles)-1)
    Button = await imageopenWEB(styles[style])
    textgraphic = await createtext(text,»xp//fonts//text//»,(0,0,0,255),underline=underline,underlineoffset=1)
    if style == 1:
    Button = resize(Button,__builtins__.max(75,w(textgraphic)+5+5),h(textgraphic)+6+4,3,3,3,3)
    Border = await imageopenWEB(«95//Button Text Outline.png»)
    BorderImg = tile(Border,__builtins__.max(75,w(textgraphic)+5+5),h(textgraphic)+6+4)
    textx = floor(w(Button)/2-w(textgraphic)/2)
    outx = 4
    outendx = __builtins__.max(75,w(textgraphic)+5+5)-4
    #BorderImg.show()
    Button = put(Button,textgraphic,textx,4)
    Button = put(Button,BorderImg.crop((outx, 4, outx+1, 6+h(textgraphic))), outx, 4)
    Button = put(Button,BorderImg.crop((outx, 5+h(textgraphic), outendx, 5+h(textgraphic)+1)), outx, 5+h(textgraphic))
    Button = put(Button,BorderImg.crop((outendx-1, 4, outendx, 6+h(textgraphic))), outendx-1, 4)
    Button = put(Button,BorderImg.crop((outx, 4, outendx, 5)), outx, 4)
    else:
    Button = resize(Button,__builtins__.max(75,w(textgraphic)+5+5),h(textgraphic)+4+6,2,2,2,2)
    Button = put(Button,textgraphic,floor(w(Button)/2-w(textgraphic)/2),4)
    return Button
    async def CreateXPWindow(width,height,captiontext=»»,active=True,insideimagepath = «»,erroriconpath=»»,errortext=»»,button1=»»,button2=»»,button3=»»,button1style=0,button2style=0,button3style=0):
    #brug = open(«./brug.txt»)
    #print(brug.read())
    if active:
    TopFrame = await imageopenWEB(«./xp/Frame Up Active.png»)
    LeftFrame = await imageopenWEB(«./xp/Frame Left Active.png»)
    RightFrame = await imageopenWEB(«./xp/Frame Right Active.png»)
    BottomFrame = await imageopenWEB(«./xp/Frame Bottom Active.png»)
    CloseButton = await imageopenWEB(«./xp/Close button.png»)
    else:
    TopFrame = await imageopenWEB(«./xp/Frame Up Inactive.png»)
    LeftFrame = await imageopenWEB(«./xp/Frame Left Inactive.png»)
    RightFrame = await imageopenWEB(«./xp/Frame Right Inactive.png»)
    BottomFrame = await imageopenWEB(«./xp/Frame Bottom Inactive.png»)
    CloseButton = await imageopenWEB(«./xp/Close button Inactive.png»)
    button1style = button1style*(button1style != 4)
    button2style = button2style*(button2style != 4)
    button3style = button3style*(button3style != 4)
    textposx = 15+3
    textposy = 11+h(TopFrame)

    captiontextwidth = w(await createtext(captiontext,».\\xp\\fonts\\caption\\»))
    width = __builtins__.max(width,captiontextwidth+43)
    createdtext = await createtext(errortext,».\\xp\\fonts\\text\\»,(0,0,0,255))
    #textposy -= __builtins__.min(15,h(createdtext)//2)
    width = __builtins__.max(width,w(createdtext)+textposx+8+3)
    height = __builtins__.max(height,h(createdtext)+h(TopFrame)+3+25)
    print(textposy)
    if(insideimagepath != «»):
    insideimage = await imageopenWEB(insideimagepath)
    height = __builtins__.max(h(insideimage)+h(TopFrame)+3,height)
    width = __builtins__.max(width,w(insideimage)+6)
    if(erroriconpath != «»):
    erroricon = await imageopenWEB(erroriconpath)
    textposx += 15+w(erroricon)
    textposy = __builtins__.max(textposy,11+floor(h(erroricon)/2-h(createdtext)/2)+h(TopFrame))
    height = __builtins__.max(height,h(erroricon)+h(TopFrame)+3+11+11+3)
    width += 14+w(erroricon)

    buttonsimage = Image.new(«RGBA»,(0,0),(0,0,0,0))
    buttonswidth = 0
    buttonsheight = 0
    if button1 != «»:
    buttonswidth += 11

    button1img = await CreateXPButton(button1,button1style)
    #IMAGE = put(IMAGE,button1img,3+12,height-3-12,»02″)
    buttonsheight = __builtins__.max(buttonsheight,h(button1img)+14)
    temp = Image.new(«RGBA»,(buttonswidth+w(button1img),buttonsheight),(0,0,0,0))
    temp = put(temp,buttonsimage,0,0)
    temp = put(temp,button1img,buttonswidth,3)
    buttonsimage = temp.copy()
    buttonswidth += w(button1img)
    if button2 != «»:
    buttonswidth += 6
    button2img = await CreateXPButton(button2,button2style)
    #IMAGE = put(IMAGE,button2img,3+12,height-3-12,»02″)
    buttonsheight = __builtins__.max(buttonsheight,h(button2img)+14)
    temp = Image.new(«RGBA»,(buttonswidth+w(button2img),buttonsheight),(0,0,0,0))
    temp = put(temp,buttonsimage,0,0)
    temp = put(temp,button2img,buttonswidth,3)
    buttonsimage = temp.copy()
    buttonswidth += w(button2img)
    if button3 != «»:
    buttonswidth += 6
    button3img = await CreateXPButton(button3,button3style)
    #IMAGE = put(IMAGE,button2img,3+12,height-3-12,»02″)
    buttonsheight = __builtins__.max(buttonsheight,h(button3img)+14)
    temp = Image.new(«RGBA»,(buttonswidth+w(button3img),buttonsheight),(0,0,0,0))
    temp = put(temp,buttonsimage,0,0)
    temp = put(temp,button3img,buttonswidth,3)
    buttonsimage = temp.copy()
    buttonswidth += w(button3img)
    width = __builtins__.max(width,buttonswidth+12)
    height += buttonsheight
    #buttonswidth.show()

    width = __builtins__.max(66,width)
    IMAGE = Image.new(«RGBA», (width,height), (236,233,216,0))
    #IMAGE = put(IMAGE,cropx(TopFrame,0,27),0,0,»00″)
    #IMAGE = put(IMAGE,cropx(TopFrame,28,31).resize((width-w(TopFrame)+4,h(TopFrame)),Image.NEAREST),27,0,»00″)
    #IMAGE = put(IMAGE,cropx(TopFrame,31,w(TopFrame)),width,0,»20″)
    IMAGE = put(IMAGE,resize(TopFrame,width,h(TopFrame),28,35,9,17,Image.NEAREST),0,0)
    IMAGE = put(IMAGE,LeftFrame.resize((3,height-h(TopFrame)-3),Image.NEAREST),0,h(TopFrame),»00″)
    IMAGE = put(IMAGE,RightFrame.resize((3,height-h(TopFrame)-3),Image.NEAREST),width,h(TopFrame),»20″)
    IMAGE = put(IMAGE,cropx(BottomFrame,0,5).resize((5,3),Image.NEAREST),0,height,»02″)
    IMAGE = put(IMAGE,cropx(BottomFrame,4,w(BottomFrame)-5).resize((width-10,3),Image.NEAREST),5,height,»02″)
    IMAGE = put(IMAGE,cropx(BottomFrame,w(BottomFrame)-5,w(BottomFrame)).resize((5,3),Image.NEAREST),width,height,»22″)
    IMAGE = put(IMAGE,Image.new(«RGBA», (width-6,height-3-h(TopFrame)), (236,233,216,255)),3,h(TopFrame),»00″)
    IMAGE = put(IMAGE,CloseButton,width-5,5,»20″)
    if active:
    IMAGE = put(IMAGE,await createtext(captiontext,».\\xp\\fonts\\captionshadow\\»,(10,24,131,255)),8,8,»00″)
    IMAGE = put(IMAGE,await createtext(captiontext,».\\xp\\fonts\\caption\\»),7,7,»00″)
    else:
    IMAGE = put(IMAGE,await createtext(captiontext,».\\xp\\fonts\\caption\\»,(216,228,248,255)),7,7,»00″)
    if(insideimagepath != «»):
    IMAGE = put(IMAGE,insideimage,3,h(TopFrame))
    if(erroriconpath != «»):
    IMAGE = put(IMAGE,erroricon,3+11,h(TopFrame)+11)
    IMAGE = put(IMAGE,await createtext(errortext,».\\xp\\fonts\\text\\»,(0,0,0,255)),textposx,textposy)
    IMAGE = put(IMAGE,buttonsimage,width//2-5,height-3,»12″)
    return IMAGE

    async def CreateMacAlertDialog(width,height,title=»»,bar=True,icon=»»,errortext=»»,subtext=»»,button1=»»,button2=»»,button3=»»,button1default=False,button2default=False,button3default=False,button1style=0,button2style=0,button3style=0):
    WindowBar = await imageopenWEB(«mac/Error Window With bar.png»)
    WindowNoBar = await imageopenWEB(«mac/Error Window No bar.png»)
    Ridges = await imageopenWEB(«mac/Red Ridges.png»)
    ButtonBorder = await imageopenWEB(«mac//Button Outline.png»)
    TextHeight = 0
    IconPadding = 0
    Paddingwidth = 7
    if(bar):
    Paddingheight = 29+4
    Barheight = 29
    else:
    Paddingheight = 3+4
    Barheight = 0
    if(errortext != «»):
    ErrorTextImg = await createtextmac(errortext,»mac//fonts//caption//»)
    width = __builtins__.max(width,w(ErrorTextImg)+79+90)
    #height = __builtins__.max(height,h(ErrorTextImg)+Paddingheight+20)
    TextHeight += h(ErrorTextImg)
    if(subtext != «»):
    SubTextImg = await createtextmac(subtext,»mac//fonts//text//»)
    SubTextPos = TextHeight
    width = __builtins__.max(width,w(SubTextImg)+79+90)
    TextHeight += h(SubTextImg)
    height += TextHeight + Paddingheight
    if(icon != «»):
    IconImg = await imageopenWEB(icon)
    height = __builtins__.max(height,h(IconImg)+Paddingheight)
    width += w(IconImg)
    IconPadding = w(IconImg)
    buttonswidth = 0
    if(button1 != «»):
    height += 60
    button1img = await CreateMacButton(button1,button1style)
    buttonswidth += w(button1img)
    if(button2 != «»):
    button2img = await CreateMacButton(button2,button2style)
    buttonswidth += w(button2img)
    if(button3 != «»):
    button3img = await CreateMacButton(button3,button3style)
    buttonswidth += w(button3img)
    width = __builtins__.max(width,buttonswidth+79+90)
    IMAGE = Image.new(«RGBA», (width,height), (236,233,216,0))
    if(bar):
    IMAGE = put(IMAGE,resize(WindowBar,width,height,3,4,24,4),0,0)
    else:
    IMAGE = put(IMAGE,resize(WindowNoBar,width,height,3,4,3,4),0,0)
    if bar:
    if(title == «»):
    IMAGE = put(IMAGE,resizeanchor(Ridges,5,4,width-6,16,1,1,1,1),5,4)
    else:
    TitleImage = await createtextmac(title,»mac//fonts//caption//»)
    IMAGE = put(IMAGE,TitleImage,width//2-w(TitleImage)//2,3)
    IMAGE = put(IMAGE,resizeanchor(Ridges,5,4,width//2-w(TitleImage)//2-3,16,1,1,1,1),5,4)
    IMAGE = put(IMAGE,resizeanchor(Ridges,width//2+w(TitleImage)//2+5,4,width-6,16,1,1,1,1),width//2+w(TitleImage)//2+5,4)
    if(icon != «»):
    IMAGE = put(IMAGE,IconImg,26,Barheight+15)
    if(errortext != «»):
    IMAGE = put(IMAGE,ErrorTextImg,47+IconPadding,Barheight+14)
    if(subtext != «»):
    IMAGE = put(IMAGE,SubTextImg,47+IconPadding,Barheight+SubTextPos+16)
    if(button1 != «»):
    button1img = await CreateMacButton(button1,button1style)
    IMAGE = put(IMAGE,button1img,width-17,height-17,»22″)
    if(button1default):
    button1border = resize(ButtonBorder,w(button1img)+6,h(button1img)+6,5,5,5,5)
    IMAGE = put(IMAGE,button1border,width-17+3,height-17+3,»22″)
    if(button2 != «»):
    button2img = await CreateMacButton(button2,button2style)
    IMAGE = put(IMAGE,button2img,width-17-w(button1img)-22,height-17,»22″)
    if(button2default):
    button2border = resize(ButtonBorder,w(button2img)+6,h(button2img)+6,5,5,5,5)
    IMAGE = put(IMAGE,button2border,width-17+3-w(button1img)-22,height-17+3,»22″)
    if(button3 != «»):
    button3img = await CreateMacButton(button3,button3style)
    IMAGE = put(IMAGE,button3img,width-17-w(button2img)-22-w(button1img)-22,height-17,»22″)
    if(button3default):
    button3border = resize(ButtonBorder,w(button3img)+6,h(button3img)+6,5,5,5,5)
    IMAGE = put(IMAGE,button3border,width-17+3-w(button2img)-22-w(button1img)-22,height-17+3,»22″)
    return IMAGE

    async def CreateMacWindow(width,height,title=»»,icon=»»,errortext=»»,button1=»»,button2=»»,button3=»»,button1default=False,button2default=False,button3default=False,button1style=0,button2style=0,button3style=0):
    WindowBar = await imageopenWEB(«mac/Window With bar.png»)
    Ridges = await imageopenWEB(«mac/Ridges.png»)
    ButtonBorder = await imageopenWEB(«mac//Button Outline.png»)
    Paddingheight = 29+4
    TextHeight = 0
    iconsize = 0
    if(icon != «»):
    IconImg = await imageopenWEB(icon)
    iconsize = w(IconImg)+26
    if(errortext != «»):
    ErrorTextImg = await createtextmac(errortext,»mac//fonts//caption//»)
    width = __builtins__.max(width,w(ErrorTextImg)+iconsize+20+20+100)
    #height = __builtins__.max(height,h(ErrorTextImg)+Paddingheight+20)
    TextHeight += h(ErrorTextImg)+36
    #if(subtext != «»):
    # SubTextImg = await createtextmac(subtext,»mac//fonts//text//»)
    # width = __builtins__.max(width,w(SubTextImg)+79+90)
    # TextHeight += h(SubTextImg)
    height += TextHeight+24+4
    if(button1 != «»):
    height += 17+17
    IMAGE = Image.new(«RGBA», (width,height), (236,233,216,0))
    IMAGE = put(IMAGE,resize(WindowBar,width,height,3,4,24,4),0,0)
    if(title == «»):
    IMAGE = put(IMAGE,resizeanchor(Ridges,5,4,width-6,16,1,1,1,1),5,4)
    else:
    TitleImage = await createtextmac(title,»mac//fonts//caption//»)
    IMAGE = put(IMAGE,TitleImage,width//2-w(TitleImage)//2,3)
    IMAGE = put(IMAGE,resizeanchor(Ridges,5,4,width//2-w(TitleImage)//2-3,16,1,1,1,1),5,4)
    IMAGE = put(IMAGE,resizeanchor(Ridges,width//2+w(TitleImage)//2+5,4,width-6,16,1,1,1,1),width//2+w(TitleImage)//2+5,4)
    if(icon != «»):
    IMAGE = put(IMAGE,IconImg,26,37)
    if(errortext != «»):
    IMAGE = put(IMAGE,ErrorTextImg,iconsize+20,36)
    if(button1 != «»):
    button1img = await CreateMacButton(button1,button1style)
    IMAGE = put(IMAGE,button1img,width-17,height-17,»22″)
    if(button1default):
    button1border = resize(ButtonBorder,w(button1img)+6,h(button1img)+6,5,5,5,5)
    IMAGE = put(IMAGE,button1border,width-17+3,height-17+3,»22″)
    if(button2 != «»):
    button2img = await CreateMacButton(button2,button2style)
    IMAGE = put(IMAGE,button2img,width-17-w(button1img)-22,height-17,»22″)
    if(button2default):
    button2border = resize(ButtonBorder,w(button2img)+6,h(button2img)+6,5,5,5,5)
    IMAGE = put(IMAGE,button2border,width-17+3-w(button1img)-22,height-17+3,»22″)
    if(button3 != «»):
    button3img = await CreateMacButton(button3,button3style)
    IMAGE = put(IMAGE,button3img,width-17-w(button2img)-22-w(button1img)-22,height-17,»22″)
    if(button3default):
    button3border = resize(ButtonBorder,w(button3img)+6,h(button3img)+6,5,5,5,5)
    IMAGE = put(IMAGE,button3border,width-17+3-w(button2img)-22-w(button1img)-22,height-17+3,»22″)
    return IMAGE

    async def CreateMacWindoid(icon=»»,text=»»,collapsed=False):
    contentwidth = 0
    contentheight = 0
    textpos = 6
    if(text != «»):
    TextImg = await createtextmac(text,»mac//fonts//text//»)
    contentwidth += w(TextImg)+7
    contentheight += h(TextImg)+3
    if(icon != «»):
    IconImg = await imageopenWEB(icon)
    contentwidth += w(IconImg) + 7
    contentheight = __builtins__.max(contentheight,h(IconImg))
    textpos += w(IconImg) + 7
    contentwidth += 12
    contentheight += 8
    CONTENT = Image.new(«RGBA»,(contentwidth,contentheight),(255,255,198))
    if(text != «»):
    CONTENT = put(CONTENT,TextImg,textpos,5)
    if(icon != «»):
    CONTENT = put(CONTENT,IconImg,6,4)
    Border = await imageopenWEB(«mac//Windoid.png»)
    CollapsedBorder = await imageopenWEB(«mac//Windoid Hidden.png»)
    Studs = await imageopenWEB(«mac//Studs.png»)
    CloseButton = await imageopenWEB(«mac//Windoid Close Button.png»)
    HideButton = await imageopenWEB(«mac//Windoid Hide Button.png»)
    width = contentwidth + 19
    height = contentheight + 9
    IMAGE = Image.new(«RGBA»,(width,height),(0,0,0,0))
    if not collapsed:
    IMAGE = put(IMAGE,resize(Border,width,height,14,5,4,5),0,0)
    IMAGE = put(IMAGE,CONTENT,14,4)
    IMAGE = put(IMAGE,CloseButton,2,2)
    IMAGE = put(IMAGE,HideButton,2,height-3,»02″)
    IMAGE = put(IMAGE,tile(Studs,8,height-14-15),3,14)
    else:
    IMAGE = put(IMAGE,resize(CollapsedBorder,15,height,2,3,2,3),0,0)
    IMAGE = put(IMAGE,CloseButton,2,2)
    IMAGE = put(IMAGE,HideButton,2,height-3,»02″)
    IMAGE = put(IMAGE,tile(Studs,8,height-14-15),3,14)
    return IMAGE

    async def mix(a,b,c): #smoothly mixes between two values.
    c = __builtins__.min(1,__builtins__.max(0,c))
    c = c**0.5
    return a*(1-c)+b*c

    #this function just takes a corner and squishes it based on width and the height of the image by some amount.
    #amount of 3 will put it in the width/3,height/3 position
    #amount of 7 will put it in the width/7,height/7 position and so on.
    #c is there to animate the translation, from 0 — fully translated, to 1 — no translation
    async def stretch(size,amount,c):
    result = size-size*(size/(size-size/amount)) #this is needed because deform() does the opposite of what you would think it will do, it takes 4 points, and then squishes them into a rectangle.
    return mix(result,0,c)

    class Windows7Anim:
    async def __init__(self,second):
    self.second = second

    async def getmesh(self, img):
    return [((0,0,w(img),h(img)),(stretch(w(img),30,self.second*4),stretch(h(img),56,self.second*4),
    stretch(w(img),18,self.second*4),h(img)-stretch(h(img),16,self.second*4),
    w(img)-stretch(w(img),18,self.second*4),h(img)-stretch(h(img),16,self.second*4),
    w(img)-stretch(w(img),30,self.second*4),stretch(h(img),56,self.second*4)))] #values arbitrary, somebody needs to look into dwm and find how it animates the window

    async def Create7Window(icon=»»,text=»»,title=»»,pos=(0,0),screenres=(1920,1080),wallpaper=»»,buttons=[]):
    #pos and screenres dictate the glass texture position and size on the window border
    #if wallpaper is not empty, it will composite the error onto an image at pos’s coordinates, screenres should be the same size as the wallpaper
    contentwidth = 106
    contentheight = 53
    textpos = 0
    textposy = 25+13
    print(«1»)
    if(text != «»):
    TextDim = await measuretext7(text,»7//fonts//text//»,kerningadjust=-1)
    contentwidth = __builtins__.max(contentwidth,TextDim[0]+38+12)
    contentheight += TextDim[1]
    textposy = textposy-__builtins__.min(TextDim[1],21)
    if(icon != «»):
    IconImg = await imageopenWEB(icon)
    contentwidth = __builtins__.max(contentwidth,w(IconImg)+25+25)
    contentheight = __builtins__.max(contentheight,h(IconImg)+26+26)
    textpos += w(IconImg)-4+25
    textposy += h(IconImg)//2-7
    if(text != «»):
    contentwidth = __builtins__.max(contentwidth,w(IconImg)+25+TextDim[0]+38+9)
    print(«2»)
    if(title != «»):
    TitleDim = await measuretext7(title,»7//fonts//text//»,kerningadjust=-1)
    contentwidth = __builtins__.max(contentwidth,TitleDim[0]+49)
    buttonswidth = 0
    #len(buttons)*95
    for i in buttons:
    tempbuttontextsize = await measuretext7(i[0],»7\\fonts\\text\\»,kerningadjust=-1)
    buttonswidth += __builtins__.max(tempbuttontextsize[0]+16,86) + 10
    if(buttons):
    contentheight += 49
    contentwidth = __builtins__.max(contentwidth,buttonswidth+43)
    print(«3»)
    CONTENT = Image.new(«RGBA»,(contentwidth,contentheight),(255,255,255))
    if(icon != «»):
    CONTENT = put(CONTENT,IconImg,25,26)
    if(text != «»):
    CONTENT = await createtext7(CONTENT,textpos+12,textposy,text,»7//fonts//text//»,kerningadjust=-1)
    if(buttons):
    CONTENT = put(CONTENT, Image.new(«RGBA»,(contentwidth,49),(240,240,240)),0,contentheight,»02″)
    buttonpos = 0
    print(«4″)
    for i in buttons:
    buttonpos += 10
    Button = await Create7Button(i[0],i[1])
    CONTENT = put7(CONTENT, Button, contentwidth-buttonpos,contentheight-12,»22»)
    buttonpos += w(Button)
    Window = await imageopenWEB(«7//Window.png»)
    CloseButton = await imageopenWEB(«7//Close Button Single.png»)
    CloseSymbol = await imageopenWEB(«7//Close Symbol.png»)
    GlassImg = await imageopenWEB(«7//Glass.png»)
    GlassMask = await imageopenWEB(«7//Glass Mask.png»)
    print(«5»)
    TextGlow = await imageopenWEB(«7//Text Glow.png»)
    SideGlowLeft = await imageopenWEB(«7//Sideglow 1 Left.png»)
    SideGlowRight = await imageopenWEB(«7//Sideglow 1 Right.png»)
    SideShine = await imageopenWEB(«7//Side Shine.png»)
    print(«6»)
    width = contentwidth+8+8
    height = contentheight+8+30
    GlassMask = resize(GlassMask,width,height,8,8,30,8)
    #Glass = put(Image.new(«RGBA»,(800,602),(0,0,0,0)),GlassImg.resize(screenres),int((width/screenres[0])*50-50-pos[0]+pos[0]*0.12173472694),0)
    Glass = put(Image.new(«RGBA»,(800,602),(0,0,0,0)),GlassImg.resize(screenres),int(-pos[0]+width/16-screenres[0]/16+pos[0]/8),-pos[1])
    WithBorder = ImageChops.multiply(GlassMask,Glass)
    WithBorder = put(WithBorder, SideGlowLeft, 0, 0)
    WithBorder = put(WithBorder, SideGlowRight, width, 0, «20»)
    WithBorder = put(WithBorder, SideShine.resize((w(SideShine),(height-29-8)//4)), 0, 29)
    WithBorder = put(WithBorder, SideShine.resize((w(SideShine),(height-29-8)//4)), width, 29, «20»)
    print(«7»)
    #WithBorder.show()
    if(title != «»):
    WithBorder = put(WithBorder,resize(TextGlow,TitleDim[0]+7+14+10,h(TextGlow),23,23,1,1),-7,0)
    WithBorder = await createtext7(WithBorder,8,7,title,»7//fonts//text//»,kerningadjust=-1)

    WithBorder = put(WithBorder,resize(Window,width,height,8,8,30,8),0,0)
    WithBorder = put(WithBorder,CONTENT,8,30)
    WithBorder = put(WithBorder,CloseButton,width-6,1,»20″)
    WithBorder = put(WithBorder,CloseSymbol,width-6-18,5,»20″)
    print(«8»)
    ShadowTop = await imageopenWEB(«7//Shadow Top.png»)
    ShadowRight = await imageopenWEB(«7//Shadow Right.png»)
    ShadowBottom = await imageopenWEB(«7//Shadow Bottom.png»)
    ShadowLeft = await imageopenWEB(«7//Shadow Left.png»)
    print(«9»)
    IMAGE = Image.new(«RGBA»,(width+19+13,height+18+12),(0,0,0,0))
    IMAGE = put(IMAGE, resize(ShadowTop,width+13+16,12,26,26,1,1),0,0)
    IMAGE = put(IMAGE, resize(ShadowLeft,13,height,1,1,20,14),0,12)
    IMAGE = put(IMAGE, resize(ShadowRight,19,height,1,1,20,14),width+13,12)
    IMAGE = put(IMAGE, resize(ShadowBottom,width+13+17,18,28,27,1,1),0,height+12)
    IMAGE = put(IMAGE,WithBorder,13,12)
    print(«10»)
    if(wallpaper != «»):
    WallpaperImg = await imageopenWEB(wallpaper)
    IMAGE = put(WallpaperImg, IMAGE, pos[0]-13, pos[1]-12)
    return IMAGE

    async def Create7ButtonPanel(buttons,windowwidth=360,screenres=(1920,1080)):
    summedwidth = 11
    summedheight = 20
    curwidth = 0
    curlevel = 0
    cachedbuttons = []
    for button in buttons:
    button = await Create7Button(button[0],button[1])
    cachedbuttons.append(button)
    size = button.size
    if(curwidth + size[0] > screenres[0]):
    summedheight += curlevel+2
    curwidth = 0
    curlevel = 0
    curwidth += size[0]
    summedwidth= __builtins__.max(summedwidth,curwidth)
    curlevel = __builtins__.max(curlevel,size[1])
    summedheight += curlevel

    for button in cachedbuttons:
    size = button.size

    async def Create7TaskDialog(icon=»»,textbig=»»,textsmall=»»,title=»»,buttons=[],closebutton=True,pos=(200,100),screenres=(1920,1080),wallpaper=»»):
    width = 360
    height = 0
    iconsize = 0
    if(title != «»):
    TitleDim = await measuretext7(title,»7//fonts//text//»,kerningadjust=-1)
    if(icon != «»):
    IconImg = await imageopenWEB(icon)
    iconsize = w(IconImg)+10
    height += iconsize+10
    textbigheight = 0
    if(textbig != «»):
    textbigheight = (await measuretext7(textbig,»7/fonts/bigtext/»,fit=width-iconsize-10-10))[1]+10
    height = __builtins__.max(height,textbigheight+10+30)
    if(textsmall != «»):
    height = __builtins__.max(height,(await measuretext7(textsmall,»7/fonts/text/»,fit=width-iconsize-10-10))[1]+15+15)
    if buttons:
    height += 41
    CONTENT = Image.new(«RGBA»,(width,height),(255,255,255,255))
    if(icon != «»):
    CONTENT = put(CONTENT,IconImg,10,10)

    if(textbig != «»):
    CONTENT = await createtext7(CONTENT,iconsize+10,10,textbig,»7/fonts/bigtext/»,(0,51,153,255),kerningadjust=-1,fit=width-iconsize-10-10)
    if(textsmall != «»):
    CONTENT = await createtext7(CONTENT,iconsize+10,textbigheight+15,textsmall,»7/fonts/text/»,kerningadjust=-1,fit=width-iconsize-10-10)
    if buttons:
    CONTENT = put(CONTENT, Image.new(«RGBA»,(width,40),(240,240,240,255)),0,height,»02″)
    CONTENT = put(CONTENT, Image.new(«RGBA»,(width,1),(222,222,222,255)),0,height-41)
    buttonpos = 12
    for button in buttons:
    ButtonImg = await Create7TaskDialogButton(button[0],button[1])
    CONTENT = put(CONTENT, ButtonImg, width-buttonpos,height-11,»22″)
    buttonpos += w(ButtonImg)+8

    Window = await imageopenWEB(«7//Window.png»)
    CloseButton = await imageopenWEB(«7//Close Button Single.png»)
    CloseSymbol = await imageopenWEB(«7//Close Symbol.png»)
    GlassImg = await imageopenWEB(«7//Glass.png»)
    GlassMask = await imageopenWEB(«7//Glass Mask.png»)
    TextGlow = await imageopenWEB(«7//Text Glow.png»)
    SideGlowLeft = await imageopenWEB(«7//Sideglow 1 Left.png»)
    SideGlowRight = await imageopenWEB(«7//Sideglow 1 Right.png»)
    SideShine = await imageopenWEB(«7//Side Shine.png»)
    width = width+8+8
    height = height+8+30
    GlassMask = resize(GlassMask,width,height,8,8,30,8)
    #Glass = put(Image.new(«RGBA»,(800,602),(0,0,0,0)),GlassImg.resize(screenres),int((width/screenres[0])*50-50-pos[0]+pos[0]*0.12173472694),0)
    Glass = put(Image.new(«RGBA»,(800,602),(0,0,0,0)),GlassImg.resize(screenres),int(-pos[0]+width/16-screenres[0]/16+pos[0]/8),-pos[1])
    WithBorder = ImageChops.multiply(GlassMask,Glass)
    WithBorder = put(WithBorder, SideGlowLeft, 0, 0)
    WithBorder = put(WithBorder, SideGlowRight, width, 0, «20»)
    WithBorder = put(WithBorder, SideShine.resize((w(SideShine),(height-29-8)//4)), 0, 29)
    WithBorder = put(WithBorder, SideShine.resize((w(SideShine),(height-29-8)//4)), width, 29, «20»)
    #WithBorder.show()
    if(title != «»):
    WithBorder = put(WithBorder,resize(TextGlow,TitleDim[0]+7+14+10,h(TextGlow),23,23,1,1),-7,0)
    WithBorder = await createtext7(WithBorder,8,7,title,»7//fonts//text//»,kerningadjust=-1)

    WithBorder = put(WithBorder,resize(Window,width,height,8,8,30,8),0,0)
    WithBorder = put(WithBorder,CONTENT,8,30)
    if closebutton:
    WithBorder = put(WithBorder,CloseButton,width-6,1,»20″)
    WithBorder = put(WithBorder,CloseSymbol,width-6-18,5,»20″)
    ShadowTop = await imageopenWEB(«7//Shadow Top.png»)
    ShadowRight = await imageopenWEB(«7//Shadow Right.png»)
    ShadowBottom = await imageopenWEB(«7//Shadow Bottom.png»)
    ShadowLeft = await imageopenWEB(«7//Shadow Left.png»)
    IMAGE = Image.new(«RGBA»,(width+19+13,height+18+12),(0,0,0,0))
    IMAGE = put(IMAGE, resize(ShadowTop,width+13+16,12,26,26,1,1),0,0)
    IMAGE = put(IMAGE, resize(ShadowLeft,13,height,1,1,20,14),0,12)
    IMAGE = put(IMAGE, resize(ShadowRight,19,height,1,1,20,14),width+13,12)
    IMAGE = put(IMAGE, resize(ShadowBottom,width+13+17,18,28,27,1,1),0,height+12)
    IMAGE = put(IMAGE,WithBorder,13,12)
    if(wallpaper != «»):
    WallpaperImg = await imageopenWEB(wallpaper)
    IMAGE = put(WallpaperImg, IMAGE, pos[0]-13, pos[1]-12)
    return IMAGE

    def Export7Animation(img,savepath): #just put the generated window into img and set savepath to the folder you want it to save «7//animoutput//» is recommended
    for i in range(16):
    ImageChops.multiply(ImageOps.deform(img, Windows7Anim(i/60)),Image.new(«RGBA»,(w(img),h(img)),(255,255,255,int(__builtins__.max(0,__builtins__.min(1,(i+0.1)/15))**0.5*255)))).save(savepath+str(i)+».png»)
    def even(a):
    c = ceil(a/2)*2
    dc = abs(c-a)
    f = floor(a/2)*2
    df = abs(f-a)
    if(df <= dc):
    return f
    else:
    return c
    def buttoneven(a):
    c = ceil(a/2)*2
    dc = abs(c-a)
    f = floor(a/2)*2
    df = abs(f-a)
    if(df < dc):
    return f
    else:
    return c
    def getsafe(a, i, fallback):
    try:
    return a[i]
    except IndexError:
    return fallback
    async def Create3_1Window(icon=»»,text=»»,title=»»,buttons=[],active=True):
    contentwidth = 0
    contentheight = 0
    textpos = 18
    textposy = 16
    iconposy = 17
    if(text != «»):
    TextImg = await createtextmac(text,»3.1//fonts//text//»)
    contentwidth += w(TextImg)+18+17
    contentheight += h(TextImg)+16+16
    if(icon != «»):
    IconImg = await imageopenWEB(icon)
    textpos += w(IconImg)+19
    contentwidth += w(IconImg)+18
    contentwidth = __builtins__.max(contentwidth,w(IconImg)+19+19)
    contentheight = __builtins__.max(contentheight,17+h(IconImg)+15)
    if(text != «»):
    textposy = __builtins__.max(16,h(IconImg)//2-h(TextImg)//2+17)
    if(title != «»):
    TitleImg = await createtextmac(text,»3.1//fonts//text//»)
    contentwidth = __builtins__.max(contentwidth,w(TitleImg)+20+1)
    if buttons:
    contentheight += 44
    buttonswidth = 0
    for button in buttons:
    CurrentButton = await Create3_1Button(button[0],button[1],getsafe(button,2,False))
    buttonswidth += w(CurrentButton)+17
    contentwidth = __builtins__.max(contentwidth,buttonswidth+17)
    contentwidth = even(contentwidth)
    if active:
    Window = await imageopenWEB(«3.1//Window.png»)
    else:
    Window = await imageopenWEB(«3.1//Window Inactive.png»)
    CloseButton = await imageopenWEB(«3.1//Close Button.png»)
    CONTENT = Image.new(«RGBA»,(contentwidth,contentheight),(255,255,255,255))
    if(text != «»):
    CONTENT = put(CONTENT,TextImg,even(textpos),even(textposy))
    if(icon != «»):
    iconposy = even(textposy+h(TextImg)/2-h(IconImg)/2)
    if(icon != «»):
    CONTENT = put(CONTENT,IconImg,18,iconposy)
    buttonpos = contentwidth/2-(58*len(buttons)+17*len(buttons)-17)/2
    if active:
    for i in range(len(buttons)):
    CONTENT = put(CONTENT,await Create3_1Button(buttons[i][0],buttons[i][1],getsafe(buttons[i],2,False)),buttoneven(buttonpos),contentheight-10,»02″)
    print(buttons[i][0]+»:»,buttonpos,»which is»,buttoneven(buttonpos))
    buttonpos += 58+17
    else:
    for i in range(len(buttons)):
    CONTENT = put(CONTENT,await Create3_1Button(buttons[i][0],0,getsafe(buttons[i],2,False)),buttoneven(buttonpos),contentheight-10,»02″)
    print(buttons[i][0]+»:»,buttonpos,»which is»,buttoneven(buttonpos))
    buttonpos += 58+17
    print(contentwidth,contentheight)
    width = contentwidth+5+5
    height = contentheight+24+5
    IMAGE = resize(Window,width,height,6,6,24,5)
    IMAGE = put(IMAGE,CONTENT,5,24)
    IMAGE = put(IMAGE, CloseButton,6,5)
    if(title != «»):
    if active:
    TitleImg = await createtextmac(title,»3.1//fonts//text//»,(255,255,255,255))
    else:
    TitleImg = await createtextmac(title,»3.1//fonts//text//»)
    IMAGE = put(IMAGE,TitleImg,floor((contentwidth-20-1)/2-w(TitleImg)/2)+19+6,6)
    return IMAGE
    #

    async def CreateUbuntuWindow(icon=»»,bigtext=»»,text=»»,title=»»,buttons=[],active=True):
    contentwidth = 12+12+12
    contentheight = 12+16+24
    textwidth = 0
    textheight = 0
    if(bigtext != «»):
    bigtextsize = await measuretext7(bigtext,»ubuntu/fonts/bigtext/»)
    textwidth += bigtextsize[0]
    textheight += bigtextsize[1]+12
    if(text != «»):
    textsize = await measuretext7(text,»ubuntu/fonts/text/»)
    textwidth = __builtins__.max(textwidth,textsize[0])
    textheight += textsize[1]
    else:
    textheight += 17
    contentwidth += textwidth
    contentheight = __builtins__.max(contentheight,textheight+12+24+16)
    if(icon != «»):
    IconImg = await imageopenWEB(icon)
    contentwidth += w(IconImg)
    contentheight = __builtins__.max(contentheight,h(IconImg)+12+24+16)
    maxbuttonwidth = 0
    maxbuttonheight = 0
    for button in buttons:
    ButtonImg = await CreateUbuntuButton(button[0],button[1])
    maxbuttonwidth = __builtins__.max(w(ButtonImg),maxbuttonwidth)
    maxbuttonheight = __builtins__.max(h(ButtonImg),maxbuttonheight)
    contentwidth = __builtins__.max(contentwidth, (maxbuttonwidth+4+4)*len(buttons)+8+8)
    contentheight += maxbuttonheight
    CONTENT = Image.new(«RGBA»,(contentwidth,contentheight),(240,235,226))
    iconsize = 0
    if(icon != «»):
    CONTENT = put(CONTENT,IconImg,12,12)
    iconsize = w(IconImg)
    if(bigtext == «»):
    if(text != «»):
    CONTENT = await createtextubuntu(CONTENT,iconsize+24,12,text,»ubuntu/fonts/text/»,(60,59,55,255))
    else:
    CONTENT = await createtextubuntu(CONTENT,iconsize+24,12,bigtext,»ubuntu/fonts/bigtext/»,(60,59,55,255))
    if(text != «»):
    CONTENT = await createtextubuntu(CONTENT,iconsize+24,bigtextsize[1]+12+12,text,»ubuntu/fonts/text/»,(60,59,55,255))
    buttonpos = contentwidth-12
    for button in buttons:
    CONTENT = put(CONTENT, await CreateUbuntuButton(button[0],active and button[1] or 0,[maxbuttonwidth,maxbuttonheight]),buttonpos,contentheight-16,»22″)
    buttonpos -= maxbuttonwidth+8

    Frame = await imageopenWEB(active and «ubuntu/Window.png» or (not active and «ubuntu/Window Inactive.png»))
    CloseButton = await imageopenWEB(active and «ubuntu/Close Button.png» or (not active and «ubuntu/Close Button Inactive.png»))
    Mask = await imageopenWEB(«ubuntu/Mask.png»)
    Highlight = await imageopenWEB(«ubuntu/Highlight.png»)
    Mask = resize(Mask,contentwidth,contentheight,5,5,1,4)
    WINDOW = resize(Frame,contentwidth+1+1,contentheight+27+1,5,5,27,5)
    WINDOW = put(WINDOW, ImageChops.multiply(Mask,CONTENT), 1, 27)
    WINDOW = put(WINDOW, CloseButton, 10, 5)
    WINDOW = put(WINDOW, Highlight,0,27)
    WINDOW = put(WINDOW, Highlight,contentwidth+1,27)
    if(title != «»):
    WINDOW = await createtextubuntu(WINDOW, 42, 6, title, «ubuntu/fonts/caption/», (51,51,51,255))
    WINDOW = await createtextubuntu(WINDOW, 42, 4, title, «ubuntu/fonts/caption/», (51,51,51,255))
    WINDOW = await createtextubuntu(WINDOW, 41, 5, title, «ubuntu/fonts/caption/», (51,51,51,255))
    WINDOW = await createtextubuntu(WINDOW, 43, 5, title, «ubuntu/fonts/caption/», (51,51,51,255))
    WINDOW = await createtextubuntu(WINDOW, 42, 5, title, «ubuntu/fonts/caption/», (223,216,200,255))
    Shadow = await imageopenWEB(«ubuntu/Shadow.png»)
    IMAGE = resize(Shadow,contentwidth+1+1+8+10,contentheight+27+1+8+10,20,20,21,21)
    IMAGE = put(IMAGE,WINDOW,8,8)
    return IMAGE

    async def Create95Window(icon=»»,text=»»,title=»»,buttons=[],active=True,closebutton=True):
    buttons = buttons.copy()
    width = 0
    height = 0
    textshift = 0
    iconheight = 32
    if(icon):
    IconImg = await imageopenWEB(icon)
    width += w(IconImg)+12+12
    height = __builtins__.max(height,h(IconImg)+12+6)
    textshift += w(IconImg)+10
    iconheight = h(IconImg)
    if(text):
    TextImg = await createtextmac(text,»95/fonts/text/»)
    print(w(TextImg))
    print(w(TextImg)+textshift+18+12)
    width = __builtins__.max(width,w(TextImg)+textshift+18+11)
    height = __builtins__.max(height,h(TextImg)+12+6)
    print(buttons)
    if(buttons):
    button = buttons[0]
    ButtonsImg = Image.new(«RGBA»,(1,1),(0,0,0,0))
    ButtonImg = await Create95Button(button[0],getsafe(button,1,0) if active else 0,getsafe(button,2,False))
    ButtonsImg = put(Image.new(«RGBA»,(w(ButtonsImg)+w(ButtonImg),__builtins__.max(h(ButtonsImg),h(ButtonImg))),(0,0,0,0)),ButtonsImg,0,0)
    ButtonsImg = put(ButtonsImg,ButtonImg,w(ButtonsImg),0,»20″)
    buttons.pop(0)
    for button in buttons:
    ButtonImg = await Create95Button(button[0],getsafe(button,1,0) if active else 0,getsafe(button,2,False))
    ButtonsImg = put(Image.new(«RGBA»,(w(ButtonsImg)+w(ButtonImg)+6,__builtins__.max(h(ButtonsImg),h(ButtonImg))),(0,0,0,0)),ButtonsImg,0,0)
    ButtonsImg = put(ButtonsImg,ButtonImg,w(ButtonsImg),0,»20″)
    width = __builtins__.max(width,w(ButtonsImg)+12+12)
    height += h(ButtonsImg)+12+11
    buttons.append(«good»)
    #width = 262
    #height = 96
    IMAGE = Image.new(«RGBA»,(width,height),(192,192,192,255))
    if(icon):
    IMAGE = put(IMAGE,IconImg,12,12)
    if(text):

    IMAGE = put(IMAGE,TextImg,18+textshift,21 if h(TextImg) == 13 else 16 if h(TextImg) == 26 else 12 )
    if(buttons):
    print(width/2-w(ButtonsImg)/2+1)
    print(floor(width/2-w(ButtonsImg)/2)+1)
    IMAGE = put(IMAGE, ButtonsImg,floor(width/2-w(ButtonsImg)/2)+1,height-12,»02″)
    if active:
    Window = await imageopenWEB(«95/Window.png»)
    else:
    Window = await imageopenWEB(«95/Window Inactive.png»)
    if closebutton:
    CloseButton = await imageopenWEB(«95/Close Button.png»)
    else:
    CloseButton = await imageopenWEB(«95/Close Button Disabled.png»)
    IMAGE = put(resize(Window,width+2+2,height+21+2,3,3,21,2),IMAGE,2,21)
    if(title):
    TitleImg = await createtextmac(title,»95/fonts/caption/»,(255,255,255) if active else (192,192,192))
    IMAGE = put(IMAGE,TitleImg,5,5)
    print(IMAGE.size)
    IMAGE = put(IMAGE,CloseButton,width-1,5,»20″)
    return IMAGE

    async def Create98Window(icon=»»,text=»»,title=»»,buttons=[],active=True,closebutton=True):
    buttons = buttons.copy()
    width = 0
    height = 0
    textshift = 0
    iconheight = 32
    if(icon):
    IconImg = await imageopenWEB(icon)
    width += w(IconImg)+12+12
    height = __builtins__.max(height,h(IconImg)+12+6)
    textshift += w(IconImg)+10
    iconheight = h(IconImg)
    if(text):
    TextImg = await createtextmac(text,»95/fonts/text/»)
    print(w(TextImg))
    print(w(TextImg)+textshift+18+12)
    width = __builtins__.max(width,w(TextImg)+textshift+18+11)
    height = __builtins__.max(height,h(TextImg)+12+6)
    print(buttons)
    if(buttons):
    button = buttons[0]
    ButtonsImg = Image.new(«RGBA»,(1,1),(0,0,0,0))
    ButtonImg = await Create95Button(button[0],getsafe(button,1,0) if active else 0,getsafe(button,2,False))
    ButtonsImg = put(Image.new(«RGBA»,(w(ButtonsImg)+w(ButtonImg),__builtins__.max(h(ButtonsImg),h(ButtonImg))),(0,0,0,0)),ButtonsImg,0,0)
    ButtonsImg = put(ButtonsImg,ButtonImg,w(ButtonsImg),0,»20″)
    buttons.pop(0)
    for button in buttons:
    ButtonImg = await Create95Button(button[0],getsafe(button,1,0) if active else 0,getsafe(button,2,False))
    ButtonsImg = put(Image.new(«RGBA»,(w(ButtonsImg)+w(ButtonImg)+6,__builtins__.max(h(ButtonsImg),h(ButtonImg))),(0,0,0,0)),ButtonsImg,0,0)
    ButtonsImg = put(ButtonsImg,ButtonImg,w(ButtonsImg),0,»20″)
    width = __builtins__.max(width,w(ButtonsImg)+12+12)
    height += h(ButtonsImg)+12+11
    buttons.append(«good»)
    #width = 262
    #height = 96
    IMAGE = Image.new(«RGBA»,(width,height),(192,192,192,255))
    if(icon):
    IMAGE = put(IMAGE,IconImg,12,12)
    if(text):

    IMAGE = put(IMAGE,TextImg,18+textshift,21 if h(TextImg) == 13 else 16 if h(TextImg) == 26 else 12 )
    if(buttons):
    print(width/2-w(ButtonsImg)/2+1)
    print(floor(width/2-w(ButtonsImg)/2)+1)
    IMAGE = put(IMAGE, ButtonsImg,floor(width/2-w(ButtonsImg)/2)+1,height-12,»02″)
    if active:
    Window = await imageopenWEB(«95/Window.png»)
    else:
    Window = await imageopenWEB(«95/Window Inactive.png»)
    if closebutton:
    CloseButton = await imageopenWEB(«95/Close Button.png»)
    else:
    CloseButton = await imageopenWEB(«95/Close Button Disabled.png»)
    IMAGE = put(resize(Window,width+2+2,height+21+2,3,3,21,2),IMAGE,2,21)
    if active:
    IMAGE = put(IMAGE,Image.new(«RGBA»,(width-2,18),(16,132,208)),3,3)
    IMAGE = put(IMAGE,gradient(width-2-19,18,(0,0,128),(16,132,208)),3,3)
    else:
    IMAGE = put(IMAGE,Image.new(«RGBA»,(width-2,18),(181,181,181)),3,3)
    IMAGE = put(IMAGE,gradient(width-2-19,18,(128,128,128),(181,181,181)),3,3)
    if(title):
    TitleImg = await createtextmac(title,»95/fonts/caption/»,(255,255,255) if active else (192,192,192))
    IMAGE = put(IMAGE,TitleImg,5,5)
    print(IMAGE.size)
    IMAGE = put(IMAGE,CloseButton,width-1,5,»20″)
    return IMAGE

    async def Create2000Window(icon=»»,text=»»,title=»»,buttons=[],active=True,closebutton=True):
    buttons = buttons.copy()
    width = 0
    height = 0
    textshift = 0
    iconheight = 32
    if(icon):
    IconImg = await imageopenWEB(icon)
    width += w(IconImg)+12+12
    height = __builtins__.max(height,h(IconImg)+12+6)
    textshift += w(IconImg)+10
    iconheight = h(IconImg)
    if(text):
    TextImg = await createtext(text,»xp/fonts/text/»,(0,0,0,255))
    print(w(TextImg))
    print(w(TextImg)+textshift+18+12)
    width = __builtins__.max(width,w(TextImg)+textshift+18+11)
    height = __builtins__.max(height,h(TextImg)+12+6)
    print(buttons)
    if(buttons):
    button = buttons[0]
    ButtonsImg = Image.new(«RGBA»,(1,1),(0,0,0,0))
    ButtonImg = await Create2000Button(button[0],getsafe(button,1,0) if active else 0,getsafe(button,2,False))
    ButtonsImg = put(Image.new(«RGBA»,(w(ButtonsImg)+w(ButtonImg),__builtins__.max(h(ButtonsImg),h(ButtonImg))),(0,0,0,0)),ButtonsImg,0,0)
    ButtonsImg = put(ButtonsImg,ButtonImg,w(ButtonsImg),0,»20″)
    buttons.pop(0)
    for button in buttons:
    ButtonImg = await Create2000Button(button[0],getsafe(button,1,0) if active else 0,getsafe(button,2,False))
    ButtonsImg = put(Image.new(«RGBA»,(w(ButtonsImg)+w(ButtonImg)+6,__builtins__.max(h(ButtonsImg),h(ButtonImg))),(0,0,0,0)),ButtonsImg,0,0)
    ButtonsImg = put(ButtonsImg,ButtonImg,w(ButtonsImg),0,»20″)
    width = __builtins__.max(width,w(ButtonsImg)+12+12)
    height += h(ButtonsImg)+12+11
    buttons.append(«good»)
    #width = 262
    #height = 96
    IMAGE = Image.new(«RGBA»,(width,height),(212,208,200,255))
    if(icon):
    IMAGE = put(IMAGE,IconImg,12,12)
    if(text):

    IMAGE = put(IMAGE,TextImg,18+textshift,21 if h(TextImg) == 13 else 16 if h(TextImg) == 26 else 12 )
    if(buttons):
    print(width/2-w(ButtonsImg)/2+1)
    print(floor(width/2-w(ButtonsImg)/2)+1)
    IMAGE = put(IMAGE, ButtonsImg,floor(width/2-w(ButtonsImg)/2)+1,height-12,»02″)
    if active:
    Window = await imageopenWEB(«2000/Window.png»)
    else:
    Window = await imageopenWEB(«2000/Window Inactive.png»)
    if closebutton:
    CloseButton = await imageopenWEB(«2000/Close Button.png»)
    else:
    CloseButton = await imageopenWEB(«2000/Close Button Disabled.png»)
    IMAGE = put(resize(Window,width+2+2,height+21+2,3,3,21,2),IMAGE,2,21)
    if active:
    IMAGE = put(IMAGE,Image.new(«RGBA»,(width-2,18),(166,202,240)),3,3)
    IMAGE = put(IMAGE,gradient(width-2-19,18,(10,36,106),(166,202,240)),3,3)
    else:
    IMAGE = put(IMAGE,Image.new(«RGBA»,(width-2,18),(192,192,192)),3,3)
    IMAGE = put(IMAGE,gradient(width-2-19,18,(128,128,128),(192,192,192)),3,3)
    if(title):
    TitleImg = await createtext(title,»xp/fonts/text/»,(255,255,255,255) if active else (212,208,200,255),kerningadjust=1)
    IMAGE = put(IMAGE,TitleImg,5,5)
    IMAGE = put(IMAGE,TitleImg,6,5)
    print(IMAGE.size)
    IMAGE = put(IMAGE,CloseButton,width-1,5,»20″)
    return IMAGE

    async def UpdateImagexp():
    image = await CreateXPWindow(0,0,errortext=document.getElementById(«text»).value,
    captiontext=document.getElementById(«title»).value,
    active=document.getElementById(«active»).checked,
    erroriconpath=document.querySelector(‘input[name=»icon»]:checked’).value,
    button1=document.getElementById(«button1»).value,
    button2=document.getElementById(«button2»).value,
    button3=document.getElementById(«button3»).value,
    button1style=int(document.getElementById(«button1style»).value),
    button2style=int(document.getElementById(«button2style»).value),
    button3style=int(document.getElementById(«button3style»).value))
    canvas = document.getElementById(«xpoutput»)
    ctx = canvas.getContext(«2d»)
    width,height = image.size

    canvas.style.width = f»{width}px»
    canvas.style.height = f»{height}px»

    canvas.width = width
    canvas.height = height

    ctx.clearRect(0, 0, width, height)
    data = Uint8ClampedArray.new(to_js(image.tobytes()))
    image_data = ImageData.new(data, width, height)
    ctx.putImageData(image_data, 0, 0)
    def createlist(b1,b2,b3,s1,s2,s3):
    buttonlist = []
    if(b1 != «»):
    buttonlist.append([b1,s1])
    if(b2 != «»):
    buttonlist.append([b2,s2])
    if(b3 != «»):
    buttonlist.append([b3,s3])
    return buttonlist
    def createlist95(b1,b2,b3,s1,s2,s3,u1,u2,u3):
    buttonlist = []
    if(b1 != «»):
    buttonlist.append([b1,s1,u1])
    if(b2 != «»):
    buttonlist.append([b2,s2,u2])
    if(b3 != «»):
    buttonlist.append([b3,s3,u3])
    return buttonlist
    async def UpdateImage7():
    button1=document.getElementById(«button1»).value
    button2=document.getElementById(«button2»).value
    button3=document.getElementById(«button3»).value
    button1style=int(document.getElementById(«button1style»).value)
    button2style=int(document.getElementById(«button2style»).value)
    button3style=int(document.getElementById(«button3style»).value)
    image = await Create7Window(text=document.getElementById(«text»).value,
    title=document.getElementById(«title»).value,
    icon=document.querySelector(‘input[name=»icon»]:checked’).value,
    buttons=createlist(button1,button2,button3,button1style,button2style,button3style))
    canvas = document.getElementById(«7output»)
    ctx = canvas.getContext(«2d»)
    width,height = image.size

    canvas.style.width = f»{width}px»
    canvas.style.height = f»{height}px»

    canvas.width = width
    canvas.height = height

    ctx.clearRect(0, 0, width, height)
    data = Uint8ClampedArray.new(to_js(image.tobytes()))
    image_data = ImageData.new(data, width, height)
    ctx.putImageData(image_data, 0, 0)

    async def UpdateImage3_1():
    button1=document.getElementById(«button1»).value
    button2=document.getElementById(«button2»).value
    button3=document.getElementById(«button3»).value
    button1style=int(document.getElementById(«button1style»).value)
    button2style=int(document.getElementById(«button2style»).value)
    button3style=int(document.getElementById(«button3style»).value)
    button1underline=int(document.getElementById(«button1default»).checked)
    button2underline=int(document.getElementById(«button2default»).checked)
    button3underline=int(document.getElementById(«button3default»).checked)
    image = await Create3_1Window(text=document.getElementById(«text»).value,
    title=document.getElementById(«title»).value,
    icon=document.querySelector(‘input[name=»icon»]:checked’).value,
    buttons=createlist95(button1,button2,button3,button1style,button2style,button3style,button1underline,button2underline,button3underline),
    active=document.getElementById(«active»).checked)
    canvas = document.getElementById(«3_1output»)
    ctx = canvas.getContext(«2d»)
    width,height = image.size

    canvas.style.width = f»{width}px»
    canvas.style.height = f»{height}px»

    canvas.width = width
    canvas.height = height

    ctx.clearRect(0, 0, width, height)
    data = Uint8ClampedArray.new(to_js(image.tobytes()))
    image_data = ImageData.new(data, width, height)
    ctx.putImageData(image_data, 0, 0)

    async def UpdateImageUbuntu():
    button1=document.getElementById(«button1»).value
    button2=document.getElementById(«button2»).value
    button3=document.getElementById(«button3»).value
    button1style=int(document.getElementById(«button1style»).value)
    button2style=int(document.getElementById(«button2style»).value)
    button3style=int(document.getElementById(«button3style»).value)
    image = await CreateUbuntuWindow(bigtext=document.getElementById(«text»).value,
    text=document.getElementById(«subtext»).value,
    title=document.getElementById(«title»).value,
    icon=document.querySelector(‘input[name=»icon»]:checked’).value,
    buttons=createlist(button1,button2,button3,button1style,button2style,button3style),
    active=document.getElementById(«active»).checked)
    canvas = document.getElementById(«ubuntuoutput»)
    ctx = canvas.getContext(«2d»)
    width,height = image.size

    canvas.style.width = f»{width}px»
    canvas.style.height = f»{height}px»

    canvas.width = width
    canvas.height = height

    ctx.clearRect(0, 0, width, height)
    data = Uint8ClampedArray.new(to_js(image.tobytes()))
    image_data = ImageData.new(data, width, height)
    ctx.putImageData(image_data, 0, 0)

    async def UpdateImageMac():
    image = await CreateMacWindow(0,0,errortext=document.getElementById(«text»).value,
    title=document.getElementById(«title»).value,
    icon=document.querySelector(‘input[name=»icon»]:checked’).value,
    button1=document.getElementById(«button1»).value,
    button2=document.getElementById(«button2»).value,
    button3=document.getElementById(«button3»).value,
    button1style=int(document.getElementById(«button1style»).value),
    button2style=int(document.getElementById(«button2style»).value),
    button3style=int(document.getElementById(«button3style»).value),
    button1default=int(document.getElementById(«button1default»).checked),
    button2default=int(document.getElementById(«button2default»).checked),
    button3default=int(document.getElementById(«button3default»).checked))
    canvas = document.getElementById(«macoutput»)
    ctx = canvas.getContext(«2d»)
    width,height = image.size

    canvas.style.width = f»{width}px»
    canvas.style.height = f»{height}px»

    canvas.width = width
    canvas.height = height

    ctx.clearRect(0, 0, width, height)
    data = Uint8ClampedArray.new(to_js(image.tobytes()))
    image_data = ImageData.new(data, width, height)
    ctx.putImageData(image_data, 0, 0)

    async def UpdateImageMacAlert():
    image = await CreateMacAlertDialog(0,0,errortext=document.getElementById(«text»).value,
    title=document.getElementById(«title»).value,
    icon=document.querySelector(‘input[name=»icon»]:checked’).value,
    bar=document.getElementById(«secondary»).checked,
    button1=document.getElementById(«button1»).value,
    button2=document.getElementById(«button2»).value,
    button3=document.getElementById(«button3»).value,
    button1style=int(document.getElementById(«button1style»).value),
    button2style=int(document.getElementById(«button2style»).value),
    button3style=int(document.getElementById(«button3style»).value),
    button1default=int(document.getElementById(«button1default»).checked),
    button2default=int(document.getElementById(«button2default»).checked),
    button3default=int(document.getElementById(«button3default»).checked))
    canvas = document.getElementById(«macalertoutput»)
    ctx = canvas.getContext(«2d»)
    width,height = image.size

    canvas.style.width = f»{width}px»
    canvas.style.height = f»{height}px»

    canvas.width = width
    canvas.height = height

    ctx.clearRect(0, 0, width, height)
    data = Uint8ClampedArray.new(to_js(image.tobytes()))
    image_data = ImageData.new(data, width, height)
    ctx.putImageData(image_data, 0, 0)

    async def UpdateImageMacWindoid():
    image = await CreateMacWindoid(text=document.getElementById(«text»).value,
    icon=document.querySelector(‘input[name=»icon»]:checked’).value,
    collapsed=not document.getElementById(«secondary»).checked)
    canvas = document.getElementById(«macwindoidoutput»)
    ctx = canvas.getContext(«2d»)
    width,height = image.size

    canvas.style.width = f»{width}px»
    canvas.style.height = f»{height}px»

    canvas.width = width
    canvas.height = height

    ctx.clearRect(0, 0, width, height)
    data = Uint8ClampedArray.new(to_js(image.tobytes()))
    image_data = ImageData.new(data, width, height)
    ctx.putImageData(image_data, 0, 0)

    async def UpdateImage7TaskDialog():
    button1=document.getElementById(«button1»).value
    button2=document.getElementById(«button2»).value
    button3=document.getElementById(«button3»).value
    button1style=int(document.getElementById(«button1style»).value)
    button2style=int(document.getElementById(«button2style»).value)
    button3style=int(document.getElementById(«button3style»).value)
    image = await Create7TaskDialog(textbig=document.getElementById(«text»).value,
    textsmall=document.getElementById(«subtext»).value,
    closebutton=document.getElementById(«secondary»).checked,
    title=document.getElementById(«title»).value,
    icon=document.querySelector(‘input[name=»icon»]:checked’).value,
    buttons=createlist(button1,button2,button3,button1style,button2style,button3style))
    canvas = document.getElementById(«taskdialogoutput»)
    ctx = canvas.getContext(«2d»)
    width,height = image.size

    canvas.style.width = f»{width}px»
    canvas.style.height = f»{height}px»

    canvas.width = width
    canvas.height = height

    ctx.clearRect(0, 0, width, height)
    data = Uint8ClampedArray.new(to_js(image.tobytes()))
    image_data = ImageData.new(data, width, height)
    ctx.putImageData(image_data, 0, 0)

    async def UpdateImage95():
    button1=document.getElementById(«button1»).value
    button2=document.getElementById(«button2»).value
    button3=document.getElementById(«button3»).value
    button1style=int(document.getElementById(«button1style»).value)
    button2style=int(document.getElementById(«button2style»).value)
    button3style=int(document.getElementById(«button3style»).value)
    button1underline=int(document.getElementById(«button1default»).checked)
    button2underline=int(document.getElementById(«button2default»).checked)
    button3underline=int(document.getElementById(«button3default»).checked)
    image = await Create95Window(text=document.getElementById(«text»).value,
    title=document.getElementById(«title»).value,
    icon=document.querySelector(‘input[name=»icon»]:checked’).value,
    buttons=createlist95(button1,button2,button3,button1style,button2style,button3style,button1underline,button2underline,button3underline),
    active=document.getElementById(«active»).checked,
    closebutton=document.getElementById(«secondary»).checked)
    canvas = document.getElementById(«95output»)
    ctx = canvas.getContext(«2d»)
    width,height = image.size

    canvas.style.width = f»{width}px»
    canvas.style.height = f»{height}px»

    canvas.width = width
    canvas.height = height

    ctx.clearRect(0, 0, width, height)
    data = Uint8ClampedArray.new(to_js(image.tobytes()))
    image_data = ImageData.new(data, width, height)
    ctx.putImageData(image_data, 0, 0)

    async def UpdateImage98():
    button1=document.getElementById(«button1»).value
    button2=document.getElementById(«button2»).value
    button3=document.getElementById(«button3»).value
    button1style=int(document.getElementById(«button1style»).value)
    button2style=int(document.getElementById(«button2style»).value)
    button3style=int(document.getElementById(«button3style»).value)
    button1underline=int(document.getElementById(«button1default»).checked)
    button2underline=int(document.getElementById(«button2default»).checked)
    button3underline=int(document.getElementById(«button3default»).checked)
    image = await Create98Window(text=document.getElementById(«text»).value,
    title=document.getElementById(«title»).value,
    icon=document.querySelector(‘input[name=»icon»]:checked’).value,
    buttons=createlist95(button1,button2,button3,button1style,button2style,button3style,button1underline,button2underline,button3underline),
    active=document.getElementById(«active»).checked,
    closebutton=document.getElementById(«secondary»).checked)
    canvas = document.getElementById(«98output»)
    ctx = canvas.getContext(«2d»)
    width,height = image.size

    canvas.style.width = f»{width}px»
    canvas.style.height = f»{height}px»

    canvas.width = width
    canvas.height = height

    ctx.clearRect(0, 0, width, height)
    data = Uint8ClampedArray.new(to_js(image.tobytes()))
    image_data = ImageData.new(data, width, height)
    ctx.putImageData(image_data, 0, 0)

    async def UpdateImage2000():
    button1=document.getElementById(«button1»).value
    button2=document.getElementById(«button2»).value
    button3=document.getElementById(«button3»).value
    button1style=int(document.getElementById(«button1style»).value)
    button2style=int(document.getElementById(«button2style»).value)
    button3style=int(document.getElementById(«button3style»).value)
    button1underline=int(document.getElementById(«button1default»).checked)
    button2underline=int(document.getElementById(«button2default»).checked)
    button3underline=int(document.getElementById(«button3default»).checked)
    image = await Create2000Window(text=document.getElementById(«text»).value,
    title=document.getElementById(«title»).value,
    icon=document.querySelector(‘input[name=»icon»]:checked’).value,
    buttons=createlist95(button1,button2,button3,button1style,button2style,button3style,button1underline,button2underline,button3underline),
    active=document.getElementById(«active»).checked,
    closebutton=document.getElementById(«secondary»).checked)
    canvas = document.getElementById(«2000output»)
    ctx = canvas.getContext(«2d»)
    width,height = image.size

    canvas.style.width = f»{width}px»
    canvas.style.height = f»{height}px»

    canvas.width = width
    canvas.height = height

    ctx.clearRect(0, 0, width, height)
    data = Uint8ClampedArray.new(to_js(image.tobytes()))
    image_data = ImageData.new(data, width, height)
    ctx.putImageData(image_data, 0, 0)

    async def UpdateImage(e):
    await asyncio.gather(
    UpdateImagexp(),
    UpdateImage7(),
    UpdateImage3_1(),
    UpdateImageUbuntu(),
    UpdateImageMac(),
    UpdateImageMacAlert(),
    UpdateImageMacWindoid(),
    UpdateImage7TaskDialog(),
    UpdateImage95(),
    UpdateImage98(),
    UpdateImage2000()
    )

    def UpdateCustomIcon(e=None):
    url = document.getElementById(«customicon»).value
    document.getElementById(«customiconimg»).src = url
    document.getElementById(«customiconradio»).value = url

    Update = create_proxy(UpdateImage)
    document.getElementById(«generate»).addEventListener(«click»,Update)

    UpdateIcon = create_proxy(UpdateCustomIcon)
    document.getElementById(«customicon»).addEventListener(«change»,UpdateIcon)
    UpdateCustomIcon()

    Windows 2000 Crazy Error FULL VERSION (FULL HD 60 FPS / 9 YEAR ANNIVERSARY)

    werr7xp

    00:00

    Level Leaderboard

    72172

    70

    LimeVaporeon

    wow kool score

    Lagging? Disable animations here:



    2.5

    Windows 2000 Crazy Error

    @LimeVaporeon

    funk
    classic

    Rate this level:

    Criteria: song choice and fit with the level. Is it a fun level?
    Please do not vote for difficulty.

    to play the game.

    to Play/Pause the video.

    to restart the level.

    SUBMIT

    Restart

    Full Screen

    Congratulations!

    Level Completed!

    Windows 2000 Crazy Error

    You can only submit your score if you have an account.
    Create one here or login here.

    Понравилась статья? Поделить с друзьями:
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии
  • Windows vista home basic рус
  • Получить образ windows 10
  • Как закрыть все программы на компьютере с помощью клавиатуры windows 10
  • Как удалить последние установленные обновления windows
  • Установка драйвера для вашего принтера при помощи встроенного в ос windows решения