# kdeui Library API Documentation

Overview | Class Hierarchy | Classes | Classes (annotated) | Members | Namespaces | Source Files

# KURLLabel Class Reference

A drop-in replacement for QLabel that displays hyperlinks. More...

`#include <kurllabel.h>`

Inheritance diagram for KURLLabel:

[legend]
Collaboration diagram for KURLLabel:

[legend]
List of all members.

## Public Slots

void | setUnderline (bool on=true)
void | setURL (const QString &url)
virtual void | setFont (const QFont &)
void | setUseTips (bool on=true)
void | setTipText (const QString &tip)
void | setHighlightedColor (const QColor &highcolor)
void | setHighlightedColor (const QString &highcolor)
void | setSelectedColor (const QColor &selcolor)
void | setSelectedColor (const QString &selcolor)
void | setUseCursor (bool on, QCursor *cursor=0L)
void | setGlow (bool glow=true)
void | setFloat (bool do_float=true)
void | setAltPixmap (const QPixmap &altPix)

## Signals

void | enteredURL (const QString &url)
void | enteredURL ()
void | leftURL (const QString &url)
void | leftURL ()
void | leftClickedURL (const QString &url)
void | leftClickedURL ()
void | rightClickedURL (const QString &url)
void | rightClickedURL ()
void | middleClickedURL (const QString &url)
void | middleClickedURL ()

## Public Member Functions

| KURLLabel (QWidget *parent=0L, const char *name=0L)
| KURLLabel (const QString &url, const QString &text=QString::null, QWidget *parent=0L, const char *name=0L)
virtual | ~KURLLabel ()
const QString & | url () const
const QString & | tipText () const
bool | useTips () const
bool | useCursor () const
bool | isGlowEnabled () const
bool | isFloatEnabled () const
const QPixmap * | altPixmap () const

## Protected Member Functions

virtual void | mouseReleaseEvent (QMouseEvent *)
virtual void | enterEvent (QEvent *)
virtual void | leaveEvent (QEvent *)
virtual bool | event (QEvent *e)
virtual void | virtual_hook (int id, void *data)

## Properties

QString | url
QString | tipText
QPixmap | altPixmap
bool | glowEnabled
bool | floatEnabled
bool | useTips
bool | useCursor

## Detailed Description

A drop-in replacement for QLabel that displays hyperlinks.

KURLLabel is a drop-in replacement for QLabel that handles text in a fashion similar to how an HTML widget handles hyperlinks. The text can be underlined (or not) and set to different colors. It can also "glow" (cycle colors) when the mouse passes over it.

KURLLabel also provides signals for several events, including the mouse leaving and entering the text area and all forms of mouse clicking.

A typical usage would be something like so:

     KURLLabel *address = new KURLLabel(this);
     address->setText("My homepage");
     address->setURL("http://www.home.com/~me");
     connect(address, SIGNAL(leftClickedURL(const QString&)),
                      SLOT(processMyURL(const QString&)));

In this example, the text "My homepage" would be displayed as blue, underlined text. When the mouse passed over it, it would "glow" red. When the user clicks on the text, the signal leftClickedURL() would be emitted with "http://www.home.com/~me" as its argument.

KDE URL Label

Author:
  Kurt Granroth <granroth@kde.org> (Interface)

  Peter Putzer <putzer@kde.org> (Rewrite)

Version:
  Id
    kurllabel.h 345236 2004-09-09 15:23:55Z dfaure

Definition at line 66 of file kurllabel.h.

## Constructor & Destructor Documentation

KURLLabel::KURLLabel | ( | QWidget * | parent = `0L`,
|  | const char * | name = `0L`
| ) |

| Default constructor. Use setURL() and setText() or QListView::setPixmap() to set the resp. properties. Definition at line 84 of file kurllabel.cpp. References setFont().

KURLLabel::KURLLabel | ( | const QString & | url,
|  | const QString & | text = `QString::null`,
|  | QWidget * | parent = `0L`,
|  | const char * | name = `0L`
| ) |

Convenience constructor.

Parameters:

  | url | is the URL emitted when the label is clicked.
  | text | is the displayed string. If it's equal to QString::null the `url` will be used instead.
  | parent | Passed to lower level constructor
  | name | Passed to lower level constructor

`parent` and `name` are passed to QLabel, which in turn passes them further down

Definition at line 74 of file kurllabel.cpp.

References setFont().

