Rabbit Remote Control 0.1.0-bate14
Loading...
Searching...
No Matches
CFrmExtensionManager Class Reference

扩展管理器界面 More...

#include <FrmExtensionManager.h>

Inheritance diagram for CFrmExtensionManager:
Collaboration diagram for CFrmExtensionManager:

Public Member Functions

 CFrmExtensionManager (QWebEngineProfile *profile, QWidget *parent=nullptr)
int SetProfile (QWebEngineProfile *profile)
 设置 WebEngine Profile
void InstallExtension (const QString &path)
 安装或加载 Chrome 扩展
void UninstallExtension (const QString &id)
 卸载扩展
void EnableExtension (const QString &id, bool bEnable)
 启用扩展
QList< QWebEngineExtensionInfo > GetInstalledExtensions () const
 获取已安装的扩展列表
QWebEngineExtensionInfo GetExtensionInfo (const QString &id) const
 获取扩展详细信息

Private Types

enum  ColumnNo {
  Name = 0 , Enabled , Description , PopupUrl ,
  ID , Path
}

Private Slots

void on_pbInstall_clicked ()
void on_pbLoad_clicked ()
void on_pbUninstall_clicked ()
void on_pbRefresh_clicked ()
void on_pbDetails_clicked ()
void on_pbOpenDevTools_clicked ()
void on_pbOpenExtensionPath_clicked ()
void slotExtensionItemChanged (QStandardItem *item)
void slotSelectionChanged ()
void slotCustomContextMenu (const QPoint &pos)
void slotLoadFinished (const QWebEngineExtensionInfo &extension)
void slotInstallFinished (const QWebEngineExtensionInfo &extension)
void slotUnloadFinished (const QWebEngineExtensionInfo &extension)
void slotUninstallFinished (const QWebEngineExtensionInfo &extension)
void slotCopyPopupUrl ()
void slotCopyPath ()

Private Member Functions

void InitializeUI ()
void SetupConnections ()
int RefreshExtensionList ()
int AddExtensionItem (const QWebEngineExtensionInfo &info)
int RemoveExtensionItem (const QString &extensionId)

Private Attributes

Ui::CFrmExtensionManager * ui
QWebEngineProfile * m_pProfile
QStandardItemModel * m_pModelExtensions
QAction * m_pInstall
QAction * m_pLoad
QAction * m_pUninstall
QAction * m_pRefresh
QAction * m_pCopyUrl
QAction * m_pCopyPath
QAction * m_pDetails
QAction * m_pOpenFolder

Detailed Description

扩展管理器界面

  • Qt 版本要求:必须使用 Qt 6.10 或更高版本
  • 扩展格式:只支持 Manifest V3 格式的扩展
  • 配置文件:不能使用 off-the-record 的配置文件

查找 Chrome 已安装的扩展:

  • 在 Chrmoe 地址栏中输入: chrome://version/
  • 在其中找到“个人资料路径”
  • Chrome 扩展位于“个人资料路径”下的“Extensions”目录下

Definition at line 28 of file FrmExtensionManager.h.

Member Enumeration Documentation

◆ ColumnNo

enum CFrmExtensionManager::ColumnNo
private

Definition at line 123 of file FrmExtensionManager.h.

Constructor & Destructor Documentation

◆ ~CFrmExtensionManager()

CFrmExtensionManager::~CFrmExtensionManager ( )
virtual

Definition at line 59 of file FrmExtensionManager.cpp.

Member Function Documentation

◆ AddExtensionItem()

int CFrmExtensionManager::AddExtensionItem ( const QWebEngineExtensionInfo & info)
private

Definition at line 256 of file FrmExtensionManager.cpp.

◆ EnableExtension()

void CFrmExtensionManager::EnableExtension ( const QString & id,
bool bEnable )

启用扩展

Parameters
extensionId- 扩展 ID

Definition at line 196 of file FrmExtensionManager.cpp.

◆ GetExtensionInfo()

QWebEngineExtensionInfo CFrmExtensionManager::GetExtensionInfo ( const QString & id) const

获取扩展详细信息

Parameters
extensionId- 扩展 ID

Definition at line 223 of file FrmExtensionManager.cpp.

◆ GetInstalledExtensions()

QList< QWebEngineExtensionInfo > CFrmExtensionManager::GetInstalledExtensions ( ) const

获取已安装的扩展列表

Returns
扩展信息列表

Definition at line 212 of file FrmExtensionManager.cpp.

◆ InitializeUI()

void CFrmExtensionManager::InitializeUI ( )
private

Definition at line 65 of file FrmExtensionManager.cpp.

◆ InstallExtension()

void CFrmExtensionManager::InstallExtension ( const QString & path)

安装或加载 Chrome 扩展

Parameters
path- 扩展文件路径 (.crx 文件或解包目录)
Note
  • Qt 版本要求:必须使用 Qt 6.10 或更高版本
  • 扩展格式:只支持 Manifest V3 格式的扩展
  • 配置文件:不能使用 off-the-record 的配置文件

Definition at line 157 of file FrmExtensionManager.cpp.

◆ on_pbDetails_clicked

void CFrmExtensionManager::on_pbDetails_clicked ( )
privateslot

Definition at line 357 of file FrmExtensionManager.cpp.

◆ on_pbInstall_clicked

void CFrmExtensionManager::on_pbInstall_clicked ( )
privateslot

Definition at line 305 of file FrmExtensionManager.cpp.

◆ on_pbLoad_clicked

void CFrmExtensionManager::on_pbLoad_clicked ( )
privateslot

Definition at line 316 of file FrmExtensionManager.cpp.

◆ on_pbOpenDevTools_clicked

void CFrmExtensionManager::on_pbOpenDevTools_clicked ( )
privateslot

Definition at line 381 of file FrmExtensionManager.cpp.

◆ on_pbOpenExtensionPath_clicked

void CFrmExtensionManager::on_pbOpenExtensionPath_clicked ( )
privateslot

Definition at line 389 of file FrmExtensionManager.cpp.

◆ on_pbRefresh_clicked

void CFrmExtensionManager::on_pbRefresh_clicked ( )
privateslot

Definition at line 351 of file FrmExtensionManager.cpp.

◆ on_pbUninstall_clicked

void CFrmExtensionManager::on_pbUninstall_clicked ( )
privateslot

Definition at line 325 of file FrmExtensionManager.cpp.

◆ RefreshExtensionList()

int CFrmExtensionManager::RefreshExtensionList ( )
private

Definition at line 238 of file FrmExtensionManager.cpp.

◆ RemoveExtensionItem()

int CFrmExtensionManager::RemoveExtensionItem ( const QString & extensionId)
private

Definition at line 293 of file FrmExtensionManager.cpp.

◆ SetProfile()

int CFrmExtensionManager::SetProfile ( QWebEngineProfile * profile)

设置 WebEngine Profile

Parameters
profile- QWebEngineProfile 对象
Returns
成功返回 0,失败返回 -1

Definition at line 128 of file FrmExtensionManager.cpp.

◆ SetupConnections()

void CFrmExtensionManager::SetupConnections ( )
private

Definition at line 113 of file FrmExtensionManager.cpp.

◆ slotCopyPath

void CFrmExtensionManager::slotCopyPath ( )
privateslot

Definition at line 523 of file FrmExtensionManager.cpp.

◆ slotCopyPopupUrl

void CFrmExtensionManager::slotCopyPopupUrl ( )
privateslot

Definition at line 508 of file FrmExtensionManager.cpp.

◆ slotCustomContextMenu

void CFrmExtensionManager::slotCustomContextMenu ( const QPoint & pos)
privateslot

Definition at line 427 of file FrmExtensionManager.cpp.

◆ slotExtensionItemChanged

void CFrmExtensionManager::slotExtensionItemChanged ( QStandardItem * item)
privateslot

Definition at line 403 of file FrmExtensionManager.cpp.

◆ slotInstallFinished

void CFrmExtensionManager::slotInstallFinished ( const QWebEngineExtensionInfo & extension)
privateslot

Definition at line 448 of file FrmExtensionManager.cpp.

◆ slotLoadFinished

void CFrmExtensionManager::slotLoadFinished ( const QWebEngineExtensionInfo & extension)
privateslot

Definition at line 478 of file FrmExtensionManager.cpp.

◆ slotSelectionChanged

void CFrmExtensionManager::slotSelectionChanged ( )
privateslot

Definition at line 416 of file FrmExtensionManager.cpp.

◆ slotUninstallFinished

void CFrmExtensionManager::slotUninstallFinished ( const QWebEngineExtensionInfo & extension)
privateslot

Definition at line 464 of file FrmExtensionManager.cpp.

◆ slotUnloadFinished

void CFrmExtensionManager::slotUnloadFinished ( const QWebEngineExtensionInfo & extension)
privateslot

Definition at line 494 of file FrmExtensionManager.cpp.

◆ UninstallExtension()

void CFrmExtensionManager::UninstallExtension ( const QString & id)

卸载扩展

Parameters
extensionId- 扩展 ID

Definition at line 180 of file FrmExtensionManager.cpp.

Member Data Documentation

◆ m_pCopyPath

QAction* CFrmExtensionManager::m_pCopyPath
private

Definition at line 118 of file FrmExtensionManager.h.

◆ m_pCopyUrl

QAction* CFrmExtensionManager::m_pCopyUrl
private

Definition at line 117 of file FrmExtensionManager.h.

◆ m_pDetails

QAction* CFrmExtensionManager::m_pDetails
private

Definition at line 119 of file FrmExtensionManager.h.

◆ m_pInstall

QAction* CFrmExtensionManager::m_pInstall
private

Definition at line 113 of file FrmExtensionManager.h.

◆ m_pLoad

QAction* CFrmExtensionManager::m_pLoad
private

Definition at line 114 of file FrmExtensionManager.h.

◆ m_pModelExtensions

QStandardItemModel* CFrmExtensionManager::m_pModelExtensions
private

Definition at line 111 of file FrmExtensionManager.h.

◆ m_pOpenFolder

QAction* CFrmExtensionManager::m_pOpenFolder
private

Definition at line 120 of file FrmExtensionManager.h.

◆ m_pProfile

QWebEngineProfile* CFrmExtensionManager::m_pProfile
private

Definition at line 110 of file FrmExtensionManager.h.

◆ m_pRefresh

QAction* CFrmExtensionManager::m_pRefresh
private

Definition at line 116 of file FrmExtensionManager.h.

◆ m_pUninstall

QAction* CFrmExtensionManager::m_pUninstall
private

Definition at line 115 of file FrmExtensionManager.h.

◆ ui

Ui::CFrmExtensionManager* CFrmExtensionManager::ui
private

Definition at line 109 of file FrmExtensionManager.h.


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