• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Deconstructing Text Tables
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Deconstructing Text Tables


  • Subject: Re: Deconstructing Text Tables
  • From: Charles Jenkins <email@hidden>
  • Date: Thu, 20 Nov 2014 16:27:17 -0500

Thank you, Ken. It took some research and experimentation before I could understand your explanation, but it looks like that’s exactly what I needed.

—

Charles Jenkins


On Tuesday, November 18, 2014 at 3:43 PM, Ken Thomases wrote:

> On Nov 18, 2014, at 6:38 AM, Charles Jenkins <email@hidden (mailto:email@hidden)> wrote:
>
> > It’s very easy to create an NSAttributedString that represents a text table, then show the table in a TextView so the user can edit information in the cells. The documentation on how to create a text table (https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/TextLayout/Articles/TextTables.html) is fairly clear.
> >
> > What I don’t see—and maybe it’s there but I just don’t understand it—is how to pull the table apart again. Suppose I want to grab all text from the first cell after the user has edited it. How do I do that?
>
> You would presumably enumerate the attributed string's ranges for the NSParagraphStyleAttributeName attribute, using -enumerateAttribute:inRange:options:usingBlock:. For each paragraph style object, you would check its textBlocks property to determine which cell the range is part of.
>
> You're presumably either dealing with just a one-level table or the top-level table, so you would be interested in the firstObject of the textBlocks array. After verifying that it's an NSTextTableBlock, you'd check its table, startingRow, rowSpan, startingColumn, and columnSpan to determine which cell it's a part of. If you're interested in the entire contents of the first cell, you'll need to accumulate the ranges that are part of it, since they won't necessarily all be part of a single range as enumerated.
>
> Regards,
> Ken
>
>


_______________________________________________

Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden


References: 
 >Deconstructing Text Tables (From: Charles Jenkins <email@hidden>)
 >Re: Deconstructing Text Tables (From: Ken Thomases <email@hidden>)

  • Prev by Date: how to reset another app's prefs
  • Next by Date: Adding attributes to text in a text table cell
  • Previous by thread: Re: Deconstructing Text Tables
  • Next by thread: help with debugging
  • Index(es):
    • Date
    • Thread