KURLLabel::~KURLLabel | ( |  | ) | `[virtual]`

| Destructs the label. Definition at line 93 of file kurllabel.cpp.

## Member Function Documentation

const QString& KURLLabel::url | ( |  | ) | const

| Returns the URL.

const QString& KURLLabel::tipText | ( |  | ) | const

| Returns the current tooltip text.

bool KURLLabel::useTips | ( |  | ) | const

Returns:
  true if a tooltip will be displayed.

See also:
  setTipText()

bool KURLLabel::useCursor | ( |  | ) | const

Returns:
  true if the cursor will change while over the URL.

See also:
  setUseCursor ()

bool KURLLabel::isGlowEnabled | ( |  | ) | const

| When this is on, the text will switch to the selected color whenever the mouse passes over it. Definition at line 258 of file kurllabel.cpp.

bool KURLLabel::isFloatEnabled | ( |  | ) | const

| This feature is very similar to the "glow" feature in that the color of the label switches to the selected color when the cursor passes over it. In addition, underlining is turned on for as long as the mouse is overhead. Note that if "glow" and underlining are both already turned on, this feature will have no visible effect. Definition at line 263 of file kurllabel.cpp.

const QPixmap* KURLLabel::altPixmap | ( |  | ) | const

Returns:
  the alternate pixmap (may be 0L if none was set).

void KURLLabel::setUnderline | ( | bool | on = `true` | ) | `[slot]`

| Turns on or off the underlining. When this is on, the text will be underlined. By default, it is `true`. Definition at line 135 of file kurllabel.cpp. References setFont(). Referenced by KDialogBase::enableLinkedHelp(), enterEvent(), and leaveEvent().

void KURLLabel::setURL | ( | const QString & | url | ) | `[slot]`

Sets the URL for this label to `url`.

See also:
  url

Definition at line 159 of file kurllabel.cpp.

References setUseTips().

void KURLLabel::setFont | ( | const QFont & |  | ) | `[virtual, slot]`

| Overridden for internal reasons; the API remains unaffected. Reimplemented from QLabel. Definition at line 127 of file kurllabel.cpp. References QLabel::setFont(), and QFont::setUnderline(). Referenced by KURLLabel(), and setUnderline().

void KURLLabel::setUseTips | ( | bool | on = `true` | ) | `[slot]`

| Turns on or off the tool tip feature. When this is on, the URL will be displayed as a tooltip whenever the mouse passes passes over it. By default, it is `false`. Definition at line 195 of file kurllabel.cpp. References QToolTip::add(), and QToolTip::remove(). Referenced by setTipText(), and setURL().

void KURLLabel::setTipText | ( | const QString & | tip | ) | `[slot]`

Specifies what text to display when tooltips are turned on.

If this is not used, the tip will default to the URL.

See also:
  setUseTips()

Definition at line 205 of file kurllabel.cpp.

References setUseTips().

void KURLLabel::setHighlightedColor | ( | const QColor & | highcolor | ) | `[slot]`

| Sets the highlight color. This is the default foreground color (non-selected). By default, it is `blue`. Definition at line 222 of file kurllabel.cpp. Referenced by setHighlightedColor().

void KURLLabel::setHighlightedColor | ( | const QString & | highcolor | ) | `[slot]`

This is an overloaded version for convenience.

See also:
  setHighlightedColor()

Definition at line 230 of file kurllabel.cpp.

References setHighlightedColor().

void KURLLabel::setSelectedColor | ( | const QColor & | selcolor | ) | `[slot]`

| Sets the selected color. This is the color the text will change to when either a mouse passes over it and "glow" mode is on or when it is selected (clicked). By default, it is `red`. Definition at line 235 of file kurllabel.cpp. Referenced by setSelectedColor().

void KURLLabel::setSelectedColor | ( | const QString & | selcolor | ) | `[slot]`

This is an overloaded version for convenience.

See also:
  setSelectedColor()

Definition at line 243 of file kurllabel.cpp.

References setSelectedColor().

void KURLLabel::setUseCursor | ( | bool | on,
|  | QCursor * | cursor = `0L`
| ) | `[slot]`

Turns the custom cursor feature on or off.

When this is on, the cursor will change to a custom cursor (default is a "pointing hand") whenever the cursor passes over the label. By default, it is on.

Parameters:

  | on | whether a custom cursor should be displayed.
  | cursor | is the custom cursor. `0L` indicates the default "hand cursor".

