From f788b4d88c088d66a04b9362bdedb5c3661c561d Mon Sep 17 00:00:00 2001 From: zhouhuazhi Date: Thu, 10 Nov 2022 17:23:17 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=BC=80=E5=8F=91=E6=8C=87?= =?UTF-8?q?=E5=8D=97=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...45\217\221\346\214\207\345\215\227V2.0.md" | 3040 +++++------------ 1 file changed, 773 insertions(+), 2267 deletions(-) diff --git "a/\345\274\200\345\247\213\350\264\241\347\214\256/openKylin+SDK\345\274\200\345\217\221\346\214\207\345\215\227V2.0.md" "b/\345\274\200\345\247\213\350\264\241\347\214\256/openKylin+SDK\345\274\200\345\217\221\346\214\207\345\215\227V2.0.md" index c6e4f5a..4df44ac 100644 --- "a/\345\274\200\345\247\213\350\264\241\347\214\256/openKylin+SDK\345\274\200\345\217\221\346\214\207\345\215\227V2.0.md" +++ "b/\345\274\200\345\247\213\350\264\241\347\214\256/openKylin+SDK\345\274\200\345\217\221\346\214\207\345\215\227V2.0.md" @@ -4148,51 +4148,27 @@ $ sudo apt-get install libkysdk-package libkysdk-package-dev > 枚举类型 -``` -+--------+-------------------------------------------------+ -| > enum | > LoginState{Ordinary,LoginSuccess,LoginFailed} | -+--------+-------------------------------------------------+ - -+--------------------------------------+-----------------------------------+ -| 声明 | 描述 | -+======================================+===================================+ -| > void setState(LoginState state); | > 设置登录状态 | -+--------------------------------------+-----------------------------------+ -| > LoginState state(); | > 返回登录状态 | -+--------------------------------------+-----------------------------------+ -| > void setLoading(bool flag); | > 设置是否启用加载状态。 | -+--------------------------------------+-----------------------------------+ -| > bool isLoading(); | > 判断是否处于加载状态 | -+--------------------------------------+-----------------------------------+ -| > QString placeholderText(); | > 返回 placeholderText 的文本内容 | -+--------------------------------------+-----------------------------------+ -| > void | > 设置 PlaceholderText 的文本内容 | -| > | | -| > setPlaceholderText(QString&text); | | -+--------------------------------------+-----------------------------------+ -| > void setClearButtonEnabled(bool | > 设置是否启用 ClearButton | -| > | | -| > enable); | | -+--------------------------------------+-----------------------------------+ -| > bool isClearButtonEnabled() const; | > 返回是否启用了 ClearButton | -+--------------------------------------+-----------------------------------+ -| > void setEchoModeBtnVisible(bool | > 设置 EchoModeBtn 是否可见 | -| > | | -| > enable); | | -+--------------------------------------+-----------------------------------+ -| > bool echoModeBtnVisible(); | > 返回 EchoModeBtn 是否可见 | -+--------------------------------------+-----------------------------------+ - -+--------------------------------+---------------------------+ -| > void setClearBtnVisible(bool | > 设置 ClearBtn 是否可见 | -| > | | -| > enable); | | -+================================+===========================+ -| > bool clearBtnVisible(); | > 返回 ClearBtn 是否可见 | -+--------------------------------+---------------------------+ -| > void setEnabled(bool); | > 设置 KLineEdit 是否可用 | -+--------------------------------+---------------------------+ -``` +| | | +|-------|-----------------------------------------------| +| enum  | LoginState{Ordinary,LoginSuccess,LoginFailed} | + +| | | +|------------------------------------------|------------------------| +| 声明 | 描述 | +| void setState(LoginState state); | 设置登录状态 | +| LoginState state(); | 返回登录状态 | +| void setLoading(bool flag); | 设置是否启用加载状态。 | +| bool isLoading(); | 判断是否处于加载状态 | +| QString placeholderText(); | 返回placeholderText的文本内容 | +| void setPlaceholderText(QString&text); | 设置PlaceholderText的文本内容 | +| void setClearButtonEnabled(bool enable); | 设置是否启用ClearButton | +| bool isClearButtonEnabled() const; | 返回是否启用了ClearButton | +| void setEchoModeBtnVisible(bool enable); | 设置EchoModeBtn是否可见 | +| bool echoModeBtnVisible(); | 返回EchoModeBtn是否可见 | +| void setClearBtnVisible(bool enable); | 设置ClearBtn是否可见 | +| bool clearBtnVisible(); | 返回ClearBtn是否可见 | +| void setEnabled(bool); | 设置KLineEdit是否可用 | + #### **4.1.3.2** 搜索输入框 @@ -4206,56 +4182,23 @@ $ sudo apt-get install libkysdk-package libkysdk-package-dev -``` -+--------------------------------------+---------------------------+ -| 声明 | 描述 | -+======================================+===========================+ -| > void setEnabled(bool); | > 设置是否可用 | -+--------------------------------------+---------------------------+ -| > bool isEnabled(); | > 返回是否可用 | -+--------------------------------------+---------------------------+ -| > void setClearButtonEnabled(bool | > 设置是否显示清除按钮 | -| > | | -| > enable); | | -+--------------------------------------+---------------------------+ -| > bool isClearButtonEnabled() const; | > 返回是否显示清除按钮 | -+--------------------------------------+---------------------------+ -| > QStringplaceholderText() const; | > 返回 placeholder | -+--------------------------------------+---------------------------+ -| > void setPlaceholderText(const | > 设置 placeholder 的文本 | -| > | | -| > QString &); | | -+--------------------------------------+---------------------------+ - -+------------------------------------+----------------------------------------+ -| > Qt::Alignment | > 返回 placeholder 的对齐方式 | -| > | | -| > placeholderAlignment() const; | | -+====================================+========================================+ -| > void | > 设置 placeholder 的对齐方式 | -| | | -| setPlaceholderAlignment(Qt::Alignm | | -| | | -| > ent flag); | | -+------------------------------------+----------------------------------------+ -| > Qt::Alignment alignment() const; | > 返回输入文本的对齐方式 | -+------------------------------------+----------------------------------------+ -| > void setAlignment(Qt::Alignment | > 设置输入文本的对齐方式。 | -| > | | -| > flag); | | -+------------------------------------+----------------------------------------+ -| > void clear(); | > 清空搜索框内容。 | -+------------------------------------+----------------------------------------+ -| > void setTranslucent(bool flag); | 设 置 是 否 启 用 半 透 明 效 果 ( 自 | -| | | -| | > 1.2.0.10 启用) | -+------------------------------------+----------------------------------------+ -| > bool isTranslucent(); | 获 取 是 否 启 用 半 透 明 效 果 ( 自 | -| | | -| | > 1.2.0.10 启用) | -+------------------------------------+----------------------------------------+ +| | | +|---------------------------------------------------|---------------------------| +| 声明 | 描述 | +| void setEnabled(bool); | 设置是否可用 | +| bool isEnabled(); | 返回是否可用 | +| void setClearButtonEnabled(bool enable); | 设置是否显示清除按钮 | +| bool isClearButtonEnabled() const; | 返回是否显示清除按钮 | +| QStringplaceholderText() const; | 返回placeholder | +| void setPlaceholderText(const QString &); | 设置placeholder的文本 | +| Qt::Alignment placeholderAlignment() const; | 返回placeholder的对齐方式 | +| void setPlaceholderAlignment(Qt::Alignment flag); | 设置placeholder的对齐方式 | +| Qt::Alignment alignment() const; | 返回输入文本的对齐方式 | +| void setAlignment(Qt::Alignment flag); | 设置输入文本的对齐方式。 | +| void clear(); | 清空搜索框内容。 | +| void setTranslucent(bool flag); | 设置是否启用半透明效果(自1.2.0.10启用) | +| bool isTranslucent(); | 获取是否启用半透明效果(自1.2.0.10启用) | -``` ### **4.1.4** 按钮模块 @@ -4270,46 +4213,23 @@ $ sudo apt-get install libkysdk-package libkysdk-package-dev ``` -+-----------------------------------------------------------+ -| > QPalette palette = m_pBtn1-\>palette(); | -| > | -| > palette.setColor(QPalette::ButtonText,QColor(255,0,0)); | -| > | -| > m_pBtn1-\>setPalette(palette); | -+-----------------------------------------------------------+ - +QPalette palette = m_pBtn1->palette(); +palette.setColor(QPalette::ButtonText,QColor(255,0,0)); +m_pBtn1->setPalette(palette); ``` > QPushButton 中的各接口均适用,支持四种构造方法。 -``` -+-------------------------------------+-------------------------------+ -| 声明 | 描述 | -+=====================================+===============================+ -| > KBorderButton(QWidget\* parent = | > 仅一个 button | -| > nullptr); | | -+-------------------------------------+-------------------------------+ -| KBorderButton(const QString &text, | > 构造一个带文本 button | -| QWidget \*parent | | -| | | -| > = nullptr); | | -+-------------------------------------+-------------------------------+ -| > KBorderButton(const QIcon &icon, | 构造一个带文本和图标的 button | -| > const QString | | -| > | | -| > &text, QWidget \*parent = | | -| > nullptr); | | -+-------------------------------------+-------------------------------+ -| > KBorderButton(const QIcon &icon, | > 构造一个带图标的 button | -| > QWidget \*parent | | -| > | | -| > = nullptr); | | -+-------------------------------------+-------------------------------+ -| > void setIcon(const QIcon &icon); | > 设置按钮图标 | -+-------------------------------------+-------------------------------+ +| | | +|-----------------------------------------------------------------------------------|-------------------| +| 声明 | 描述 | +| KBorderButton(QWidget* parent = nullptr); | 仅一个button | +| KBorderButton(const QString &text, QWidget *parent = nullptr); | 构造一个带文本button | +| KBorderButton(const QIcon &icon, const QString &text, QWidget *parent = nullptr); | 构造一个带文本和图标的button | +| KBorderButton(const QIcon &icon, QWidget *parent = nullptr); | 构造一个带图标的button | +| void setIcon(const QIcon &icon); | 设置按钮图标 | -``` #### **4.1.4.2** 无边框按钮 > @@ -4322,33 +4242,15 @@ $ sudo apt-get install libkysdk-package libkysdk-package-dev > QPushButton 中的各接口均适用,支持四种构造方法。 -``` - ------ ------ - 声明 描述 - ------ ------ +| | | +|---------------------------------------------------------------------------------------|-------------------| +| 声明 | 描述 | +| KBorderlessButton(QWidget* parent = nullptr); | 仅一个button | +| KBorderlessButton(const QString &text, QWidget *parent = nullptr); | 构造一个带文本button | +| KBorderlessButton(const QIcon &icon, const QString &text, QWidget *parent = nullptr); | 构造一个带文本和图标的button | +| KBorderlessButton(const QIcon &icon, QWidget *parent = nullptr); | 构造一个带图标的button | +| void setIcon(const QIcon &icon) | 设置无边框按钮图标。 | -+-------------------------------------------+---------------------------------+ -| > KBorderlessButton(QWidget\* parent = | > 仅一个 button | -| > | | -| > nullptr); | | -+===========================================+=================================+ -| > KBorderlessButton(const QString &text, | > 构造一个带文本 button | -| > | | -| > QWidget \*parent = nullptr); | | -+-------------------------------------------+---------------------------------+ -| > KBorderlessButton(const QIcon &icon, | > 构造一个带文本和图标的 button | -| > | | -| > const QString &text, QWidget \*parent = | | -| > | | -| > nullptr); | | -+-------------------------------------------+---------------------------------+ -| > KBorderlessButton(const QIcon &icon, | > 构造一个带图标的 button | -| > | | -| > QWidget \*parent = nullptr); | | -+-------------------------------------------+---------------------------------+ -| > void setIcon(const QIcon &icon) | > 设置无边框按钮图标。 | -+-------------------------------------------+---------------------------------+ -``` #### **4.1.4.3** 下拉菜单按钮 @@ -4366,31 +4268,19 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" > QPushButton 的各个接口均适用。 -``` -+------------------------------+-----------------------+ -| 声明 | 描述 | -+==============================+=======================+ -| > QMenu\* menu(); | > 获取主菜单 | -+------------------------------+-----------------------+ -| > QMenu\* themeMenu(); | > 获取主题菜单 | -+------------------------------+-----------------------+ -| > QAction\* settingAction(); | > 获取设置 action | -+------------------------------+-----------------------+ -| > QAction\* themeAction(); | > 获取主题 Action | -+------------------------------+-----------------------+ -| > QAction\* assistAction(); | > 获取帮助 Action | -+------------------------------+-----------------------+ -| > QAction\* aboutAction() | > 获取关于 Action | -+------------------------------+-----------------------+ -| > QAction\* quitAction(); | > 获取离开 Action | -+------------------------------+-----------------------+ -| > QAction\* autoAction(); | > 获取跟随主题 Action | -+------------------------------+-----------------------+ -| > QAction\* lightAction(); | > 获取浅色主题 Action | -+------------------------------+-----------------------+ -| > QAction\* darkAction(); | > 获取深色主题 Action | -+------------------------------+-----------------------+ -``` +| | | +|---------------------------|--------------| +| 声明 | 描述 | +| QMenu* menu(); | 获取主菜单 | +| QMenu* themeMenu(); | 获取主题菜单 | +| QAction* settingAction(); | 获取设置action | +| QAction* themeAction(); | 获取主题Action | +| QAction* assistAction(); | 获取帮助Action | +| QAction* aboutAction() | 获取关于Action | +| QAction* quitAction(); | 获取离开Action | +| QAction* autoAction(); | 获取跟随主题Action | +| QAction* lightAction(); | 获取浅色主题Action | +| QAction* darkAction(); | 获取深色主题Action | #### **4.1.4.4** 开关按钮 @@ -4404,27 +4294,16 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" ![输入图片说明](assets/openKylin%20SDK%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97V2.0/image20.png) -``` -+-----------------------------------+------------------------------+ -| 声明 | 描述 | -+===================================+==============================+ -| > void setCheckable(bool); | > 设置是否可选中 | -+-----------------------------------+------------------------------+ -| > bool isCheckable() const; | > 返回是否可选中 | -+-----------------------------------+------------------------------+ -| > bool isChecked() const; | > 返回是否选中 | -+-----------------------------------+------------------------------+ -| > void setChecked(bool); | > 设置是否选中 | -+-----------------------------------+------------------------------+ -| > void setTranslucent(bool flag); | > 设置是否启用半透明效果(自 | -| | > | -| | > 1.2.0.10 启用) | -+-----------------------------------+------------------------------+ -| > bool isTranslucent() | > 获取是否启用半透明效果(自 | -| | > | -| | > 1.2.0.10 启用) | -+-----------------------------------+------------------------------+ -``` +| | | +|---------------------------------|--------------------------| +| 声明 | 描述 | +| void setCheckable(bool); | 设置是否可选中 | +| bool isCheckable() const; | 返回是否可选中 | +| bool isChecked() const; | 返回是否选中 | +| void setChecked(bool); | 设置是否选中 | +| void setTranslucent(bool flag); | 设置是否启用半透明效果(自1.2.0.10启用) | +| bool isTranslucent() | 获取是否启用半透明效果(自1.2.0.10启用) | + #### **4.1.4.5** 工具按钮 @@ -4437,41 +4316,25 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" > > 枚举类型 +| | | +|-------|-------------------------------------------| +| enum  | KToolButtonType{Flat,SemiFlat,Background} | -``` -+--------+---------------------------------------------+ -| > enum | > KToolButtonType{Flat,SemiFlat,Background} | -+--------+---------------------------------------------+ - -+-----------------------------------------+----------------------------------+ -| 声明 | 描述 | -+=========================================+==================================+ -| > KToolButtonType type(); | > 返回类型 | -+-----------------------------------------+----------------------------------+ -| > void setType(KToolButtonType type); | > 设置类型 | -+-----------------------------------------+----------------------------------+ -| > void setIcon(const QIcon& icon); | > 设置 Icon | -+-----------------------------------------+----------------------------------+ -| > void setLoading(bool flag); | > 设置正在加载状态,仅不带箭头的 | -| | > | -| | > toolbuttuon 支持该状态 | -+-----------------------------------------+----------------------------------+ -| > bool isLoading(); | > 返回是否正在加载 | -+-----------------------------------------+----------------------------------+ -| > QIcon icon(); | > 获取 Icon | -+-----------------------------------------+----------------------------------+ -| > void setArrow(bool flag); | > 设置是否显示向下箭头,默认不显 | -| | > | -| | > 示 | -+-----------------------------------------+----------------------------------+ -| > bool hasArrow() const; | > 返回是否显示箭头 | -+-----------------------------------------+----------------------------------+ -| > void setPixmapSize(const QSize&size); | > 设置 pixmap 大小 | -+-----------------------------------------+----------------------------------+ -| > QSize pixmapSize() const; | > 获取 pixmap 大小 | -+-----------------------------------------+----------------------------------+ -``` +| | | +|---------------------------------------|---------------------------------| +| 声明 | 描述 | +| KToolButtonType type(); | 返回类型 | +| void setType(KToolButtonType type); | 设置类型 | +| void setIcon(const QIcon& icon); | 设置Icon | +| void setLoading(bool flag); | 设置正在加载状态,仅不带箭头的toolbuttuon支持该状态 | +| bool isLoading(); | 返回是否正在加载 | +| QIcon icon(); | 获取Icon | +| void setArrow(bool flag); | 设置是否显示向下箭头,默认不显示 | +| bool hasArrow() const; | 返回是否显示箭头 | +| void setPixmapSize(const QSize&size); | 设置pixmap大小 | +| QSize pixmapSize() const; | 获取pixmap大小 | + #### **4.1.4.6** KPushButton > @@ -4488,72 +4351,28 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" > 枚举类型 -``` -+--------+------------------------------------------+ -| > enum | > ButtonType { NormalType, CircleType }; | -+--------+------------------------------------------+ - -+----------------------------------+----------------------------------+ -| 声明 | 描述 | -+==================================+==================================+ -| > void setBorderRadius(int | 通 | -| > radius); | 过圆角半径设置按钮圆角(每个圆角 | -| | | -| | > 相同) | -+----------------------------------+----------------------------------+ -| void setBorderRadius(int | > 通过四个点来设置圆角 | -| bottomLeft,int | | -| | | -| > topLeft,int topRight,int | | -| > bottomRight); | | -+----------------------------------+----------------------------------+ -| > int borderRadius(); | > 获取按钮圆角 | -+----------------------------------+----------------------------------+ -| > void setBackgroundColor(QColor | > 设置按钮背景色 | -| > color); | | -+----------------------------------+----------------------------------+ -| > QColor backgroundColor(); | > 获取按钮背景色 | -+----------------------------------+----------------------------------+ -| > void setButtonType(ButtonType | > 设置 KPushButton 的类型 | -| > type); | | -+----------------------------------+----------------------------------+ -| > ButtonType buttonType(); | > 获取 KPushButton 的类型 | -+----------------------------------+----------------------------------+ - -+----------------------------------+----------------------------------+ -| > void setTranslucent(bool | > 设置 KPushButton 是否为半透明 | -| > flag); | | -+==================================+==================================+ -| > bool isTranslucent(); | > 判断 KPushButton 是否为半透明 | -+----------------------------------+----------------------------------+ -| > void setIconHighlight(bool | 设 | -| > flag); | 置图标是否跟随系统高亮色,默认不 | -| | | -| | > 跟随 | -+----------------------------------+----------------------------------+ -| > bool isIconHighlight(); | > 判断图标是否跟随系统高亮色 | -+----------------------------------+----------------------------------+ -| > void setIconColor(QColor | > 设置按钮添加图标的颜色(自 | -| > color); | > 1.2.0.13 | -| | > | -| | > 启用) | -+----------------------------------+----------------------------------+ -| > QColor IconColor(); | > 获取按钮添加图标的颜色(自 | -| | > 1.2.0.13 | -| | > | -| | > 启用) | -+----------------------------------+----------------------------------+ -| void | 设 | -| setBackgroundColorHighlight(bool | 置按钮背景色是否跟随系统高亮色, | -| | | -| > flag); | > 默认不跟随(自 1.2.0.13 启用) | -+----------------------------------+----------------------------------+ -| > bool | > | -| > isBackgroundColorHighlight(); | 判断按钮背景色是否跟随系统高亮色 | -| | > | -| | > (自 1.2.0.13 启用) | -+----------------------------------+----------------------------------+ -``` +| | | +|-------|----------------------------------------| +| enum  | ButtonType { NormalType, CircleType }; | + +| | | +|--------------------------------------------------------------------------------|-------------------------------------| +| 声明 | 描述 | +| void setBorderRadius(int radius); | 通过圆角半径设置按钮圆角(每个圆角相同) | +| void setBorderRadius(int bottomLeft,int topLeft,int topRight,int bottomRight); | 通过四个点来设置圆角 | +| int borderRadius(); | 获取按钮圆角 | +| void setBackgroundColor(QColor color); | 设置按钮背景色 | +| QColor backgroundColor(); | 获取按钮背景色 | +| void setButtonType(ButtonType type); | 设置KPushButton的类型 | +| ButtonType buttonType(); | 获取KPushButton的类型 | +| void setTranslucent(bool flag); | 设置KPushButton是否为半透明 | +| bool isTranslucent(); | 判断KPushButton是否为半透明 | +| void setIconHighlight(bool flag); | 设置图标是否跟随系统高亮色,默认不跟随 | +| bool isIconHighlight(); | 判断图标是否跟随系统高亮色 | +| void setIconColor(QColor color); | 设置按钮添加图标的颜色(自1.2.0.13启用) | +| QColor IconColor(); | 获取按钮添加图标的颜色(自1.2.0.13启用) | +| void setBackgroundColorHighlight(bool flag); | 设置按钮背景色是否跟随系统高亮色,默认不跟随(自1.2.0.13启用) | +| bool isBackgroundColorHighlight(); | 判断按钮背景色是否跟随系统高亮色(自1.2.0.13启用) | #### **4.1.4.7** KPressButton @@ -4569,49 +4388,26 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" > 枚举类型 -``` -+--------+------------------------------------------+ -| > enum | > ButtonType { NormalType, CircleType }; | -+--------+------------------------------------------+ +| | | +|-------|----------------------------------------| +| enum  | ButtonType { NormalType, CircleType }; | -+----------------------------------+----------------------------------+ -| 声明 | 描述 | -+==================================+==================================+ -| > void setBorderRadius(int | 通 | -| > radius); | 过圆角半径设置按钮圆角(每个圆角 | -| | | -| | > 相同) | -+----------------------------------+----------------------------------+ -| void setBorderRadius(int | > 通过四个点来设置圆角 | -| bottomLeft,int | | -| | | -| > topLeft,int topRight,int | | -| > bottomRight); | | -+----------------------------------+----------------------------------+ -| > void setCheckable(bool); | > 设置是否可选中 | -+----------------------------------+----------------------------------+ -| > bool isCheckable() const; | > 返回是否可选中 | -+----------------------------------+----------------------------------+ -| > void setChecked(bool); | > 设置是否选中 | -+----------------------------------+----------------------------------+ -| > bool isChecked() const; | > 返回是否选中 | -+----------------------------------+----------------------------------+ -| > void setButtonType(ButtonType | > 设置 button 类型 | -| > type); | | -+----------------------------------+----------------------------------+ -| > ButtonType buttonType(); | > 获取 KPushButton 的类型 | -+----------------------------------+----------------------------------+ +| | | +|--------------------------------------------------------------------------------|----------------------| +| 声明 | 描述 | +| void setBorderRadius(int radius); | 通过圆角半径设置按钮圆角(每个圆角相同) | +| void setBorderRadius(int bottomLeft,int topLeft,int topRight,int bottomRight); | 通过四个点来设置圆角 | +| void setCheckable(bool); | 设置是否可选中 | +| bool isCheckable() const; | 返回是否可选中 | +| void setChecked(bool); | 设置是否选中 | +| bool isChecked() const; | 返回是否选中 | +| void setButtonType(ButtonType type); | 设置button类型 | +| ButtonType buttonType(); | 获取KPushButton的类型 | +| void setTranslucent(bool flag); | 设置KPushButton是否为半透明 | +| bool isTranslucent(); | 判断KPushButton是否为半透明 | +| void setLoaingStatus(bool flag); | 设置是否启用loading状态 | +| bool isLoading(); | 返回是否启用loading状态 | -+------------------------------------+---------------------------------+ -| > void setTranslucent(bool flag); | > 设置 KPushButton 是否为半透明 | -+====================================+=================================+ -| > bool isTranslucent(); | > 判断 KPushButton 是否为半透明 | -+------------------------------------+---------------------------------+ -| > void setLoaingStatus(bool flag); | > 设置是否启用 loading 状态 | -+------------------------------------+---------------------------------+ -| > bool isLoading(); | > 返回是否启用 loading 状态 | -+------------------------------------+---------------------------------+ -``` @@ -4627,23 +4423,15 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" -``` -+------------------------------------------+------------------+ -| 声明 | 描述 | -+==========================================+==================+ -| > void setIcon(const QString& iconName); | > 设置图标名称 | -+------------------------------------------+------------------+ -| > void setIcon(const QIcon& icon); | > 设置图标 | -+------------------------------------------+------------------+ -| > void setWidgetName(const QString& | > 设置标题 | -| > | | -| > widgetName) | | -+------------------------------------------+------------------+ -| > QLabel\* nameLabel(); | > 获取标题 label | -+------------------------------------------+------------------+ -| > QLabel\* iconLabel(); | > 获取图标 label | -+------------------------------------------+------------------+ -``` +| | | +|-----------------------------------------------|-----------| +| 声明 | 描述 | +| void setIcon(const QString& iconName); | 设置图标名称 | +| void setIcon(const QIcon& icon); | 设置图标 | +| void setWidgetName(const QString& widgetName) | 设置标题 | +| QLabel* nameLabel(); | 获取标题label | +| QLabel* iconLabel(); | 获取图标label | + #### **4.1.5.2** KWindowButtonBar @@ -4655,39 +4443,25 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" > 枚举类型 -``` -+--------+---------------------------------------+ -| > enum | > MaximumButtonState{Maximum,Restore} | -+--------+---------------------------------------+ -``` +| | | +|-------|-------------------------------------| +| enum  | MaximumButtonState{Maximum,Restore} | + ![输入图片说明](assets/openKylin%20SDK%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97V2.0/image25.png) -``` -+-----------------------------------+----------------------------------+ -| 声明 | 描述 | -+===================================+==================================+ -| > QPushButton\* minimumButton(); | > 获取最小化按钮 | -+-----------------------------------+----------------------------------+ -| > QPushButton\* maximumButton(); | > 获取最大化按钮 | -+-----------------------------------+----------------------------------+ -| > QPushButton\* closeButton(); | > 获取关闭按钮 | -+-----------------------------------+----------------------------------+ -| > KMenuButton\* menuButton(); | > 获取菜单按钮 | -+-----------------------------------+----------------------------------+ -| > MaximumButtonState | > 获取最大化按钮的状态(最大化/恢 | -| > | > | -| > maximumButtonState(); | > 复) | -+-----------------------------------+----------------------------------+ -| > void | 设置最大化按钮图标状态(最大化 | -| | | -| setMaximumButtonState(MaximumButt | > /恢复) | -| | | -| > onState state); | | -+-----------------------------------+----------------------------------+ -``` +| | | +|-------------------------------------------------------|---------------------| +| 声明 | 描述 | +| QPushButton* minimumButton(); | 获取最小化按钮 | +| QPushButton* maximumButton(); | 获取最大化按钮 | +| QPushButton* closeButton(); | 获取关闭按钮 | +| KMenuButton* menuButton(); | 获取菜单按钮 | +| MaximumButtonState maximumButtonState(); | 获取最大化按钮的状态(最大化/恢复) | +| void setMaximumButtonState(MaximumButtonState state); | 设置最大化按钮图标状态(最大化/恢复) | + #### **4.1.5.3** 进度条 @@ -4701,23 +4475,18 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" > 枚举类型 -``` -+--------+-------------------------------------------------------------------+ -| > enum | > ProgressBarState{NormalProgress,FailedProgress,SuccessProgress} | -+--------+-------------------------------------------------------------------+ +| | | +|-------|-----------------------------------------------------------------| +| enum  | ProgressBarState{NormalProgress,FailedProgress,SuccessProgress} | + +| | | +|----------------------------------------|------| +| 声明 | 描述 | +| ProgressBarState state(); | 获取状态 | +| void setState(ProgressBarState state); | 设置状态 | +| QString text() const override; | 获取文本 | +| void setOrientation(Qt::Orientation); | 设置方向 | -+------------------------------------------+------------+ -| 声明 | 描述 | -+==========================================+============+ -| > ProgressBarState state(); | > 获取状态 | -+------------------------------------------+------------+ -| > void setState(ProgressBarState state); | > 设置状态 | -+------------------------------------------+------------+ -| > QString text() const override; | > 获取文本 | -+------------------------------------------+------------+ -| > void setOrientation(Qt::Orientation); | > 设置方向 | -+------------------------------------------+------------+ -``` #### **4.1.5.4** KProgressCircle @@ -4727,29 +4496,18 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" ![输入图片说明](assets/openKylin%20SDK%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97V2.0/image27.png) -``` -+-----------------------+----------------------------+ -| 声明 | 描述 | -+=======================+============================+ -| > int minimum() const | > 获取环形进度条的最小值。 | -+-----------------------+----------------------------+ +| | | +|---------------------------------------|-----------------| +| 声明 | 描述 | +| int minimum() const | 获取环形进度条的最小值。 | +| int maximum() const | 获取环形进度条的最大值。 | +| int value() const | 获取环形进度条的值。 | +| QString text() const | 获取环形进度条的文本。 | +| void setTextVisible(bool visible) | 设置环形进度条的文本是否可见。 | +| bool isTextVisible() const | 返回环形进度条的文本是否可见。 | +| ProgressBarState state() | 获取环形进度条的状态。 | +| void setState(ProgressBarState state) | 设置环形进度条的状态。 | -+-----------------------------------------+----------------------------------+ -| > int maximum() const | > 获取环形进度条的最大值。 | -+=========================================+==================================+ -| > int value() const | > 获取环形进度条的值。 | -+-----------------------------------------+----------------------------------+ -| > QString text() const | > 获取环形进度条的文本。 | -+-----------------------------------------+----------------------------------+ -| > void setTextVisible(bool visible) | > 设置环形进度条的文本是否可见。 | -+-----------------------------------------+----------------------------------+ -| > bool isTextVisible() const | > 返回环形进度条的文本是否可见。 | -+-----------------------------------------+----------------------------------+ -| > ProgressBarState state() | > 获取环形进度条的状态。 | -+-----------------------------------------+----------------------------------+ -| > void setState(ProgressBarState state) | > 设置环形进度条的状态。 | -+-----------------------------------------+----------------------------------+ -``` #### **4.1.5.5** KTabBar @@ -4761,33 +4519,18 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" > 枚举类型 -``` -+--------+--------------------------------------------------+ -| > enum | > KTabBarStyle{SegmentDark,SegmentLight,Sliding} | -+--------+--------------------------------------------------+ - -+-------------------------------------+------------------------------------+ -| 声明 | 描述 | -+=====================================+====================================+ -| > void setTabBarStyle(KTabBarStyle | > 设置 TabBar 样式 | -| > | | -| > barStyle); | | -+-------------------------------------+------------------------------------+ -| > KTabBarStyle barStyle(); | > 返回 TabBar 样式 | -+-------------------------------------+------------------------------------+ -| > void setBorderRadius(int radius); | > 设置圆角半径,只对 SegmentDark, | -+-------------------------------------+------------------------------------+ +| | | +|-------|------------------------------------------------| +| enum  | KTabBarStyle{SegmentDark,SegmentLight,Sliding} | -+----------------------------------------+-------------------------+ -| | > SegmentLight 样式生效 | -+========================================+=========================+ -| > int borderRadius(); | > 获取圆角半径 | -+----------------------------------------+-------------------------+ -| > void setBackgroundColor(const QColor | > 设置 KTabBar 背景色。 | -| > | | -| > &color) | | -+----------------------------------------+-------------------------+ -``` +| | | +|----------------------------------------------|---------------------------------------| +| 声明 | 描述 | +| void setTabBarStyle(KTabBarStyle barStyle); | 设置TabBar样式 | +| KTabBarStyle barStyle(); | 返回TabBar样式 | +| void setBorderRadius(int radius); | 设置圆角半径,只对SegmentDark,SegmentLight样式生效 | +| int borderRadius(); | 获取圆角半径 | +| void setBackgroundColor(const QColor &color) | 设置KTabBar背景色。 | #### **4.1.5.6** 导航栏 @@ -4799,33 +4542,16 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" > item。 -``` -+----------------------------------+----------------------------------+ -| 声明 | 描述 | -+==================================+==================================+ -| > void | > 增加常规 Item | -| > addItem(QStandardItem\*item); | | -+----------------------------------+----------------------------------+ -| > void | > 增加次级 Item | -| > add | | -| SubItem(QStandardItem\*subItem); | | -+----------------------------------+----------------------------------+ -| > void | > 成组增加 Item,在导航栏中会显示 | -| | > | -| addGroupItems | > tag | -| (QList\items,c | | -| | | -| > onst QString& tag); | | -+----------------------------------+----------------------------------+ -| > void addTag(const QString& | > 添加 tag | -| > tag); | | -+----------------------------------+----------------------------------+ -| > QStandardItemModel\* model(); | > 获取 model | -+----------------------------------+----------------------------------+ -| > QListView\* listview(); | > 获取 listview | -+----------------------------------+----------------------------------+ +| | | +|--------------------------------------------------------------------|----------------------| +| 声明 | 描述 | +| void addItem(QStandardItem*item); | 增加常规Item | +| void addSubItem(QStandardItem*subItem); | 增加次级Item | +| void addGroupItems(QListitems,const QString& tag); | 成组增加Item,在导航栏中会显示tag | +| void addTag(const QString& tag); | 添加tag | +| QStandardItemModel* model(); | 获取model | +| QListView* listview(); | 获取listview | -``` #### **4.1.5.7** KPixmapContainer > @@ -4836,33 +4562,20 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" ![输入图片说明](assets/openKylin%20SDK%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97V2.0/image29.png) -``` -+------------------------------------------+------------------+ -| 声明 | 描述 | -+==========================================+==================+ -| > int value() const; | > 获取值 | -+------------------------------------------+------------------+ -| > void setValue(int value); | > 设置值 | -+------------------------------------------+------------------+ -| > void setValueVisiable(bool flag); | > 设置值是否可见 | -+------------------------------------------+------------------+ -| > bool isValueVisiable() const; | > 获取值是否可见 | -+------------------------------------------+------------------+ -| > void setPixmap(const QPixmap& pixmap); | > 设置 pixmap | -+------------------------------------------+------------------+ -| > QPixmap pixmap()const; | > 获取 pixmap | -+------------------------------------------+------------------+ -| > void clearValue(); | > 清除值 | -+------------------------------------------+------------------+ -| > QColor color(); | > 返回背景色 | -+------------------------------------------+------------------+ -| > void setColor(const QColor& color); | > 设置背景色 | -+------------------------------------------+------------------+ -| > int fontSize(); | > 返回字体大小 | -+------------------------------------------+------------------+ -| > void setFontSize(int size); | > 设置字体大小 | -+------------------------------------------+------------------+ -``` +| | | +|----------------------------------------|----------| +| 声明 | 描述 | +| int value() const; | 获取值 | +| void setValue(int value); | 设置值 | +| void setValueVisiable(bool flag); | 设置值是否可见 | +| bool isValueVisiable() const; | 获取值是否可见 | +| void setPixmap(const QPixmap& pixmap); | 设置pixmap | +| QPixmap pixmap()const; | 获取pixmap | +| void clearValue(); | 清除值 | +| QColor color(); | 返回背景色 | +| void setColor(const QColor& color); | 设置背景色 | +| int fontSize(); | 返回字体大小 | +| void setFontSize(int size); | 设置字体大小 | @@ -4882,45 +4595,25 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" > 枚举类型 -``` -+--------+------------------------------------------------------------+ -| > enum | > KSliderT | -| | ype{SmoothSlider,StepSlider,NodeSlider,SingleSelectSlider} | -+--------+------------------------------------------------------------+ +| | | +|-------|--------------------------------------------------------------------| +| enum  | KSliderType{SmoothSlider,StepSlider,NodeSlider,SingleSelectSlider} | -+-----------------------------------------+-----------------------------------+ -| 声明 | 描述 | -+=========================================+===================================+ -| > void setTickInterval(int interval); | > 设置节点间隔 | -+-----------------------------------------+-----------------------------------+ -| > void setSliderType(KSliderType type); | > 设置滑动条类型 | -+-----------------------------------------+-----------------------------------+ -| > KSliderType sliderType(); | > 获取滑动条类型 | -+-----------------------------------------+-----------------------------------+ -| > int tickInterval() const; | > 获取节点间隔 | -+-----------------------------------------+-----------------------------------+ -| > void setValue(int); | > 设置值 | -+-----------------------------------------+-----------------------------------+ -| > void setNodeVisible(bool flag); | > 设置是否显示节点 | -+-----------------------------------------+-----------------------------------+ -| > bool nodeVisible(); | > 获取是否显示节点 | -+-----------------------------------------+-----------------------------------+ -| > void setToolTip(const QString&); | > 设置 tooltip(自 1.2.0.7 启用) | -+-----------------------------------------+-----------------------------------+ -| > QString toolTip() const; | > 获取 toolTip(自 1.2.0.7 启用) | -+-----------------------------------------+-----------------------------------+ - -+-----------------------------------+------------------------------+ -| > void setTranslucent(bool flag); | > 设置是否启用半透明效果(自 | -| | > | -| | > 1.2.0.10 启用) | -+===================================+==============================+ -| > bool isTranslucent(); | > 获取是否启用半透明效果(自 | -| | > | -| | > 1.2.0.10 启用) | -+-----------------------------------+------------------------------+ +| | | +|---------------------------------------|--------------------------| +| 声明 | 描述 | +| void setTickInterval(int interval); | 设置节点间隔 | +| void setSliderType(KSliderType type); | 设置滑动条类型 | +| KSliderType sliderType(); | 获取滑动条类型 | +| int | tickInterval() const; | 获取节点间隔 | +| void setValue(int); | 设置值 | +| void setNodeVisible(bool flag); | 设置是否显示节点 | +| bool nodeVisible(); | 获取是否显示节点 | +| void setToolTip(const QString&); | 设置tooltip(自1.2.0.7启用) | +| QString | toolTip() const; | 获取toolTip(自1.2.0.7启用) | +| void setTranslucent(bool flag); | 设置是否启用半透明效果(自1.2.0.10启用) | +| bool isTranslucent(); | 获取是否启用半透明效果(自1.2.0.10启用) | -``` ### **4.1.7** 消息提示模块 @@ -4931,29 +4624,18 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" ![输入图片说明](assets/openKylin%20SDK%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97V2.0/image31.png) -``` -+---------------------------------------+--------------------------------+ -| 声明 | 描述 | -+=======================================+================================+ -| > int value(); | > 返回值 | -+---------------------------------------+--------------------------------+ -| > void setValue(int value); | > 设置值,最大显示数值为 999, | -| | > | -| | > 大于 999 显示\"\...\" | -+---------------------------------------+--------------------------------+ -| > void setValueVisiable(bool flag); | > 设置值是否可见 | -+---------------------------------------+--------------------------------+ -| > bool isValueVisiable() const; | > 获取值是否可见 | -+---------------------------------------+--------------------------------+ -| > QColor color(); | > 获取背景色 | -+---------------------------------------+--------------------------------+ -| > void setColor(const QColor& color); | > 设置背景色 | -+---------------------------------------+--------------------------------+ -| > int fontSize(); | > 获取字体大小 | -+---------------------------------------+--------------------------------+ -| > void setFontSize(int size); | > 设置字体大小 | -+---------------------------------------+--------------------------------+ -``` +| | | +|-------------------------------------|-----------------------------| +| 声明 | 描述 | +| int value(); | 返回值 | +| void setValue(int value); | 设置值,最大显示数值为999,大于999显示"..." | +| void setValueVisiable(bool flag); | 设置值是否可见 | +| bool isValueVisiable() const; | 获取值是否可见 | +| QColor color(); | 获取背景色 | +| void setColor(const QColor& color); | 设置背景色 | +| int fontSize(); | 获取字体大小 | +| void setFontSize(int size); | 设置字体大小 | + #### **4.1.7.2** KBallonTip @@ -4965,42 +4647,22 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" > 枚举类型 -``` -+--------+----------------------------------------------+ -| > enum | > TipType{Nothing,Normal,Info,Warning,Error} | -+--------+----------------------------------------------+ +| | | +|-------|--------------------------------------------| +| enum  | TipType{Nothing,Normal,Info,Warning,Error} | -+-----------------------------------------+------------------------------+ -| 声明 | 描述 | -+=========================================+==============================+ -| > void showInfo(); | 气泡在显示之后一定时间后自动 | -| | | -| | > 消失 | -+-----------------------------------------+------------------------------+ -| > void setTipType(const TipType& type); | > 设置类型 | -+-----------------------------------------+------------------------------+ -| > TipType tipType(); | > 返回类型 | -+-----------------------------------------+------------------------------+ +| | | +|-------------------------------------------------------------------|---------------------| +| 声明 | 描述 | +| void showInfo(); | 气泡在显示之后一定时间后自动消失 | +| void setTipType(const TipType& type); | 设置类型 | +| TipType tipType(); | 返回类型 | +| void setText(const QString& text); | 设置文本内容 | +| QString text(); | 返回文本内容 | +| void setContentsMargins(int left, int top, int right, int bottom) | 通过上下左右数值设置内容边距。 | +| void setContentsMargins(const QMargins &margins); | 通过QMargins对象设置内容边距。 | +| void setTipTime(int my_time); | 设置持续时间 | -+------------------------------------+--------------------------------+ -| > void setText(const QString& | > 设置文本内容 | -| > text); | | -+====================================+================================+ -| > QString text(); | > 返回文本内容 | -+------------------------------------+--------------------------------+ -| > void setContentsMargins(int | > 通过上下左右数值设置内容边 | -| > left, int top, int | > | -| > | > 距。 | -| > right, int bottom) | | -+------------------------------------+--------------------------------+ -| > void setContentsMargins(const | > 通过 QMargins 对象设置内容边 | -| > QMargins | > | -| > | > 距。 | -| > &margins); | | -+------------------------------------+--------------------------------+ -| > void setTipTime(int my_time); | > 设置持续时间 | -+------------------------------------+--------------------------------+ -``` #### **4.1.7.3** KSecurityLevelBar @@ -5018,20 +4680,16 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" > 枚举类型 -``` -+--------+----------------------------------+ -| > enum | > SecurityLevel{Low,Medium,High} | -+--------+----------------------------------+ +| | | +|-------|--------------------------------| +| enum  | SecurityLevel{Low,Medium,High} | -+-----------------------------------------------+----------------+ -| 声明 | 描述 | -+===============================================+================+ -| > void setSecurityLevel(SecurityLevel level); | > 设置安全等级 | -+-----------------------------------------------+----------------+ -| > SecurityLevel securityLevel(); | > 获取安全等级 | -+-----------------------------------------------+----------------+ +| | | +|---------------------------------------------|--------| +| 声明 | 描述 | +| void setSecurityLevel(SecurityLevel level); | 设置安全等级 | +| SecurityLevel securityLevel(); | 获取安全等级 | -``` ### **4.1.8** 面包屑 KBreadCrumb > @@ -5044,59 +4702,40 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" > 枚举类型 -``` -+--------+------------------------------------------------------+ -| > enum | > KBreadCrumbType { FlatBreadCrumb, CubeBreadCrumb } | -+--------+------------------------------------------------------+ +| | | +|-------|----------------------------------------------------| +| enum  | KBreadCrumbType { FlatBreadCrumb, CubeBreadCrumb } | + +| | | +|----------------------------------|-------------------------| +| 声明 | 描述 | +| void setIcon(const QIcon &icon); | 设置图标 | +| QIcon icon() const; | 返回图标 | +| bool isFlat() const; | 返回KBreadCrumb是否为flat类型。 | +| void setFlat(bool flat); | 设置KBreadCrumb是否为flat类型。 | -+------------------------------------+------------------------------------+ -| 声明 | 描述 | -+====================================+====================================+ -| > void setIcon(const QIcon &icon); | > 设置图标 | -+------------------------------------+------------------------------------+ -| > QIcon icon() const; | > 返回图标 | -+------------------------------------+------------------------------------+ -| > bool isFlat() const; | 返 回 KBreadCrumb 是 否 为 flat 类 | -| | | -| | > 型。 | -+------------------------------------+------------------------------------+ -| > void setFlat(bool flat); | 设 置 KBreadCrumb 是 否 为 flat 类 | -| | | -| | > 型。 | -+------------------------------------+------------------------------------+ -``` ### **4.1.9** KCommentPanel -``` -+--------+------------------------------------------------------------+ -| > enum | > StarLevel {LevelZero =0, LevelOne, LevelTwo, LevelThree, | -| | > | -| | > LevelFour,LevelFive} | -+--------+------------------------------------------------------------+ -``` +| | | +|-------|-------------------------------------------------------------------------------| +| enum  | StarLevel {LevelZero =0, LevelOne, LevelTwo, LevelThree, LevelFour,LevelFive} | + > 枚举类型 -``` -+-----------------------------------+----------------+ -| 声明 | 描述 | -+===================================+================+ -| > void setIcon(const QIcon&); | > 设置图标 | -+-----------------------------------+----------------+ -| > void setTime(const QString&); | > 设置评论时间 | -+-----------------------------------+----------------+ -| > void setName(const QString&); | > 设置评论名称 | -+-----------------------------------+----------------+ -| > void setText(const QString&); | > 设置评论内容 | -+-----------------------------------+----------------+ -| > void setGrade(StarLevel level); | > 设置评论等级 | -+-----------------------------------+----------------+ -``` +| | | +|---------------------------------|--------| +| 声明 | 描述 | +| void setIcon(const QIcon&); | 设置图标 | +| void setTime(const QString&); | 设置评论时间 | +| void setName(const QString&); | 设置评论名称 | +| void setText(const QString&); | 设置评论内容 | +| void setGrade(StarLevel level); | 设置评论等级 | ### **4.1.10** KListView @@ -5118,27 +4757,20 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" > 枚举类型 -``` -+--------+-------------------------------------------------------------+ -| > enum | > TagStyle { HighlightTag, BoderTag, BaseBoderTag, GrayTag} | -+--------+-------------------------------------------------------------+ +| | | +|-------|-----------------------------------------------------------| +| enum  | TagStyle { HighlightTag, BoderTag, BaseBoderTag, GrayTag} | + +| | | +|-----------------------------------|-------------| +| 声明 | 描述 | +| void setClosable(bool flag) | 设置标签是否可以关闭。 | +| bool closable() | 返回标签是否可以关闭。 | +| void setText(const QString &text) | 设置标签的文本。 | +| void setTagStyle(TagStyle style) | 设置标签的样式。 | +| TagStyle tagStyle() | 获取标签的样式。 | +| QString text() | 获取标签的文本。 | -+-------------------------------------+--------------------------+ -| 声明 | 描述 | -+=====================================+==========================+ -| > void setClosable(bool flag) | > 设置标签是否可以关闭。 | -+-------------------------------------+--------------------------+ -| > bool closable() | > 返回标签是否可以关闭。 | -+-------------------------------------+--------------------------+ -| > void setText(const QString &text) | > 设置标签的文本。 | -+-------------------------------------+--------------------------+ -| > void setTagStyle(TagStyle style) | > 设置标签的样式。 | -+-------------------------------------+--------------------------+ -| > TagStyle tagStyle() | > 获取标签的样式。 | -+-------------------------------------+--------------------------+ -| > QString text() | > 获取标签的文本。 | -+-------------------------------------+--------------------------+ -``` ### **4.1.12** KTranslucentFloor @@ -5150,32 +4782,18 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" ![输入图片说明](assets/openKylin%20SDK%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97V2.0/image40.png) -``` -+---------------------------------------+---------------------------------+ -| 声明 | 描述 | -+=======================================+=================================+ -| > void setBorderRadious(int radious); | > 设置圆角半径 | -+---------------------------------------+---------------------------------+ -| > int borderRadius(); | > 返回圆角半径 | -+---------------------------------------+---------------------------------+ -| > void setShadow(bool flag); | > 设置是否显示阴影 | -+---------------------------------------+---------------------------------+ -| > bool shadow(); | > 返回是否显示阴影 | -+---------------------------------------+---------------------------------+ -| > void setEnableBlur(bool flag); | 设置是否启 用毛玻璃效果( 自 | -| | | -| | > 2.0.0.0 启用) | -+---------------------------------------+---------------------------------+ -| > bool enableBlur(); | 获取是否已启用毛玻璃效果(自 | -| | | -| | > 2.0.0.0 启用) | -+---------------------------------------+---------------------------------+ -| > void setOpacity(qreal opacity); | > 设置透明度(自 2.0.0.0 启用) | -+---------------------------------------+---------------------------------+ -| > qreal opacity(); | > 获取透明度(自 2.0.0.0 启用) | -+---------------------------------------+---------------------------------+ +| | | +|-------------------------------------|--------------------------| +| 声明 | 描述 | +| void setBorderRadious(int radious); | 设置圆角半径 | +| int borderRadius(); | 返回圆角半径 | +| void setShadow(bool flag); | 设置是否显示阴影 | +| bool shadow(); | 返回是否显示阴影 | +| void setEnableBlur(bool flag); | 设置是否启用毛玻璃效果(自2.0.0.0启用) | +| bool enableBlur(); | 获取是否已启用毛玻璃效果(自2.0.0.0启用) | +| void setOpacity(qreal opacity); | 设置透明度(自2.0.0.0启用) | +| qreal opacity(); | 获取透明度(自2.0.0.0启用) | -``` ## 4.2 Wayland-helper > @@ -5193,11 +4811,8 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" ``` -+------------------------------------+ -| > CONFIG += link_pkgconfig | -| > | -| > PKGCONFIG += kysdk-waylandhelper | -+------------------------------------+ +CONFIG += link_pkgconfig +PKGCONFIG += kysdk-waylandhelper ``` @@ -5205,190 +4820,90 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" ``` -+-----------------------------------------------------------------+ -| > cmake_minimum_required(VERSION 3.5) | -| > | -| > find_package(Qt5 COMPONENTS Widgets REQUIRED) | -| > | -| > find_package(PkgConfig REQUIRED) | -| > | -| > pkg_check_modules(KYSDKWAYLANDHELPER_PKG kysdk-waylandhelper) | -| > | -| > target_include_directories(demo PRIVATE | -| > | -| > \${KYSDKWAYLANDHELPER_PKG_INCLUDE_DIRS}) | -| > | -| > target_link_directories(demo PRIVATE | -| > | -| > \${KYSDKWAYLANDHELPER_PKG_LIBRARY_DIRS}) | -| > | -| > target_link_libraries(demo Qt5::Widgets | -| > | -| > \${KYSDKWAYLANDHELPER_PKG_LIBRARIES}) | -+-----------------------------------------------------------------+ + cmake_minimum_required(VERSION 3.5) + + find_package(Qt5 COMPONENTS Widgets REQUIRED) + + find_package(PkgConfig REQUIRED) + + pkg_check_modules(KYSDKWAYLANDHELPER_PKG kysdk-waylandhelper) + + target_include_directories(demo PRIVATE + + \${KYSDKWAYLANDHELPER_PKG_INCLUDE_DIRS}) + + target_link_directories(demo PRIVATE + + \${KYSDKWAYLANDHELPER_PKG_LIBRARY_DIRS}) + + target_link_libraries(demo Qt5::Widgets + + \${KYSDKWAYLANDHELPER_PKG_LIBRARIES}) ``` ### **4.2.1** WindowManager -``` -+-----------------------------------------+----------------+ -| 声明 | 描述 | -+=========================================+================+ -| > static WindowManager\* self(); | > 获取单例对象 | -+-----------------------------------------+----------------+ -| > static WindowInfo getwindowInfo(const | > 获取窗口信息 | -| > | | -| > WindowId& windowId); | | -+-----------------------------------------+----------------+ - -+-------------------------------------------+------------------------+ -| > static WindowId currentActiveWindow(); | > 获取当前活动窗口 | -+===========================================+========================+ -| > static void keepWindowAbove(const | > 置顶窗口 | -| > | | -| > WindowId& windowId); | | -+-------------------------------------------+------------------------+ -| > static QString getWindowTitle(const | > 获取窗口标题 | -| > | | -| > WindowId& windowId); | | -+-------------------------------------------+------------------------+ -| > static QIcon getWindowIcon(const | > 获取窗口图标 | -| > | | -| > WindowId& windowId); | | -+-------------------------------------------+------------------------+ -| > static QString getWindowGroup(const | > 获取窗口所在组的组名 | -| > | | -| > WindowId& windowId); | | -+-------------------------------------------+------------------------+ -| > static void closeWindow(const WindowId& | > 关闭窗口 | -| > | | -| > windowId); | | -+-------------------------------------------+------------------------+ -| > static void activateWindow(const | > 激活窗口 | -| > | | -| > WindowId& windowId); | | -+-------------------------------------------+------------------------+ -| > static void maximizeWindow(const | > 最大化窗口 | -| > | | -| > WindowId& windowId); | | -+-------------------------------------------+------------------------+ -| > static void minimizeWindow(const | > 最小化窗口 | -| > | | -| > WindowId& windowId); | | -+-------------------------------------------+------------------------+ -| > static quint32 getPid(const WindowId& | > 获取窗口进程 pid | -| > | | -| > windowId); | | -+-------------------------------------------+------------------------+ -| > static void showDesktop(); | > 显示当前桌面 | -+-------------------------------------------+------------------------+ - -+----------------------------------+----------------------------------+ -| > static void hideDesktop(); | > 取消显示当前桌面 | -+==================================+==================================+ -| > static QString | > 获取当前桌面的名称 | -| > currentDesktop(); | | -+----------------------------------+----------------------------------+ -| > static QList\ | > 获取当前窗口列表 | -| > windows(); | | -+----------------------------------+----------------------------------+ -| > static NET::WindowType | > 获取窗口类型,仅适用于 X 环境 | -| > | > | -| > getWindowType(const WindowId& | > 下,wayland 下统一返回 normal | -| > | | -| > windowId); | | -+----------------------------------+----------------------------------+ -| > static void | > 设置窗口位置 | -| > setGeometry(QWindow | | -| > | | -| > \*window,const QRect &rect); | | -+----------------------------------+----------------------------------+ -| > static void | > 设置是否跳过任务栏(自 2.0.0.0 | -| > setSkipTaskBar(QWindow | > | -| > | > 启用) | -| > \*window,bool skip); | | -+----------------------------------+----------------------------------+ -| > static void | 设置是否跳过窗口选择(自 2.0.0.0 | -| > setSkipSwitcher(QWindow | | -| > | > 启用) | -| > \*window,bool skip); | | -+----------------------------------+----------------------------------+ -| > static bool skipTaskBar(const | > 判断窗体是否跳过任务栏(自 | -| > WindowId& | > | -| > | > 2.0.0.0 启用) | -| > windowId); | | -+----------------------------------+----------------------------------+ -| > static bool skipSwitcher(const | > 判断窗体是否跳过窗口选择(自 | -| > WindowId& | > | -| > | > 2.0.0.0 启用) | -| > windowId); | | -+----------------------------------+----------------------------------+ -| > static bool | > 判断桌面是否处于显示状态(自 | -| > isShowingDesktop(); | > | -| | > 2.0.0.0 启用) | -+----------------------------------+----------------------------------+ -| > static void | > 设置窗口在所有桌面中显示(自 | -| > setOnAllDesktops(const | > | -| > | > 2.0.0.0 启用) | -| > WindowId &windowId); | | -+----------------------------------+----------------------------------+ +| | | +|-----------------------------------------------------------------|-------------------------------------------------| +| 声明 | 描述 | +| static WindowManager* self(); | 获取单例对象 | +| static WindowInfo getwindowInfo(const WindowId& windowId); | 获取窗口信息 | +| static WindowId currentActiveWindow(); | 获取当前活动窗口 | +| static void keepWindowAbove(const WindowId& windowId); | 置顶窗口 | +| static QString getWindowTitle(const WindowId& windowId); | 获取窗口标题 | +| static QIcon getWindowIcon(const WindowId& windowId); | 获取窗口图标 | +| static QString getWindowGroup(const WindowId& windowId); | 获取窗口所在组的组名 | +| static void closeWindow(const WindowId& windowId); | 关闭窗口 | +| static void activateWindow(const WindowId& windowId); | 激活窗口 | +| static void maximizeWindow(const WindowId& windowId); | 最大化窗口 | +| static void minimizeWindow(const WindowId& windowId); | 最小化窗口 | +| static quint32 getPid(const WindowId& windowId); | 获取窗口进程pid | +| static void showDesktop(); | 显示当前桌面 | +| static void hideDesktop(); | 取消显示当前桌面 | +| static QString currentDesktop(); | 获取当前桌面的名称 | +| static QList windows(); | 获取当前窗口列表 | +| static NET::WindowType getWindowType(const WindowId& windowId); | 获取窗口类型,仅适用于X环境下,wayland下统一返回normal | +| static void | setGeometry(QWindow *window,const QRect &rect); | 设置窗口位置 | +| static void setSkipTaskBar(QWindow *window,bool skip); | 设置是否跳过任务栏(自2.0.0.0启用) | +| static void setSkipSwitcher(QWindow *window,bool skip); | 设置是否跳过窗口选择(自2.0.0.0启用) | +| static bool skipTaskBar(const WindowId& windowId); | 判断窗体是否跳过任务栏(自2.0.0.0启用) | +| static bool skipSwitcher(const WindowId& windowId); | 判断窗体是否跳过窗口选择(自2.0.0.0启用) | +| static bool isShowingDesktop(); | 判断桌面是否处于显示状态(自2.0.0.0启用) | +| static void setOnAllDesktops(const WindowId &windowId); | 设置窗口在所有桌面中显示(自2.0.0.0启用) | +| static bool isOnAllDesktops(const WindowId &windowId); | 判断窗口是否在所有桌面中显示(自2.0.0.0启用) | -+--------------------------------------------+--------------------------------+ -| static bool isOnAllDesktops(const WindowId | > 判断窗口是否在所有桌面中显示 | -| | > | -| > &windowId); | > (自 2.0.0.0 启用) | -+--------------------------------------------+--------------------------------+ -``` ### **4.2.2** WindowInfo -``` -+------------------------------------------+--------------------------------+ -| 声明 | 描述 | -+==========================================+================================+ -| > inline bool isMaximized() const; | > 返回窗口是否是最大化状态 | -+------------------------------------------+--------------------------------+ -| > inline bool isMinimized() const; | > 返回窗口是否是最小化状态 | -+------------------------------------------+--------------------------------+ -| > inline bool isMaximizable() const; | > 返回窗口是否可以最大化 | -+------------------------------------------+--------------------------------+ -| > inline bool isMinimizable() const; | > 返回窗口是否可以最小化 | -+------------------------------------------+--------------------------------+ -| > inline bool isKeepAbove() const; | > 返回窗口是否是置顶状态 | -+------------------------------------------+--------------------------------+ -| > inline bool hasSkipTaskbar() const; | > 返回窗口是否跳过任务栏 | -+------------------------------------------+--------------------------------+ -| > inline bool isFullscreen() const; | > 返回窗口是否是全屏状态 | -+------------------------------------------+--------------------------------+ -| > inline bool isOnAllDesktops() const; | > 返回窗口是否在所有桌面中显示 | -| > | | -| > noexcept; | | -+------------------------------------------+--------------------------------+ -| > inline bool isValid() const; | > 判断窗口 id 是否有效 | -+------------------------------------------+--------------------------------+ -| > inline bool isActive() const noexcept; | > 返回窗口是否是激活状态 | -+------------------------------------------+--------------------------------+ -``` +| | | +|------------------------------------------------|----------------| +| 声明 | 描述 | +| inline bool isMaximized() const; | 返回窗口是否是最大化状态 | +| inline bool isMinimized() const; | 返回窗口是否是最小化状态 | +| inline bool isMaximizable() const; | 返回窗口是否可以最大化 | +| inline bool isMinimizable() const; | 返回窗口是否可以最小化 | +| inline bool isKeepAbove() const; | 返回窗口是否是置顶状态 | +| inline bool hasSkipTaskbar() const; | 返回窗口是否跳过任务栏 | +| inline bool isFullscreen() const; | 返回窗口是否是全屏状态 | +| inline bool isOnAllDesktops() const; noexcept; | 返回窗口是否在所有桌面中显示 | +| inline bool isValid() const; | 判断窗口id是否有效 | +| inline bool isActive() const noexcept; | 返回窗口是否是激活状态 | + ### **4.2.3** UkuiStyleHelper -``` - ------ ------ - 声明 描述 - ------ ------ +| | | +|-------------------------------------|---------| +| 声明 | 描述 | +| static UkuiStyleHelper *self(); | 获取单例对象 | +| void removeHeader(QWidget* widget); | 移除窗管标题栏 | -+----------------------------------------+------------------+ -| > static UkuiStyleHelper \*self(); | > 获取单例对象 | -+========================================+==================+ -| > void removeHeader(QWidget\* widget); | > 移除窗管标题栏 | -+----------------------------------------+------------------+ -``` ## 4.3 应用通用功能模块 @@ -5396,317 +4911,125 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" ### 4.3.1 日志模块 -``` -+----------+------------+-----------------------------------+----------------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+===================================+======================+===+ -| > 日志模 | C++ | static void logOutput(QtMsgType | > 用于 Qt 注册日志函 | | -| > | | | > | | -| > 块 | | > type , const QMessageLogContext | > 数,不应单独调用. | | -| | | > | | | -| | | > &context , const QString &msg); | | | -+----------+------------+-----------------------------------+----------------------+---+ -| | | > 参数说明 | 返 回 | | -| | | > | | | -| | | > type:日志类型 | > 值说明 | | -| | | > | | | -| | | > context:调用打印日志 | 无 | | -| | | | | | -| | | 接口文件信息 msg:日 | | | -| | | | | | -| | | > 志信息 | | | -+----------+------------+-----------------------------------+----------------------+---+ -``` +| | | | | +|------|------|--------------------------------------------------------------------------------------------------|--------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 日志模块 | C++ | static void logOutput(QtMsgType type , const QMessageLogContext &context , const QString &msg); | 用于Qt注册日志函数,不应单独调用. | +| | | 参数说明 | 返回值说明 | +| | | type:日志类型 context:调用打印日志接口文件信息 msg:日志信息 | 无 | + ### 4.3.2 系统相关模块 -``` -+----------+------------+--------------------------------------+------------------+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | -+==========+============+======================================+==================+ -| > 窗管模 | C++ | > static bool setWindowMotifHint(int | > 添加窗管协议 . | -| > | | > | | -| > 块 | | > winId); | | -+----------+------------+--------------------------------------+------------------+ - -+---+---+-------------------+----------+---+ -| | | > 参数说明 | 返 回 | | -| | | > | | | -| | | > winId : 窗口 id | > 值说明 | | -| | | | | | -| | | | 成功 : | | -| | | | | | -| | | | > true | | -| | | | | | -| | | | 失败 : | | -| | | | | | -| | | | > false | | -+---+---+-------------------+----------+---+ -``` - - - -``` -+----------+------------+-------------------------------+--------------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+===============================+====================+===+ -| > 窗管模 | C++ | > static bool | > 设置窗口缩放属性 | | -| > | | > | | | -| > 块 | | > setScalingProperties(void); | | | -+----------+------------+-------------------------------+--------------------+---+ -| | | > 参数说明 | 返 回 | | -| | | > | | | -| | | > 无 | > 值说明 | | -| | | | | | -| | | | 成功 : | | -| | | | | | -| | | | > true | | -| | | | | | -| | | | 失败 : | | -| | | | | | -| | | | > false | | -+----------+------------+-------------------------------+--------------------+---+ - -+-----------+------------+--------------------------------+------------------+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | -+===========+============+================================+==================+ -| > session | C++ | > quint32 | > 禁止系统锁屏 . | -| > | | > | | -| > 模块 | | > setInhibitLockScreen(AppName | | -| | | > | | -| | | > appName , QString reason); | | -+-----------+------------+--------------------------------+------------------+ - - - -+---+---+---------------------+-------------+---+ -| | | > 参数说明 | 返 回 | | -| | | > | | | -| | | > appName : 应用名 | > 值说明 | | -| | | > | | | -| | | > reason : 禁止锁屏 | 成 | | -| | | > | | | -| | | > 的原因 | > 功 : 非 0 | | -| | | | > | | -| | | | > 的正整数 | | -| | | | | | -| | | | 失 | | -| | | | | | -| | | | > 败 : 0 | | -+---+---+---------------------+-------------+---+ -``` - - -``` -+-----------+------------+------------------------------------+--------------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+===========+============+====================================+====================+===+ -| > session | C++ | > bool unInhibitLockScreen(quint32 | 取消禁止系统锁屏 . | | -| > | | > | | | -| > 模块 | | > flag) | | | -+-----------+------------+------------------------------------+--------------------+---+ -| | | > 参数说明 | 返 回 | | -| | | > | | | -| | | > flag : 禁止锁屏标 | > 值说明 | | -| | | > | | | -| | | > 识 | 成功 : | | -| | | | | | -| | | | > true | | -| | | | | | -| | | | 失败 : | | -| | | | | | -| | | | > false | | -+-----------+------------+------------------------------------+--------------------+---+ -``` +| | | | | +|------|------|---------------------------------------------|------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 窗管模块 | C++ | static bool setWindowMotifHint(int winId); | 添加窗管协议 . | +| | | 参数说明 | 返回值说明 | +| | | winId : 窗口 id | 成功 : true | +| | | | 失败 : false | + + + +| | | | | +|------|------|------------------------------------------|------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 窗管模块 | C++ | static bool setScalingProperties(void); | 设置窗口缩放属性 | +| | | 参数说明 | 返回值说明 | +| | | 无 | 成功 : true | +| | | | 失败 : false | + + + +| | | | | +|-----------|------|-----------------------------------------------------------------|---------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| session模块 | C++ | quint32 setInhibitLockScreen(AppName appName , QString reason); | 禁止系统锁屏 . | +| | | 参数说明 | 返回值说明 | +| | | appName : 应用名 | 成功 : 非 0 的正整数 | +| | | reason : 禁止锁屏的原因 | 失败 : 0 | + + + +| | | | | +|-----------|------|----------------------------------------|------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| session模块 | C++ | bool unInhibitLockScreen(quint32 flag) | 取消禁止系统锁屏 . | +| | | 参数说明 | 返回值说明 | +| | | flag : 禁止锁屏标识 | 成功 : true | +| | | | 失败 : false | + ### 4.3.3 d-bus 模块------即将废弃 -``` -+----------+------------+-----------------------------------+------------+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | -+==========+============+===================================+============+ -| d-bus 模 | C++ | > static QList\ | > 函数调用 | -| | | > | | -| > 块 | | > callMethod(QString serviceName, | | -| | | > | | -| | | > QString objectPath, QString | | -+----------+------------+-----------------------------------+------------+ - -+---+---+----------------------------+----------+---+ -| | | > interfaceName, | | | -| | | > | | | -| | | > QString methodName, | | | -| | | > | | | -| | | > QList\ args = | | | -| | | > | | | -| | | > QList\()); | | | -+===+===+============================+==========+===+ -| | | > 参数说明 | 返 回 | | -| | | > | | | -| | | > serviceName : 服 | > 值说明 | | -| | | > | | | -| | | > 务名 | 函 数 | | -| | | > | | | -| | | > objectPath : 对象 | > 返回值 | | -| | | > | | | -| | | > 路径 | | | -| | | > | | | -| | | > interfaceName : 接 | | | -| | | > | | | -| | | > 口名 | | | -| | | > | | | -| | | > methodName : 函 | | | -| | | > | | | -| | | > 数名 | | | -| | | > | | | -| | | > args : 参数列表 | | | -+---+---+----------------------------+----------+---+ -``` +| | | | | +|---------|------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------| +| 子模块 | 编程语言 | 声明 | 描述 | +| d-bus模块 | C++ | static QList callMethod(QString serviceName, QString objectPath, QString interfaceName, QString methodName, QList args = QList()); | 函数调用 | +| | | 参数说明 | 返回值说明 | +| | | serviceName : 服务名 | 函数返回值 | +| | | objectPath : 对象路径 | | +| | | interfaceName : 接口名 | | +| | | methodName : 函数名 | | +| | | args : 参数列表 | | + ### 4.3.4 系统信息模块 -``` -+----------+------------+--------------------+--------------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+====================+===+ -| > 系统信 | C++ | > QString | > 根据 lsb-release | | -| > | | > | > | | -| > 息模块 | | > getLsbReleaseI | > 文件的 key 值 | | -| | | nformation(QString | > 获取 | | -| | | > | > | | -| | | > key); | > 信息 | | -+----------+------------+--------------------+--------------------+---+ -| | | > 参数说明 | 返 回 | | -| | | > | | | -| | | > key : 键值 | > 值说明 | | -| | | | | | -| | | | 获 取 | | -| | | | | | -| | | | 到的信息 , | | -+----------+------------+--------------------+--------------------+---+ - -+---+---+---+-------------+---+ -| | | | 为 空 时 可 | | -| | | | | | -| | | | 能 确 实 为 | | -| | | | | | -| | | | 空 也 可 能 | | -| | | | | | -| | | | > 失败 | | -+---+---+---+-------------+---+ -``` - - - -``` -+----------+------------+-----------------------------------+----------------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+===================================+======================+===+ -| > 系统信 | C++ | > QString | > 根据 os-release | | -| > | | > | > | | -| > 息模块 | | > getOsReleaseInformation(QString | > 文件的 key 值 获取 | | -| | | > | > | | -| | | > key); | > 信息 | | -+----------+------------+-----------------------------------+----------------------+---+ -| | | > 参数说明 | > 返 回 | | -| | | > | > | | -| | | > key : 键值 | > 值说明 | | -| | | | > | | -| | | | > 获 取 | | -| | | | | | -| | | | 到的信息 , | | -| | | | | | -| | | | 为 空 时 可 | | -| | | | | | -| | | | 能 确 实 为 | | -| | | | | | -| | | | 空 也 可 能 | | -| | | | | | -| | | | > 失败 | | -+----------+------------+-----------------------------------+----------------------+---+ - -+---------+----------+----------------------------+----------------+ -| > 子 模 | 编程语言 | 声明 | > 描述 | -| > | | | | -| > 块 | | | | -+=========+==========+============================+================+ -| > 系统 | C++ | > QString | > 获取 | -| > | | > | | -| > 信息 | | > getProjectCodeName(void) | PROJECT_CODENA | -| > | | | | -| > 模块 | | | > ME 字段的值 | -+---------+----------+----------------------------+----------------+ - -+---+---+------------+-------------+---+ -| | | > 参数说明 | 返回值说明 | | -| | | > | | | -| | | > 无 | 空 : 失败 | | -| | | | | | -| | | | 非空 : 获取 | | -| | | | | | -| | | | > 到的值 | | -+---+---+------------+-------------+---+ -``` - - - -``` -+----------+------------+-------------------------+-----------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+=========================+=================+===+ -| > 系统信 | C++ | > QString | > 获取 CPU 型号 | | -| > | | > | | | -| > 息模块 | | > getCpuModelName(void) | | | -+----------+------------+-------------------------+-----------------+---+ -| | | > 参数说明 | > 返 回 | | -| | | > | > | | -| | | > 无 | > 值说明 | | -| | | | | | -| | | | 空 : 失 | | -| | | | | | -| | | | > 败 | | -| | | | | | -| | | | 非 空 : | | -| | | | | | -| | | | 获 取 到 的 | | -| | | | | | -| | | | > 值 | | -+----------+------------+-------------------------+-----------------+---+ -``` - - - -``` -+----------+------------+--------------------------------+----------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+================================+================+===+ -| > 系统信 | C++ | > QString getHdPlatform(void); | > 获取硬件平台 | | -| > | | | > | | -| > 息模块 | | | > 信息 | | -+----------+------------+--------------------------------+----------------+---+ -| | | > 参数说明 | > 返 回 | | -| | | > | > | | -| | | > 无 | > 值说明 | | -| | | | | | -| | | | 空 : 失 | | -| | | | | | -| | | | > 败 | | -+----------+------------+--------------------------------+----------------+---+ - -+---+---+---+-------------+---+ -| | | | 非 空 : | | -| | | | | | -| | | | 获 取 到 的 | | -| | | | | | -| | | | > 值 | | -+---+---+---+-------------+---+ -``` +| | | | | +|--------|------|-------------------------------------------------|-------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 系统信息模块 | C++ | QString getLsbReleaseInformation(QString key); | 根据 lsb-release 文件的 key 值 获取信息 | +| | | 参数说明 | 返回值说明 | +| | | key : 键值 | 获取到的信息 , 为空时可能确实为空也可能失败 | + + + + +| | | | | +|--------|------|------------------------------------------------|------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 系统信息模块 | C++ | QString getOsReleaseInformation(QString key); | 根据 os-release 文件的 key 值 获取信息 | +| | | 参数说明 | 返回值说明 | +| | | key : 键值 | 获取到的信息 , 为空时可能确实为空也可能失败 | + + +| | | | | +|--------|------|-----------------------------------|--------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 系统信息模块 | C++ | QString getProjectCodeName(void) | 获取 PROJECT_CODENAME 字段的值 | +| | | 参数说明 | 返回值说明 | +| | | 无 | 空 : 失败 | +| | | | 非空 : 获取到的值 | + + + + +| | | | | +|--------|------|--------------------------------|------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 系统信息模块 | C++ | QString getCpuModelName(void) | 获取 CPU 型号 | +| | | 参数说明 | 返回值说明 | +| | | 无 | 空 : 失败 | +| | | | 非空 : 获取到的值 | + + + + +| | | | | +|--------|------|-------------------------------|------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 系统信息模块 | C++ | QString getHdPlatform(void); | 获取硬件平台信息 | +| | | 参数说明 | 返回值说明 | +| | | 无 | 空 : 失败 | +| | | | 非空 : 获取到的值 | + # 5 基础开发 SDK @@ -5723,9 +5046,7 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" ``` -+-------------------------------------------------------+ -| > \$ sudo apt install libkysdk-base libkysdk-base-dev | -+-------------------------------------------------------+ +$ sudo apt install libkysdk-base libkysdk-base-dev ``` @@ -5737,9 +5058,7 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" ``` -+----------------------------------------------------------+ -| > \$ sudo apt-get install libkysdk-log llibkysdk-log-dev | -+----------------------------------------------------------+ +$ sudo apt-get install libkysdk-log llibkysdk-log-dev ``` @@ -5776,153 +5095,65 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" > 输出日志 -``` -+-------------------------+-------------------------------------+ -| > 类型 | > 声明 | -+=========================+=====================================+ -| > 输出 debug 级别日志 | > \#define klog_debug(fmt , \...) | -+-------------------------+-------------------------------------+ -| > 输出 info 级别日志 | > \#define klog_info(fmt , \...) | -+-------------------------+-------------------------------------+ -| > 输出 notice 级别日志 | > \#define klog_notice(fmt , \...) | -+-------------------------+-------------------------------------+ -| > 输出 warning 级别日志 | > \#define klog_warning(fmt , \...) | -+-------------------------+-------------------------------------+ -| > 输出 error 级别日志 | > \#define klog_err(fmt , \...) | -+-------------------------+-------------------------------------+ -| > 输出 crit 级别日志 | > \#define klog_crit(fmt , \...) | -+-------------------------+-------------------------------------+ -| > 输出 alert 级别日志 | > \#define klog_alert(fmt , \...) | -+-------------------------+-------------------------------------+ -| > 输出 emerg 级别日志 | > \#define klog_emerg(fmt , \...) | -+-------------------------+-------------------------------------+ -``` +| | | +|---------------|---------------------------------| +| 类型 | 声明 | +| 输出debug级别日志 | #define klog_debug(fmt , ...) | +| 输出info级别日志 | #define klog_info(fmt , ...) | +| 输出notice级别日志 | #define klog_notice(fmt , ...) | +| 输出warning级别日志 | #define klog_warning(fmt , ...) | +| 输出error级别日志 | #define klog_err(fmt , ...) | +| 输出crit级别日志 | #define klog_crit(fmt , ...) | +| 输出alert级别日志 | #define klog_alert(fmt , ...) | +| 输出emerg级别日志 | #define klog_emerg(fmt , ...) | -> 初始化日志记录 +> 初始化日志记录 -``` -+----------+------------+----------------------------+--------------+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | -+==========+============+============================+==============+ -| 日志 | C | > extern int | 初始化日志记 | -| | | > kdk_logger_init(const | | -| | | > char \*ini) | | -+----------+------------+----------------------------+--------------+ -+---+---+---------------------+-------------------+---+ -| | | | 录,也可以不 | | -| | | | | | -| | | | 调用该函数直 | | -| | | | | | -| | | | 接使用上方日 | | -| | | | | | -| | | | 志记录的宏, | | -| | | | | | -| | | | 若以此方式运 | | -| | | | | | -| | | | 行,则程序会 | | -| | | | | | -| | | | 使用默认的日 | | -| | | | | | -| | | | > 志配置文件 | | -+===+===+=====================+===================+===+ -| | | > 参数说明 | > 返回值说明 | | -+---+---+---------------------+-------------------+---+ -| | | ini:日志配置文件路 | int,0 表示成功, | | -| | | | | | -| | | 径,若传入 NULL 则 | > 非 0 表示失败 | | -| | | | | | -| | | 会使用默认的日志配 | | | -| | | | | | -| | | > 置文件 | | | -+---+---+---------------------+-------------------+---+ -``` +| | | | | +|-----|------|-----------------------------------|----------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 日志 | C | extern int | kdk_logger_init(const char *ini) | 初始化日志记录,也可以不调用该函数直接使用上方日志记录的宏,若以此方式运行,则程序会使用默认的日志配置文件 | +| | | 参数说明 | 返回值说明 | | +| | | ini:日志配置文件路径,若传入NULL则会使用默认的日志配置文件 | int,0表示成功,非0表示失败 | > 缓存区日志写入 -``` -+----------+------------+----------------------------------+--------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+==================================+==============+===+ -| 日志 | C | > extern void kdk_logger_flush() | 在异步写入的 | | -| | | | | | -| | | DESTRUCTOR; | 方式下,可以 | | -| | | | | | -| | | | 调用该函数手 | | -| | | | | | -| | | | 动将缓存区中 | | -| | | | | | -| | | | 的日志写入文 | | -| | | | | | -| | | | > 件中 | | -+----------+------------+----------------------------------+--------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+----------------------------------+--------------+---+ +| | | | | +|-----|------|-------------|--------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 日志 | C | extern void | kdk_logger_flush() DESTRUCTOR; | 在异步写入的方式下,可以调用该函数手动将缓存区中的日志写入文件中 | +| | | 参数说明 | 返回值说明 | | +| | | 无 | 无 | -+---+---+------+------+---+ -| | | > 无 | > 无 | | -+---+---+------+------+---+ -``` > 设置日志存储目录 -``` -+----------+------------+--------------------+--------------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+====================+===+ -| 日志 | C | extern int | 设置日志的存 | | -| | | kdk_l | | | -| | | ogger_setdir(const | 储目录,若不 | | -| | | char\* | | | -| | | | 设 置 , 非 root | | -| | | dpath) | | | -| | | | 程序会被记录 | | -| | | | | | -| | | | 在 \~/.log 下 , | | -| | | | | | -| | | | root 程 序 会 被 | | -| | | | | | -| | | | 记 录 在 /var/log | | -| | | | | | -| | | | > 下 | | -+----------+------------+--------------------+--------------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------+--------------------+---+ -| | | > d | int 成功返回 0,失 | | -| | | path:日志存储路径 | | | -| | | | > 败返回-1 | | -+----------+------------+--------------------+--------------------+---+ -``` +| | | | | +|-----|------|-------------------------------------------------|---------------------------------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 日志 | C | extern int kdk_logger_setdir(const char* dpath) | 设置日志的存储目录,若不设置,非root程序会被记录在~/.log下,root程序会被记录在/var/log下 | +| | | 参数说明 | 返回值说明 | | +| | | dpath:日志存储路径 | int | 成功返回0,失败返回-1 | + > 设置日志输出自动换行 -``` -+----------+------------+-----------------------------------------+--------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+=========================================+==============+===+ -| 日志 | C | extern void kdk_logger_set_autowrap(int | 设置日志输出 | | -| | | | | | -| | | autowarp) | > 自动换行 | | -+----------+------------+-----------------------------------------+--------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+-----------------------------------------+--------------+---+ +| | | | | +|-----|------|---------------------------------------------------|------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 日志 | C | extern void kdk_logger_set_autowrap(int autowarp) | 设置日志输出自动换行 | +| | | 参数说明 | 返回值说明 | | +| | | autowarp:1表示启用启动换行,0表示禁止自动换行 | 无 | -+---+---+----------------------+------+---+ -| | | autowarp:1 表示启用 | > 无 | | -| | | | | | -| | | 启动换行,0 表示禁 | | | -| | | | | | -| | | > 止自动换行 | | | -+---+---+----------------------+------+---+ -``` ## **5.2** 定时器 @@ -5931,9 +5162,7 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" ``` -+-------------------------------------------------------------+ -| > \$ sudo apt-get install libkysdk-timer libkysdk-timer-dev | -+-------------------------------------------------------------+ +$ sudo apt-get install libkysdk-timer libkysdk-timer-dev ``` @@ -5955,229 +5184,66 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" > > 初始化定时器 - -``` -+----------+------------+----------------------+-------------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+======================+===================+===+ -| 定时器 | C | int kdk_timer_init() | 初始化定时器 | | -| | | | | | -| | | | > 核心组件 | | -+----------+------------+----------------------+-------------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+----------------------+-------------------+---+ -| | | > 无 | int,0 表示成功, | | -| | | | | | -| | | | > 非 0 表示失败 | | -+----------+------------+----------------------+-------------------+---+ -``` +| | | | | +|-----|------|----------------------|------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 定时器 | C | int kdk_timer_init() | 初始化定时器核心组件 | +| | | 参数说明 | 返回值说明 | | +| | | 无 | int,0表示成功,非0表示失败 | > 启动定时器 -``` -+----------+------------+--------------------+--------------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+====================+===+ -| 定时器 | C | | > 启动定时器 | | -| | | | | | -| | | < | | | -| | | tr class="header"> | | | -| | | | | | -| | | | | | -| | | | | | -| | | | | | -| | | | | | -| | | | | | -| | | | | | -| | | | | | -| | | | | | -| | | | | | -| | | | | | -| | | | | | -| | |
| | | -| | |

