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 | 
