LeechCraft 0.6.70-18450-gabe19ee3b0
Modular cross-platform feature rich live environment.
Loading...
Searching...
No Matches
LC Namespace Reference

Namespaces

namespace  AN
namespace  Util
namespace  EF
 The various Additional_ entity fields.
namespace  Mimes
 The various well-known values of the inter-plugin Entity's MIME_ field.
namespace  PowerState
 The values of the Entity::Entity_ corresponding to LC::Mimes::PowerStateChanged.

Classes

class  IHookProxy
 Class for hook-based communication between plugins. More...
struct  ImageServiceInfo
 Describes a single image hosting service (including account). More...
struct  RemoteImageInfo
 Describes a remote image. More...
struct  Request
 Describes the elementary subrequest. More...
struct  TabRecoverInfo
 Keeps the tab state between runs. More...
struct  ActionInfo
 Describes an action exposed in shortcut manager. More...
struct  TabClassInfo
 The structure describing a single tab class. More...
struct  ProcessInfo
 Describes a process represented by a row in an IJobHolder model. More...
struct  NewsInfo
struct  RowInfo
class  QuarkComponent
 Describes a single quark. More...
struct  Entity
 A message used for inter-plugin communication. More...

Typedefs

typedef std::shared_ptr< IHookProxyIHookProxy_ptr
typedef QList< ImageServiceInfoImageServiceInfos_t
 The list of image storage service descriptions.
typedef QList< RemoteImageInfoRemoteImageInfos_t
 A list of remote images.
typedef QList< QPair< QByteArray, QVariant > > DynPropertiesList_t
typedef QList< TabClassInfoTabClasses_t
using SpecificInfo
typedef std::shared_ptr< QuarkComponentQuarkComponent_ptr
 A shared pointer to a quark.
typedef QList< QuarkComponent_ptrQuarkComponents_t
 A list of quarks pointers.

Enumerations

enum  PartitionType {
  NonPartition = -1 ,
  Empty = 0x00 ,
  Win95FAT32 = 0x0b ,
  Win95FAT32LBA = 0x0c
}
 Describes the various common partition types. More...
enum  CommonDevRole {
  DevType = Qt::UserRole + 1 ,
  DevID ,
  DevParentID ,
  DevPersistentID ,
  CommonDevRoleMax
}
 Roles for both USB Mass Storage and generic USB devices. More...
enum  USBDeviceRole {
  ID = CommonDevRole::CommonDevRoleMax + 1 ,
  Busnum ,
  Devnum ,
  VendorID ,
  Vendor ,
  ModelID ,
  Model ,
  SysFile ,
  USBDeviceRoleMax
}
 Roles specific to generic USB devices. More...
enum  MassStorageRole {
  DevFile = USBDeviceRole::USBDeviceRoleMax + 1 ,
  PartType ,
  IsRemovable ,
  IsPartition ,
  IsMountable ,
  IsMounted ,
  IsMediaAvailable ,
  VisibleName ,
  AvailableSize ,
  TotalSize ,
  MountPoints ,
  MassStorageRoleMax
}
 Roles specific to mass storage USB devices. More...
enum  DeviceType : uint8_t {
  USBDevice ,
  MassStorage
}
 Describes various USB removable devices. More...
enum class  ActionsEmbedPlace {
  ToolsMenu ,
  CommonContextMenu ,
  QuickLaunch ,
  TrayMenu ,
  LCTray
}
 Specifies where the actions should be embedded. More...
enum  TabFeature {
  TFEmpty = 0x0 ,
  TFOpenableByRequest = 1 << 0 ,
  TFSingle = 1 << 1 ,
  TFByDefault = 1 << 2 ,
  TFSuggestOpening = 1 << 3 ,
  TFOverridesTabClose = 1 << 4
}
 Defines different behavior features of tab classes. More...