size_t

| | | -| | |
kdk_timer_s | | | -| | | tart(unsignedint
| | | -| | |

intervalms,

| | | -| | |
| | | -| | | < | | | -| | | p>time_handler

| | | -| | |
| | | -| | |

callback,

| | | -| | |
| | | -| | | | | | -| | | KTimerAttribute | | | -| | | attr, KTimerType | | | -| | | type, void\* | | | -| | | | | | -| | | > userdata, int | | | -| | | > freeOnDelete) | | | -+----------+------------+--------------------+--------------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------+--------------------+---+ -| | | > intervalms : 定 | size_t 定 时 器 的 | | -| | | > 时 器 | | | -| | | > | > ID | | -| | | > | | | -| | | 时间,以毫秒为单位 | | | -| | | > | | | -| | | > callback | | | -| | | > :定时器到 | | | -| | | | | | -| | | 期后 | | | -| | | 触发的回调函数指针 | | | -| | | | | | -| | | > | | | -| | | attr:定时器属性, | | | -| | | > | | | -| | | > | | | -| | | KTIMER_SINGLESHOT | | | -| | | | | | -| | | 表 示 一 次 性 定 | | | -| | | 时 器 ; | | | -| | | | | | -| | | KTIMER_PERIODIC | | | -| | | 表示 | | | -| | | | | | -| | | 周 期 性 定 时 器 | | | -| | | ; | | | -| | | | | | -| | | KTIMER_NEVER | | | -| | | 表示不 | | | -| | | | | | -| | | > 会被触发的定时器 | | | -| | | > | | | -| | | > | | | -| | | type:定时器类型, | | | -| | | > | | | -| | | > KTIMER_ABSOLUTE | | | -| | | > 表 | | | -| | | | | | -| | | 示绝 | | | -| | | 对时间定时器,修改 | | | -| | | | | | -| | | 系统 | | | -| | | 时间不会影响定时器 | | | -| | | | | | -| | | | | | -| | | | | | -| | | < | | | -| | | tr class="header"> | | | -| | | | | | -| | | | | | -| | | | | | -| | | | | | -| | | | | | -| | | | | | -| | | | | | -| | | | | | -| | | | | | -| | | | | | -| | | | | | -| | | | | | -| | | | | | -| | | | | | -| | |
| | | -| | |

