# `GSDocument`

*Class*

## Declaration

```swift
class GSDocument
```

```objc
@interface GSDocument : NSDocument
```

```python
class GSDocument(NSDocument)
```

## Topics

### Instance Variables

- [`GSDocument.startTime`](/Core/GlyphsApp/GSDocument/startTime)

### Instance Properties

- [`GSDocument.allLayers`](/Core/GlyphsApp/GSDocument/allLayers) — `nil` when the document has no window controller, as is the case in a framework-only host.
- [`GSDocument.closing`](/Core/GlyphsApp/GSDocument/closing)
- [`GSDocument.font`](/Core/GlyphsApp/GSDocument/font)
- [`GSDocument.isAutosaving`](/Core/GlyphsApp/GSDocument/isAutosaving)
- [`GSDocument.isSaving`](/Core/GlyphsApp/GSDocument/isSaving)
- [`GSDocument.lastAutosaveInterval`](/Core/GlyphsApp/GSDocument/lastAutosaveInterval)
- [`GSDocument.lastSaveTimestamp`](/Core/GlyphsApp/GSDocument/lastSaveTimestamp)
- [`GSDocument.localGlyphInfo`](/Core/GlyphsApp/GSDocument/localGlyphInfo)
- [`GSDocument.masterIndex`](/Core/GlyphsApp/GSDocument/masterIndex)
- [`GSDocument.openDate`](/Core/GlyphsApp/GSDocument/openDate)
- [`GSDocument.saveRequestedDuringAsyncSave`](/Core/GlyphsApp/GSDocument/saveRequestedDuringAsyncSave)
- [`GSDocument.saveToURL`](/Core/GlyphsApp/GSDocument/saveToURL)
- [`GSDocument.selectedFontMaster`](/Core/GlyphsApp/GSDocument/selectedFontMaster)
- [`GSDocument.selectedLayers`](/Core/GlyphsApp/GSDocument/selectedLayers)
- [`GSDocument.userSettings`](/Core/GlyphsApp/GSDocument/userSettings)
- [`GSDocument.windowController`](/Core/GlyphsApp/GSDocument/windowController)

### Instance Methods

- [`GSDocument addDefaultContent`](/Core/GlyphsApp/GSDocument/addDefaultContent)
- [`GSDocument addTabWithLayers:`](/Core/GlyphsApp/GSDocument/addTabWithLayers:)
- [`GSDocument addTabWithGlyphs:`](/Core/GlyphsApp/GSDocument/addTabWithGlyphs:)
- [`GSDocument addTabWithGlyphNames:`](/Core/GlyphsApp/GSDocument/addTabWithGlyphNames:)
- [`GSDocument forceAutoAlignment`](/Core/GlyphsApp/GSDocument/forceAutoAlignment)
- [`GSDocument glyphsInfo`](/Core/GlyphsApp/GSDocument/glyphsInfo)
- [`GSDocument importFile:fileFormatClass:typeName:error:`](/Core/GlyphsApp/GSDocument/importFile:fileFormatClass:typeName:error:) — Reads a document of a type handled by a file format plug-in into the receiver.
- [`GSDocument importNative:error:`](/Core/GlyphsApp/GSDocument/importNative:error:) — Reads a Glyphs document, a Glyphs package, or an icon set into the receiver.
- [`GSDocument importerClassForFileType:`](/Core/GlyphsApp/GSDocument/importerClassForFileType:) — The file format plug-in class that reads `typeName`, or `nil` when no plug-in handles that type.
- [`GSDocument loadCustomGlyphsData`](/Core/GlyphsApp/GSDocument/loadCustomGlyphsData)
- [`GSDocument preProcessFont`](/Core/GlyphsApp/GSDocument/preProcessFont) — Prepares the font for being written to disk.
- [`GSDocument shouldMonitorFile:`](/Core/GlyphsApp/GSDocument/shouldMonitorFile:) — Whether changes to a file of the given type are tracked while the document is open.
- [`GSDocument startObservingFile`](/Core/GlyphsApp/GSDocument/startObservingFile) — Starts observing the document file for external changes.
- [`GSDocument stopObservingFile`](/Core/GlyphsApp/GSDocument/stopObservingFile) — Stops observing the document file for external changes.
- [`GSDocument undoManagerCheck`](/Core/GlyphsApp/GSDocument/undoManagerCheck)
- [`GSDocument updateFileObservers`](/Core/GlyphsApp/GSDocument/updateFileObservers) — Re-establishes the observers for the files inside a document package.

### Type Methods

- [`GSDocument documentTypeFromExtension:`](/Core/GlyphsApp/GSDocument/documentTypeFromExtension:)

## Relationships

### Inherits From

- `NSDocument`