enum class  ProcessKind : std::uint8_t {
  Download ,
  Upload ,
  Generic
}
enum class  ProcessState : std::uint8_t {
  Running ,
  Paused ,
  Finished ,
  Error ,
  Unknown
}
enum class  JobHolderRole { RowInfo = MaxValue<CustomDataRoles> + 1 }
 This enum contains roles that are used to query job states. More...
enum class  JobHolderProcessRole {
  Done = MaxValue<JobHolderRole> + 1 ,
  Total ,
  ProgressCustomText ,
  State ,
  StateCustomText
}
enum class  ContentType {
  HTML ,
  PlainText
}
enum class  EditorAction {
  Find ,
  Replace
}
 Enumeration for some standard editor actions. More...
enum  TaskParameter {
  NoParameters = 0 ,
  NoAutostart = 1 ,
  DoNotSaveInHistory = 2 ,
  IsDownloaded = 4 ,
  FromUserInitiated = 8 ,
  DoNotNotifyUser = 32 ,
  Internal = 64 ,
  NotPersistent = 128 ,
  DoNotAnnounceEntity = 256 ,
  OnlyHandle = 512 ,
  OnlyDownload = 1024 ,
  AutoAccept = 2048 ,
  FromCommandLine = 4096
}
 Describes single task parameter. More...
enum class  CustomDataRoles { Tags = Qt::UserRole + 100 }
enum class  Priority {
  Info ,
  Warning ,
  Critical
}

Functions

 Q_DECLARE_FLAGS (TabFeatures, LC::TabFeature)
constexpr int operator+ (JobHolderRole role) noexcept
constexpr int operator+ (JobHolderProcessRole role) noexcept
 Q_DECLARE_FLAGS (TaskParameters, TaskParameter)
constexpr int operator+ (CustomDataRoles role) noexcept
constexpr QColor operator""_rgb (const char *str, std::size_t size)
template<Util::CtString S>
constexpr auto operator""_ct () noexcept
template<typename Target, std::derived_from< QObject > Src>
decltype(auto) qobject_ref_cast (Src *obj, std::source_location loc=std::source_location::current())
template<typename Target, std::derived_from< QObject > Src>
decltype(auto) qobject_ref_cast (Src &obj, std::source_location loc=std::source_location::current())
constexpr QLatin1String operator""_ql (const char *str, std::size_t size) noexcept
constexpr QStringView operator""_qsv (const char16_t *str, std::size_t size) noexcept
QByteArray operator""_qba (const char *str, std::size_t size) noexcept
template<Util::CtString S>
QString operator""_qs () noexcept
constexpr quint64 operator""_mib (quint64 mibs) noexcept
bool operator< (const LC::Entity &e1, const LC::Entity &e2)
bool operator== (const LC::Entity &e1, const LC::Entity &e2)
template<typename... Rets>
Util::detail::DBusAwaiter< Rets... > operator co_await (const QDBusPendingReply< Rets... > &reply)
template<typename L, typename R>
Util::detail::EitherAwaiter< L, R, std::identity > operator co_await (const Util::Either< L, R > &either)
template<typename R>
Util::detail::FutureAwaiter< R > operator co_await (QFuture< R > future)
UTIL_THREADS_API Util::detail::NRAwaiter operator co_await (QNetworkReply &reply)
UTIL_THREADS_API Util::detail::ProcessAwaiter operator co_await (QProcess &reply)
Util::detail::TimerAwaiter operator co_await (std::chrono::milliseconds duration)

Variables

Q_DECL_IMPORT const QString IgnoreSelf { QStringLiteral ("IgnoreSelf") }
Q_DECL_IMPORT const QString AllowedSemantics { QStringLiteral ("AllowedSemantics") }
template<>
constexpr int MaxValue< JobHolderRole > = +JobHolderRole::RowInfo
template<>
constexpr int MaxValue< JobHolderProcessRole > = +JobHolderProcessRole::StateCustomText
template<typename>
constexpr int MaxValue {}
template<>
constexpr int MaxValue< CustomDataRoles > = +CustomDataRoles::Tags