Definition at line 174 of file kurllabel.cpp.

void KURLLabel::setGlow | ( | bool | glow = `true` | ) | `[slot]`

| Turns on or off the "glow" feature. When this is on, the text will switch to the selected color whenever the mouse passes over it. By default, it is `true`. Definition at line 248 of file kurllabel.cpp.

void KURLLabel::setFloat | ( | bool | do_float = `true` | ) | `[slot]`

Turns on or off the "float" feature.

This feature is very similar to the "glow" feature in that the color of the label switches to the selected color when the cursor passes over it. In addition, underlining is turned on for as long as the mouse is overhead. Note that if "glow" and underlining are both already turned on, this feature will have no visible effect. By default, it is `false`.

Definition at line 253 of file kurllabel.cpp.

Referenced by KDialogBase::enableLinkedHelp().

void KURLLabel::setAltPixmap | ( | const QPixmap & | altPix | ) | `[slot]`

Sets the "alt" pixmap.

This pixmap will be displayed when the cursor passes over the label. The effect is similar to the trick done with 'onMouseOver' in javascript.

See also:
  altPixmap()

Definition at line 268 of file kurllabel.cpp.

void KURLLabel::enteredURL | ( | const QString & | url | ) | `[signal]`

Emitted when the mouse has passed over the label.

Parameters:

  | url | The URL for this label.

void KURLLabel::enteredURL | ( |  | ) | `[signal]`

| Emitted when the mouse has passed over the label. Referenced by enterEvent().

void KURLLabel::leftURL | ( | const QString & | url | ) | `[signal]`

Emitted when the mouse is no longer over the label.

Parameters:

  | url | The URL for this label.

void KURLLabel::leftURL | ( |  | ) | `[signal]`

| Emitted when the mouse is no longer over the label. Referenced by leaveEvent().

void KURLLabel::leftClickedURL | ( | const QString & | url | ) | `[signal]`

Emitted when the user clicked the left mouse button on this label.

Parameters:

  | url | The URL for this label.

void KURLLabel::leftClickedURL | ( |  | ) | `[signal]`

| Emitted when the user clicked the left mouse button on this label. Referenced by mouseReleaseEvent().

void KURLLabel::rightClickedURL | ( | const QString & | url | ) | `[signal]`

Emitted when the user clicked the right mouse button on this label.

Parameters:

  | url | The URL for this label.

void KURLLabel::rightClickedURL | ( |  | ) | `[signal]`

| Emitted when the user clicked the right mouse button on this label. Referenced by mouseReleaseEvent().

void KURLLabel::middleClickedURL | ( | const QString & | url | ) | `[signal]`

Emitted when the user clicked the middle mouse button on this label.

Parameters:

  | url | The URL for this label.

void KURLLabel::middleClickedURL | ( |  | ) | `[signal]`

| Emitted when the user clicked the left mouse button on this label. Referenced by mouseReleaseEvent().

void KURLLabel::mouseReleaseEvent | ( | QMouseEvent * |  | ) | `[protected, virtual]`

| Overridden for internal reasons; the API remains unaffected. Definition at line 98 of file kurllabel.cpp. References leftClickedURL(), middleClickedURL(), and rightClickedURL().

void KURLLabel::enterEvent | ( | QEvent * |  | ) | `[protected, virtual]`

| Overridden for internal reasons; the API remains unaffected. Definition at line 278 of file kurllabel.cpp. References enteredURL(), QLabel::pixmap(), QLabel::setPixmap(), and setUnderline().

void KURLLabel::leaveEvent | ( | QEvent * |  | ) | `[protected, virtual]`

| Overridden for internal reasons; the API remains unaffected. Definition at line 304 of file kurllabel.cpp. References leftURL(), QLabel::pixmap(), QLabel::setPixmap(), and setUnderline().

bool KURLLabel::event | ( | QEvent * | e | ) | `[protected, virtual]`

| Catch parent palette changes. Definition at line 320 of file kurllabel.cpp. References QPalette::brush(), KGlobalSettings::linkColor(), QPalette::setBrush(), and QPalette::setColor().

The documentation for this class was generated from the following files:

- kurllabel.h
- kurllabel.cpp

This file is part of the documentation for kdeui Library Version 3.4.1.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sat Jun 11 20:22:39 2005 by doxygen 1.4.1 written by Dimitri van Heesch, © 1997-2003