LeechCraft  0.6.70-15082-g543737046d
Modular cross-platform feature rich live environment.
LC::Util::TagsLineEdit Class Reference

A line edit class suitable for use with TagsCompleter. More...

#include "tagslineedit.h"

+ Inheritance diagram for LC::Util::TagsLineEdit:
+ Collaboration diagram for LC::Util::TagsLineEdit:

Public Slots

void setTags (const QStringList &tags)
 Sets the currently selected tags. More...
 

Signals

void tagsChosen ()
 

Public Member Functions

 TagsLineEdit (QWidget *parent)
 Constructs the line edit widget. More...
 
void AddSelector (LineEditButtonManager *manager=nullptr)
 Adds the selector widget to the line edit. More...
 
void AddSelector (CategorySelector *)
 
QString GetSeparator () const
 Returns the separator for the tags. More...
 
void SetSeparator (const QString &)
 Sets the separator for the tags. More...
 

Protected Member Functions

void keyPressEvent (QKeyEvent *) override
 
void focusInEvent (QFocusEvent *) override
 
void contextMenuEvent (QContextMenuEvent *) override
 
void SetCompleter (TagsCompleter *)
 

Friends

class TagsCompleter
 

Detailed Description

A line edit class suitable for use with TagsCompleter.

One would need this extra class because of custom behavior of both tags completer and line edit semantics.

See also
TagsCompleter

Definition at line 34 of file tagslineedit.h.

Constructor & Destructor Documentation

◆ TagsLineEdit()

LC::Util::TagsLineEdit::TagsLineEdit ( QWidget *  parent)
explicit

Constructs the line edit widget.

Creates the line edit widget.

Parameters
[in]parentParent widget.

Definition at line 32 of file tagslineedit.cpp.

References AddSelector().

+ Here is the call graph for this function:

Member Function Documentation

◆ AddSelector() [1/2]

void LC::Util::TagsLineEdit::AddSelector ( CategorySelector selector)

Definition at line 66 of file tagslineedit.cpp.

References tagsChosen().

◆ AddSelector() [2/2]

void LC::Util::TagsLineEdit::AddSelector ( LineEditButtonManager manager = nullptr)

Adds the selector widget to the line edit.

Because this function uses the completion model, it should be used after a TagsCompleter has been set on this line edit.

This function also creates an overlay button to aid user in selecting tags. The passed manager object is used (if it is not nullptr), otherwise a new LineEditButtonManager is created internally to manage this line edit.

Parameters
[in]managerThe line edit buttons manager to use, or nullptr to create one.
See also
TagsCompleter

Definition at line 38 of file tagslineedit.cpp.

Referenced by TagsLineEdit().

+ Here is the caller graph for this function:

◆ contextMenuEvent()

void LC::Util::TagsLineEdit::contextMenuEvent ( QContextMenuEvent *  e)
overrideprotected

Definition at line 176 of file tagslineedit.cpp.

◆ focusInEvent()

void LC::Util::TagsLineEdit::focusInEvent ( QFocusEvent *  e)
overrideprotected

Definition at line 169 of file tagslineedit.cpp.

◆ GetSeparator()

QString LC::Util::TagsLineEdit::GetSeparator ( ) const

Returns the separator for the tags.

See also
SetSeparator()
GetDefaultTagsSeparator ()

Definition at line 93 of file tagslineedit.cpp.

References LC::Util::CategorySelector::SetSeparator().

Referenced by LC::Util::TagsCompleter::OverrideModel().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ keyPressEvent()

void LC::Util::TagsLineEdit::keyPressEvent ( QKeyEvent *  e)
overrideprotected

Definition at line 132 of file tagslineedit.cpp.

◆ SetCompleter()

void LC::Util::TagsLineEdit::SetCompleter ( TagsCompleter c)
protected

Definition at line 188 of file tagslineedit.cpp.

◆ SetSeparator()

void LC::Util::TagsLineEdit::SetSeparator ( const QString &  sep)

Sets the separator for the tags.

This function doesn't update the text in the line edit.

See also
GetSeparator()

Definition at line 98 of file tagslineedit.cpp.

References tagsChosen().

◆ setTags

void LC::Util::TagsLineEdit::setTags ( const QStringList &  tags)
slot

Sets the currently selected tags.

Sets the line edit text to tags joined by separator. If tags selector is installed via AddSelector(), the selector is updated as well.

Parameters
[in]tagsThe list of selected tags.

Definition at line 125 of file tagslineedit.cpp.

◆ tagsChosen

void LC::Util::TagsLineEdit::tagsChosen ( )
signal

Referenced by AddSelector(), and SetSeparator().

+ Here is the caller graph for this function:

Friends And Related Function Documentation

◆ TagsCompleter

friend class TagsCompleter
friend

Definition at line 38 of file tagslineedit.h.


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