本文整理匯總了TypeScript中renderer/components/modal-widgets/index.modalWidgets.naked類的典型用法代碼示例。如果您正苦於以下問題:TypeScript modalWidgets.naked類的具體用法?TypeScript modalWidgets.naked怎麽用?TypeScript modalWidgets.naked使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了modalWidgets.naked類的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: async
client.on(messages.ExternalUploadsAreBad, async () => {
const modalRes = await promisedModal(
store,
modalWidgets.naked.make({
window: "root",
title: "Dragons be thar",
message:
"You've chosen to install an external upload. Those are supported poorly.",
detail:
"There's a chance it won't install at all.\n\nAlso, we won't be able to check for updates.",
bigButtons: [
{
label: "Install it anyway",
tags: [{ label: "Consequences be damned" }],
icon: "fire",
action: actions.modalResponse({}),
},
"nevermind",
],
widgetParams: null,
})
);
if (!modalRes) {
return { whatever: false };
}
// ahh damn.
return { whatever: true };
});
示例2: async
watcher.on(actions.requestCaveUninstall, async (store, action) => {
const { caveId } = action.payload;
const { cave } = await call(messages.FetchCave, { caveId });
const { game } = cave;
// FIXME: i18n - plus, that's generally bad
const title = game ? game.title : "this";
store.dispatch(
actions.openModal(
modalWidgets.naked.make({
window: "root",
title: "",
message: ["prompt.uninstall.message", { title }],
buttons: [
{
label: ["prompt.uninstall.uninstall"],
id: "modal-uninstall",
action: actions.queueCaveUninstall({ caveId }),
icon: "uninstall",
},
{
label: ["prompt.uninstall.reinstall"],
id: "modal-reinstall",
action: actions.queueCaveReinstall({ caveId }),
icon: "repeat",
},
"cancel",
],
widgetParams: null,
})
)
);
});
示例3: async
watcher.on(actions.changeUser, async (store, action) => {
store.dispatch(
actions.openModal(
modalWidgets.naked.make({
window: "root",
title: ["prompt.logout_title"],
message: ["prompt.logout_confirm"],
detail: ["prompt.logout_detail"],
buttons: [
{
id: "modal-logout",
label: ["prompt.logout_action"],
action: actions.requestLogout({}),
icon: "exit",
},
"cancel",
],
widgetParams: null,
})
)
);
});
示例4: callback
(ev, webContents, url, error, certificate, callback) => {
// do not trust
callback(false);
logger.error(
`Certificate error: ${error} issued by ${
certificate.issuerName
} for ${certificate.subjectName}`
);
// TODO: that's super annoying as a modal.
store.dispatch(
actions.openModal(
modalWidgets.naked.make({
window: "root",
title: `Certificate error: ${error}`,
message:
`There was an error with the certificate for ` +
`\`${certificate.subjectName}\` issued by \`${
certificate.issuerName
}\`.\n\n` +
`Please check your proxy configuration and try again.`,
detail: `If you ignore this error, the rest of the app might not work correctly.`,
buttons: [
{
label: "Ignore and continue",
className: "secondary",
},
{
label: ["menu.file.quit"],
action: actions.quit({}),
},
],
widgetParams: null,
})
)
);
}
示例5: async
watcher.on(actions.forceCloseGameRequest, async (store, action) => {
const { game } = action.payload;
store.dispatch(
actions.openModal(
modalWidgets.naked.make({
window: "root",
title: ["prompt.force_close_game.title"],
message: ["prompt.force_close_game.message", { title: game.title }],
buttons: [
{
label: ["prompt.action.force_close"],
id: "modal-force-close",
action: actions.forceCloseGame({ gameId: game.id }),
icon: "cross",
},
"nevermind",
],
widgetParams: null,
})
)
);
});
示例6: async
watcher.on(actions.removeInstallLocation, async (store, action) => {
const { id } = action.payload;
const { installLocation } = await call(messages.InstallLocationsGetByID, {
id,
});
if (!installLocation) {
return;
}
if (installLocation.sizeInfo!.installedSize > 0) {
store.dispatch(
actions.openModal(
modalWidgets.naked.make({
window: "root",
title: ["prompt.install_location_not_empty.title"],
message: ["prompt.install_location_not_empty.message"],
detail: ["prompt.install_location_not_empty.detail"],
buttons: [
{
label: ["prompt.install_location_not_empty.show_contents"],
action: actions.navigateToInstallLocation({
window: "root",
installLocation,
}),
},
"cancel",
],
widgetParams: null,
})
)
);
return;
}
{
const res = await promisedModal(
store,
modalWidgets.naked.make({
window: "root",
title: ["prompt.install_location_remove.title"],
message: ["prompt.install_location_remove.message"],
detail: [
"prompt.install_location_remove.detail",
{
location: installLocation.path,
},
],
buttons: [
{
label: ["prompt.action.confirm_removal"],
action: actions.modalResponse({}),
},
"cancel",
],
widgetParams: null,
})
);
if (!res) {
// modal was closed
return;
}
await call(messages.InstallLocationsRemove, { id });
store.dispatch(actions.installLocationsChanged({}));
}
});