| | | -| | |
| | | -| | |

K | | | -| | | TIMER_RELATIVE

| | | -| | |
| | | -+----------+------------+--------------------+--------------------+---+ - -+---+---+-----------------------------+---+---+ -| | | 示相对时间定时器,修改 | | | -| | | | | | -| | | 系统时间会影响定时器时 | | | -| | | | | | -| | | > 间 | | | -| | | > | | | -| | | > userdata:指向用户 | | | -| | | > | | | -| | | > 数据的指针 | | | -| | | > | | | -| | | > freeOnDelete \[ 未 | | | -| | | > | | | -| | | > 启用\] | | | -+===+===+=============================+===+===+ -| | | > freeOnDelete: \[未启用\] | | | -+---+---+-----------------------------+---+---+ -``` +| | | | | +|-----|------|----------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 定时器 | C | size_t | kdk_timer_start(unsigned int intervalms, time_handler callback, KTimerAttribute attr, KTimerType type, void* userdata, int freeOnDelete) | +| | | 参数说明 | 返回值说明 | +| | | intervalms:定时器时间,以毫秒为单位 | size_t定时器的ID | +| | | callback:定时器到期后触发的回调函数指针 | | +| | | attr:定时器属性,KTIMER_SINGLESHOT表示一次性定时器;KTIMER_PERIODIC表示周期性定时器;KTIMER_NEVER表示不会被触发的定时器 | | +| | | type:定时器类型,KTIMER_ABSOLUTE表示绝对时间定时器,修改系统时间不会影响定时器的时间;KTIMER_RELATIVE表示相对时间定时器,修改系统时间会影响定时器时间 | | +| | | userdata:指向用户数据的指针 | | +| | | freeOnDelete: [未启用] | | + > 停止给定的定时器 -``` -+----------+------------+-------------------------------------+--------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+=====================================+==============+===+ -| 定时器 | C | void kdk_timer_stop(size_t timerfd) | 停止给定的定 | | -| | | | | | -| | | | > 时器 | | -+----------+------------+-------------------------------------+--------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+-------------------------------------+--------------+---+ -| | | > timerfd : 由 | > 无 | | -| | | | | | -| | | kdk_timer_start:返回 | | | -| | | | | | -| | | > 的定时器 ID | | | -+----------+------------+-------------------------------------+--------------+---+ -``` +| | | | | +|-----|------|-------------------------------------|----------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 定时器 | C | void kdk_timer_stop(size_t timerfd) | 停止给定的定时器 | +| | | 参数说明 | 返回值说明 | | +| | | timerfd:由kdk_timer_start:返回的定时器ID | 无 | + > 销毁定时器 -``` -+----------+------------+--------------------------+--------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+==========================+==============+===+ -| > 定时器 | C | void kdk_timer_destroy() | > 销毁定时器 | | -+----------+------------+--------------------------+--------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------------+--------------+---+ +| | | | | +|-----|------|--------------------------|-------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 定时器 | C | void kdk_timer_destroy() | 销毁定时器 | +| | | 参数说明 | 返回值说明 | | +| | | 无 | 无 | -+---+---+------+------+---+ -| | | > 无 | > 无 | | -+---+---+------+------+---+ -``` > 重置定时器 -``` -+----------+------------+--------------------+--------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+==============+===+ -| > 定时器 | C | void | > 重置定时器 | | -| | | kdk_ | | | -| | | timer_reset(size_t | | | -| | | timerfd , unsigned | | | -| | | | | | -| | | int intervalms) | | | -+----------+------------+--------------------+--------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------+--------------+---+ -| | | > timerfd : 由 | > 无 | | -| | | | | | -| | | kdk_timer_start | | | -| | | 返回的 | | | -| | | | | | -| | | > 定时器 ID | | | -| | | > | | | -| | | > intervalms : | | | -| | | > | | | -| | | > 需要调整的时间 | | | -| | | > | | | -| | | > 间隔,以 ms | | | -| | | > 为单位 | | | -+----------+------------+--------------------+--------------+---+ -``` +| | | | | +|-----|------|----------------------------------------------------------------|-------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 定时器 | C | void kdk_timer_reset(size_t timerfd , unsigned int intervalms) | 重置定时器 | +| | | 参数说明 | 返回值说明 | +| | | timerfd:由kdk_timer_start返回的定时器ID | 无 | +| | | intervalms:需要调整的时间间隔,以ms为单位 | | + ## **5.3** C 语言字符串扩展 @@ -6188,9 +5254,7 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" ``` -+-------------------------------------------------------------+ -| > \$ sudo apt-get install libkysdk-utils libkysdk-utils-dev | -+-------------------------------------------------------------+ +$ sudo apt-get install libkysdk-utils libkysdk-utils-dev ``` @@ -6201,458 +5265,181 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" > 分割字符串 -``` -+----------+------------+----------------------------+--------------+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | -+==========+============+============================+==============+ -| C 语 言 | C | static inline char\*\* | 对原字符串以 | -| | | strsplit(char \*str, char | | -+----------+------------+----------------------------+--------------+ +| | | | | +|----------|------|------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| C语言字符串扩展 | C | static inline char** strsplit(char *str, char delim) | 对原字符串以给定的分隔符进行分割,注意该函数会修改原字符串 | +| | | 参数说明 | 返回值说明 | +| | | str:需要分割的字符串 | char** 分割后的字符串列表,以NULL结尾。存储分割后所有字符串的字符串列表本身是由alloc申请的内存,因此当使用完成后应当被free;而分割出来的各个字符串不是申请的内存,而是分别指向了原字符串中的特定位置,因此他们不需要被分别free | +| | | delim:分隔符 | | -+----------+---+--------------------+----------------------+---+ -| 字 符 串 | | delim) | 给定的分隔符 | | -| | | | | | -| > 扩展 | | | 进行分割,注 | | -| | | | | | -| | | | 意该函数会修 | | -| | | | | | -| | | | > 改原字符串 | | -+==========+===+====================+======================+===+ -| | | > 参数说明 | > 返回值说明 | | -+----------+---+--------------------+----------------------+---+ -| | | > str:需要分割的字 | char\*\* 分割后的字 | | -| | | > | | | -| | | > 符串 | 符 串 列 表 , 以 | | -| | | | | | -| | | delim:分隔符 | NULL 结 尾 。 存 储 | | -| | | | | | -| | | | 分割后所有字符串 | | -| | | | | | -| | | | 的字符串列表本身 | | -| | | | | | -| | | | 是由 alloc 申请的内 | | -| | | | | | -| | | | 存,因此当使用完 | | -| | | | | | -| | | | 成后应当被 free; | | -| | | | | | -| | | | 而分割出来的各个 | | -| | | | | | -| | | | 字符串不是申请的 | | -| | | | | | -| | | | 内存,而是分别指 | | -| | | | | | -| | | | 向了原字符串中的 | | -| | | | | | -| | | | 特定位置,因此他 | | -| | | | | | -| | | | 们 不 需 要 被 分 别 | | -| | | | | | -| | | | > free | | -+----------+---+--------------------+----------------------+---+ -``` > 小写字符串 -``` -+----------+------------+------------------------------------------+--------------+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | -+==========+============+==========================================+==============+ -| C 语 言 | C | static inline void str2lower(char \*str) | 将字符串中的 | -| | | | | -| 字 符 串 | | | 所有大写字母 | -+----------+------------+------------------------------------------+--------------+ +| | | | | +|----------|------|-----------------------------------------|--------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| C语言字符串扩展 | C | static inline void str2lower(char *str) | 将字符串中的所有大写字母转化为小写字 | +| | | 参数说明 | 返回值说明 | | +| | | str:需要操作的字符串指针 | 无 | -+--------+---+----------------------+--------------+---+ -| > 扩展 | | | 转化为小写字 | | -+========+===+======================+==============+===+ -| | | > 参数说明 | > 返回值说明 | | -+--------+---+----------------------+--------------+---+ -| | | str:需要操作的字符串 | > 无 | | -| | | | | | -| | | > 指针 | | | -+--------+---+----------------------+--------------+---+ -``` > 大写字符串 -``` -+----------+------------+--------------------+----------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+================+===+ -| C 语 言 | C | static inline void | 将 字 符 串 中 | | -| | | str2upper(char | | | -| 字 符 串 | | \*str) | 的 所 有 小 写 | | -| | | | | | -| > 扩展 | | | 字 母 转 化 为 | | -| | | | | | -| | | | > 大写字母 | | -+----------+------------+--------------------+----------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------+----------------+---+ -| | | st | > 无 | | -| | | r:需要操作的字符串 | | | -| | | | | | -| | | > 指针 | | | -+----------+------------+--------------------+----------------+---+ -``` +| | | | | +|----------|------|-----------------------------------------|---------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| C语言字符串扩展 | C | static inline void str2upper(char *str) | 将字符串中的所有小写字母转化为大写字母 | +| | | 参数说明 | 返回值说明 | | +| | | str:需要操作的字符串指针 | 无 | -> 统计出现次数 +> 统计出现次数 -``` -+----------+------------+--------------------+----------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+================+===+ -| C 语 言 | C | static inline | 统 计 给 定 字 | | -| | | size_t | | | -| 字 符 串 | | strcounts(const | 符 在 字 符 串 | | -| | | char \*str, | | | -| > 扩展 | | | 中 出 现 的 次 | | -| | | char ch) | | | -| | | | > 数 | | -+----------+------------+--------------------+----------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------+----------------+---+ - -+---+---+-------------------+---------------------+---+ -| | | > str:原字符串 | size_t:字符出现的次 | | -| | | > | | | -| | | > ch:需要统计的字 | > 数 | | -| | | > | | | -| | | > 符 | | | -+---+---+-------------------+---------------------+---+ -``` +| | | | | +|----------|------|----------------------------------------------------------|------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| C语言字符串扩展 | C | static inline size_t strcounts(const char *str, char ch) | 统计给定字符在字符串中出现的次数 | +| | | 参数说明 | 返回值说明 | +| | | str:原字符串 | size_t:字符出现的次数 | +| | | ch:需要统计的字符 | | > 后缀判断 -``` -+----------+------------+--------------------+--------------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+====================+===+ -| C 语 言 | C | static inline int | 判断 str 是否 | | -| | | strendwith(const | | | -| 字 符 串 | | char \*str, | 以 postfix 结 | | -| | | | | | -| > 扩展 | | const char | 尾 需 要 区 分 | | -| | | \*postfix) | | | -| | | | > 大小写 | | -+----------+------------+--------------------+--------------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------+--------------------+---+ -| | | > str:原字符串 | int 若 str 以 | | -| | | > | postfix | | -| | | > postfix: 需 要 | | | -| | | > 匹 配 | 结尾,则返回 0; | | -| | | > | | | -| | | > 的字符串后缀 | > 否则返回 1 | | -+----------+------------+--------------------+--------------------+---+ -``` +| | | | | +|----------|------|--------------------------------------------------------------------|-------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| C语言字符串扩展 | C | static inline int strendwith(const char *str, const char *postfix) | 判断str是否以postfix结尾需要区分大小写 | +| | | 参数说明 | 返回值说明 | +| | | str:原字符串 | int 若str以postfix结尾,则返回0;否则返回1 | +| | | postfix:需要匹配的字符串后缀 | | + > 查找子字符串的首次出现位置 -``` -+----------+------------+--------------------+----------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+================+===+ -| C 语 言 | C | static inline int | 在 给 定 的 字 | | -| | | strfirstof(const | | | -| 字 符 串 | | char\* str, char | 符 串 中 查 找 | | -| | | | | | -| > 扩展 | | ch) | 给 定 字 符 第 | | -| | | | | | -| | | | 一 次 出 现 的 | | -| | | | | | -| | | | 位 置 ; 计 数 | | -| | | | | | -| | | | > 从 0 开始 | | -+----------+------------+--------------------+----------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------+----------------+---+ +| | | | | +|----------|------|--------------------------------------------------------|-------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| C语言字符串扩展 | C | static inline int strfirstof(const char* str, char ch) | 在给定的字符串中查找给定字符第一次出现的位置;计数从0开始 | +| | | 参数说明 | 返回值说明 | +| | | str:原字符串 | int 第一次出现的位置,若未找到给定的字符,则返回-1 | +| | | ch:需要查找的字符 | | -+---+---+-------------------+--------------------+---+ -| | | > str:原字符串 | int 第一次出现的位 | | -| | | > | | | -| | | > ch:需要查找的字 | 置,若未找到给定 | | -| | | > | | | -| | | > 符 | > 的字符,则返回-1 | | -+---+---+-------------------+--------------------+---+ -``` > 查找子字符串的末次出现位置 -``` -+----------+------------+--------------------+--------------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+====================+===+ -| C 语 言 | C | static inline int | 在 给 定 的 字 | | -| | | strlastof(const | | | -| 字 符 串 | | char\* str, char | 符 串 中 查 找 | | -| | | | | | -| > 扩展 | | ch) | 给 定 字 符 最 | | -| | | | | | -| | | | 后 一 次 出 现 | | -| | | | | | -| | | | 的 位 置 ; 计 | | -| | | | | | -| | | | > 数从 0 开始 | | -+----------+------------+--------------------+--------------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------+--------------------+---+ -| | | > str:原字符串 | int 最后一次出现的 | | -| | | > | | | -| | | > ch:需要查找的字 | 位置,若未找到给 | | -| | | > | | | -| | | > 符 | 定的字符,则返回- | | -| | | | | | -| | | | > 1 | | -+----------+------------+--------------------+--------------------+---+ -``` +| | | | | +|----------|------|-------------------------------------------------------|--------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| C语言字符串扩展 | C | static inline int strlastof(const char* str, char ch) | 在给定的字符串中查找给定字符最后一次出现的位置;计数从0开始 | +| | | 参数说明 | 返回值说明 | +| | | str:原字符串 | int 最后一次出现的位置,若未找到给定的字符,则返回-1 | +| | | ch:需要查找的字符 | | + > 删除空格和制表符 -``` -+----------+------------+---------------------+-----------------+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | -+==========+============+=====================+=================+ -| C 语 言 | C | static inline void | 删除给定字符 | -| | | strstripblank(char | | -| 字 符 串 | | \*str) | 串前后的空格 | -| | | | | -| > 扩展 | | | 和水平制表符 | -| | | | | -| | | | ( tab ) , 注 | -+----------+------------+---------------------+-----------------+ +| | | | | +|----------|------|---------------------------------------------|--------------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| C语言字符串扩展 | C | static inline void strstripblank(char *str) | 删除给定字符串前后的空格和水平制表符(tab),注意该操作会修改原字符串 | +| | | 参数说明 | 返回值说明 | | +| | | str:需要修改的字符串指针 | 无 | -+---+---+----------------------+--------------+---+ -| | | | 意该操作会修 | | -| | | | | | -| | | | > 改原字符串 | | -+===+===+======================+==============+===+ -| | | > 参数说明 | > 返回值说明 | | -+---+---+----------------------+--------------+---+ -| | | str:需要修改的字符串 | > 无 | | -| | | | | | -| | | > 指针 | | | -+---+---+----------------------+--------------+---+ -``` > 跳过开始的所有空格、制表符、换行符 -``` -+----------+------------+--------------------+--------------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+====================+===+ -| C 语 言 | C | static inline | 跳 过 字 符 串 | | -| | | const char | | | -| 字 符 串 | | \* | 前 的 所 有 空 | | -| | | strskipspace(const | | | -| > 扩展 | | | 格 、 制 表 | | -| | | char \*p) | | | -| | | | 符 、 换 行 | | -| | | | | | -| | | | 符 ; 该 操 作 | | -| | | | | | -| | | | 不 会 修 改 原 | | -| | | | | | -| | | | > 字符串 | | -+----------+------------+--------------------+--------------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------+--------------------+---+ -| | | p:指向原字符串的指 | const char\* 指 向 | | -| | | | 跳 | | -| | | > 针 | | | -| | | | 过 space 后 的 字 | | -| | | | 符 | | -| | | | | | -| | | | > 串指针 | | -+----------+------------+--------------------+--------------------+---+ -``` +| | | | | +|----------|------|-------------------------------------------------------|---------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| C语言字符串扩展 | C | static inline const char *strskipspace(const char *p) | 跳过字符串前的所有空格、制表符、换行符;该操作不会修改原字符串 | +| | | 参数说明 | 返回值说明 | | +| | | p:指向原字符串的指针 | const char* 指向跳过space后的字符串指针 | + > 前缀判断(区分大小写) -``` -+----------+------------+---------------------------+---------------+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | -+==========+============+===========================+===============+ -| C 语 言 | C | static inline int | 判断 str 是否 | -| | | strstartswith(const char | | -| | | \*str, | | -+----------+------------+---------------------------+---------------+ +| | | | | +|----------|------|----------------------------------------------------------------------|------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| C语言字符串扩展 | C | static inline int strstartswith(const char *str, const char *prefix) | 判断str是否以prefix开头,该函数区分大小写 | +| | | 参数说明 | 返回值说明 | +| | | str:原字符串 | int 若str以prefix开头,则返回0;否则返回1 | +| | | prefix:需要匹配的字符串前缀 | | -+----------+---+----------------------+-------------------------+---+ -| 字 符 串 | | const char \*prefix) | > 以 prefix 开 | | -| | | | | | -| > 扩展 | | | 头 , 该 函 数 | | -| | | | | | -| | | | > 区分大小写 | | -+==========+===+======================+=========================+===+ -| | | > 参数说明 | > 返回值说明 | | -+----------+---+----------------------+-------------------------+---+ -| | | > str:原字符串 | int 若 str 以 prefix 开 | | -| | | > | | | -| | | > prefix:需要匹配 | 头,则返回 0;否则 | | -| | | > | | | -| | | > 的字符串前缀 | > 返回 1 | | -+----------+---+----------------------+-------------------------+---+ -``` > 前缀判断(不区分大小写) -``` -+----------+------------+--------------------+--------------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+====================+===+ -| C 语 言 | C | static inline int | 判断 str 是否 | | -| | | strstart | | | -| 字 符 串 | | swith_nocase(const | 以 prefix 开 | | -| | | char | | | -| > 扩展 | | | 头 ; 不 区 分 | | -| | | \*str, const char | | | -| | | \*prefix) | > 大小写 | | -+----------+------------+--------------------+--------------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------+--------------------+---+ -| | | > str:原字符串 | int 若 str 以 | | -| | | > | prefix 开 | | -| | | > | | | -| | | prefix:需要匹配的 | 头,则返回 0;否则 | | -| | | > | | | -| | | > 字符串前缀 | > 返回 1 | | -+----------+------------+--------------------+--------------------+---+ -``` +| | | | | +|----------|------|-----------------------------------------------------------------------------|------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| C语言字符串扩展 | C | static inline int strstartswith_nocase(const char *str, const char *prefix) | 判断str是否以prefix开头;不区分大小写 | +| | | 参数说明 | 返回值说明 | +| | | str:原字符串 | int 若str以prefix开头,则返回0;否则返回1 | +| | | prefix:需要匹配的字符串前缀 | | > 删减字符串前后的指定字符 -``` -+----------+------------+---------------------+----------------+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | -+==========+============+=====================+================+ -| C 语 言 | C | static inline void | 对 给 定 的 字 | -| | | strstrip(char | | -| 字 符 串 | | \*str, char ch) | 符 串 进 行 | -+----------+------------+---------------------+----------------+ - -+--------+---+----------------------+----------------+---+ -| > 扩展 | | | strip 操 作 , | | -| | | | | | -| | | | 删 减 字 符 串 | | -| | | | | | -| | | | 前 后 的 指 定 | | -| | | | | | -| | | | 字 符 ; 注 意 | | -| | | | | | -| | | | 该 操 作 会 修 | | -| | | | | | -| | | | > 改原字符串 | | -+========+===+======================+================+===+ -| | | > 参数说明 | > 返回值说明 | | -+--------+---+----------------------+----------------+---+ -| | | > str:需要进行 strip | > 无 | | -| | | > | | | -| | | > 的字符串指针 | | | -| | | > | | | -| | | > ch:需要删除的字 | | | -| | | > | | | -| | | > 符 | | | -+--------+---+----------------------+----------------+---+ -``` +| | | | | +|----------|------|-------------------------------------------------|--------------------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| C语言字符串扩展 | C | static inline void strstrip(char *str, char ch) | 对给定的字符串进行strip操作,删减字符串前后的指定字符;注意该操作会修改原字符串 | +| | | 参数说明 | 返回值说明 | +| | | str:需要进行strip的字符串指针 | 无 | +| | | ch:需要删除的字符 | | + > 跳过开始的所有空格、水平制表符 -``` -+----------+------------+--------------------+--------------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+====================+===+ -| C 语 言 | C | static inline | 跳过字符串前 | | -| | | const char | | | -| 字 符 串 | | \* | 的所有空格和 | | -| | | strskipblank(const | | | -| > 扩展 | | char | 水 平 制 表 符 | | -| | | | | | -| | | \*p) | (tab);该操 | | -| | | | | | -| | | | 作不会修改原 | | -| | | | | | -| | | | > 字符串 | | -+----------+------------+--------------------+--------------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------+--------------------+---+ -| | | p | const char\* | | -| | | :指向原字符串的指 | 指向跳过 | | -| | | | | | -| | | > 针 | space 后的字符串指 | | -+----------+------------+--------------------+--------------------+---+ +| | | | | +|----------|------|-------------------------------------------------------|------------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| C语言字符串扩展 | C | static inline const char *strskipblank(const char *p) | 跳过字符串前的所有空格和水平制表符(tab);该操作不会修改原字符串 | +| | | 参数说明 | 返回值说明 | | +| | | p:指向原字符串的指针 | const char* 指向跳过space后的字符串指针 | -+---+---+---+------+---+ -| | | | > 针 | | -+---+---+---+------+---+ -``` > 删除前后的空格、制表符、换行符 -``` -+----------+------------+--------------------+----------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+================+===+ -| C 语 言 | C | static inline void | 删 除 给 定 字 | | -| | | strstripspace(char | | | -| 字 符 串 | | \*str) | 符 串 前 后 的 | | -| | | | | | -| > 扩展 | | | 空 格 、 制 表 | | -| | | | | | -| | | | 符 、 换 行 | | -| | | | | | -| | | | 符 , 注 意 该 | | -| | | | | | -| | | | 操 作 会 修 改 | | -| | | | | | -| | | | > 原字符串 | | -+----------+------------+--------------------+----------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------+----------------+---+ -| | | str:需要进行 | > 无 | | -| | | strip 操 | | | -| | | | | | -| | | > 作的字符串指针 | | | -+----------+------------+--------------------+----------------+---+ +| | | | | +|----------|------|---------------------------------------------|-----------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| C语言字符串扩展 | C | static inline void strstripspace(char *str) | 删除给定字符串前后的空格、制表符、换行符,注意该操作会修改原字符串 | +| | | 参数说明 | 返回值说明 | | +| | | str:需要进行strip操作的字符串指针 | 无 | -``` ## **5.4** 链表模块 > > 该模块实现了 C 语言链表操作相关接口。 ``` - -+-------------------------------------------------------------+ -| > \$ sudo apt-get install libkysdk-utils libkysdk-utils-dev | -+-------------------------------------------------------------+ +$ sudo apt-get install libkysdk-utils libkysdk-utils-dev ``` @@ -6687,169 +5474,76 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" > 创建跳表 -``` - +| | | | | +|-----|------|------------------------------------------------|---------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 链表 | C | extern kysdk_skiplist* kysdk_create_skiplist() | 创建跳表 | +| | | 参数说明 | 返回值说明 | | +| | | 无 | kysdk_skiplist* 跳表 | -> +----------+------------+--------------------+--------------------+---+ -> | > 子模块 | > 编程语言 | 声明 | > 描述 | | -> +==========+============+====================+====================+===+ -> | > 链表 | C | > extern | > 创建跳表 | | -> | | | > kysdk_skiplist\* | | | -> | | | > kysdk | | | -> | | | _create_skiplist() | | | -> +----------+------------+--------------------+--------------------+---+ -> | | | > 参数说明 | > 返回值说明 | | -> +----------+------------+--------------------+--------------------+---+ -> | | | > 无 | kysdk_skiplist\* | | -> | | | | 跳表 | | -> +----------+------------+--------------------+--------------------+---+ - -``` > 销毁跳表 -``` -+----------+------------+---------------------+----------------+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | -+==========+============+=====================+================+ -| > 链表 | C | extern void | 销 毁 跳 表 , | -| | | | | -| | | kysdk_destroy_skip | 并 回 收 所 有 | -| | | list(kysdk_skiplist | | -| | | \*list) | 分 配 的 内 | -| | | | | -| | | | 存 ; 注 意 | -| | | | | -| | | | data.ptr 指 向 | -| | | | | -| | | | 的 内 存 ( 若 | -| | | | | -| | | | 存 在 ) 不 会 | -+----------+------------+---------------------+----------------+ +| | | | | +|-----|------|----------------------------------------------------------|-------------------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 链表 | C | extern void kysdk_destroy_skiplist(kysdk_skiplist *list) | 销毁跳表,并回收所有分配的内存;注意data.ptr指向的内存(若存在)不会被释放 | +| | | 参数说明 | 返回值说明 | | +| | | list:跳表 | 无 | -+---+---+--------------+--------------+---+ -| | | | > 被释放 | | -+===+===+==============+==============+===+ -| | | > 参数说明 | > 返回值说明 | | -+---+---+--------------+--------------+---+ -| | | > list:跳表 | > 无 | | -+---+---+--------------+--------------+---+ -``` > 删除 key 值对应的节点 -``` -+----------+------------+--------------------+--------------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+====================+===+ -| > 链表 | C | extern int | 删除 key 值对 | | -| | | kysdk_skiplist_del | | | -| | | ete(kysdk_skiplist | > 应的节点 | | -| | | | | | -| | | \*list, int key) | | | -+----------+------------+--------------------+--------------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------+--------------------+---+ -| | | > list:需要操作的 | int, 成 功 删 除 | | -| | | > | 返 回 | | -| | | > 链表 | | | -| | | > | > 0,失败返回-1 | | -| | | > key:键 | | | -+----------+------------+--------------------+--------------------+---+ -``` +| | | | | +|-----|------|-----------------------------------------------------------------|---------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 链表 | C | extern int kysdk_skiplist_delete(kysdk_skiplist *list, int key) | 删除key值对应的节点 | +| | | 参数说明 | 返回值说明 | +| | | list:需要操作的链表 | int, 成功删除返回0,失败返回-1 | +| | | key:键 | | -> 插入节点 +> 插入节点 -``` -+----------+------------+--------------------+-------------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+===================+===+ -| > 链表 | C | extern int | > 插入节点 | | -| | | kysdk_skiplist_ins | | | -| | | ert(kysdk_skiplist | | | -| | | | | | -| | | \*list, int key, | | | -| | | kysdk_listdata | | | -| | | data) | | | -+----------+------------+--------------------+-------------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------+-------------------+---+ -| | | > list | int,成功插入返回 | | -| | | > :需要操作的 | | | -| | | > | > 0,失败返回-1 | | -| | | > 链表 | | | -| | | > | | | -| | | > key:键 | | | -+----------+------------+--------------------+-------------------+---+ -+---+---+--------------+---+---+ -| | | > data:数据 | | | -+---+---+--------------+---+---+ +| | | | | +|-----|------|--------------------------------------------------------------------------------------|--------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 链表 | C | extern int kysdk_skiplist_insert(kysdk_skiplist *list, int key, kysdk_listdata data) | 插入节点 | +| | | 参数说明 | 返回值说明 | +| | | list:需要操作的链表 | int,成功插入返回0,失败返回-1 | +| | | key:键 | | +| | | data:数据 | | -``` > 根据给定的 key 搜索 data 内容 -``` -+----------+------------+--------------------+--------------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+====================+===+ -| > 链表 | C | extern | 根据给定的 | | -| | | kysdk_listdata | | | -| | | | > key 搜 索 | | -| | | kysdk_skiplist_sea | > | | -| | | rch(kysdk_skiplist | > data 内容 | | -| | | \*list, int | | | -| | | | | | -| | | key) | | | -+----------+------------+--------------------+--------------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------+--------------------+---+ -| | | > list:需要操作的 | ky | | -| | | > | sdk_listdata,当搜 | | -| | | > 链表 | | | -| | | > | 索的 key | | -| | | > key:键 | 不存在时, | | -| | | | | | -| | | | > data.num 值为-1 | | -+----------+------------+--------------------+--------------------+---+ -``` +| | | | | +|-----|------|----------------------------------------------------------------------------|-----------------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 链表 | C | extern kysdk_listdata kysdk_skiplist_search(kysdk_skiplist *list, int key) | 根据给定的key搜索data内容 | +| | | 参数说明 | 返回值说明 | +| | | list:需要操作的链表 | kysdk_listdata,当搜索的key不存在时,data.num值为-1 | +| | | key:键 | | + > 设置跳表最高层数 -``` -+----------+----------+---------------------+--------------+---+ -| > 子模块 | 编程语言 | 声明 | > 描述 | | -+==========+==========+=====================+==============+===+ -| > 链表 | C | extern int | 设 置 跳 表 | | -| | | kysd | | | -| | | k_skiplist_setmaxle | > 最 高 层 | | -| | | vels(kysdk_skiplist | | | -| | | | 数 , 该 选 | | -| | | \*list, unsigned | | | -| | | int maxlevels) | 项 必 须 在 | | -| | | | | | -| | | | 跳 表 为 空 | | -| | | | | | -| | | | > 时使用 | | -+----------+----------+---------------------+--------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+----------+---------------------+--------------+---+ +| | | | | +|-----|------|--------------------------------------------------------------------------------------|------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 链表 | C | extern int kysdk_skiplist_setmaxlevels(kysdk_skiplist *list, unsigned int maxlevels) | 设置跳表最高层数,该选项必须在跳表为空时使用 | +| | | 参数说明 | 返回值说明 | +| | | list:需要修改的跳表 | int,成功返回0,失败返回-1 | +| | | maxlevels:层数 | | -+---+---+------------------------+---------------------+---+ -| | | > list:需要修改的跳表 | int,成功返回 0,失 | | -| | | > | | | -| | | > maxlevels:层数 | > 败返回-1 | | -+---+---+------------------------+---------------------+---+ -``` ## **5.5** 配置文件操作 @@ -6877,205 +5571,83 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" > 初始化配置文件 -``` -+----------+------------+--------------------+--------------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+====================+===+ -| 配 置 文 | C | extern int | 初始化配置 | | -| | | k | | | -| > 件操作 | | dk_conf_init(const | > 文件 | | -| | | char\* confpath) | | | -+----------+------------+--------------------+--------------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------+--------------------+---+ -| | | co | int 成功返回句柄号 | | -| | | nfpath:配置文件的 | | | -| | | | (非负值),失败返 | | -| | | > 路径 | | | -| | | | > 回错误码(负值) | | -+----------+------------+--------------------+--------------------+---+ -``` +| | | | | +|--------|------|------------------------------------------------|------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 配置文件操作 | C | extern int kdk_conf_init(const char* confpath) | 初始化配置文件 | +| | | 参数说明 | 返回值说明 | | +| | | confpath:配置文件的路径 | int 成功返回句柄号(非负值),失败返回错误码(负值) | + > 销毁指定的配置文件句柄 -``` -+----------+------------+--------------------------------------+--------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+======================================+==============+===+ -| 配 置 文 | C | extern void kdk_conf_destroy(int id) | 销毁指定的 | | -| | | | | | -| > 件操作 | | | 配置文件句 | | -| | | | | | -| | | | > 柄 | | -+----------+------------+--------------------------------------+--------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------------------------+--------------+---+ -| | | id : 由 kdk_conf_init | > 无 | | -| | | | | | -| | | > 返回的配置文件句柄 | | | -+----------+------------+--------------------------------------+--------------+---+ -``` +| | | | | +|--------|------|--------------------------------------|-------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 配置文件操作 | C | extern void kdk_conf_destroy(int id) | 销毁指定的配置文件句柄 | +| | | 参数说明 | 返回值说明 | | +| | | id:由kdk_conf_init返回的配置文件句柄 | 无 | + > 重新载入配置文件 -``` -+----------+------------+--------------------+--------------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+====================+===+ -| 配 置 文 | C | extern int | 重新载入配 | | -| | | k | | | -| > 件操作 | | dk_conf_reload(int | > 置文件 | | -| | | id) | | | -+----------+------------+--------------------+--------------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------+--------------------+---+ -| | | id : 由 | int 成功返回 | | -| | | kdk_conf_init | 0,失败 | | -| | | | | | -| | | > | > 返回错误码 | | -| | | 返回的配置文件句柄 | | | -+----------+------------+--------------------+--------------------+---+ -``` +| | | | | +|--------|------|------------------------------------|-------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 配置文件操作 | C | extern int kdk_conf_reload(int id) | 重新载入配置文件 | +| | | 参数说明 | 返回值说明 | | +| | | id:由kdk_conf_init返回的配置文件句柄 | int 成功返回0,失败返回错误码 | + > 获取指定配置项的值 -``` -+----------+------------+--------------------+--------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+==============+===+ -| 配 置 文 | C | extern const | 获取指定配 | | -| | | char\* | | | -| > 件操作 | | kdk_ | > 置项的值 | | -| | | conf_get_value(int | | | -| | | id, | | | -| | | | | | -| | | const char\* | | | -| | | group, const | | | -| | | char\* key) | | | -+----------+------------+--------------------+--------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------+--------------+---+ +| | | | | +|--------|------|-----------------------------------------------------------------------------------|----------------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 配置文件操作 | C | extern const char* kdk_conf_get_value(int id, const char* group, const char* key) | 获取指定配置项的值 | +| | | 参数说明 | 返回值说明 | +| | | id:由kdk_conf_init返回的配置文件句柄 | const char* 配置项所拥有的值,若key不存在,则返回一个空字符串 | +| | | group:key所在的组名称 | | +| | | key:配置项名称 | | -+---+---+------------------------+------------------------+---+ -| | | > id : 由 | const char\* 配置项 所 | | -| | | | | | -| | | kdk_conf_init 返 回 的 | 拥有的值,若 key 不 | | -| | | | | | -| | | > 配置文件句柄 | 存在,则返回一个空 | | -| | | > | | | -| | | > group : key 所 在 | > 字符串 | | -| | | > | | | -| | | > 的组名称 | | | -| | | > | | | -| | | > key:配置项名称 | | | -+---+---+------------------------+------------------------+---+ -``` > 枚举 key 值 -``` -+----------+------------+--------------------+--------------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+====================+===+ -| 配 置 文 | C | extern char\*\* | 列 举 id 对 | | -| | | const | | | -| > 件操作 | | kdk | 应配置文件 | | -| | | _conf_list_key(int | | | -| | | id, | > 的 指 定 | | -| | | | | | -| | | const char\* | Group 下 的 | | -| | | group) | | | -| | | | key 值 , 结 | | -| | | | | | -| | | | 尾 以 NULL | | -| | | | | | -| | | | > 指针表示 | | -+----------+------------+--------------------+--------------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------+--------------------+---+ -| | | > id : 由 | const char\*\* | | -| | | | const 以 | | -| | | kdk_conf_init 返 | | | -| | | 回 的 | NULL 结尾的字符串 | | -| | | | | | -| | | > 句柄值 | 列表,每个字符串都 | | -| | | > | | | -| | | > group:需要列举 | 是一个 key | | -| | | > | 名称,字 | | -| | | > 的 Group 名称 | | | -| | | | 符 串 列 表 本 身 | | -| | | | 是 由 | | -| | | | | | -| | | | alloc | | -| | | | 分配的内存,需 | | -| | | | | | -| | | | 要被 free | | -| | | | 释放;字符 | | -+----------+------------+--------------------+--------------------+---+ +| | | | | +|--------|------|------------------------------------------------------------------|----------------------------------------------------------------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 配置文件操作 | C | extern char** const kdk_conf_list_key(int id, const char* group) | 列举id对应配置文件的指定Group下的key值,结尾以NULL指针表示 | +| | | 参数说明 | 返回值说明 | +| | | id:由kdk_conf_init返回的句柄值 | const char** const 以NULL结尾的字符串列表,每个字符串都是一个key名称,字符串列表本身是由alloc分配的内存,需要被free释放;字符串不需要释放 | +| | | group:需要列举的Group名称 | | -+---+---+---+----------------+---+ -| | | | > 串不需要释放 | | -+---+---+---+----------------+---+ -``` > 枚举配置文件的 Group -``` -+----------+------------+--------------------+--------------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+====================+===+ -| 配 置 文 | C | extern char\*\* | 列举 id 对应 | | -| | | const | | | -| > 件操作 | | kdk_c | 配 置 文 件 的 | | -| | | onf_list_group(int | | | -| | | id) | 所有 Group, | | -| | | | | | -| | | | 结尾以 NULL | | -| | | | | | -| | | | > 指针表示 | | -+----------+------------+--------------------+--------------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------+--------------------+---+ -| | | id : 由 | const char\*\* | | -| | | kdk_conf_init | const 以 | | -| | | | | | -| | | > 返回的句柄值 | NULL 结 尾 的 字 | | -| | | | 符 串 | | -| | | | | | -| | | | 列表,每个字符串都 | | -| | | | | | -| | | | 是一个组名称,字符 | | -| | | | | | -| | | | 串列表本身是由 | | -| | | | alloc | | -| | | | | | -| | | | 分配的内存,需要被 | | -| | | | | | -| | | | free | | -| | | | 释放;字符串不 | | -| | | | | | -| | | | > 需要释放 | | -+----------+------------+--------------------+--------------------+---+ -``` +| | | | | +|--------|------|-------------------------------------------------|--------------------------------------------------------------------------------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 配置文件操作 | C | extern char** const kdk_conf_list_group(int id) | 列举id对应配置文件的所有Group,结尾以NULL指针表示 | +| | | 参数说明 | 返回值说明 | | +| | | id:由kdk_conf_init返回的句柄值 | const char** const 以NULL结尾的字符串列表,每个字符串都是一个组名称,字符串列表本身是由alloc分配的内存,需要被free释放;字符串不需要释放 | + ## **5.6** 单位进制转换 ``` -+-------------------------------------------------------------+ -| > \$ sudo apt-get install libkysdk-utils libkysdk-utils-dev | -+-------------------------------------------------------------+ +$ sudo apt-get install libkysdk-utils libkysdk-utils-dev ``` @@ -7085,100 +5657,34 @@ symbolic",一级菜单中包含 5 个选项,分别是:"设置","主题" > > 字符格式单位进制转换 - -``` -+----------+------------+--------------------+--------------------+---+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | | -+==========+============+====================+====================+===+ -| 配 置 文 | C | extern int | 字 符 格 式 | | -| | | kdkVolumeBaseChar | | | -| > 件操作 | | acterConvert(const | 单 位 进 制 | | -| | | | | | -| | | char\* | > 转换 | | -| | | origin_data, | | | -| | | KDKVolumeBaseType | | | -| | | | | | -| | | result_base, | | | -| | | char\* | | | -| | | result_data); | | | -+----------+------------+--------------------+--------------------+---+ -| | | > 参数说明 | > 返回值说明 | | -+----------+------------+--------------------+--------------------+---+ -| | | > 入参: | > int 类型值,接口 | | -| | | > | > | | -| | | > origin_data: 原 | > 执行是否成功 | | -| | | > 始 | > | | -| | | | > 0-无异常 | | -| | | 字符类型的数据,以 | > | | -| | | | > 1-非法进制 | | -| | | 具体进制单位结束, | > | | -| | | | > 2-非法参数 | | -| | | 如 果 没 有 , 缺 | > | | -| | | 省 为 | > 3-非法数据格式 | | -| | | | > | | -| | | > 'B' | > 4-系统运行异常 | | -| | | > | > | | -| | | > result_base: 期 | > 引发的未知错误 | | -| | | > 望 | | | -| | | > | | | -| | | > 的结果进制单位 | | | -| | | > | | | -| | | > 出参: | | | -| | | > | | | -| | | > result_data: 转 | | | -| | | > 化 | | | -| | | | | | -| | | 进制后的字符数据, | | | -| | | | | | -| | | > 带进制单位 | | | -+----------+------------+--------------------+--------------------+---+ -``` +| | | | | +|--------|------|----------------------------------------------------------------------------------------------------------------------|-----------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 配置文件操作 | C | extern int kdkVolumeBaseCharacterConvert(const char* origin_data, KDKVolumeBaseType result_base, char* result_data); | 字符格式单位进制转换 | +| | | 参数说明 | 返回值说明 | +| | | 入参: | int类型值,接口执行是否成功 | +| | | origin_data:原始字符类型的数据,以具体进制单位结束,如果没有,缺省为‘B’ | 0-无异常 | +| | | result_base:期望的结果进制单位 | 1-非法进制 | +| | | 出参: | 2-非法参数 | +| | | result_data:转化进制后的字符数据,带进制单位 | 3-非法数据格式 | +| | | | 4-系统运行异常引发的未知错误 | > 数字格式单位进制转换 -``` -+----------+------------+--------------------------------------+-------------+ -| > 子模块 | > 编程语言 | 声明 | > 描述 | -+==========+============+======================================+=============+ -| 配 置 文 | C | extern int | 数 字 格 式 | -| | | | | -| > 件操作 | | kdkVolumeBaseNumericalConvert(double | 单 位 进 制 | -| | | | | -| | | origin_numerical, KDKVolumeBaseType | > 转换 | -+----------+------------+--------------------------------------+-------------+ - -+---+---+---------------------------------------------+--------------------+---+ -| | | origin_base, KDKVolumeBaseType result_base, | | | -| | | | | | -| | | double\* result_numerical); | | | -+===+===+=============================================+====================+===+ -| | | > 参数说明 | > 返回值说明 | | -+---+---+---------------------------------------------+--------------------+---+ -| | | > 入参: | > int 类型值,接口 | | -| | | > | > | | -| | | > origin_numerical | > 执行是否成功 | | -| | | > | > | | -| | | > :原始数字类型数据 | > 0-无异常 | | -| | | > | > | | -| | | > origin_base:原始 | > 1-非法进制 | | -| | | > | > | | -| | | > 的进制单位 | > 2-非法参数 | | -| | | > | > | | -| | | > 出参: | > 3-非法数据格式 | | -| | | > | > | | -| | | > result_base:期望 | > 4-系统运行异常 | | -| | | > | > | | -| | | > 的进制单位 | > 引发的未知错误 | | -| | | > | | | -| | | > result_numerical | | | -| | | | | | -| | | :期望进制下的数字 | | | -| | | | | | -| | | > 类型数据 | | | -+---+---+---------------------------------------------+--------------------+---+ -``` +| | | | | +|--------|-------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------|------------| +| 子模块 | 编程语言 | 声明 | 描述 | +| 配置文件操作 | C | extern int kdkVolumeBaseNumericalConvert(double origin_numerical, KDKVolumeBaseType origin_base, KDKVolumeBaseType result_base, double* result_numerical); | 数字格式单位进制转换 | +| | 参数说明 | 返回值说明 | | +| | 入参: | int类型值,接口执行是否成功 | | +| | origin_numerical:原始数字类型数据 | 0-无异常 | | +| | origin_base:原始的进制单位 | 1-非法进制 | | +| | 出参: | 2-非法参数 | | +| | result_base:期望的进制单位 | 3-非法数据格式 | | +| | result_numerical:期望进制下的数字类型数据 | 4-系统运行异常引发的未知错误 | | + ![](assets/openKylin%20SDK%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97V2.0/0.png) -- Gitee