files/xaml/cowriter.xaml
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
Title="Cowriter" SizeToContent='WidthAndHeight' FontSize="16" Topmost='True'> <Grid> <Grid.RowDefinitions> <RowDefinition Height="Auto"/> <RowDefinition Height="Auto"/> </Grid.RowDefinitions> <Menu Grid.Row="0"> <MenuItem Header="_File"> <MenuItem Header="New"/> <MenuItem Header="Open"/> <MenuItem Header="Save"/> <Separator/> <MenuItem Header="Exit"/> </MenuItem> <MenuItem Header="_Edit"> <MenuItem Header="Undo"/> <MenuItem Header="Redo"/> <Separator/> <MenuItem Header="Cut"/> <MenuItem Header="Copy"/> <MenuItem Header="Paste"/> </MenuItem> <MenuItem Header="_View"> <MenuItem Header="Zoom In"/> <MenuItem Header="Zoom Out"/> </MenuItem> </Menu> <Grid Margin="12" Grid.Row="1"> <!-- Define three columns --> <Grid.ColumnDefinitions> <ColumnDefinition Width="0"/> <ColumnDefinition Width="*"/> <ColumnDefinition MaxWidth="275"/> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="Auto"/> <RowDefinition Height="Auto"/> </Grid.RowDefinitions> <Grid Grid.Row="0" Margin="8,0,8,0" Visibility="Hidden"> <Grid.RowDefinitions> <RowDefinition Height="*"/> <RowDefinition Height="40"/> </Grid.RowDefinitions> <!-- Left: File tree (TreeView with ScrollViewer) --> <ScrollViewer Grid.Column="0" Grid.Row="0" VerticalScrollBarVisibility="Auto"> <TreeView Name="FileTree"> <TreeViewItem Header="Project"> <TreeViewItem Header="File1.txt"/> <TreeViewItem Header="File2.txt"/> </TreeViewItem> <TreeViewItem Header="Documents"> <TreeViewItem Header="Doc1.md"/> </TreeViewItem> </TreeView> </ScrollViewer> <Grid Grid.Row="1" Margin="0,3,0,3"> <Grid.ColumnDefinitions> <ColumnDefinition /> <ColumnDefinition /> </Grid.ColumnDefinitions> <TextBlock Name="ZoomText" Tag="text" Grid.Column="0" TextAlignment="Center">Zoom</TextBlock> <ToolBar Grid.Column="1" Margin="0,0,0,8"> <Button Width="30" Name="ZoomInButton" ToolTip="Zoom In">+</Button> <Button Width="30" Name="ZoomOutButton" ToolTip="Zoom Out">−</Button> </ToolBar> </Grid> </Grid> <Grid Grid.Column="1" Grid.Row="0" Margin="8,0,8,0"> <Grid.RowDefinitions> <RowDefinition Height="40"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> <Grid.ColumnDefinitions> <ColumnDefinition Width="0"/> <ColumnDefinition Width="*"/> </Grid.ColumnDefinitions> <!-- Formatting Toolbar --> <ToolBar Grid.Column="1" Grid.Row="0" Margin="0,0,0,8"> <Button FontFamily="Times New Roman" Width="30" Name="BoldButton" ToolTip="Bold"><TextBlock FontWeight="Bold">B</TextBlock></Button> <Button FontFamily="Times New Roman" Width="30" Name="ItalicButton" ToolTip="Italic"><TextBlock FontStyle="Italic">I</TextBlock></Button> <Button Width="30" Name="UnderlineButton" ToolTip="Underline"><TextBlock TextDecorations="Underline">U</TextBlock></Button> <Separator/> <Button Width="30" Name="BulletButton" ToolTip="Bulleted List" Visibility="Hidden">• —</Button> <Button Width="30" Name="NumberButton" ToolTip="Numbered List" Visibility="Hidden">1.</Button> </ToolBar> <!-- Center: Large scrollable TextBox with line numbers --> <!-- Line numbers --> <TextBlock Name="LineNumbers" Grid.Column="0" Grid.Row="1" Margin="0,0,2,0" VerticalAlignment="Top" TextAlignment="Right"/> <!-- Main TextBox --> <ScrollViewer Grid.Column="1" Grid.Row="1" VerticalScrollBarVisibility="Auto" MinHeight="500"> <RichTextBox Name="MainText" AcceptsReturn="True" VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto"/> </ScrollViewer> </Grid> <!-- Right: Chat area --> <Grid Grid.Column="2" Grid.Row="0"> <Grid.RowDefinitions> <RowDefinition Height="*"/> <RowDefinition Height="Auto"/> </Grid.RowDefinitions> <!-- (Optional) Chat history area could go here in Row 0 --> <!-- Chat history area (scrollable) --> <ScrollViewer Grid.Row="0" VerticalScrollBarVisibility="Auto" Name="ChatScroll"> <StackPanel Name="ChatHistory" Margin="0,0,0,8"> <Border Background="#D0F0FF" CornerRadius="10" Padding="8" Margin="4" HorizontalAlignment="Right" MaxWidth="200"> <TextBlock Text="You: Hello!" TextWrapping="Wrap"/> </Border> <Border Background="#E0E0E0" CornerRadius="10" Padding="8" Margin="4" HorizontalAlignment="Left" MaxWidth="200"> <TextBlock Text="Me: Hi there!" TextWrapping="Wrap"/> </Border> </StackPanel> </ScrollViewer> <!-- Chat input and send button at the bottom --> <StackPanel Grid.Row="1" Orientation="Horizontal"> <TextBox Name="ChatInput" Width="180" Height="30" Margin="5,0,5,0"/> <Button Name="SendButton" Content="Send" Width="80" Height="30"/> </StackPanel> </Grid> </Grid> </Grid> </Window> |