diff --git a/index.html b/index.html index 21161fc..56c7a7c 100644 --- a/index.html +++ b/index.html @@ -151,17 +151,13 @@

속성 복사

-

기준 교각의 설정을 다른 교각에 한 번에 적용합니다

+

+

기준 교각의 설정을 고른 교각에만 적용합니다 · 현재 입력값 기준 (미반영 변경 포함)

-

1 · 원본 교각

-

-

현재 입력값 기준 (미반영 변경 포함)

-
-
-

2 · 대상 교각

+

1 · 대상 교각

@@ -171,7 +167,7 @@

고른 교각에만 적용합니다. 고르지 않은 교각은 바뀌지 않습니다. 모델이 없는 교각은 고를 수 없습니다.

-

3 · 복사할 항목

+

2 · 복사할 항목

복사하지 않는 값: 좌표 · IP · 받침 EL · 코핑 상면 EL · 기초 하단 EL · 지반고 · 기둥 높이 · 말뚝 선단 EL · 계단 구간

@@ -179,11 +175,8 @@
-

4 · 적용 미리보기 (고른 교각만)

- - - -
대상형식바뀌는 값건너뜀내용
+

3 · 변경 요약 (고른 교각만)

+

적용하면 대상 교각마다 "변경 n건"이 표시되고, 입력 수정 카드에서 항목별로 되돌릴 수 있습니다.

diff --git a/src/main.ts b/src/main.ts index b7b5985..c6370da 100644 --- a/src/main.ts +++ b/src/main.ts @@ -700,8 +700,8 @@ function renderCopyTargets(): void { function renderCopyPreview(): void { const src = activePier(); const items = chosenCopyItems(); - const body = $('cp-preview').tBodies[0]; - body.replaceChildren(); + const box = $('cp-preview'); + box.replaceChildren(); let applied = 0; let skippedTotal = 0; const selected = selectedCopyTargets(); @@ -712,15 +712,8 @@ function renderCopyPreview(): void { const skipped = plan.skipped.map((k) => k.reason); skippedTotal += skipped.length; if (plan.changes.length) applied++; - const row = el('tr'); - row.append( - el('td', t.input.name), - el('td', t.input.type), - el('td', String(plan.changes.length)), - el('td', String(skipped.length)), - el('td', [...labels, ...skipped].join(' · ') || '바뀌는 값 없음'), - ); - body.appendChild(row); + const detail = [...labels, ...skipped.map((r) => `건너뜀: ${r}`)].join(' · ') || '바뀌는 값 없음'; + box.appendChild(el('p', `${t.input.name} · ${detail}`, 'cp-line')); } const n = selected.length; $('cp-summary').textContent = `${src?.input.name ?? ''} → ${n}기 · 항목 ${items.length}개 · 건너뜀 ${skippedTotal}건`; diff --git a/src/style.css b/src/style.css index e67f42a..f27de84 100644 --- a/src/style.css +++ b/src/style.css @@ -821,6 +821,9 @@ body { background: #eef1f4; font-family: 'Noto Sans KR', system-ui, sans-serif; /* Import preview: all piers' 받침·IP rows scroll inside the dialog. */ .pv-scroll { max-height: 240px; overflow: auto; } +/* 속성 복사: one line per target in the change summary. */ +.copy-panel .cp-line { margin: 2px 0; font-size: 12px; } + /* 속성 복사: an inline panel at the bottom of the 부재별 편집창 (was a modal dialog). */ .copy-panel { margin-top: 12px; border-top: 1px solid #d5dde6; padding-top: 10px; } .copy-panel .copy-head h3 { margin: 0 0 4px; font-size: 13px; }