package org.iwakura.larcjb import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory import com.intellij.openapi.options.BoundConfigurable import com.intellij.openapi.project.Project import com.intellij.openapi.ui.DialogPanel import com.intellij.ui.dsl.builder.* /** * Settings UI for Larc VCS configuration. * Accessible via Settings -> Version Control -> Larc */ class LarcVcsConfigurable(private val project: Project) : BoundConfigurable("Larc") { private val settings = LarcVcsSettings.getInstance(project) override fun createPanel(): DialogPanel { return panel { group("Larc Executable") { row("Path to larc:") { val descriptor = FileChooserDescriptorFactory.createSingleFileDescriptor() .withTitle("Select Larc Executable") textFieldWithBrowseButton(fileChooserDescriptor = descriptor, project = project) .bindText(settings::executablePath) .comment("Leave empty to use 'larc' from PATH") .align(AlignX.FILL) } } group("Commit Settings") { row("Default author:") { textField() .bindText(settings::defaultAuthor) .comment("Used as default author for commits") .align(AlignX.FILL) } } } } }