def write_sp(index, col_absolute, row_absolute, width, height, shape)
      if shape.connect != 0
        attributes = [ [:macro,  ''] ]
        @writer.tag_elements('xdr:cxnSp', attributes) do

          # Write the xdr:nvCxnSpPr element.
          write_nv_cxn_sp_pr(index, shape)

          # Write the xdr:spPr element.
          write_xdr_sp_pr(col_absolute, row_absolute, width, height, shape)
        end
      else
        # Add attribute for shapes.
        attributes = [
                      [:macro, ''],
                      [:textlink, '']
                     ]
        @writer.tag_elements('xdr:sp', attributes) do

          # Write the xdr:nvSpPr element.
          write_nv_sp_pr(index, shape)

          # Write the xdr:spPr element.
          write_xdr_sp_pr(col_absolute, row_absolute, width, height, shape)

          # Write the xdr:txBody element.
          if shape.text != 0
            write_tx_body(shape)
          end
        end
      end
    end
def write_sp(index, col_absolute, row_absolute, width, height, shape)
      if shape.connect != 0
        attributes = [ [:macro,  ''] ]
        @writer.tag_elements('xdr:cxnSp', attributes) do

          # Write the xdr:nvCxnSpPr element.
          write_nv_cxn_sp_pr(index, shape)

          # Write the xdr:spPr element.
          write_xdr_sp_pr(col_absolute, row_absolute, width, height, shape)
        end
      else
        # Add attribute for shapes.
        attributes = [
                      [:macro, ''],
                      [:textlink, '']
                     ]
        @writer.tag_elements('xdr:sp', attributes) do

          # Write the xdr:nvSpPr element.
          write_nv_sp_pr(index, shape)

          # Write the xdr:spPr element.
          write_xdr_sp_pr(col_absolute, row_absolute, width, height, shape)

          # Write the xdr:txBody element.
          if shape.text != 0
            write_tx_body(shape)
          end
        end
      end
    end
Write the <xdr:sp> element.