Updated on 2023-03-23 GMT+08:00

Customizing the Settings Page

buildSettingTabItems

API Description

This API is used to customize the display of tab pages and function areas of the settings page. If not customized, all tab pages and function areas are displayed by default.

Figure 1 Customizing the settings page

Method Definition

1
- (NSArray <HWMSettingTabItem *> *)buildSettingTabItems;

Parameter Description

Table 1 HWMSettingTabItem

Parameter

Type

Description

type

HWMSettingTabType

Tab type.

text

NSString

Title.

image

NSImage

Image.

hoverImage

NSImage

Effect when the pointer is placed on an image.

settingMenuItems

NSArray

Function list on the right.

Table 2 HWMSettingMenuItem

Parameter

Type

Description

type

HWMSettingMenuType

Function type.

text

NSString

Title.

Table 3 HWMSettingTabType parameters

Parameter

Type

Description

HWMSettingTabNormal

NSUInteger

General settings page.

HWMSettingTabVideo

NSUInteger

Video settings page.

HWMSettingTabAudio

NSUInteger

Audio settings page.

HWMSettingTabRecord

NSUInteger

Recording settings page.

HWMSettingTabHotKey

NSUInteger

Shortcut key settings page.

Table 4 HWMSettingMenuType parameters

Parameter

Type

Description

HWMSettingMenuLogin

NSUInteger

Login settings.

HWMSettingMenuCall

NSUInteger

Meeting call settings.

HWMSettingMenuChatNotify

NSUInteger

Message notification settings.

HWMSettingMenuSubtitle

NSUInteger

Caption settings.

HWMSettingMenuMicrophone

NSUInteger

Microphone settings.

HWMSettingMenuSpeaker

NSUInteger

Speaker settings.

HWMSettingMenuAdvanced

NSUInteger

Advanced settings.

HWMSettingMenuCamera

NSUInteger

Camera settings.

HWMSettingMenuLayout

NSUInteger

Layout settings.

HWMSettingMenuRecord

NSUInteger

Recording settings.

HWMSettingMenuHotKey

NSUInteger

Shortcut key settings.

Return Values

None

Sample Code
- (NSArray <HWMSettingTabItem *> *)buildSettingTabItems{
    HWMSettingTabItem *normalTab = [HWMSettingTabItem defaulTabNormal];
    HWMSettingTabItem *videoTab = [HWMSettingTabItem defaulTabVideo];
    HWMSettingTabItem *audioTab = [HWMSettingTabItem defaulTabAudio];
    HWMSettingTabItem *recordTab = [HWMSettingTabItem defaulTabRecord];
    HWMSettingTabItem *hotKeyTab = [HWMSettingTabItem defaulTabHotKey];
    return @[normalTab, videoTab, audioTab, recordTab, hotKeyTab];
};

buildSettingHotKeyItems

API Description

This API is used to customize the shortcut key page of the settings page. The shortcut key page will not be displayed if not set.

Figure 2 Customizing shortcut keys

Method Definition

1
- (NSArray<HWMSettingHotKeyItem *> *)buildSettingHotKeyItem;

Parameter Description

Table 5 HWMSettingHotKeyItem

Parameter

Type

Description

type

HWMSettingHotKeyType

Shortcut key type.

keyCode

NSInteger

Default shortcut key.

keyName

NSString

Key value of a shortcut key.

text

NSString

Shortcut key title.

action

dispatch_block_t

Shortcut key response event.

Table 6 HWMSettingHotKeyType parameters

Parameter

Type

Description

HWMSettingHotKeyOpenMain

NSUInteger

Main panel opening.

HWMSettingHotKeyActivateSearch

NSUInteger

Activate search.

Return Values

None

Sample Code
- (NSArray <HWMSettingHotKeyItem *> *)buildSettingHotKeyItems {
    HWMSettingHotKeyItem *item = [[HWMSettingHotKeyItem alloc] initWithType:2 text:@"Custom shortcut key" keyCode:kVK_ANSI_C keyName:@"HWMHotKeyCustomKey"];
    item.action = ^{
        NSLog(@"action");
    };
    return @[item];
};