Typedef Documentation

◆ DynPropertiesList_t

typedef QList<QPair<QByteArray, QVariant> > LC::DynPropertiesList_t

Definition at line 79 of file ihaverecoverabletabs.h.

◆ IHookProxy_ptr

typedef std::shared_ptr<IHookProxy> LC::IHookProxy_ptr

Definition at line 108 of file ihookproxy.h.

◆ ImageServiceInfos_t

The list of image storage service descriptions.

Definition at line 37 of file iimgsource.h.

◆ QuarkComponent_ptr

typedef std::shared_ptr<QuarkComponent> LC::QuarkComponent_ptr

A shared pointer to a quark.

Definition at line 133 of file iquarkcomponentprovider.h.

◆ QuarkComponents_t

A list of quarks pointers.

Definition at line 137 of file iquarkcomponentprovider.h.

◆ RemoteImageInfos_t

A list of remote images.

Definition at line 81 of file iimgsource.h.

◆ SpecificInfo

Initial value:
std::variant<
>
Describes a process represented by a row in an IJobHolder model.
Definition ijobholder.h:42

Definition at line 58 of file ijobholder.h.

◆ TabClasses_t

Definition at line 132 of file ihavetabs.h.

Enumeration Type Documentation

◆ ActionsEmbedPlace

enum class LC::ActionsEmbedPlace
strong

Specifies where the actions should be embedded.

Enumerator
ToolsMenu 

The Tools submenu of main LeechCraft menu.

CommonContextMenu 

The common tabbar context menu.

This menu is used to open new tabs, close opened tabs and manipulate already opened tabs. Plugins will typically embed actions that don't relate to any currently opened tab but should be invoked easily by the user.

QuickLaunch 

The quick launch area.

The quick launch area resides in the SB2 panel or similar. Actions and menus embedded in such areas are always visible by the user (unless they hide it explicitly). So, this area can be used to either perform some actions in one click (even faster than ToolsMenu) or to host actions displaying state, like a network monitor.

This area is similar to LCTray but with more focus on performing actions.

See also
LCTray
TrayMenu 

The context menu of the LeechCraft tray icon.

LCTray 

The tray area.

Similar to QuickLaunch, but with more focus on displaying state.

See also
QuickLaunch

Definition at line 21 of file iactionsexporter.h.

◆ CommonDevRole

Roles for both USB Mass Storage and generic USB devices.

Enumerator
DevType 

The type of the device.

This role is expected to contain a member of the DeviceType enum.

See also
DeviceType
DevID 

The unique device ID (QString).

See also
DevParentID
DevParentID 

The parent's device ID (QString).

If not null, this refers to some other row's DevID.

See also
DevID
DevPersistentID 

The persistent unique device ID (QString).

CommonDevRoleMax 

Definition at line 44 of file deviceroles.h.

◆ ContentType

enum class LC::ContentType
strong

Possible content types a text editor could handle.

Enumerator
HTML 

HTML content. The corresponding editor should provide WYSIWYG capabilities or at least some fancy highlighting for HTML.

PlainText 

Well, plain text.

Definition at line 22 of file itexteditor.h.

◆ CustomDataRoles

enum class LC::CustomDataRoles
strong

This enumeration describes the additional roles that may be returned from models that are embedded in Summary-like viewers. Those like IJobHolders or IFindProxies.

See also
IJobHolder, IFindProxy
Enumerator
Tags 

The role for the string list with tags. So, QStringList is expected to be returned.

Definition at line 174 of file structures.h.

◆ DeviceType

enum LC::DeviceType : uint8_t

Describes various USB removable devices.

The corresponding device model role is CommonDevRole::DevType.

All device types are expected to return meaningful data for roles in the CommonDevRole enum.

See also
CommonDevRole::DevType
CommonDevRole
Enumerator
USBDevice 

A general USB device.

