66 lines
1.8 KiB
TypeScript
66 lines
1.8 KiB
TypeScript
/*
|
|
* File: DICOMViewerScreen.tsx
|
|
* Description: Screen for viewing DICOM images
|
|
* Design & Developed by Tech4Biz Solutions
|
|
* Copyright (c) Spurrin Innovations. All rights reserved.
|
|
*/
|
|
|
|
import React from 'react';
|
|
import { View, Text, StyleSheet, Image } from 'react-native';
|
|
import { Button } from '../../../../shared/src/components/Button';
|
|
import { Colors, Spacing, Typography } from '../../../../shared/src/theme';
|
|
import { useDICOMViewer } from '../hooks/useDICOMViewer';
|
|
|
|
/**
|
|
* DICOMViewerScreen - shows current DICOM image and navigation controls (stub)
|
|
*/
|
|
const DICOMViewerScreen: React.FC<any> = ({ navigation }) => {
|
|
const { images } = useDICOMViewer();
|
|
// TODO: Add navigation logic for images
|
|
const currentImage = images[0];
|
|
|
|
return (
|
|
<View style={styles.container}>
|
|
<Text style={styles.title}>DICOM Viewer</Text>
|
|
{currentImage ? (
|
|
<Image source={{ uri: currentImage }} style={styles.image} resizeMode="contain" />
|
|
) : (
|
|
<Text>No images available.</Text>
|
|
)}
|
|
<Button title="Back to Details" onPress={() => navigation.goBack()} style={styles.button} />
|
|
</View>
|
|
);
|
|
};
|
|
|
|
const styles = StyleSheet.create({
|
|
container: {
|
|
flex: 1,
|
|
backgroundColor: Colors.background,
|
|
justifyContent: 'center',
|
|
alignItems: 'center',
|
|
padding: Spacing.lg,
|
|
},
|
|
title: {
|
|
fontFamily: Typography.fontFamily.bold,
|
|
fontSize: Typography.fontSize.lg,
|
|
color: Colors.primary,
|
|
marginBottom: Spacing.md,
|
|
},
|
|
image: {
|
|
width: '100%',
|
|
height: 300,
|
|
backgroundColor: Colors.backgroundAlt,
|
|
marginBottom: Spacing.md,
|
|
},
|
|
button: {
|
|
marginTop: Spacing.md,
|
|
},
|
|
});
|
|
|
|
export default DICOMViewerScreen;
|
|
|
|
/*
|
|
* End of File: DICOMViewerScreen.tsx
|
|
* Design & Developed by Tech4Biz Solutions
|
|
* Copyright (c) Spurrin Innovations. All rights reserved.
|
|
*/
|