Skip to content

Commit ad90152

Browse files
authored
Merge pull request #178 from dev-mkc19/master
add shape property
2 parents 8eb3a59 + c5a63ee commit ad90152

File tree

3 files changed

+3371
-2
lines changed

3 files changed

+3371
-2
lines changed

tableaudocumentapi/workbook.py

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,9 @@ def __init__(self, filename):
2727
self._datasource_index = self._prepare_datasource_index(self._datasources)
2828

2929
self._worksheets = self._prepare_worksheets(
30-
self._workbookRoot, self._datasource_index
31-
)
30+
self._workbookRoot, self._datasource_index)
31+
32+
self._shapes = self._prepare_shapes(self._workbookRoot)
3233

3334
@property
3435
def datasources(self):
@@ -42,6 +43,10 @@ def worksheets(self):
4243
def filename(self):
4344
return self._filename
4445

46+
@property
47+
def shapes(self):
48+
return self._shapes
49+
4550
def save(self):
4651
"""
4752
Call finalization code and save file.
@@ -116,3 +121,16 @@ def _prepare_worksheets(xml_root, ds_index):
116121
datasource.fields[column_name].add_used_in(worksheet_name)
117122

118123
return worksheets
124+
125+
@staticmethod
126+
def _prepare_shapes(xml_root):
127+
shapes = []
128+
worksheets_element = xml_root.find('.//external/shapes')
129+
if worksheets_element is None:
130+
return shapes
131+
132+
for worksheet_element in worksheets_element:
133+
shape_name = worksheet_element.attrib['name']
134+
shapes.append(shape_name)
135+
136+
return shapes

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy