@@ -34,7 +34,7 @@ class CreateFindaTemplateDialog(
34
34
return panel {
35
35
36
36
row(" 화면 이름" ) {
37
- nameTextField = textField({" " }, {}).component
37
+ nameTextField = textField({ " " }, {}).component
38
38
}
39
39
40
40
row(" 화면 종류:" ) {
@@ -51,39 +51,53 @@ class CreateFindaTemplateDialog(
51
51
val templateInfo = TemplateInfo (screenTypeModel.selectedItem)
52
52
val generatedFileInfo = screenTypeModel.selectedItem.getGeneratedFileInfo(name)
53
53
54
- createCodeFile(generatedFileInfo, templateInfo.codeTemplateContent)
55
- createViewModelFile(generatedFileInfo, templateInfo.viewModelTemplateContent)
56
- createLayoutFile(generatedFileInfo, templateInfo.layoutTemplateContent)
54
+ val packageName = getPackageNameByPath(virtualFile.path)
55
+
56
+ createCodeFile(packageName, generatedFileInfo, templateInfo.codeTemplateContent)
57
+ createViewModelFile(packageName, generatedFileInfo, templateInfo.viewModelTemplateContent)
58
+ createLayoutFile(packageName, generatedFileInfo, templateInfo.layoutTemplateContent)
57
59
58
60
super .doOKAction()
59
61
}
60
62
63
+ private fun getPackageNameByPath (path : String ): String {
64
+ return try {
65
+ path.split(" java/" )[1 ]
66
+ .replaceAll(" /" , " ." )
67
+ } catch (e: IndexOutOfBoundsException ) {
68
+ " "
69
+ }
70
+ }
71
+
61
72
private fun createCodeFile (
73
+ packageName : String ,
62
74
generatedFileInfo : GeneratedFileInfo ,
63
75
templateContent : String
64
76
) {
65
77
val codeFile = virtualFile.createChildData(this , " ${generatedFileInfo.codeFileName} .kt" )
66
78
67
79
val content = templateContent.replaceAll(" @NAME@" , name)
68
- .replaceAll(" @PACKAGE@" , " " )
80
+ .replaceAll(" @PACKAGE@" , packageName )
69
81
.replaceAll(" @LAYOUT_NAME@" , generatedFileInfo.layoutFileName)
70
82
71
83
VfsUtil .saveText(codeFile, content)
72
84
}
73
85
74
86
private fun createViewModelFile (
87
+ packageName : String ,
75
88
generatedFileInfo : GeneratedFileInfo ,
76
89
templateContent : String
77
90
) {
78
91
val viewModelFile = virtualFile.createChildData(this , " ${generatedFileInfo.viewModelFileName} .kt" )
79
92
80
- val content= templateContent.replaceAll(" @NAME@" , name)
81
- .replaceAll(" @PACKAGE@" , " " )
93
+ val content = templateContent.replaceAll(" @NAME@" , name)
94
+ .replaceAll(" @PACKAGE@" , packageName )
82
95
83
96
VfsUtil .saveText(viewModelFile, content)
84
97
}
85
98
86
99
private fun createLayoutFile (
100
+ packageName : String ,
87
101
generatedFileInfo : GeneratedFileInfo ,
88
102
templateContent : String
89
103
) {
@@ -92,7 +106,7 @@ class CreateFindaTemplateDialog(
92
106
val layoutFile = layoutDirectory?.createChildData(this , " ${generatedFileInfo.layoutFileName} .xml" )
93
107
94
108
val content = templateContent
95
- .replaceAll(" @VM_PACKAGE@" , generatedFileInfo.viewModelFileName)
109
+ .replaceAll(" @VM_PACKAGE@" , " ${packageName} . ${ generatedFileInfo.viewModelFileName} " )
96
110
97
111
layoutFile?.let {
98
112
VfsUtil .saveText(layoutFile, content)
0 commit comments