xtButtonBindings :: [(String, Label -> Bool -> IO ())]
textButtonBindings =
    [ ("buttonFact",  append "!")
    , ("buttonMod",   append "%")
    , ("buttonExp",   append "^")
    , ("buttonSciNot",append "*10^")
    , ("buttonNatExp",  append "e^")
    , ("buttonInv",   append "^-1")
    , ("buttonSqrt",  append "^0.5")
    , ("buttonAdd",   append "+")
    , ("buttonSub",   append "-")
    , ("buttonMul",   append "*")
    , ("buttonDiv",   append "/")
    , ("buttonLog",   overwrite "log(")
    , ("buttonLn",    overwrite "ln(")
    , ("buttonLeft",  overwrite "(")
    , ("buttonRight", overwrite ")")
    , ("buttonPoint", overwrite ".")
    , ("button0", overwrite "0")
    , ("button1", overwrite "1")
    , ("button2", overwrite "2")
    , ("button3", overwrite "3")
    , ("button4", overwrite "4")
    , ("button5", overwrite "5")
    , ("button6", overwrite "6")
    , ("button7", overwrite "7")
    , ("button8", overwrite "8")
    , ("button9", overwrite "9")]


textButtonBindings :: [(String, Label -> Bool -> IO ())]
textButtonBindings =
    [ ("buttonFact",  append "!")
    , ("buttonMod",   append "%")
    , ("buttonExp",   append "^")
    , ("buttonSciNot",append "*10^")
    , ("buttonNatExp",  append "e^")
    , ("buttonInv",   append "^-1")
    , ("buttonSqrt",  append "^0.5")
    , ("buttonAdd",   append "+")
    , ("buttonSub",   append "-")
    , ("buttonMul",   append "*")
    , ("buttonDiv",   append "/")
    , ("buttonLog",   overwrite "log(")
    , ("buttonLn",    overwrite "ln(")
    , ("buttonLeft",  overwrite "(")
    , ("buttonRight", overwrite ")")
    , ("buttonPoint", overwrite ".")
    , ("button0", overwrite "0")
    , ("button1", overwrite "1")
    , ("button2", overwrite "2")
    , ("button3", overwrite "3")
    , ("button4", overwrite "4")
    , ("button5", overwrite "5")
    , ("button6", overwrite "6")
    , ("button7", overwrite "7")
    , ("button8", overwrite "8")
    , ("button9", overwrite "9")]
textButtonBindings =
    [ ("buttonFact",  append "!")
    , ("buttonMod",   append "%")
    , ("buttonExp",   append "^")
    , ("buttonSciNot",append "*10^")
    , ("buttonNatExp",  append "e^")
    , ("buttonInv",   append "^-1")
    , ("buttonSqrt",  append "^0.5")
    , ("buttonAdd",   append "+")
    , ("buttonSub",   append "-")
    , ("buttonMul",   append "*")
    , ("buttonDiv",   append "/")
    , ("buttonLog",   overwrite "log(")
    , ("buttonLn",    overwrite "ln(")
    , ("buttonLeft",  overwrite "(")
    , ("buttonRight", overwrite ")")
    , ("buttonPoint", overwrite ".")
    , ("button0", overwrite "0")
    , ("button1", overwrite "1")
    , ("button2", overwrite "2")
    , ("button3", overwrite "3")
    , ("button4", overwrite "4")
    , ("button5", overwrite "5")
    , ("button6", overwrite "6")
    , ("button7", overwrite "7")
    , ("button8", overwrite "8")
    , ("button9", overwrite "9")]