@@ -17,8 +17,8 @@ import {
1717import { ProgressCallback , withProgress } from "../common/vscode/progress" ;
1818import { QueryRunner } from "../query-server" ;
1919import {
20- showAndLogExceptionWithTelemetry ,
2120 showAndLogErrorMessage ,
21+ showAndLogExceptionWithTelemetry ,
2222} from "../common/logging" ;
2323import { DatabaseItem , DatabaseManager } from "../databases/local-databases" ;
2424import { CodeQLCliServer } from "../codeql-cli/cli" ;
@@ -34,11 +34,7 @@ import {
3434import { Method , Usage } from "./method" ;
3535import { ModeledMethod } from "./modeled-method" ;
3636import { ExtensionPack } from "./shared/extension-pack" ;
37- import {
38- showFlowGeneration ,
39- showLlmGeneration ,
40- showMultipleModels ,
41- } from "../config" ;
37+ import { ModelConfigListener } from "../config" ;
4238import { Mode } from "./shared/mode" ;
4339import { loadModeledMethods , saveModeledMethods } from "./modeled-method-fs" ;
4440import { pickExtensionPack } from "./extension-pack-picker" ;
@@ -62,6 +58,7 @@ export class ModelEditorView extends AbstractWebview<
6258 protected readonly app : App ,
6359 private readonly modelingStore : ModelingStore ,
6460 private readonly viewTracker : ModelEditorViewTracker < ModelEditorView > ,
61+ private readonly modelConfig : ModelConfigListener ,
6562 private readonly databaseManager : DatabaseManager ,
6663 private readonly cliServer : CodeQLCliServer ,
6764 private readonly queryRunner : QueryRunner ,
@@ -75,6 +72,7 @@ export class ModelEditorView extends AbstractWebview<
7572
7673 this . modelingStore . initializeStateForDb ( databaseItem ) ;
7774 this . registerToModelingStoreEvents ( ) ;
75+ this . registerToModelConfigEvents ( ) ;
7876
7977 this . viewTracker . registerView ( this ) ;
8078
@@ -349,15 +347,15 @@ export class ModelEditorView extends AbstractWebview<
349347
350348 private async setViewState ( ) : Promise < void > {
351349 const showLlmButton =
352- this . databaseItem . language === "java" && showLlmGeneration ( ) ;
350+ this . databaseItem . language === "java" && this . modelConfig . llmGeneration ;
353351
354352 await this . postMessage ( {
355353 t : "setModelEditorViewState" ,
356354 viewState : {
357355 extensionPack : this . extensionPack ,
358- showFlowGeneration : showFlowGeneration ( ) ,
356+ showFlowGeneration : this . modelConfig . flowGeneration ,
359357 showLlmButton,
360- showMultipleModels : showMultipleModels ( ) ,
358+ showMultipleModels : this . modelConfig . showMultipleModels ,
361359 mode : this . mode ,
362360 } ,
363361 } ) ;
@@ -499,6 +497,7 @@ export class ModelEditorView extends AbstractWebview<
499497 const modelFile = await pickExtensionPack (
500498 this . cliServer ,
501499 addedDatabase ,
500+ this . modelConfig ,
502501 this . app . logger ,
503502 progress ,
504503 3 ,
@@ -511,6 +510,7 @@ export class ModelEditorView extends AbstractWebview<
511510 this . app ,
512511 this . modelingStore ,
513512 this . viewTracker ,
513+ this . modelConfig ,
514514 this . databaseManager ,
515515 this . cliServer ,
516516 this . queryRunner ,
@@ -632,6 +632,14 @@ export class ModelEditorView extends AbstractWebview<
632632 ) ;
633633 }
634634
635+ private registerToModelConfigEvents ( ) {
636+ this . push (
637+ this . modelConfig . onDidChangeConfiguration ( ( ) => {
638+ void this . setViewState ( ) ;
639+ } ) ,
640+ ) ;
641+ }
642+
635643 private addModeledMethods ( modeledMethods : Record < string , ModeledMethod > ) {
636644 this . modelingStore . addModeledMethods ( this . databaseItem , modeledMethods ) ;
637645
0 commit comments