File tree 5 files changed +36
-35
lines changed 5 files changed +36
-35
lines changed Original file line number Diff line number Diff line change @@ -224,14 +224,13 @@ def add_bookmarkStart(self, name):
224
224
bookmarkStart = self ._body ._add_bookmarkStart ()
225
225
bookmarkStart .name = name
226
226
bookmarkStart .bmrk_id = bookmarkStart ._next_id
227
- return Bookmark ( bookmarkStart )
227
+ return bookmarkStart
228
228
229
- def add_bookmarkEnd (self , name = None ):
230
-
229
+ def add_bookmarkEnd (self , bookmark = None ):
231
230
bookmarkEnd = self ._body ._add_bookmarkEnd ()
232
- if name is not None :
233
- bookmarkStart_id = bookmarkEnd .match_bookmarkstart ( name )
231
+ if bookmark is None :
232
+ bookmarkEnd . bmrk_id = bookmarkEnd ._next_id
234
233
else :
235
- bookmarkStart_id = bookmarkEnd . _next_id
236
- bookmarkEnd . bmrk_id = bookmarkStart_id
237
- return Bookmark ( bookmarkEnd )
234
+ bookmarkEnd . bmrk_id = bookmark . _id
235
+ return bookmarkEnd
236
+
Original file line number Diff line number Diff line change @@ -35,13 +35,13 @@ def _next_id(self):
35
35
root = self .getroottree ().getroot ()
36
36
return str (len (root .xpath ('.//w:bookmarkStart' )))
37
37
38
- def match_bookmarkstart (self , name ):
39
- """Returns `w:bookmarkStart` element having matching name, None if not present."""
40
- root_element = self .getroottree ().getroot ()
41
- matching_bookmarkStarts = root_element .xpath (
42
- './/w:bookmarkStart[@w:name=\' %s\' ]' % name
43
- )
44
- if not matching_bookmarkStarts :
45
- raise ValueError ('Bookmark name not found' )
46
- return None
47
- return matching_bookmarkStarts [0 ].bmrk_id
38
+ # def match_bookmarkstart(self, name):
39
+ # """Returns `w:bookmarkStart` element having matching name, None if not present."""
40
+ # root_element = self.getroottree().getroot()
41
+ # matching_bookmarkStarts = root_element.xpath(
42
+ # './/w:bookmarkStart[@w:name=\'%s\']' % name
43
+ # )
44
+ # if not matching_bookmarkStarts:
45
+ # raise ValueError('Bookmark name not found')
46
+ # return None
47
+ # return matching_bookmarkStarts[0].bmrk_id
Original file line number Diff line number Diff line change @@ -35,16 +35,15 @@ def add_bookmarkStart(self, name):
35
35
bookmarkStart = self ._add_bookmarkStart ()
36
36
bookmarkStart .name = name
37
37
bookmarkStart .bmrk_id = bookmarkStart ._next_id
38
- return Bookmark ( bookmarkStart )
38
+ return bookmarkStart
39
39
40
- def add_bookmarkEnd (self , name = None ):
40
+ def add_bookmarkEnd (self , bookmark = None ):
41
41
bookmarkEnd = self ._add_bookmarkEnd ()
42
- if name is not None :
43
- bookmarkStart_id = bookmarkEnd .match_bookmarkstart ( name )
42
+ if bookmark is None :
43
+ bookmarkEnd . bmrk_id = bookmarkEnd ._next_id
44
44
else :
45
- bookmarkStart_id = bookmarkEnd ._next_id
46
- bookmarkEnd .bmrk_id = bookmarkStart_id
47
- return Bookmark (bookmarkEnd )
45
+ bookmarkEnd .bmrk_id = bookmark ._id
46
+ return bookmarkEnd
48
47
49
48
@property
50
49
def alignment (self ):
Original file line number Diff line number Diff line change @@ -40,16 +40,15 @@ def add_bookmarkStart(self, name):
40
40
bookmarkStart = self ._add_bookmarkStart ()
41
41
bookmarkStart .name = name
42
42
bookmarkStart .bmrk_id = bookmarkStart ._next_id
43
- return Bookmark ( bookmarkStart )
43
+ return bookmarkStart
44
44
45
- def add_bookmarkEnd (self , name = None ):
45
+ def add_bookmarkEnd (self , bookmark = None ):
46
46
bookmarkEnd = self ._add_bookmarkEnd ()
47
- if name is not None :
48
- bookmarkStart_id = bookmarkEnd .match_bookmarkstart ( name )
47
+ if bookmark is None :
48
+ bookmarkEnd . bmrk_id = bookmarkEnd ._next_id
49
49
else :
50
- bookmarkStart_id = bookmarkEnd ._next_id
51
- bookmarkEnd .bmrk_id = bookmarkStart_id
52
- return Bookmark (bookmarkEnd )
50
+ bookmarkEnd .bmrk_id = bookmark ._id
51
+ return bookmarkEnd
53
52
54
53
def add_t (self , text ):
55
54
"""
Original file line number Diff line number Diff line change @@ -51,7 +51,7 @@ class Bookmark(ElementProxy):
51
51
def __init__ (self , doc_element ):
52
52
super (Bookmark , self ).__init__ (doc_element )
53
53
self ._element = doc_element
54
-
54
+
55
55
@property
56
56
def _id (self ):
57
57
return self ._element .bmrk_id
@@ -67,8 +67,12 @@ def start_bookmark(self, name):
67
67
bookmarkstart = self ._element .add_bookmarkStart (name )
68
68
return Bookmark (bookmarkstart )
69
69
70
- def end_bookmark (self , name = None ):
70
+ def end_bookmark (self , bookmark = None ):
71
71
if hasattr (self , '_body' ):
72
72
self ._element = self ._body
73
- bookmarkend = self ._element .add_bookmarkEnd (name )
73
+ bookmarkend = self ._element .add_bookmarkEnd (bookmark )
74
+ if bookmark is None :
75
+ bookmarkend ._next_id
76
+ else :
77
+ bookmarkend ._id = bookmark ._id
74
78
return Bookmark (bookmarkend )
You can’t perform that action at this time.
0 commit comments