The device model rows for this USB device are expected to also return data for roles in the USBDeviceRole enum.

See also
USBDeviceRole
MassStorage 

A mass storage USB device, like a flash drive.

The device model rows for this USB device are expected to also return data for roles in the MassStorageRole enum.

See also
MassStorageRole

Definition at line 23 of file devicetypes.h.

◆ EditorAction

enum class LC::EditorAction
strong

Enumeration for some standard editor actions.

The corresponding actions may be retrieved via ITextEditor::GetEditorAction().

See also
ITextEditor::GetEditorAction()
Enumerator
Find 

Open "Find" dialog.

Replace 

Open "Replace" dialog.

Definition at line 41 of file itexteditor.h.

◆ JobHolderProcessRole

enum class LC::JobHolderProcessRole
strong
Enumerator
Done 
Total 
ProgressCustomText 
State 
StateCustomText 

Definition at line 99 of file ijobholder.h.

◆ JobHolderRole

enum class LC::JobHolderRole
strong

This enum contains roles that are used to query job states.

Enumerator
RowInfo 

This role is for the LC::RowInfo struct.

The value at this role is a RowInfo.

Definition at line 82 of file ijobholder.h.

◆ MassStorageRole

Roles specific to mass storage USB devices.

The corresponding CommonDevRole::DevType is DeviceType::MassStorage.

Enumerator
DevFile 

The device file representing the device (QString).

For example, it could be /dev/sdc1 on a Linux system.

PartType 

The type of the partition.

This role is expected to contain a member of the PartitionType enum.

See also
PartitionType
IsRemovable 

Whether this item is removable (bool).

IsPartition 

Whether this item is a partition (bool).

IsMountable 

Whether this item could be mounted (bool).

IsMounted 

Whether this item is currently mounted (bool).

IsMediaAvailable 

Whether this item contains media (bool).

For example, a CD in a CD-ROM.

VisibleName 

Human-readable name of the device (QString).

AvailableSize 

Available size in bytes (qint64).

If the value is -1, the available size is not known. It is very likely the available size wouldn't be known for unmounted devices.

TotalSize 

Total size in bytes (qint64).

If the value is -1, the available size is not known. It is very likely the total size wouldn't be known for unmounted devices.

MountPoints 

The list of directories this item is mounted to (QStringList).

MassStorageRoleMax 

Definition at line 123 of file deviceroles.h.

◆ PartitionType

Describes the various common partition types.

This enum is used for USB Mass Storage devices and similar ones where the concept of a partition makes sense.

See also
MassStorageRole::PartType
Enumerator
NonPartition 

Something other than a partition.

Empty 

Empty partition without a type.

Win95FAT32 

FAT32 partition.

Win95FAT32LBA 

FAT32 partition with LBA.

Definition at line 23 of file deviceroles.h.

◆ Priority

enum class LC::Priority
strong
Enumerator
Info 
Warning 
Critical 

Definition at line 190 of file structures.h.

◆ ProcessKind

enum class LC::ProcessKind : std::uint8_t
strong
Enumerator
Download 
Upload 
Generic 

Definition at line 25 of file ijobholder.h.

◆ ProcessState

enum class LC::ProcessState : std::uint8_t
strong
Enumerator
Running 
Paused 
Finished 
Error 
Unknown 

Definition at line 71 of file ijobholder.h.

◆ TabFeature

Defines different behavior features of tab classes.

Enumerator
TFEmpty 

No special features.

TFOpenableByRequest 

This tab could be opened by user request.

If tab class has this feature, a corresponding action in new tab menu would be created to allow the user to open this tab.

If tab class doesn't have this feature, the only way for the tab to be opened is for the corresponding to emit the IHaveTabs::addNewTab() signal when needed.

See also
TFSingle.
TFSingle 

There could be only one instance of this tab.

By default, LeechCraft considers that each tab having the TFOpenableByRequest feature could be opened multiple times, but sometimes it doesn't make sense to have more than one tab of some class. In this case, this feature should also be present for that tab class.

