diff --git a/frontend/components/screen/panels/GridPanel.tsx b/frontend/components/screen/panels/GridPanel.tsx index 82bb4fc4..8ae19728 100644 --- a/frontend/components/screen/panels/GridPanel.tsx +++ b/frontend/components/screen/panels/GridPanel.tsx @@ -7,23 +7,20 @@ import { Checkbox } from "@/components/ui/checkbox"; import { Button } from "@/components/ui/button"; import { Separator } from "@/components/ui/separator"; import { Slider } from "@/components/ui/slider"; -import { Grid3X3, RotateCcw, Eye, EyeOff, Zap, RefreshCw } from "lucide-react"; +import { Grid3X3, RotateCcw, Eye, EyeOff, Zap } from "lucide-react"; import { GridSettings, ScreenResolution } from "@/types/screen"; -import { calculateGridInfo } from "@/lib/utils/gridUtils"; interface GridPanelProps { gridSettings: GridSettings; onGridSettingsChange: (settings: GridSettings) => void; onResetGrid: () => void; - onForceGridUpdate?: () => void; // 강제 격자 재조정 추가 - screenResolution?: ScreenResolution; // 해상도 정보 추가 + screenResolution?: ScreenResolution; } export const GridPanel: React.FC = ({ gridSettings, onGridSettingsChange, onResetGrid, - onForceGridUpdate, screenResolution, }) => { const updateSetting = (key: keyof GridSettings, value: any) => { @@ -33,32 +30,6 @@ export const GridPanel: React.FC = ({ }); }; - // 최대 컬럼 수 계산 (최소 컬럼 너비 30px 기준) - const MIN_COLUMN_WIDTH = 30; - const maxColumns = screenResolution - ? Math.floor((screenResolution.width - gridSettings.padding * 2 + gridSettings.gap) / (MIN_COLUMN_WIDTH + gridSettings.gap)) - : 24; - const safeMaxColumns = Math.max(1, Math.min(maxColumns, 100)); // 최대 100개로 제한 - - // 실제 격자 정보 계산 - const actualGridInfo = screenResolution - ? calculateGridInfo(screenResolution.width, screenResolution.height, { - columns: gridSettings.columns, - gap: gridSettings.gap, - padding: gridSettings.padding, - snapToGrid: gridSettings.snapToGrid || false, - }) - : null; - - // 실제 표시되는 컬럼 수 계산 (항상 설정된 개수를 표시하되, 너비가 너무 작으면 경고) - const actualColumns = gridSettings.columns; - - // 컬럼이 너무 작은지 확인 - const isColumnsTooSmall = - screenResolution && actualGridInfo - ? actualGridInfo.columnWidth < MIN_COLUMN_WIDTH - : false; - return (
{/* 헤더 */} @@ -69,25 +40,10 @@ export const GridPanel: React.FC = ({

격자 설정

-
- {onForceGridUpdate && ( - - )} - - -
+ {/* 주요 토글들 */} @@ -128,63 +84,25 @@ export const GridPanel: React.FC = ({ {/* 설정 영역 */}
- {/* 격자 구조 - 10px 단위 */} + {/* 10px 단위 스냅 안내 */}
-

격자 크기 (10px 단위)

+

격자 시스템

- 모든 컴포넌트는 10px 단위로 배치되고 크기가 조정됩니다. + 모든 컴포넌트는 10px 단위로 자동 배치됩니다.

- -
- - updateSetting("gap", value)} - className="w-full" - /> -
- 0px - 40px -
-
- -
- - updateSetting("padding", value)} - className="w-full" - /> -
- 0px - 60px -
-
{/* 격자 스타일 */}
-

격자 스타일

+

격자 스타일

-
-