using System.Windows;
namespace AxCopilot.Views;
///
/// Phase 17-UI-C: AgentSessionHeaderBar 이벤트 연결 및 상태 동기화.
/// SessionHeaderBar(UserControl) ↔ ChatWindow 기존 로직 브리지.
///
public partial class ChatWindow
{
/// Loaded 핸들러에서 호출 — SessionHeaderBar 이벤트 연결.
private void InitSessionHeaderBar()
{
// 모델 칩 클릭 → 기존 BtnModelSelector_Click 재사용
SessionHeaderBar.ModelChipClicked += (_, _) =>
BtnModelSelector_Click(SessionHeaderBar, new RoutedEventArgs());
// Plan 모드 순환 → 설정 저장 + 기존 UI 동기화
SessionHeaderBar.PlanModeChanged += (_, mode) =>
{
Llm.PlanMode = mode;
_settings.Save();
UpdatePlanModeUI(); // SessionHeaderBar.SetPlanMode()가 내부서 호출됨
};
// 권한 칩 클릭 → 권한 팝업을 SessionHeaderBar 위치에 표시
SessionHeaderBar.PermissionModeChanged += (_, _) =>
{
if (PermissionPopup == null) return;
PermissionPopup.PlacementTarget = SessionHeaderBar;
PermissionPopup.Placement = System.Windows.Controls.Primitives.PlacementMode.Bottom;
BtnPermission_Click(SessionHeaderBar, new RoutedEventArgs());
};
// 설정 버튼 → 기존 ToggleSettingsPanel() 재사용
SessionHeaderBar.SettingsRequested += (_, _) => ToggleSettingsPanel();
}
}