@@ -318,10 +318,9 @@ def __getitem__(self, key):
318318 def __setitem__ (self , key , value ):
319319 self .configure (** {key : value })
320320
321- def setup_style (self , bg = "#dddddd" , activebg = "#efefef" , pressedbg = "#c1c1c1" ,
322- fg = "black" , fieldbg = "white" , lightcolor = "#ededed" , darkcolor = "##cfcdc8" ,
323- bordercolor = "#888888" , focusbordercolor = "#5e5e5e" , selectbg = "#c1c1c1" ,
324- selectfg = "black" , unselectfg = "#999999" , disabledfg = "#999999" , disabledbg = "#dddddd" ):
321+ def setup_style (self , bg = None , activebg = None , pressedbg = None , fg = None , fieldbg = None , lightcolor = "#ededed" ,
322+ darkcolor = "#cfcdc8" , bordercolor = "#888888" , focusbordercolor = "#5e5e5e" , selectbg = None ,
323+ selectfg = None , unselectfg = "#999999" , disabledfg = None , disabledbg = None ):
325324 """
326325 Setups the style for the notebook.
327326 :param bg:
@@ -339,22 +338,24 @@ def setup_style(self, bg="#dddddd", activebg="#efefef", pressedbg="#c1c1c1",
339338 :param disabledfg:
340339 :param disabledbg:
341340 """
342- theme = {"bg" : bg ,
343- "activebg" : activebg ,
344- "pressedbg" : pressedbg ,
345- "fg" : fg ,
346- "fieldbg" : fieldbg ,
347- "lightcolor" : lightcolor ,
348- "darkcolor" : darkcolor ,
341+ style = ttk .Style (self )
342+
343+ theme = {"bg" : bg or style .lookup ("." , "background" , default = "#dddddd" ),
344+ "activebg" : activebg or style .lookup ("." , "background" , ("active" ,), default = "#efefef" ),
345+ "pressedbg" : pressedbg or style .lookup ("." , "selectbackground" , default = "#c1c1c1" ),
346+ "fg" : fg or style .lookup ("." , "foreground" , default = "black" ),
347+ "fieldbg" : fieldbg or style .lookup ("." , "fieldbackground" , default = "white" ),
348+ "lightcolor" : lightcolor or style .lookup ("." , "focuscolor" , default = "#ededed" ),
349+ "darkcolor" : darkcolor or style .lookup ("." , "throughcolor" , default = "#cfcdc8" ),
349350 "bordercolor" : bordercolor ,
350351 "focusbordercolor" : focusbordercolor ,
351- "selectbg" : selectbg ,
352- "selectfg" : selectfg ,
352+ "selectbg" : selectbg or style . lookup ( "." , "selectbackground" , default = "#c1c1c1" ) ,
353+ "selectfg" : selectfg or style . lookup ( "." , "selectforeground" , default = "black" ) ,
353354 "unselectedfg" : unselectfg ,
354- "disabledfg" : disabledfg ,
355- "disabledbg" : disabledbg }
355+ "disabledfg" : disabledfg or style . lookup ( "." , "foreground" , ( "disabled" ,), default = "#999999" ) ,
356+ "disabledbg" : disabledbg or style . lookup ( "." , "background" , ( "disabled" ,), default = "#dddddd" ) }
356357
357- self .images = (
358+ self .images = ( # Must be on self to keep reference
358359 tk .PhotoImage ("img_close" , data = """
359360 R0lGODlhCAAIAMIBAAAAADs7O4+Pj9nZ2Ts7Ozs7Ozs7Ozs7OyH+EUNyZWF0ZWQg
360361 d2l0aCBHSU1QACH5BAEKAAQALAAAAAAIAAgAAAMVGDBEA0qNJyGw7AmxmuaZhWEU
@@ -383,7 +384,6 @@ def setup_style(self, bg="#dddddd", activebg="#efefef", pressedbg="#c1c1c1",
383384 "darkcolor" : theme ["darkcolor" ],
384385 "troughcolor" : theme ["pressedbg" ]}
385386
386- style = ttk .Style (self )
387387 style .element_create ("close" , "image" , "img_close" ,
388388 ("active" , "pressed" , "!disabled" , "img_closepressed" ),
389389 ("active" , "!disabled" , "img_closeactive" ),
0 commit comments