Start work on creating the inital structure for the settings UI

We created a proc macro that derives the settings ui trait on types and
added that trait as a marker on Settings trait. Then we added the derive
macro on all settings

Co-authored-by: Ben Kunkle <ben@zed.dev>
This commit is contained in:
Anthony 2025-08-25 15:42:15 -04:00
parent 5fd29d37a6
commit 3c0ec5f612
43 changed files with 170 additions and 82 deletions

View file

@ -2,7 +2,7 @@ use editor::ShowScrollbar;
use gpui::Pixels;
use schemars::JsonSchema;
use serde::{Deserialize, Serialize};
use settings::{Settings, SettingsSources};
use settings::{DeriveSettingsUI as SettingsUI, Settings, SettingsSources};
#[derive(Clone, Debug, Serialize, Deserialize, JsonSchema, Copy, PartialEq)]
#[serde(rename_all = "snake_case")]
@ -18,7 +18,7 @@ pub enum ShowIndentGuides {
Never,
}
#[derive(Deserialize, Debug, Clone, Copy, PartialEq)]
#[derive(Deserialize, Debug, Clone, Copy, PartialEq, SettingsUI)]
pub struct OutlinePanelSettings {
pub button: bool,
pub default_width: Pixels,