| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- // 按钮可用性配置
- export interface ButtonAvailabilityConfig {
- action: string;
- multiGridDisabled?: boolean;
- singleGridDisabled?: boolean;
- tooltip?: string;
- }
- // 多分格时不可用的按钮列表
- export const MULTI_GRID_DISABLED_BUTTONS = [
- 'Add L Mark',
- 'Add R Mark',
- 'AddMark',
- 'Delete Selected Mark',
- 'Add Mask',
- 'Delete Mask',
- 'Rotate Any Angle',
- 'Crop Selected Area',
- 'Delete Digital Mask',
- 'Magnifier',
- 'Invert Image',
- 'Reset Image',
- 'Snapshot',
- 'Advanced Processing',
- 'Image Measurement',
- 'Rectangle Crop',
- 'More'
- ];
- // 单分格时不可用的按钮列表(如果有的话)
- export const SINGLE_GRID_DISABLED_BUTTONS :string[]= [];
- // 获取按钮可用性配置
- export const getButtonAvailabilityConfig = (action: string): ButtonAvailabilityConfig => {
- // 默认配置
- const config: ButtonAvailabilityConfig = {
- action,
- multiGridDisabled: MULTI_GRID_DISABLED_BUTTONS.includes(action),
- singleGridDisabled: SINGLE_GRID_DISABLED_BUTTONS.includes(action),
- };
- // 特殊按钮的额外配置
- switch (action) {
- case 'Send':
- config.multiGridDisabled = false;
- config.singleGridDisabled = false;
- break;
- case '拒绝':
- config.multiGridDisabled = true;
- config.singleGridDisabled = false;
- break;
- case '恢复':
- config.multiGridDisabled = true;
- config.singleGridDisabled = false;
- break;
- case '另存为':
- config.multiGridDisabled = true;
- config.singleGridDisabled = false;
- break;
- default:
- break;
- }
- return config;
- };
- // 判断按钮是否应该在多分格模式下禁用
- export const isButtonDisabledInMultiGrid = (action: string): boolean => {
- return MULTI_GRID_DISABLED_BUTTONS.includes(action);
- };
- // 判断按钮是否应该在单分格模式下禁用
- export const isButtonDisabledInSingleGrid = (action: string): boolean => {
- return SINGLE_GRID_DISABLED_BUTTONS.includes(action);
- };
|