#include "gui/controllers/template_controller.hpp" #include "core/config/config.hpp" template_controller::template_controller() { m_templates = m_template_manager.templates(); } void template_controller::set_template_enabled(const std::string &key, bool enabled) { auto it = m_templates.find(key); if (it != m_templates.end()) { it->second.set_enabled(enabled); (void)clrsync::core::config::instance().update_template(key, it->second); } } void template_controller::set_template_input_path(const std::string &key, const std::string &path) { auto it = m_templates.find(key); if (it != m_templates.end()) { it->second.set_template_path(path); (void)clrsync::core::config::instance().update_template(key, it->second); } } void template_controller::set_template_output_path(const std::string &key, const std::string &path) { auto it = m_templates.find(key); if (it != m_templates.end()) { it->second.set_output_path(path); (void)clrsync::core::config::instance().update_template(key, it->second); } } void template_controller::set_template_reload_command(const std::string &key, const std::string &cmd) { auto it = m_templates.find(key); if (it != m_templates.end()) { it->second.set_reload_command(cmd); (void)clrsync::core::config::instance().update_template(key, it->second); } } bool template_controller::remove_template(const std::string &key) { auto result = clrsync::core::config::instance().remove_template(key); if (result) { m_templates.erase(key); return true; } return false; } void template_controller::refresh() { m_templates = m_template_manager.templates(); }