示例#1
0
    def get_style(self, family, name_or_element=None, display_name=None):
        """Return the style uniquely identified by the name/family pair. If
        the argument is already a style object, it will return it.

        If the name is not the internal name but the name you gave in the
        desktop application, use display_name instead.

        Arguments:

            family -- 'paragraph', 'text', 'graphic', 'table', 'list',
                      'number'

            name_or_element -- unicode or odf_style

            display_name -- unicode

        Return: odf_style or None if not found
        """
        from style import odf_style

        if isinstance(name_or_element, odf_style):
            return name_or_element
        style_name = name_or_element
        is_default = not (style_name or display_name)
        tagname, famattr = self._get_style_tagname(family,
                is_default=is_default)
        # famattr became None if no "style:family" attribute
        return _get_element(self, tagname, style_name=style_name,
                display_name=display_name, family=famattr)
示例#2
0
    def get_change_element(self):
        """Get the change element child. It can be either: <text:insertion>,
        <text:deletion>, or <text:format-change> as an odf_element object.

        Return: odf_element.
        """
        request = ('descendant::text:insertion '
                   '| descendant::text:deletion'
                   '| descendant::text:format-change')
        return _get_element(self, request, position=0)
示例#3
0
文件: list.py 项目: RB14/lpod-python
    def get_item(self, position=0, content=None):
        """Return the list item that matches the criteria. In nested lists,
        return the list item that really contains that content.

        Arguments:

            position -- int

            content -- unicode regex

        Return: odf_element or None if not found
        """
        # Custom implementation because of nested lists
        if content:
            # Don't search recursively but on the very own paragraph(s) of
            # each list item
            for paragraph in self.get_elements('descendant::text:p'):
                if paragraph.match(content):
                    return paragraph.get_element('parent::text:list-item')
            return None
        return _get_element(self, 'text:list-item', position)
示例#4
0
    def get_item(self, position=0, content=None):
        """Return the list item that matches the criteria. In nested lists,
        return the list item that really contains that content.

        Arguments:

            position -- int

            content -- unicode regex

        Return: odf_element or None if not found
        """
        # Custom implementation because of nested lists
        if content:
            # Don't search recursively but on the very own paragraph(s) of
            # each list item
            for paragraph in self.get_elements('descendant::text:p'):
                if paragraph.match(content):
                    return paragraph.get_element('parent::text:list-item')
            return None
        return _get_element(self, 'text:list-item', position)
示例#5
0
 def get_span_by_position(self, position):
     return _get_element(self, 'descendant::text:span', position=position)
示例#6
0
 def get_master_page(self, position=0):
     return _get_element(self, 'descendant::style:master-page', position)
示例#7
0
 def get_frame_by_title(self, regex):
     return _get_element(self, 'descendant::draw:frame', svg_title=regex)
示例#8
0
 def get_frame_by_position(self, position):
     return _get_element(self, 'descendant::draw:frame', position=position)
示例#9
0
 def get_list_by_content(self, regex):
     return _get_element(self, 'descendant::text:list', regex=regex)
示例#10
0
 def get_heading_by_content(self, regex, level=None):
     return _get_element(self, 'descendant::text:h', regex=regex,
             outline_level=level)
示例#11
0
 def get_draw_rectangle_by_content(self, regex):
     return _get_element(self, 'descendant::draw:rect', regex=regex)
示例#12
0
 def get_draw_line_by_content(self, regex):
     return _get_element(self, 'descendant::draw:line', regex=regex)
示例#13
0
 def get_reference_mark_end_by_name(self, name):
     return _get_element(self, 'descendant::text:reference-mark-end',
                         text_name=name)
示例#14
0
 def get_bookmark_end_by_name(self, name):
     return _get_element(self, 'descendant::text:bookmark-end',
                         text_name=name)
示例#15
0
 def get_link_by_path(self, regex):
     return _get_element(self, 'descendant::text:a', href=regex)
示例#16
0
 def get_link_by_name(self, name):
     return _get_element(self, 'descendant::text:a', office_name=name)
示例#17
0
 def get_draw_page_by_position(self, position):
     return _get_element(self, 'descendant::draw:page', position=position)
示例#18
0
 def get_span_by_content(self, regex):
     return _get_element(self, 'descendant::text:span', regex=regex)
示例#19
0
 def get_heading_by_position(self, position, level=None):
     return _get_element(self, 'descendant::text:h', position=position,
             outline_level=level)
示例#20
0
 def get_draw_ellipse_by_content(self, regex):
     return _get_element(self, 'descendant::draw:ellipse', regex=regex)
示例#21
0
 def get_list_by_position(self, position):
     return _get_element(self, 'descendant::text:list', position=position)
示例#22
0
 def get_draw_connector_by_content(self, regex):
     return _get_element(self, 'descendant::draw:connector', regex=regex)
示例#23
0
 def get_frame_by_name(self, name):
     return _get_element(self, 'descendant::draw:frame', draw_name=name)
示例#24
0
 def get_toc(self):
     return _get_element(self, 'text:table-of-content')
示例#25
0
 def get_frame_by_content(self, regex):
     return _get_element(self, 'descendant::draw:frame', regex=regex)
示例#26
0
 def get_image_by_name(self, name):
     # The frame is holding the name
     frame = _get_element(self, 'descendant::draw:frame', draw_name=name)
     if frame is None:
         return None
     return frame.get_element('draw:image')
示例#27
0
 def get_frame_by_description(self, regex):
     return _get_element(self, 'descendant::draw:frame', svg_desc=regex)
示例#28
0
 def get_level_style(self, level):
     return _get_element(self, self.any_style, 0, level=level)
示例#29
0
 def get_changed_region(self, position=0, text_id=None, creator=None,
         date=None, content=None):
     return _get_element(self, 'text:changed-region', position,
             text_id=text_id, dc_creator=creator, dc_date=date,
             content=content)
示例#30
0
 def get_paragraph_by_position(self, position):
     return _get_element(self, 'descendant::text:p', position=position)
示例#31
0
 def get_master_page(self, position=0):
     return _get_element(self, 'descendant::style:master-page', position)
示例#32
0
 def get_paragraph_by_content(self, regex):
     return _get_element(self, 'descendant::text:p', regex=regex)