#-----------------------------------------------------------------------------# Copyright (c) Anaconda, Inc., and Bokeh Contributors.# All rights reserved.## The full license is in the file LICENSE.txt, distributed with this software.#-----------------------------------------------------------------------------''''''#-----------------------------------------------------------------------------# Boilerplate#-----------------------------------------------------------------------------from__future__importannotationsimportlogging# isort:skiplog=logging.getLogger(__name__)#-----------------------------------------------------------------------------# Imports#-----------------------------------------------------------------------------# Standard library importsfromtypingimportAny# Bokeh importsfrom..core.enumsimportTextureRepetitionfrom..core.has_propsimportabstractfrom..core.propertiesimport(Enum,Image,Required,String,)from..modelimportModel#-----------------------------------------------------------------------------# Globals and constants#-----------------------------------------------------------------------------__all__=('CanvasTexture','ImageURLTexture','Texture',)#-----------------------------------------------------------------------------# General API#-----------------------------------------------------------------------------
[docs]@abstractclassTexture(Model):''' Base class for ``Texture`` models that represent fill patterns. '''# explicit __init__ to support Init signaturesdef__init__(self,*args:Any,**kwargs:Any)->None:super().__init__(*args,**kwargs)repetition=Enum(TextureRepetition,default="repeat",help=""" """)
[docs]classCanvasTexture(Texture):''' '''# explicit __init__ to support Init signaturesdef__init__(self,*args:Any,**kwargs:Any)->None:super().__init__(*args,**kwargs)code=Required(String,help=""" A snippet of JavaScript code to execute in the browser. """)
[docs]classImageURLTexture(Texture):''' '''# explicit __init__ to support Init signaturesdef__init__(self,*args:Any,**kwargs:Any)->None:super().__init__(*args,**kwargs)url=Required(Image,help=""" A URL to a drawable resource like image, video, etc. If provided with a file path, the file will be encoded using ``data:`` protocol (utf-8 encoding for ``*.svg`` and base64 for ``*.png`` and other binary formats). NumPy 2D arrays are also supported and use ``data:`` encoding as well. """)
#-----------------------------------------------------------------------------# Dev API#-----------------------------------------------------------------------------#-----------------------------------------------------------------------------# Private API#-----------------------------------------------------------------------------#-----------------------------------------------------------------------------# Code#-----------------------------------------------------------------------------