This feature requires the TFOpenableByRequest feature as well.

See also
TFOpenableByRequest.
TFByDefault 

The tab should be opened by default.

By default, all tabs are hidden, both having TFSingle feature and lacking it. If a tab wants to be shown after LeechCraft startup until the user manually closes it, the corresponding tab class should have this feature as well.

TFSuggestOpening 

The tab is to be suggested in a quick launch area.

Tabs having this flag are expected to be contained by default in some kind of quick launch area like the one in the Sidebar plugin.

Consider adding this flag if you think user would often open tabs of your class.

TFOverridesTabClose 

The tab uses the standard tab close shortcut (Ctrl+W).

Thus, when this tab is active, the tab close shortcut will be disabled if it matches "Ctrl+W".

Definition at line 22 of file ihavetabs.h.

◆ TaskParameter

Describes single task parameter.

Enumerator
NoParameters 

Use default parameters.

NoAutostart 

Task should not be started automatically after addition.

DoNotSaveInHistory 

Task should not be saved in history.

IsDownloaded 

Task is really downloaded, so, a file, for example, has appeared as a result.

FromUserInitiated 

Task is created as a result of user's actions.

DoNotNotifyUser 

User should not be notified about task finish.

Internal 

Task is used internally and would not be visible to the user at all.

NotPersistent 

Task should not be saved as it would have no meaning after next start.

DoNotAnnounceEntity 

When the task is finished, it should not be announced via gotEntity() signal.

OnlyHandle 

This task should not be downloaded, only handled by a handler.

OnlyDownload 

This task should not be handled, only downloaded by a downloader.

AutoAccept 

This task should be automatically accepted if any handler is available.

FromCommandLine 

The entity was generated from command line parameters or LeechCraft process invocation.

Definition at line 24 of file structures.h.

◆ USBDeviceRole

Roles specific to generic USB devices.

The corresponding CommonDevRole::DevType is DeviceType::USBDevice.

Enumerator
ID 

The general USB ID of the role (QByteArray).

Busnum 

The bus this device is attached to (int).

Devnum 

The device number on the given bus (int).

VendorID 

The ID of the vendor (QString).

Vendor 

The human-readable name of the vendor (QString).

ModelID 

The ID of the model (QString).

Model 

The human-readable name of the device model (QString).

SysFile 

The system file representing the device (QString).

This role should contain the system file path representing the device, if applicable.

USBDeviceRoleMax 

Definition at line 79 of file deviceroles.h.

Function Documentation

◆ operator co_await() [1/6]

template<typename... Rets>
Util::detail::DBusAwaiter< Rets... > LC::operator co_await ( const QDBusPendingReply< Rets... > & reply)

Definition at line 80 of file dbus.h.

◆ operator co_await() [2/6]

template<typename L, typename R>
Util::detail::EitherAwaiter< L, R, std::identity > LC::operator co_await ( const Util::Either< L, R > & either)

Definition at line 122 of file either.h.

◆ operator co_await() [3/6]

template<typename R>
Util::detail::FutureAwaiter< R > LC::operator co_await ( QFuture< R > future)

Definition at line 50 of file future.h.

◆ operator co_await() [4/6]

UTIL_THREADS_API Util::detail::NRAwaiter LC::operator co_await ( QNetworkReply & reply)

Definition at line 50 of file networkreply.cpp.

References UTIL_THREADS_API.

◆ operator co_await() [5/6]

UTIL_THREADS_API Util::detail::ProcessAwaiter LC::operator co_await ( QProcess & reply)

Definition at line 43 of file process.cpp.

References UTIL_THREADS_API.

◆ operator co_await() [6/6]

UTIL_THREADS_API Util::detail::TimerAwaiter LC::operator co_await ( std::chrono::milliseconds duration)

Definition at line 39 of file timer.cpp.

◆ operator""_ct()

