조작/내비게이션 프로파일(InteractionProfile) 배포 디렉토리 ========================================================== 이 디렉토리는 MP VIEW(mpview.exe)의 마우스 휠/cell 이동/layout/드래그/휠 대상 셀 정책을 담는 배포 정본 디렉토리이다. 조작 정책은 병원 정체성이 아니라 "이 설치본이 쓸 프로파일 이름" 하나로 고른다(병원 무관). - 런타임 경로: $INSTDIR\interaction_profiles (mpview.exe user.dir = $INSTDIR) - 활성 선택: config 키 mView/interaction/activeProfile = 프로파일 이름 (미설정 기본 = CLASSIC) - 로드 우선순위(커스텀): 이 디렉토리(deployed) 우선, 없으면 data\interaction(cache) - 커스텀 파일명 규약: {profileName}.json (sanitize 적용) 내장 프리셋(파일 불필요) ------------------------ CLASSIC / STANDARD / MPVIEW_LEGACY 은 코드에 내장된 예약 프리셋이라 파일이 필요 없다. config activeProfile 에 이름만 지정하거나, 편집 UI 콤보에서 선택 후 [적용]하면 된다. - 예약 이름 보호: 이 세 이름은 같은 이름의 .json 파일이 있어도 무시하고 항상 코드 정의를 쓴다. 즉 파일로 덮어쓸 수 없다(아래 "무손상 원칙" 보장). 무손상 원칙 ----------- activeProfile 미설정(현재 배포 기본) 또는 CLASSIC 이면 모든 축이 CLASSIC(현행 동작 = 코드 경로 무변경)으로 폴백해 오늘과 100% 동일하게 동작한다. STANDARD(업계 표준)/ MPVIEW_LEGACY(예전 UX)는 원하는 설치본에만 지정하는 opt-in 이다. 활성화 방법 ----------- [방법 A] 내장 프리셋(CLASSIC/STANDARD/MPVIEW_LEGACY) - 편집 UI(설정 → 조작 프로파일)에서 콤보로 이름 선택 후 [적용]. 파일 없이 config activeProfile 에만 기록된다. - 또는 config 에 직접: mView/interaction/activeProfile = STANDARD [방법 B] 커스텀 프로파일(내장 프리셋을 미세조정하거나 새로 만들 때) 1. 편집 UI 콤보에 새 이름을 입력한다(예: MYSITE). 예약 이름은 읽기 전용이라 반드시 다른 이름을 써야 한다. 2. 원하는 축을 편집하고 [적용]한다. interaction_profiles\{그이름}.json 이 생성되고 동시에 activeProfile 로 활성화된다. 3. 삭제는 편집 UI 의 [프로파일 삭제] 로(파일·활성 선택 정리, CLASSIC 복귀). - 참조 템플릿을 손으로 배포하려면 _examples\ 의 STANDARD.json / MPVIEW_LEGACY.json 을 이 디렉토리 최상위로 복사하고 "profileName" 을 원하는 이름으로 바꾼다(파일명도 동일하게). 미설정 축은 CLASSIC 폴백이라 필요한 축만 남겨도 된다. 주의 ---- - _examples\ 하위 파일은 활성 스캔 대상이 아니다(최상위만 스캔). 참조용 템플릿이다. - $INSTDIR(Program Files 하위)은 UAC 로 표준 사용자 쓰기가 막힐 수 있다. 편집 UI 저장은 쓰기 실패 시 data\interaction(사용자 쓰기 가능)으로 폴백한다. - 작업 지시서: document/20260827_01_조작프로파일_신설.md