fileViewer implementation