diff --git a/ImageMetaTag/db.py b/ImageMetaTag/db.py index a3b2d85..9a56275 100644 --- a/ImageMetaTag/db.py +++ b/ImageMetaTag/db.py @@ -65,11 +65,11 @@ def read_img_info_from_dbfile(db_file, required_tags=None, tag_strings=None, ''' reads in the database written by write_img_to_dbfile - options: + Options: * required_tags - a list of image tags to return, and to fail if not all are present * tag_strings - an input list that will be populated with the unique values of the image tags. - returns: + Returns: * a list of filenames (payloads for the :class:`ImageMetaTag.ImageDict` class ) * a dictionary, by filename, containing a dictionary of the image metadata as *tagname: value* @@ -122,8 +122,8 @@ def merge_db_files(main_db_file, add_db_file, delete_add_db=False, delete_added_ The databases should have the same tags within them for the merge to work. Options: - * delete_add_db - if True, the added database file will be deleted afterwards - * delete_added_entries - if delete_add_db is False, this will keep the add_db_file + * delete_add_db - if True, the added database file will be deleted afterwards + * delete_added_entries - if delete_add_db is False, this will keep the add_db_file but remove the entries from it which were added to the main_db_file. This is useful if parallel processes are writing to the databases. It does nothing if delete_add_db is True. @@ -171,11 +171,11 @@ def open_or_create_db_file(db_file, img_info, restart_db=False, timeout=DEFAULT_ Opens a database file and sets up initial tables, then returns the connection and cursor. Arguments: - * db_file - the database file to open. - * img_info - a dictionary of image metadata to be saved to the database. + * db_file - the database file to open. + * img_info - a dictionary of image metadata to be saved to the database. Options: - * restart_db - when Truem this deletes the current db file and starts again, \ + * restart_db - when Truem this deletes the current db file and starts again, \ if it already exists. Returns an open database connection (dbcn) and cursor (dbcr) @@ -303,11 +303,12 @@ def process_select_star_from(db_contents, dbcr, required_tags=None, tag_strings= Converts the output from a select * from .... command into a standard output format Requires a database cursor (dbcr) to identify the field names. - Options + Options: * required_tags - a list of image tags to return, and to fail if not all are present * tag_strings - an input list that will be populated with the unique values of the image tags - returns as :func:`ImageMetaTag.db.read_img_info_from_dbfile`, but filtered accord to the select. + Returns: + as :func:`ImageMetaTag.db.read_img_info_from_dbfile`, but filtered accord to the select. * a list of filenames (payloads for the :class:`ImageMetaTag.ImageDict`) * a dictionary, by filename, containing a dictionary of the image metadata as *tagname: value* ''' @@ -578,26 +579,27 @@ def scan_dir_for_db(basedir, db_file, img_tag_req=None, subdir_excl_list=None, k the database by accident). Arguments: - * basedir - the directory to start scanning. - * db_file - the database file to save the image metadata to. A pre-existing database file\ + * basedir - the directory to start scanning. + * db_file - the database file to save the image metadata to. A pre-existing database file\ will fail unless restart_db is True - * img_tag_req - a list of tag names that are to be applied/created. Tags not in this list\ - will not be stored. Images without all of these tags are ignored. - * subdir_excl_list - a list of subdirectories that don't need to be scanned. ['thumbnail']\ - for instance, will prevent the image thumbnails being included. - * no_file_ext - logical to exclude the file extension in the filenames saved to the database. - * known_file_tags - if supplied, this is a dict (keyed by filename entry),\ - contains a dictionary of {filename: {tag name: value}} already known\ - (so you don't need to read them from the files themselves). This is very\ - if you have a old backup of a database file that needs updating. - * restart_db - if True, the db_file will be restarted as empty. - * verbose - verbose output. + Options: + * img_tag_req - a list of tag names that are to be applied/created. Tags not in this list\ + will not be stored. Images without all of these tags are ignored. + * subdir_excl_list - a list of subdirectories that don't need to be scanned. ['thumbnail']\ + for instance, will prevent the image thumbnails being included. + * no_file_ext - logical to exclude the file extension in the filenames saved to the database. + * known_file_tags - if supplied, this is a dict (keyed by filename entry),\ + contains a dictionary of {filename: {tag name: value}} already known\ + (so you don't need to read them from the files themselves). This is very\ + if you have a old backup of a database file that needs updating. + * restart_db - if True, the db_file will be restarted from an empty database. + * verbose - verbose output. ''' if os.path.isfile(db_file) and not restart_db: raise ValueError('''scan_dir_for_db will not work on a pre-existing file unless restart_db -is True, in which case the database file will be restarted. Use with care.''') +is True, in which case the database file will be restarted as empty. Use with care.''') if known_file_tags is not None: known_files = known_file_tags.keys() diff --git a/ImageMetaTag/webpage.py b/ImageMetaTag/webpage.py index aadcba5..58bc03f 100644 --- a/ImageMetaTag/webpage.py +++ b/ImageMetaTag/webpage.py @@ -64,7 +64,7 @@ def write_full_page(img_dict, filepath, title, page_filename=None, tab_s_name=No * postable : html text added after the ImageMetaTag section. * initial_selectors - A list of initial values for the selectors, to be passed into \ :func:`ImageMetaTag.webpage.write_js_setup`. - * show_selector_names - switches on diplsaying the selector full names defined by the \ + * show_selector_names - switches on displaying the selector full names defined by the \ :class:`ImageMetaTag.ImageDict`.full_name_mapping * url_type - determines the type of URL at the bottom of the ImageMetaTag section. Can be \ 'int' or 'str'. @@ -243,8 +243,14 @@ def write_full_page(img_dict, filepath, title, page_filename=None, tab_s_name=No level_names = img_dict.level_names else: level_names = False + # if we're labelling selectors, and we have an animator button, label that too: + if img_dict.selector_animated > 1 and show_selector_names: + anim_level = level_names[img_dict.selector_animated] + else: + anim_level = None write_js_placeholders(file_obj=out_file, dict_depth=img_dict.dict_depth(), - style=style, level_names=level_names) + style=style, level_names=level_names, + animated_level=anim_level) # the body is done, so the postamble comes in: if not postamble is None: out_file.write(postamble + '\n') @@ -454,7 +460,8 @@ def write_json(img_dict, json_file): json_file.write(out_str) def write_js_placeholders(file_obj=None, dict_depth=None, selector_prefix=None, - style='horiz dropdowns', level_names=False): + style='horiz dropdowns', level_names=False, + animated_level=None): ''' Writes the placeholders into the page body, for the javascript to manipulate @@ -466,6 +473,7 @@ def write_js_placeholders(file_obj=None, dict_depth=None, selector_prefix=None, they are always horizontal dropdown menus: 'horiz dropdowns'. * level_names - if supplied, this need to be a list of full names, for the selectors, of \ length dict_depth. + * animated_level - if supplied, as a string, this will be used to label the animator buttons. ''' if selector_prefix is None: @@ -488,6 +496,12 @@ def write_js_placeholders(file_obj=None, dict_depth=None, selector_prefix=None,
This submodule contains the ImageMetaTag.ImageDict class, and functions for preparing them.
-The purpose of an ImageMetaTag.ImageDict is to sort the image metadata, supplied to +
The purpose of an ImageMetaTag.ImageDict is to sort the image metadata, supplied to ImageMetaTag.savefig() and usually stored in a database file, into a useful form that can quickly and easily be presented as a webpage by ImageMetaTag.webpage.write_full_page().
An easy example of creating a webpage, using an ImageDict is shown in diff --git a/docs/build/html/_modules/ImageMetaTag/db.html b/docs/build/html/_modules/ImageMetaTag/db.html index 751b343..fb96d24 100644 --- a/docs/build/html/_modules/ImageMetaTag/db.html +++ b/docs/build/html/_modules/ImageMetaTag/db.html @@ -135,11 +135,11 @@
'''
reads in the database written by write_img_to_dbfile
- options:
+ Options:
* required_tags - a list of image tags to return, and to fail if not all are present
* tag_strings - an input list that will be populated with the unique values of the image tags.
- returns:
+ Returns:
* a list of filenames (payloads for the :class:`ImageMetaTag.ImageDict` class )
* a dictionary, by filename, containing a dictionary of the image metadata as *tagname: value*
@@ -192,8 +192,8 @@ Source code for ImageMetaTag.db
The databases should have the same tags within them for the merge to work.
Options:
- * delete_add_db - if True, the added database file will be deleted afterwards
- * delete_added_entries - if delete_add_db is False, this will keep the add_db_file
+ * delete_add_db - if True, the added database file will be deleted afterwards
+ * delete_added_entries - if delete_add_db is False, this will keep the add_db_file
but remove the entries from it which were added to the main_db_file.
This is useful if parallel processes are writing to the databases.
It does nothing if delete_add_db is True.
@@ -239,15 +239,15 @@ Source code for ImageMetaTag.db
[docs]def open_or_create_db_file(db_file, img_info, restart_db=False, timeout=DEFAULT_DB_TIMEOUT):
'''
Opens a database file and sets up initial tables, then returns the connection and cursor.
-
+
Arguments:
- * db_file - the database file to open.
- * img_info - a dictionary of image metadata to be saved to the database.
+ * db_file - the database file to open.
+ * img_info - a dictionary of image metadata to be saved to the database.
Options:
- * restart_db - when Truem this deletes the current db file and starts again, \
+ * restart_db - when Truem this deletes the current db file and starts again, \
if it already exists.
-
+
Returns an open database connection (dbcn) and cursor (dbcr)
'''
@@ -271,7 +271,7 @@ Source code for ImageMetaTag.db
[docs]def open_db_file(db_file, timeout=DEFAULT_DB_TIMEOUT):
'''
Just opens an existing db_file, using timeouts but no retries.
-
+
Returns an open database connection (dbcn) and cursor (dbcr)
'''
@@ -373,11 +373,12 @@ Source code for ImageMetaTag.db
Converts the output from a select * from .... command into a standard output format
Requires a database cursor (dbcr) to identify the field names.
- Options
+ Options:
* required_tags - a list of image tags to return, and to fail if not all are present
* tag_strings - an input list that will be populated with the unique values of the image tags
- returns as :func:`ImageMetaTag.db.read_img_info_from_dbfile`, but filtered accord to the select.
+ Returns:
+ as :func:`ImageMetaTag.db.read_img_info_from_dbfile`, but filtered accord to the select.
* a list of filenames (payloads for the :class:`ImageMetaTag.ImageDict`)
* a dictionary, by filename, containing a dictionary of the image metadata as *tagname: value*
'''
@@ -578,7 +579,7 @@ Source code for ImageMetaTag.db
[docs]def select_dbfile_by_tags(db_file, select_tags):
'''
Selects from a database file the entries that match a dict of field names/acceptable values.
-
+
Returns the output, processed by :func:`ImageMetaTag.db.process_select_star_from`
'''
if db_file is None:
@@ -643,31 +644,32 @@ Source code for ImageMetaTag.db
This should only be used to build a database from a directory of tagged images that
did not previously use a database, or where the database file has been deleted but the
images have not.
-
+
For optimal performance, build the database as the plots are created (or do not delete
the database by accident).
-
+
Arguments:
- * basedir - the directory to start scanning.
- * db_file - the database file to save the image metadata to. A pre-existing database file\
+ * basedir - the directory to start scanning.
+ * db_file - the database file to save the image metadata to. A pre-existing database file\
will fail unless restart_db is True
- * img_tag_req - a list of tag names that are to be applied/created. Tags not in this list\
- will not be stored. Images without all of these tags are ignored.
- * subdir_excl_list - a list of subdirectories that don't need to be scanned. ['thumbnail']\
- for instance, will prevent the image thumbnails being included.
- * no_file_ext - logical to exclude the file extension in the filenames saved to the database.
- * known_file_tags - if supplied, this is a dict (keyed by filename entry),\
- contains a dictionary of {filename: {tag name: value}} already known\
- (so you don't need to read them from the files themselves). This is very\
- if you have a old backup of a database file that needs updating.
- * restart_db - if True, the db_file will be restarted as empty.
- * verbose - verbose output.
+ Options:
+ * img_tag_req - a list of tag names that are to be applied/created. Tags not in this list\
+ will not be stored. Images without all of these tags are ignored.
+ * subdir_excl_list - a list of subdirectories that don't need to be scanned. ['thumbnail']\
+ for instance, will prevent the image thumbnails being included.
+ * no_file_ext - logical to exclude the file extension in the filenames saved to the database.
+ * known_file_tags - if supplied, this is a dict (keyed by filename entry),\
+ contains a dictionary of {filename: {tag name: value}} already known\
+ (so you don't need to read them from the files themselves). This is very\
+ if you have a old backup of a database file that needs updating.
+ * restart_db - if True, the db_file will be restarted from an empty database.
+ * verbose - verbose output.
'''
if os.path.isfile(db_file) and not restart_db:
- raise ValueError('''scan_dir_for_db will not work on a pre-existing file unless restart_db is True,
-in which case the database file will be restarted. Use with care.''')
+ raise ValueError('''scan_dir_for_db will not work on a pre-existing file unless restart_db
+is True, in which case the database file will be restarted as empty. Use with care.''')
if known_file_tags is not None:
known_files = known_file_tags.keys()
diff --git a/docs/build/html/_modules/ImageMetaTag/webpage.html b/docs/build/html/_modules/ImageMetaTag/webpage.html
index 1b34f47..0400ca0 100644
--- a/docs/build/html/_modules/ImageMetaTag/webpage.html
+++ b/docs/build/html/_modules/ImageMetaTag/webpage.html
@@ -134,7 +134,7 @@ Source code for ImageMetaTag.webpage
* postable : html text added after the ImageMetaTag section.
* initial_selectors - A list of initial values for the selectors, to be passed into \
:func:`ImageMetaTag.webpage.write_js_setup`.
- * show_selector_names - switches on diplsaying the selector full names defined by the \
+ * show_selector_names - switches on displaying the selector full names defined by the \
:class:`ImageMetaTag.ImageDict`.full_name_mapping
* url_type - determines the type of URL at the bottom of the ImageMetaTag section. Can be \
'int' or 'str'.
@@ -313,8 +313,14 @@ Source code for ImageMetaTag.webpage
level_names = img_dict.level_names
else:
level_names = False
+ # if we're labelling selectors, and we have an animator button, label that too:
+ if img_dict.selector_animated > 1 and show_selector_names:
+ anim_level = level_names[img_dict.selector_animated]
+ else:
+ anim_level = None
write_js_placeholders(file_obj=out_file, dict_depth=img_dict.dict_depth(),
- style=style, level_names=level_names)
+ style=style, level_names=level_names,
+ animated_level=anim_level)
# the body is done, so the postamble comes in:
if not postamble is None:
out_file.write(postamble + '\n')
@@ -524,7 +530,8 @@ Source code for ImageMetaTag.webpage
json_file.write(out_str)
[docs]def write_js_placeholders(file_obj=None, dict_depth=None, selector_prefix=None,
- style='horiz dropdowns', level_names=False):
+ style='horiz dropdowns', level_names=False,
+ animated_level=None):
'''
Writes the placeholders into the page body, for the javascript to manipulate
@@ -536,6 +543,7 @@ Source code for ImageMetaTag.webpage
they are always horizontal dropdown menus: 'horiz dropdowns'.
* level_names - if supplied, this need to be a list of full names, for the selectors, of \
length dict_depth.
+ * animated_level - if supplied, as a string, this will be used to label the animator buttons.
'''
if selector_prefix is None:
@@ -558,6 +566,12 @@ Source code for ImageMetaTag.webpage
<tr>
<td>
<font size=3>''')
+ # a text label for the animator buttons:
+ if isinstance(animated_level, str):
+ anim_label = '{}: '.format(animated_level)
+ else:
+ anim_label = ''
+
# for each level of depth in the plot dictionary, add a span to hold the selector:
if apply_level_names:
# if we want labelled selectors, then write out
@@ -580,12 +594,12 @@ Source code for ImageMetaTag.webpage
# add the placeholder for animators buttons:
file_obj.write(''' <tr>
<td colspan={}>
- <span id="animator1"> </span>
+ {}<span id="animator1"> </span>
<span id="animator2"> </span>
</td>
</tr>
</table>
-'''.format(dict_depth))
+'''.format(dict_depth, anim_label))
else:
# simply a set of spans, in a line:
for lev in range(dict_depth):
@@ -594,10 +608,10 @@ Source code for ImageMetaTag.webpage
file_obj.write('\n <br>')
# add the placeholder for animators buttons:
file_obj.write('''
- <span id="animator1"> </span>
+ {}<span id="animator1"> </span>
<span id="animator2"> </span>
<br>
- ''')
+ '''.format(anim_label))
# now add somewhere for the image to go:
file_obj.write(''' <div id="the_image">Please wait while the page is loading</div>
diff --git a/docs/build/html/db.html b/docs/build/html/db.html
index 36922a3..7425265 100644
--- a/docs/build/html/db.html
+++ b/docs/build/html/db.html
@@ -140,13 +140,13 @@ Commonly used functionsImageMetaTag.db.read_img_info_from_dbfile(db_file, required_tags=None, tag_strings=None, db_timeout=6, db_attempts=20)[source]¶
reads in the database written by write_img_to_dbfile
-- options:
+- Options:
- required_tags - a list of image tags to return, and to fail if not all are present
- tag_strings - an input list that will be populated with the unique values of the image tags.
-- returns:
+- Returns:
- a list of filenames (payloads for the ImageMetaTag.ImageDict class )
- a dictionary, by filename, containing a dictionary of the image metadata as tagname: value
@@ -189,11 +189,19 @@ Functions for opening/creating db files
ImageMetaTag.db.open_or_create_db_file(db_file, img_info, restart_db=False, timeout=6)[source]¶
Opens a database file and sets up initial tables, then returns the connection and cursor.
-Arguments:
-* db_file - the database file to open.
-* img_info - a dictionary of image metadata to be saved to the database.
-Options:
-* restart_db - when Truem this deletes the current db file and starts again, if it already exists.
+
+- Arguments:
+
+- db_file - the database file to open.
+- img_info - a dictionary of image metadata to be saved to the database.
+
+
+- Options:
+
+- restart_db - when Truem this deletes the current db file and starts again, if it already exists.
+
+
+
Returns an open database connection (dbcn) and cursor (dbcr)
@@ -272,19 +280,21 @@ Internal functions
-Options
+Options:
- required_tags - a list of image tags to return, and to fail if not all are present
- tag_strings - an input list that will be populated with the unique values of the image tags
-returns as ImageMetaTag.db.read_img_info_from_dbfile(), but filtered accord to the select.
-
+
+Returns:
+as ImageMetaTag.db.read_img_info_from_dbfile(), but filtered accord to the select.
+
+
- a list of filenames (payloads for the ImageMetaTag.ImageDict)
- a dictionary, by filename, containing a dictionary of the image metadata as tagname: value
-
-
+
@@ -300,17 +310,24 @@ Utility functions
-img_tag_req - a list of tag names that are to be applied/created. Tags not in this list will not be stored. Images without all of these tags are ignored.
-subdir_excl_list - a list of subdirectories that don’t need to be scanned. [‘thumbnail’] for instance, will prevent the image thumbnails being included.
+
+- Arguments:
+
+- basedir - the directory to start scanning.
+- db_file - the database file to save the image metadata to. A pre-existing database file will fail unless restart_db is True
+
+
+- Options:
+
+- img_tag_req - a list of tag names that are to be applied/created. Tags not in this list will not be stored. Images without all of these tags are ignored.
+- subdir_excl_list - a list of subdirectories that don’t need to be scanned. [‘thumbnail’] for instance, will prevent the image thumbnails being included.
- no_file_ext - logical to exclude the file extension in the filenames saved to the database.
-- known_file_tags - if supplied, this is a dict (keyed by filename entry), contains a dictionary of {filename: {tag name: value}} already known (so you don’t need to read them from the files themselves). This is very if you have a old backup of a database file that needs updating.
-- restart_db - if True, the db_file will be restarted as empty.
+- known_file_tags - if supplied, this is a dict (keyed by filename entry), contains a dictionary of {filename: {tag name: value}} already known (so you don’t need to read them from the files themselves). This is very if you have a old backup of a database file that needs updating.
+- restart_db - if True, the db_file will be restarted from an empty database.
- verbose - verbose output.
+
+
diff --git a/docs/build/html/objects.inv b/docs/build/html/objects.inv
index a317bbb..778ced0 100644
Binary files a/docs/build/html/objects.inv and b/docs/build/html/objects.inv differ
diff --git a/docs/build/html/searchindex.js b/docs/build/html/searchindex.js
index dd78ce2..b4ca6b3 100644
--- a/docs/build/html/searchindex.js
+++ b/docs/build/html/searchindex.js
@@ -1 +1 @@
-Search.setIndex({envversion:42,terms:{represent:3,all:[5,0,1,4],code:[6,0,7],nwp:6,consider:4,skip:6,focus:1,initial_selector:3,prefix:3,sleep:4,per:1,follow:[3,5,4,2],return_tim:4,row:4,depend:[3,5],allow_retri:4,imagemetatagtest:6,dbcr:4,dbcn:4,those:[3,7],under:0,leav:1,worth:4,sourc:[3,0,4],string:[1,4],fals:[3,5,1,4],than:3,diplsai:3,selector_anim:1,veri:[1,4],tagnam:[1,4],brows:[3,6,1],dict_union:1,page_filenam:[3,7],level:[5,7,1],write_full_pag:[3,7,1],overid:4,list:[3,5,1,4,7],iter:1,"try":4,item:1,public_html:6,parallelis:[6,1],write_img_to_dbfil:[5,4],prevent:4,define_imt_db:7,smaller:5,this_set_of_ind:1,plot_dict:1,crop:[5,0],sign:7,second:[5,1,4],cost:4,pass:[3,5,1,4],write_js_setup:3,append:[7,1],index:[0,1],what:[7,1],disk:4,dict1:1,sub:[3,1],dict2:1,section:[3,1],abl:3,current:[3,5,1,6,4],delet:4,version:1,rgba:5,"new":[5,1],method:[5,1],metadata:[1,4],pagenam:3,full:[3,1],themselv:4,iteritem:7,gener:1,info_key_to_db_nam:4,here:[6,1],bodi:3,met:6,tagg:5,path:[3,1,4],standard:[5,4],mergedict:1,valu:[3,5,1,4,7],url_typ:3,convert:[1,4],convers:5,larger:[3,6,1],datetim:7,def:7,action:6,chang:5,n_slpit:1,appli:[5,4],modul:[0,1,2,3,4,5,6],readmeta_from_imag:1,filenam:[3,5,4],visibl:3,post:[5,0],select:[3,4],plot:[6,7,1,4],from:[5,7,1,4],describ:[6,1],would:[3,5,1],memori:[7,4],give:1,page_titl:7,few:[0,4],call:1,type:[3,7,1],webpage_preambl:7,more:[3,0],sort:[7,1],flat:1,desir:5,peopl:3,claus:0,warn:4,accept:[5,4],particular:1,known:4,date_format_www:7,wegbpag:7,hold:1,logo_fil:5,must:1,accid:4,none:[3,5,1,4,7],scalabl:6,work:1,uniqu:[1,4],tag_nam:[5,4],can:[0,1,3,4,5,6,7],purpos:1,simple_dict:1,control:5,vals_at_depth:1,process:[5,0,1,6,4],lock:4,indic:1,tag:[1,4],want:[7,1],logo_pad:5,occur:1,ratio:5,alwai:[3,5],surfac:1,multipl:[6,1],turn:7,rather:3,anoth:1,ordinari:1,restart:4,write:[5,6,4],how:[6,7],subdirectori:[1,4],instead:6,simpl:[7,1],updat:4,key_at_depth:1,max:1,after:[3,5,1,4],write_js_to_head:3,gcc:2,befor:[3,5],date:1,end:1,associ:[1,4],parallel:7,demonstr:6,"short":3,attempt:[5,1,4],practic:7,third:1,light:5,filepath:3,element:1,inform:3,"switch":[3,5],maintain:[5,4],allow:4,suggest:4,page_para:6,order:[7,1],move:[3,1],becaus:1,in_list:1,held:[3,4],open_or_create_db_fil:4,img_fil:[7,1],style:3,group:1,file_dir:3,db_file:[5,4],brook:7,do_vacuum:4,offic:6,imt:7,extenst:4,simplest_image_dict:[3,1],main:[5,6],pixel:5,them:[6,7,1,4],good:5,"return":[3,7,1,4],thei:[3,5,1,7],python:6,databs:7,initi:[3,4],"break":1,now:[3,7],tabnam:3,img_list:7,term:1,dict_split:1,name:[3,5,1,4],url_separ:3,config:3,json_fil:3,revers:1,did:4,legend:5,timeout:[5,4],each:[7,1],db_timeout:[5,4],mean:1,regener:1,replac:4,chunk:1,logo_po:5,copy_except_dict_and_kei:1,expect:[7,1],logo:[5,0],todo:5,special:1,out:3,variabl:3,do_trim:5,shown:[3,1],basedir:4,primari:5,content:[7,0,1],optim:4,adapt:5,rel:[3,1,4],print:7,factori:6,red:2,indidividu:[],freb:6,manipul:[3,0,5],differ:[3,5,1],ineffici:4,base:3,dictionari:[5,0,1,4,7],releas:0,img_info:[7,1,4],afterward:1,mimic:6,indent:[3,1],could:[3,5],img_filenam:4,british:0,keep:7,filter:[5,1,4],thing:[7,1],length:3,ish:4,organis:1,licens:0,first:[3,1],oper:4,required_tag:[7,4],upper:5,onc:[6,0,4],number:[0,1,5,4,7,6],placehold:3,restrict:1,mai:4,alreadi:[3,5,4],done:3,wrapper:[],miss:[3,1],payload:[1,4],size:[5,1],given:[3,0,1,5],raise_key_mismatch:1,script:[3,6],data:[3,6],top:[3,5,7],messag:3,show:[3,7],licenc:0,"final":1,store:[5,1,4],option:[5,0,1,4],dict_print:1,copi:[3,1,4],specifi:[5,1],selector:[3,1],devmod:1,part:[6,1],mostli:1,moder:5,dict_remov:1,imt_db:7,png:[5,0],skip_key_relist:1,target:[3,1],keyword:3,provid:4,copy_required_javascript:3,remov:1,tree:3,zero:5,structur:0,del_plots_from_dbfil:4,wepag:[3,6],str:3,posit:5,webdir:7,postambl:[3,7],pre:[5,4],explicitli:0,sai:3,img_dict:[3,7],attempt_replac:4,ani:4,packag:0,width:[5,1],have:[6,0,1,4,7],tabl:4,need:[3,5,1,4],"null":1,border:[5,7],optimis:5,show_selector_nam:3,built:[0,4],latter:3,reverse_sort:[7,1],also:[0,1,3,4,5,6],without:[6,4],take:4,which:[3,0,1,4],singl:[3,1],simplifi:5,unless:[0,4],thi:[1,3,4,5,6,7],normal:4,strcutur:3,object:[3,0,1,6],compress:[5,7,1],most:4,regular:4,pair:[5,1,4],keep_open:5,select_dbfile_by_tag:4,animation_direct:1,simplest_img_dict:[],url:3,no_file_ext:4,request:4,input_dict:1,doe:[5,6,1,4],strucutur:3,clean:[1,4],left:5,preambl:[3,7],pyplot:5,scan_dir_for_db:4,text:[3,5,7],random:6,corner:5,find:1,untermin:1,involv:0,absolut:4,onli:[3,5,1,6,4],slow:1,locat:[3,1,4],copyright:0,menu:3,activ:1,state:0,should:[6,1,4],heirachi:[7,1],dict:[6,1,4],templat:3,read_img_info_from_dbcursor:4,tab_s_nam:3,write_json:3,mergdict:1,overwritten:3,restart_db:4,palett:[5,0],get:1,stop:1,soon:3,aim:7,simple_dict_filt:1,report:[5,4],edg:5,requir:[3,1,4],prune:1,truem:4,dpt:1,page_multi:6,yield:1,select_dbcr_by_tag:4,check_for_required_kei:1,common:0,contain:[3,5,1,4],where:[6,1,4],dpi:5,view:[3,6],return_from_list:1,set:[3,6,1,4,7],dump:3,frame:3,see:[5,7],rgb:5,result:1,arg:5,fail:4,close:5,horizont:3,full_name_map:3,best:[5,7],selector_width:1,crown:0,hopefulli:3,databas:1,someth:4,dropdown:3,nopt:4,written:[3,6,4],restructur:4,subdir:1,simplest:7,"import":[6,7],thumbnail:[5,4],db_attempt:[5,4],altern:1,accord:[7,1,4],kei:[7,1,4],numer:[7,1],javascript:3,dicts_prun:1,extens:[3,5,4],malcolmbrook:7,dict_index_arrai:1,matplotlib:[5,0],outfil:5,db_content:4,horiz:3,popul:4,verbos:[3,5,1,4],both:[1,4],last:1,only_show_rel_url:3,equal:1,against:1,etc:[7,1],instanc:[3,5,4],context:5,logic:[1,4],com:7,strftime:7,load:[3,7,4],figur:[5,4],color:[7,1],malcolm:7,compelt:1,header:3,db_name_to_info_kei:4,image_file_postproc:5,suppli:[3,5,1,4,7],dict_heirachy_from_list:[7,1],animation_dicrect:1,duplic:4,quit:3,coupl:7,union:1,rm_dict:1,empti:[7,1,4],sinc:1,compon:[],json:3,much:[5,6,1,4,7],basic:[5,6],n_split:1,addit:0,valueerror:4,quickli:[5,1],write_intmed_tmpfil:3,imag:[1,4],resolut:5,search:0,argument:[5,4],req_kei:1,togeth:1,els:7,sort_kei:[7,1],open_db_fil:4,present:[1,4],"case":[1,4],dict_dept:3,properti:1,write_img_to_open_db:4,cursor:4,defin:[3,5,4,7],"while":[7,1],heirach:[0,1],occas:4,reverse_numer:[7,1],layer:1,do_thumb:5,stdout:3,keys_by_depth:1,"__main__":7,therefor:7,itself:4,minim:7,perform:4,extra_opt:1,make:[7,4],cross:1,same:[6,7],images_and_tag:7,member:6,read:[3,0,1,4,7],html:[3,6,1,7],pad:5,split:1,sqlite3:4,complet:[3,7],http:[6,7],denot:3,process_select_star_from:4,upon:3,antialias:5,postabl:3,rais:1,temporari:[3,7],build:[1,4],metadata7:3,tag_str:[7,4],lower:5,appropri:3,off:7,entri:4,colour:[5,0],well:5,anim:1,exampl:[3,1],command:[6,4],return_key_ind:1,outstr:1,file_obj:3,write_js_placehold:3,usual:[1,4],construct:[3,7],identifi:4,just:[3,7,1,4],savefig:[1,4],when:[3,1,4],exclud:4,rest:1,"__path__":7,aspect:5,previous:4,web:[5,0,1,7],subdir_excl_list:4,easi:[3,1],field:4,new_dict:1,except:[5,1],add:[5,0,4],other:[1,4],trim_bord:5,selector_prefix:3,input:[3,5,1,4],save:4,hat:2,match:[1,4],skip_warn:4,img_tag_req:4,around:[5,0],format:[5,0,4,7],webpag:[6,1],big:6,submodul:1,read_img_info_from_dbfil:[7,4],bit:5,characterist:1,recurs:1,list_keys_by_depth:1,scan:4,like:1,specif:[1,4],whitespac:5,integ:[5,1],shrink:5,out_arrai:1,"true":[3,5,1,4],either:[3,4],sql:0,output:[3,5,1,4],resiz:5,page:[6,1],www:6,right:5,old:4,often:1,add_strict:4,some:7,js_file:3,flatten:1,meterolog:1,guess:5,librari:[3,0],read_db_file_to_mem:4,logo_width:5,easili:[0,1],assum:1,avoid:4,level_nam:[3,1],whole:[],usaulli:5,retri:4,larg:[0,1,4],three:1,refer:[1,4],run:6,usag:4,great:3,"__name__":7,dct:1,dict_depth:[3,1],dropdownmenu:3,ascend:1,actual:[3,6],simul:1,act:6,upward:1,backup:4,produc:[0,1,3,4,5,6,7],routin:[7,1,4],uniform_depth:1,effici:7,primarili:4,within:[3,6,1],invers:4,bsd:0,in_str:4,been:[6,0,1,4,2],storag:5,flatten_list:1,img_tag:[5,7],manag:0,accordingli:1,wai:[5,7,1],aren:4,support:[5,0],overwrit:[3,5],avail:3,start:[1,4],includ:[5,0,1,6,4],lot:[7,4],forward:1,select_tag:4,tmp_dict:7,files:[5,0],get_webdir:7,form:1,tupl:[5,1],histogram:1,github:[7,0],link:[3,6],don:4,line:[3,1],webpage_postambl:7,sort_method:[7,1],heavi:5,made:3,consist:[7,4],possibl:7,whether:1,iteself:5,access:[5,4],maximum:5,otherwis:4,problem:4,similar:[3,1],connect:4,trim:[5,7,1],linux2:2,alongsid:3,creat:1,"int":3,repres:1,exist:4,file:1,home:6,ind:3,check:[3,1],assembl:7,again:4,moduleauthor:7,titl:[3,7],tip:1,detail:[0,1],intend:4,"default":[3,5,1,4],valid:[3,1],futur:3,branch:1,test:[1,4],you:[1,4],roll:[7,1],size_split:1,determin:3,in_dict:1,img_convert:5,reduc:[5,0,4],backward:1,"250k":4,faster:[1,4],directori:[3,6,4,7],bottom:[3,7],descript:[3,1],dict_prun:1,depth:[3,1],ignor:4,known_file_tag:4,time:[6,1,4],far:1,img_format:[5,1]},objtypes:{"0":"py:module","1":"py:function","2":"py:method","3":"py:class"},objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"],"2":["py","method","Python method"],"3":["py","class","Python class"]},filenames:["index","ImageDict","versions","webpage","db","savefig","test","simple"],titles:["ImageMetaTag - Image metadata tagging and presentation","ImageMetaTag.ImageDict","Versions of Python","ImageMetaTag.webpage","ImageMetaTag.db","ImageMetaTag.savefig","ImageMetaTag - test.py","ImageMetaTag - simplest_img_dict.py"],objects:{"":{ImageMetaTag:[0,0,0,"-"]},"ImageMetaTag.webpage":{write_full_page:[3,1,1,""],copy_required_javascript:[3,1,1,""],write_js_placeholders:[3,1,1,""],write_js_to_header:[3,1,1,""],write_json:[3,1,1,""]},"ImageMetaTag.ImageDict":{return_from_list:[1,2,1,""],key_at_depth:[1,2,1,""],dict_index_array:[1,2,1,""],copy_except_dict_and_keys:[1,2,1,""],mergedicts:[1,2,1,""],dict_print:[1,2,1,""],keys_by_depth:[1,2,1,""],dict_remove:[1,2,1,""],flatten_lists:[1,2,1,""],remove:[1,2,1,""],dict_prune:[1,2,1,""],return_key_inds:[1,2,1,""],append:[1,2,1,""],dict_depths:[1,2,1,""],dict_depth:[1,2,1,""],sort_keys:[1,2,1,""],dict_union:[1,2,1,""],list_keys_by_depth:[1,2,1,""]},ImageMetaTag:{ImageDict:[1,3,1,""],dict_split:[1,1,1,""],simple_dict_filter:[1,1,1,""],savefig:[5,1,1,""],webpage:[3,0,0,"-"],readmeta_from_image:[1,1,1,""],db:[4,0,0,"-"],img_dict:[1,0,0,"-"],image_file_postproc:[5,1,1,""],check_for_required_keys:[1,1,1,""],dict_heirachy_from_list:[1,1,1,""]},"ImageMetaTag.db":{del_plots_from_dbfile:[4,1,1,""],info_key_to_db_name:[4,1,1,""],read_db_file_to_mem:[4,1,1,""],db_name_to_info_key:[4,1,1,""],write_img_to_open_db:[4,1,1,""],process_select_star_from:[4,1,1,""],select_dbcr_by_tags:[4,1,1,""],scan_dir_for_db:[4,1,1,""],write_img_to_dbfile:[4,1,1,""],select_dbfile_by_tags:[4,1,1,""],open_or_create_db_file:[4,1,1,""],read_img_info_from_dbcursor:[4,1,1,""],read_img_info_from_dbfile:[4,1,1,""],open_db_file:[4,1,1,""]}},titleterms:{creat:4,savefig:5,imagemetatag:[0,1,3,4,5,6,7],indic:0,intern:4,tag:0,file:4,tabl:0,open:4,compon:3,databas:4,wrapper:5,write:3,webpag:3,version:2,test:6,metadata:0,"function":[5,1,4],indidividu:3,python:2,imag:0,util:4,"class":1,present:0,imagedict:1,simplest_img_dict:7,prepar:1,work:4,other:5,whole:3,page:3,commonli:4}})
\ No newline at end of file
+Search.setIndex({envversion:42,terms:{represent:3,all:[5,0,1,4],code:[6,0,7],nwp:6,consider:4,skip:6,focus:1,initial_selector:3,prefix:3,sleep:4,per:1,follow:[3,5,4,2],return_tim:4,row:4,depend:[3,5],allow_retri:4,imagemetatagtest:6,dbcr:4,dbcn:4,present:[],under:0,larg:[0,1,4],worth:4,sourc:[3,0,4],string:[3,1,4],fals:[3,5,1,4],diplsai:[],selector_anim:1,veri:[1,4],tagnam:[1,4],db_file:[5,4],dict_union:1,page_filenam:[3,7],level:[5,7,1],write_full_pag:[3,7,1],roll:[7,1],button:3,overid:4,list:[3,5,1,4,7],iter:1,"try":4,item:1,public_html:6,parallelis:[6,1],write_img_to_dbfil:[5,4],prevent:4,define_imt_db:7,smaller:5,this_set_of_ind:1,plot_dict:1,crop:[5,0],sign:7,second:[5,1,4],cost:4,pass:[3,5,1,4],write_js_setup:3,append:[7,1],index:[0,1],what:[7,1],disk:4,dict1:1,sub:[3,1],dict2:1,section:[3,1],abl:3,current:[3,5,1,6,4],delet:4,version:[],rgba:5,"new":[5,1],method:[5,1],metadata:[],involv:0,full:[3,1],themselv:4,iteritem:7,gener:1,here:[6,1],bodi:3,met:6,tagg:5,cursor:4,path:[3,1,4],ineffici:4,sinc:1,valu:[3,5,1,4,7],level_nam:[3,1],convert:[1,4],convers:5,slow:1,larger:[3,6,1],datetim:7,def:7,within:[3,6,1],action:6,chang:5,n_slpit:1,size_split:1,appli:[5,4],modul:[0,1,2,3,4,5,6],readmeta_from_imag:1,filenam:[3,5,4],visibl:3,should:[6,1,4],dct:1,select:[3,4],plot:[6,7,1,4],from:[5,7,1,4],describ:[6,1],would:[3,5,1],memori:[7,4],give:1,page_titl:7,few:[0,4],call:1,scan_dir_for_db:4,type:[3,7,1],start:[1,4],webpage_preambl:7,more:[3,0],sort:[7,1],flat:1,desir:5,peopl:3,claus:0,warn:4,depth:[3,1],accept:[5,4],particular:1,known:4,date_format_www:7,wegbpag:7,hold:1,logo_fil:5,must:1,accid:4,none:[3,5,1,4,7],scalabl:6,work:[],uniqu:[1,4],tag_nam:[5,4],can:[0,1,3,4,5,6,7],purpos:1,simple_dict:1,control:5,vals_at_depth:1,process:[5,0,1,6,4],lock:4,indic:[],tag:[],want:[7,1],logo_pad:5,occur:1,alwai:[3,5],surfac:1,multipl:[6,1],turn:7,rather:3,anoth:1,ordinari:1,write:6,how:[6,7],subdirectori:[1,4],instead:6,config:3,updat:4,regener:1,max:1,after:[3,5,1,4],write_js_to_head:3,gcc:2,befor:[3,5],mai:4,end:1,data:[3,6],parallel:7,demonstr:6,tmp_dict:7,"short":3,attempt:[5,1,4],practic:7,third:1,light:5,filepath:3,element:1,inform:3,"switch":[3,5],maintain:[5,4],allow:4,extra_opt:1,first:[3,1],order:[7,1],move:[3,1],becaus:1,in_list:1,held:[3,4],open_or_create_db_fil:4,style:3,group:1,file_dir:3,brows:[3,6,1],brook:7,do_vacuum:4,offic:6,imt:7,extenst:4,simplest_image_dict:[3,1],main:[5,6],pixel:5,them:[6,7,1,4],good:5,"return":[3,7,1,4],thei:[3,5,1,7],python:6,databs:7,initi:[3,4],"break":1,now:[3,7],tabnam:3,img_list:7,term:1,dict_split:1,name:[3,5,1,4],url_separ:3,simpl:[7,1],json_fil:3,revers:1,did:4,timeout:[5,4],each:[7,1],db_timeout:[5,4],mean:1,key_at_depth:1,replac:4,chunk:1,logo_po:5,copy_except_dict_and_kei:1,expect:[7,1],logo:[5,0],todo:5,special:1,out:3,variabl:3,do_trim:5,shown:[3,1],storag:5,basedir:4,primari:5,content:[7,0,1],process_select_star_from:4,adapt:5,rel:[3,1,4],print:7,factori:6,red:2,indidividu:[],freb:6,manipul:[3,0,5],differ:[3,5,1],standard:[5,4],base:3,dictionari:[5,0,1,4,7],releas:0,img_info:[7,1,4],afterward:1,indent:[3,1],could:[3,5],img_filenam:4,british:0,keep:7,filter:[5,1,4],thing:[7,1],length:3,ish:4,organis:1,licens:0,page_para:6,oper:4,required_tag:[7,4],upper:5,onc:[6,0,4],number:[0,1,5,4,7,6],placehold:3,restrict:1,date:1,alreadi:[3,5,4],done:3,wrapper:[],miss:[3,1],payload:[1,4],size:[5,1],avail:3,given:[3,0,1,5],raise_key_mismatch:1,script:[3,6],associ:[1,4],top:[3,5,7],messag:3,licenc:0,locat:[3,1,4],"final":1,store:[5,1,4],option:[5,0,1,4],dict_print:1,copi:[3,1,4],yield:1,specifi:[5,1],selector:[3,1],devmod:1,part:[6,1],mostli:1,off:7,dict_remov:1,imt_db:7,png:[5,0],skip_key_relist:1,target:[3,1],keyword:3,provid:4,copy_required_javascript:3,remov:1,tree:3,zero:5,structur:0,del_plots_from_dbfil:4,wepag:[3,6],str:3,posit:5,webdir:7,postambl:[3,7],pre:[5,4],sai:3,mergedict:1,img_dict:[3,7],attempt_replac:4,ani:4,packag:0,have:[6,0,1,4,7],tabl:[],need:[3,5,1,4],"null":1,border:[5,7],optimis:5,show_selector_nam:3,some:7,built:[0,4],latter:3,reverse_sort:[7,1],also:[0,1,3,4,5,6],exampl:[3,1],take:4,which:[3,0,1,4],tupl:[5,1],singl:[3,1],simplifi:5,unless:[0,4],return_key_ind:1,normal:4,strcutur:3,object:[3,0,1,6],compress:[5,7,1],most:4,regular:4,pair:[5,1,4],keep_open:5,requir:[3,1,4],select_dbfile_by_tag:4,animation_direct:1,simplest_img_dict:[],url:3,no_file_ext:4,request:4,input_dict:1,doe:[5,6,1,4],strucutur:3,clean:[1,4],add:[5,0,4],usual:[1,4],preambl:[3,7],pyplot:5,show:[3,7],text:[3,5,7],random:6,corner:5,find:1,untermin:1,pagenam:3,absolut:4,onli:[3,5,1,6,4],explicitli:0,ratio:5,copyright:0,menu:3,activ:1,written:[3,6,4],than:3,heirachi:[7,1],dict:[6,1,4],templat:3,read_img_info_from_dbcursor:4,tab_s_nam:3,write_json:3,mergdict:1,overwritten:3,restart_db:4,palett:[5,0],get:1,stop:1,soon:3,simple_dict_filt:1,report:[5,4],edg:5,restart:4,prune:1,truem:4,dpt:1,page_multi:6,info_key_to_db_nam:4,select_dbcr_by_tag:4,check_for_required_kei:1,common:0,animated_level:3,contain:[3,5,1,4],where:[6,1,4],dpi:5,view:[3,6],return_from_list:1,rm_dict:1,set:[3,6,1,4,7],skip_warn:4,dump:3,frame:3,maximum:5,see:[5,7],result:1,arg:5,fail:4,close:5,horizont:3,full_name_map:3,best:[5,7],selector_width:1,hopefulli:3,databas:[],someth:4,dropdown:3,nopt:4,label:3,state:0,restructur:4,subdir:1,simplest:7,"import":[6,7],thumbnail:[5,4],db_attempt:[5,4],altern:1,accord:[7,1,4],kei:[7,1,4],numer:[7,1],javascript:3,dicts_prun:1,extens:[3,5,4],malcolmbrook:7,dict_index_arrai:1,matplotlib:[5,0],outfil:5,db_content:4,horiz:3,popul:4,both:[1,4],last:1,equal:1,against:1,etc:[7,1],instanc:[3,5,4],context:5,logic:[1,4],com:7,strftime:7,load:[3,7,4],figur:[5,4],color:[7,1],malcolm:7,compelt:1,header:3,empti:[7,1,4],db_name_to_info_kei:4,image_file_postproc:5,suppli:[3,5,1,4,7],dict_heirachy_from_list:[7,1],animation_dicrect:1,duplic:4,quit:3,coupl:7,union:1,invers:4,been:[6,0,1,4,2],legend:5,compon:[],json:3,much:[5,6,1,4,7],basic:[5,6],n_split:1,addit:0,valueerror:4,quickli:[5,1],imag:[],resolut:5,search:0,argument:[5,4],req_kei:1,togeth:1,input:[3,5,1,4],sort_kei:[7,1],open_db_fil:4,those:[3,7],"case":[1,4],dict_dept:3,properti:1,write_img_to_open_db:4,aim:7,defin:[3,5,4,7],"while":[7,1],heirach:[0,1],occas:4,reverse_numer:[7,1],layer:1,stdout:3,"__main__":7,therefor:7,itself:4,minim:7,perform:4,suggest:4,make:[7,4],cross:1,same:[6,7],images_and_tag:7,member:6,webpag:6,html:[3,6,1,7],pad:5,split:1,sqlite3:4,complet:[3,7],http:[6,7],again:4,optim:4,upon:3,antialias:5,postabl:3,rais:1,temporari:[3,7],metadata7:3,tag_str:[7,4],lower:5,appropri:3,moder:5,entri:4,colour:[5,0],well:5,anim:[3,1],without:[6,4],command:[6,4],thi:[1,3,4,5,6,7],outstr:1,file_obj:3,write_js_placehold:3,left:5,construct:[3,7],identifi:4,just:[3,7,1,4],savefig:[],tip:1,exclud:4,rest:1,"__path__":7,aspect:5,previous:4,web:[5,0,1,7],subdir_excl_list:4,easi:[3,1],field:4,new_dict:1,except:[5,1],rgb:5,valid:[3,1],trim_bord:5,selector_prefix:3,els:7,save:4,hat:2,match:[1,4],build:[1,4],img_tag_req:4,around:[5,0],format:[5,0,4,7],read:[3,0,1,4,7],big:6,submodul:1,read_img_info_from_dbfil:[7,4],bit:5,characterist:1,recurs:1,list_keys_by_depth:1,scan:4,like:1,specif:[1,4],whitespac:5,integ:[5,1],shrink:5,out_arrai:1,"true":[3,5,1,4],either:[3,4],in_dict:1,output:[3,5,1,4],resiz:5,page:6,www:6,right:5,old:4,often:1,add_strict:4,crown:0,js_file:3,flatten:1,meterolog:1,guess:5,librari:[3,0],read_db_file_to_mem:4,logo_width:5,easili:[0,1],assum:1,avoid:4,url_typ:3,whole:[],usaulli:5,retri:4,leav:1,refer:[1,4],run:6,usag:4,"__name__":7,post:[5,0],dict_depth:[3,1],dropdownmenu:3,ascend:1,actual:[3,6],simul:1,act:6,upward:1,backup:4,produc:[0,1,3,4,5,6,7],routin:[7,1,4],uniform_depth:1,effici:7,primarili:4,keys_by_depth:1,three:1,bsd:0,in_str:4,do_thumb:5,write_intmed_tmpfil:3,flatten_list:1,img_tag:[5,7],manag:0,accordingli:1,wai:[5,7,1],aren:4,support:[5,0],overwrit:[3,5],verbos:[3,5,1,4],width:[5,1],includ:[5,0,1,6,4],lot:[7,4],forward:1,select_tag:4,only_show_rel_url:3,files:[5,0],get_webdir:7,form:1,great:3,histogram:1,github:[7,0],link:[3,6],don:4,line:[3,1],webpage_postambl:7,sort_method:[7,1],heavi:5,made:3,consist:[7,4],possibl:7,whether:1,iteself:5,access:[5,4],displai:3,otherwis:4,problem:4,similar:[3,1],connect:4,trim:[5,7,1],linux2:2,alongsid:3,creat:[],"int":3,repres:1,exist:4,file:[],home:6,ind:3,check:[3,1],assembl:7,denot:3,moduleauthor:7,titl:[3,7],when:[3,1,4],detail:[0,1],"default":[3,5,1,4],other:[],futur:3,branch:1,test:[],you:[1,4],img_fil:[7,1],intend:4,determin:3,time:[6,1,4],sql:0,img_convert:5,reduc:[5,0,4],img_format:[5,1],"250k":4,faster:[1,4],directori:[3,6,4,7],bottom:[3,7],descript:[3,1],mimic:6,ignor:4,known_file_tag:4,dict_prun:1,far:1,backward:1},objtypes:{"0":"py:module","1":"py:function","2":"py:method","3":"py:class"},objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"],"2":["py","method","Python method"],"3":["py","class","Python class"]},filenames:["index","ImageDict","versions","webpage","db","savefig","test","simple"],titles:["ImageMetaTag - Image metadata tagging and presentation","ImageMetaTag.ImageDict","Versions of Python","ImageMetaTag.webpage","ImageMetaTag.db","ImageMetaTag.savefig","ImageMetaTag - test.py","ImageMetaTag - simplest_img_dict.py"],objects:{"":{ImageMetaTag:[0,0,0,"-"]},"ImageMetaTag.webpage":{write_full_page:[3,1,1,""],copy_required_javascript:[3,1,1,""],write_js_placeholders:[3,1,1,""],write_js_to_header:[3,1,1,""],write_json:[3,1,1,""]},"ImageMetaTag.ImageDict":{return_from_list:[1,2,1,""],key_at_depth:[1,2,1,""],dict_index_array:[1,2,1,""],copy_except_dict_and_keys:[1,2,1,""],mergedicts:[1,2,1,""],dict_print:[1,2,1,""],keys_by_depth:[1,2,1,""],dict_remove:[1,2,1,""],flatten_lists:[1,2,1,""],remove:[1,2,1,""],dict_prune:[1,2,1,""],return_key_inds:[1,2,1,""],append:[1,2,1,""],dict_depths:[1,2,1,""],dict_depth:[1,2,1,""],sort_keys:[1,2,1,""],dict_union:[1,2,1,""],list_keys_by_depth:[1,2,1,""]},ImageMetaTag:{ImageDict:[1,3,1,""],dict_split:[1,1,1,""],simple_dict_filter:[1,1,1,""],webpage:[3,0,0,"-"],readmeta_from_image:[1,1,1,""],db:[4,0,0,"-"],savefig:[5,1,1,""],img_dict:[1,0,0,"-"],image_file_postproc:[5,1,1,""],check_for_required_keys:[1,1,1,""],dict_heirachy_from_list:[1,1,1,""]},"ImageMetaTag.db":{del_plots_from_dbfile:[4,1,1,""],info_key_to_db_name:[4,1,1,""],read_db_file_to_mem:[4,1,1,""],db_name_to_info_key:[4,1,1,""],write_img_to_open_db:[4,1,1,""],process_select_star_from:[4,1,1,""],select_dbcr_by_tags:[4,1,1,""],scan_dir_for_db:[4,1,1,""],write_img_to_dbfile:[4,1,1,""],select_dbfile_by_tags:[4,1,1,""],open_or_create_db_file:[4,1,1,""],read_img_info_from_dbcursor:[4,1,1,""],read_img_info_from_dbfile:[4,1,1,""],open_db_file:[4,1,1,""]}},titleterms:{creat:4,savefig:5,imagemetatag:[0,1,3,4,5,6,7],indic:0,intern:4,tag:0,file:4,tabl:0,open:4,compon:3,databas:4,wrapper:5,write:3,webpag:3,version:2,test:6,metadata:0,"function":[5,1,4],indidividu:3,python:2,imag:0,util:4,"class":1,present:0,imagedict:1,simplest_img_dict:7,prepar:1,work:4,page:3,whole:3,other:5,commonli:4}})
\ No newline at end of file
diff --git a/docs/build/html/webpage.html b/docs/build/html/webpage.html
index c3ebd0c..a9a74ac 100644
--- a/docs/build/html/webpage.html
+++ b/docs/build/html/webpage.html
@@ -135,7 +135,7 @@ Writing a whole pagepreamble : html text added at the top of the <body> text, but before the ImageMetaTag section. Can be quite extensive.
postable : html text added after the ImageMetaTag section.
initial_selectors - A list of initial values for the selectors, to be passed into ImageMetaTag.webpage.write_js_setup().
-show_selector_names - switches on diplsaying the selector full names defined by the ImageMetaTag.ImageDict.full_name_mapping
+show_selector_names - switches on displaying the selector full names defined by the ImageMetaTag.ImageDict.full_name_mapping
url_type - determines the type of URL at the bottom of the ImageMetaTag section. Can be ‘int’ or ‘str’.
only_show_rel_url - If True, the wepage will only show relative urls in is link section.
verbose - If True, stdout will be more verbose
@@ -175,7 +175,7 @@ As indidividual components
-ImageMetaTag.webpage.write_js_placeholders(file_obj=None, dict_depth=None, selector_prefix=None, style='horiz dropdowns', level_names=False)[source]¶
+ImageMetaTag.webpage.write_js_placeholders(file_obj=None, dict_depth=None, selector_prefix=None, style='horiz dropdowns', level_names=False, animated_level=None)[source]¶
Writes the placeholders into the page body, for the javascript to manipulate