diff options
Diffstat (limited to 'src/Config.ts')
| -rw-r--r-- | src/Config.ts | 57 |
1 files changed, 41 insertions, 16 deletions
diff --git a/src/Config.ts b/src/Config.ts index 3cc78fb..6297a66 100644 --- a/src/Config.ts +++ b/src/Config.ts @@ -1,18 +1,43 @@ -export enum ConfigType { - generic = "doxdocgen.generic", -} +import { workspace } from "vscode"; + +export class Config { + public static ImportFromSettings(): Config { + const values: Config = new Config(); + + const cfg = workspace.getConfiguration("doxdocgen.generic"); + + values.firstLine = cfg.get<string>("firstLine", values.firstLine); + values.commentPrefix = cfg.get<string>("commentPrefix", values.commentPrefix); + values.lastLine = cfg.get<string>("lastLine", values.lastLine); + values.newLineAfterBrief = cfg.get<boolean>("newLineAfterBrief", values.newLineAfterBrief); + values.newLineAfterParams = cfg.get<boolean>("newLineAfterParams", values.newLineAfterParams); + values.newLineAfterTParams = cfg.get<boolean>("newLineAfterTParams", values.newLineAfterTParams); + values.includeTypeAtReturn = cfg.get<boolean>("includeTypeAtReturn", values.includeTypeAtReturn); + values.boolReturnsTrueFalse = cfg.get<boolean>("boolReturnsTrueFalse", values.boolReturnsTrueFalse); + values.boolPointerReturnsNull = cfg.get<boolean>("boolPointerReturnsNull", values.boolPointerReturnsNull); + values.briefTemplate = cfg.get<string>("briefTemplate", values.briefTemplate); + values.paramTemplate = cfg.get<string>("paramTemplate", values.paramTemplate); + values.tparamTemplate = cfg.get<string>("tparamTemplate", values.tparamTemplate); + values.returnTemplate = cfg.get<string>("returnTemplate", values.returnTemplate); + + return values; + } + + public readonly paramTemplateReplace: string = "{param}"; + public readonly typeTemplateReplace: string = "{type}"; -export enum Config { - triggerSequence = "triggerSequence", - firstLine = "firstLine", - commentPrefix = "commentPrefix", - lastLine = "lastLine", - newLineAfterBrief = "newLineAfterBrief", - newLineAfterParams = "newLineAfterParams", - newLineAfterTParams = "newLineAfterTParams", - includeTypeAtReturn = "includeTypeAtReturn", - briefTemplate = "briefTemplate", - paramTemplate = "paramTemplate", - tparamTemplate = "tparamTemplate", - returnTemplate = "returnTemplate", + public triggerSequence: string = "/**"; + public firstLine: string = "/**"; + public commentPrefix: string = " * "; + public lastLine: string = " */"; + public newLineAfterBrief: boolean = true; + public newLineAfterParams: boolean = false; + public newLineAfterTParams: boolean = false; + public includeTypeAtReturn: boolean = true; + public boolReturnsTrueFalse: boolean = true; + public boolPointerReturnsNull: boolean = true; + public briefTemplate: string = "@brief "; + public paramTemplate: string = "@param {param} "; + public tparamTemplate: string = "@tparam {param} "; + public returnTemplate: string = "@return {type} "; } |