lyx_mirror/src/frontends/gtk/ghelpers.h
John Spray 2bb8621129 Rearrange GTK icon lookup code, get rid of comboBoxTextSet
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13220 a592a061-630c-0410-9148-cb99ea01b6c8
2006-02-12 23:58:29 +00:00

62 lines
1.3 KiB
C++

// -*- C++ -*-
/**
* \file ghelpers.h
* This file is part of LyX, the document processor.
* Licence details can be found in the file COPYING.
*
* \author Angus Leeming
* \author John Spray
*
* Full author contact details are available in file CREDITS.
*/
#ifndef GHELPERS_H
#define GHELPERS_H
#include "lengthcommon.h"
#include <gtkmm.h>
#include <string>
#include <vector>
class FuncRequest;
namespace lyx {
namespace frontend {
// Load an icon from GTK icon theme
// Return NULL if no suitable icon found
Gtk::Image *getGTKIcon(FuncRequest const & func, Gtk::IconSize const & size);
std::string const getDefaultUnit();
void unitsComboFromLength(
Gtk::ComboBox * combo,
Gtk::TreeModelColumn<Glib::ustring> const & stringcol,
LyXLength const & len,
std::string const & defunit);
std::vector<std::string> const buildLengthUnitList(bool userelative);
/** 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
#endif // NOT GHELPERS_H