]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/gtk/ghelpers.h
Change glob() API to accept a dir parameter.
[lyx.git] / src / frontends / gtk / ghelpers.h
index f86b921e09ccb6fdc58118660e06f83f82ef5f77..3700e1320921bbaac2c3e97cddb8c4c63ee7c78e 100644 (file)
 #ifndef GHELPERS_H
 #define GHELPERS_H
 
+#include "lengthcommon.h"
+
+#include <gtkmm.h>
+
 #include <string>
+#include <vector>
+
+class FuncRequest;
 
 namespace lyx {
 namespace frontend {
 
+// Get a GTK stockID from a lyx function id.
+// Return Gtk::Stock::MISSING_IMAGE if no suitable stock found
+Gtk::BuiltinStockID getGTKStockIcon(FuncRequest const & func);
+
+std::string const getDefaultUnit();
+
+void unitsComboFromLength(Gtk::ComboBox * combo,
+                           Gtk::TreeModelColumn<Glib::ustring> const & stringcol,
+                           LyXLength const & len,
+                           std::string defunit);
+
+std::vector<std::string> const buildLengthUnitList();
+
+std::vector<std::string> const buildLengthNoRelUnitList();
+
 /** name is the name of the glade file, without path or extension.
  *  Eg, "aboutlyx", "tableCreate".
  */
 std::string const findGladeFile(std::string const & name);
 
+template<class A>
+typename std::vector<A>::size_type
+findPos(std::vector<A> const & vec, A const & val)
+{
+       typename std::vector<A>::const_iterator it =
+               std::find(vec.begin(), vec.end(), val);
+       if (it == vec.end())
+               return 0;
+       return std::distance(vec.begin(), it);
+}
+
 } // namespace frontend
 } // namespace lyx