mirror of
https://github.com/arduino/arduino-ide.git
synced 2025-11-11 11:19:26 +00:00
34 lines
1.0 KiB
TypeScript
34 lines
1.0 KiB
TypeScript
import { injectable, inject } from 'inversify';
|
|
import { FrontendApplicationContribution, FrontendApplication } from '@theia/core/lib/browser';
|
|
import { MainMenuManager } from '../common/main-menu-manager';
|
|
|
|
@injectable()
|
|
export class EditorMode implements FrontendApplicationContribution {
|
|
|
|
@inject(MainMenuManager)
|
|
protected readonly mainMenuManager: MainMenuManager;
|
|
|
|
protected app: FrontendApplication;
|
|
|
|
onStart(app: FrontendApplication): void {
|
|
this.app = app;
|
|
}
|
|
|
|
get compileForDebug(): boolean {
|
|
const value = window.localStorage.getItem(EditorMode.COMPILE_FOR_DEBUG_KEY);
|
|
return value === 'true';
|
|
}
|
|
|
|
async toggleCompileForDebug(): Promise<void> {
|
|
const oldState = this.compileForDebug;
|
|
const newState = !oldState;
|
|
window.localStorage.setItem(EditorMode.COMPILE_FOR_DEBUG_KEY, String(newState));
|
|
this.mainMenuManager.update();
|
|
}
|
|
|
|
}
|
|
|
|
export namespace EditorMode {
|
|
export const COMPILE_FOR_DEBUG_KEY = 'arduino-compile-for-debug';
|
|
}
|