The Birdfont Source Code


All Repositories / birdfont.git / commit – RSS feed

Otf tags

These changes was commited to the Birdfont repository Fri, 02 Oct 2015 18:55:50 +0000.

Contributing

Send patches or pull requests to johan.mattsson.m@gmail.com.
Clone this repository: git clone https://github.com/johanmattssonm/birdfont.git
author Johan Mattsson <johan.mattsson.m@gmail.com>
Fri, 02 Oct 2015 18:55:50 +0000 (20:55 +0200)
committer Johan Mattsson <johan.mattsson.m@gmail.com>
Fri, 02 Oct 2015 18:55:50 +0000 (20:55 +0200)
commit d75975ffe870f683d56c2e0c70c0556abe8acba6
tree f95aa3719c519506719978e82769e5fe90a9995a
parent 13b9d75ae930e4bac1f33dadde65e3978b433911
Otf tags

libbirdfont/KerningTools.vala
libbirdfont/OtfTags.vala [new ]
--- a/libbirdfont/KerningTools.vala +++ b/libbirdfont/KerningTools.vala @@ -192,10 +192,8 @@ active_otf_features = tags; if (enable) { - print ("enable " + tag + "\n"); tags.add (tag); } else { - print ("disable " + tag + "\n"); tags.remove (tag); }
diff --git libbirdfont/OtfTags.vala(new)
--- /dev/null +++ b/libbirdfont/OtfTags.vala @@ -1,1 +1,50 @@ + /* + Copyright (C) 2015 Johan Mattsson + + This library is free software; you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation; either version 3 of the + License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + */ + + namespace BirdFont { + + public class OtfTags : GLib.Object { + public Gee.ArrayList<string> elements = new Gee.ArrayList<string> (); + + public void add (string tag) { + elements.add (tag); + } + + public void remove (string tag) { + while (elements.index_of (tag) > -1) { + elements.remove (tag); + } + } + + public OtfTags copy () { + OtfTags tags = new OtfTags (); + + foreach (string e in elements) { + tags.add (e); + } + + return tags; + } + + public string to_string () { + StringBuilder sb = new StringBuilder (); + foreach (string s in elements) { + sb.append (s); + } + return sb.str; + } + } + + }