template<Util::CtString S>
auto LC::operator""_ct ( )
constexprnoexcept

Definition at line 188 of file ctstring.h.

◆ operator""_mib()

quint64 LC::operator""_mib ( quint64 mibs)
constexprnoexcept

Definition at line 15 of file udls.h.

◆ operator""_qba()

QByteArray LC::operator""_qba ( const char * str,
std::size_t size )
inlinenoexcept

Definition at line 178 of file qtutil.h.

◆ operator""_ql()

QLatin1String LC::operator""_ql ( const char * str,
std::size_t size )
constexprnoexcept

Definition at line 168 of file qtutil.h.

◆ operator""_qs()

template<Util::CtString S>
QString LC::operator""_qs ( )
noexcept

Definition at line 184 of file qtutil.h.

References LC::Util::ToString().

Here is the call graph for this function:

◆ operator""_qsv()

QStringView LC::operator""_qsv ( const char16_t * str,
std::size_t size )
constexprnoexcept

Definition at line 173 of file qtutil.h.

◆ operator""_rgb()

QColor LC::operator""_rgb ( const char * str,
std::size_t size )
constexpr

Definition at line 130 of file util.h.

◆ operator+() [1/3]

int LC::operator+ ( CustomDataRoles role)
constexprnoexcept

Definition at line 182 of file structures.h.

◆ operator+() [2/3]

int LC::operator+ ( JobHolderProcessRole role)
constexprnoexcept

Definition at line 108 of file ijobholder.h.

◆ operator+() [3/3]

int LC::operator+ ( JobHolderRole role)
constexprnoexcept

Definition at line 91 of file ijobholder.h.

◆ operator<()

UTIL_API bool LC::operator< ( const LC::Entity & e1,
const LC::Entity & e2 )

◆ operator==()

UTIL_API bool LC::operator== ( const LC::Entity & e1,
const LC::Entity & e2 )

◆ Q_DECLARE_FLAGS() [1/2]

LC::Q_DECLARE_FLAGS ( TabFeatures ,
LC::TabFeature  )

◆ Q_DECLARE_FLAGS() [2/2]

LC::Q_DECLARE_FLAGS ( TaskParameters ,
TaskParameter  )

◆ qobject_ref_cast() [1/2]

template<typename Target, std::derived_from< QObject > Src>
decltype(auto) LC::qobject_ref_cast ( Src & obj,
std::source_location loc = std::source_location::current () )

Definition at line 45 of file qobjectrefcast.h.

References qobject_ref_cast().

Here is the call graph for this function:

◆ qobject_ref_cast() [2/2]

template<typename Target, std::derived_from< QObject > Src>
decltype(auto) LC::qobject_ref_cast ( Src * obj,
std::source_location loc = std::source_location::current () )

Definition at line 35 of file qobjectrefcast.h.

References LC::Util::detail::NotifyCastError().

Referenced by qobject_ref_cast().

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

Variable Documentation

◆ AllowedSemantics

const QString LC::AllowedSemantics { QStringLiteral ("AllowedSemantics") }

Definition at line 17 of file anconstantsdefs.cpp.

◆ IgnoreSelf

const QString LC::IgnoreSelf { QStringLiteral ("IgnoreSelf") }

Definition at line 16 of file anconstantsdefs.cpp.

◆ MaxValue

template<typename>
int LC::MaxValue {}
constexpr

Definition at line 14 of file maxvalue.h.

◆ MaxValue< CustomDataRoles >

template<>
int LC::MaxValue< CustomDataRoles > = +CustomDataRoles::Tags
inlineconstexpr

Definition at line 188 of file structures.h.

◆ MaxValue< JobHolderProcessRole >

Definition at line 114 of file ijobholder.h.

◆ MaxValue< JobHolderRole >

template<>
int LC::MaxValue< JobHolderRole > = +JobHolderRole::RowInfo
inlineconstexpr

Definition at line 97 of file ijobholder.h.