diff options
| author | Felipe Corrêa da Silva Sanches | 2015-09-25 00:30:56 -0300 |
|---|---|---|
| committer | Felipe Corrêa da Silva Sanches | 2015-09-25 01:26:50 -0300 |
| commit | 0092ce59665867c23085489c81287c5528e06522 (patch) | |
| tree | ff4ee0ff7aac2ca51618af5120a0ed1df45bf9bd /Lib/defconQt/fontView.py | |
| parent | 999ae751a4f661c85ace554a8eb3feff793eebc7 (diff) | |
| download | trufont-0092ce59665867c23085489c81287c5528e06522.tar.bz2 | |
issue #19: Copying and pasting components (a.k.a. "references" in fontforge jargon) into glyphs.
Diffstat (limited to 'Lib/defconQt/fontView.py')
| -rw-r--r-- | Lib/defconQt/fontView.py | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/Lib/defconQt/fontView.py b/Lib/defconQt/fontView.py index 6a603a4..4795fcc 100644 --- a/Lib/defconQt/fontView.py +++ b/Lib/defconQt/fontView.py @@ -295,6 +295,8 @@ class MainWindow(QMainWindow): green.setIcon(QIcon(pixmap)) green.setData(QColor(Qt.green)) selectionMenu.addMenu(markColorMenu) + selectionMenu.addAction("Copy Reference", self.copyReference) + selectionMenu.addAction("Paste Into", self.pasteInto) menuBar.addMenu(selectionMenu) fontMenu = QMenu("&Font", self) @@ -464,6 +466,29 @@ class MainWindow(QMainWindow): doc="The sortDescriptor. Takes glyphs from the font and sorts them \ when set.") + def copyReference(self): + glyphs = self.collectionWidget.glyphs + selection = self.collectionWidget.selection + if len(selection) == 0: + pass # XXX: error dialog: "you need to select a glyph first" + else: + self.selectedReferences = [glyphs[key] for key in selection] + + def pasteInto(self): + glyphs = self.collectionWidget.glyphs + selection = self.collectionWidget.selection + if len(selection) == 0: + pass # XXX: error dialog: "you need to select a glyph first" + elif len(selection) == 1: + if self.selectedReferences: + for key in self.collectionWidget.selection: + self.collectionWidget.glyphs[key].refs = self.selectedReferences + else: + pass + # XXX: error dialog: "please select only one glyph" + # TODO: Perhaps here we could bulk-paste the same thing + # into all of the selected glyphs? + def markColor(self): color = self.sender().data() glyphs = self.collectionWidget.glyphs |
