5 #define YUILogComponent "gtk" 14 YGLabel (YWidget *parent,
const std::string &text,
bool heading,
bool outputField)
15 : YLabel (NULL, text, heading, outputField),
16 YGWidget (
this, parent, GTK_TYPE_LABEL, NULL)
18 gtk_misc_set_alignment (GTK_MISC (getWidget()), 0.0, 0.5);
20 gtk_label_set_selectable (GTK_LABEL (getWidget()), TRUE);
21 gtk_label_set_single_line_mode (GTK_LABEL (getWidget()), TRUE);
22 YGUtils::setWidgetFont (getWidget(), PANGO_STYLE_ITALIC, PANGO_WEIGHT_NORMAL,
26 YGUtils::setWidgetFont (getWidget(), PANGO_STYLE_NORMAL, PANGO_WEIGHT_BOLD,
31 virtual void setText (
const std::string &label)
33 YLabel::setText (label);
34 gtk_label_set_label (GTK_LABEL (getWidget()), label.c_str());
35 std::string::size_type i = label.find (
'\n', 0);
36 if (isOutputField()) {
37 if (i != std::string::npos) {
38 std::string l (label, 0, i);
39 gtk_label_set_label (GTK_LABEL (getWidget()), l.c_str());
43 bool selectable = i != std::string::npos && i != label.size()-1;
44 gtk_label_set_selectable (GTK_LABEL (getWidget()), selectable);
48 YGWIDGET_IMPL_COMMON (YLabel)
49 YGWIDGET_IMPL_USE_BOLD (YLabel)
52 YLabel *YGWidgetFactory::createLabel (YWidget *parent,
53 const std::string &text,
bool heading,
bool outputField)
54 {
return new YGLabel (parent, text, heading, outputField); }