gnome-subtitles r1005 - in trunk: . src/GnomeSubtitles/Command src/GnomeSubtitles/Commands src/GnomeSubtitles/Core src/GnomeSubtitles/Dialog src/GnomeSubtitles/Dialogs src/GnomeSubtitles/Exception src/GnomeSubtitles/Execution src/GnomeSubtitles/SubtitleEdit src/GnomeSubtitles/SubtitleView src/GnomeSubtitles/Ui src/GnomeSubtitles/Ui/SubtitleEdit src/GnomeSubtitles/Ui/SubtitleView src/GnomeSubtitles/Ui/Video src/GnomeSubtitles/Ui/Video/Exception src/GnomeSubtitles/Video



Author: pcastro
Date: Sun Jun 15 22:50:00 2008
New Revision: 1005
URL: http://svn.gnome.org/viewvc/gnome-subtitles?rev=1005&view=rev

Log:
Major project refactoring - part 1.

Added:
   trunk/src/GnomeSubtitles/Command/
      - copied from r1003, /trunk/src/GnomeSubtitles/Commands/
   trunk/src/GnomeSubtitles/Dialog/
      - copied from r1003, /trunk/src/GnomeSubtitles/Dialogs/
   trunk/src/GnomeSubtitles/Ui/
   trunk/src/GnomeSubtitles/Ui/MainUi.cs
   trunk/src/GnomeSubtitles/Ui/Menus.cs
      - copied, changed from r1003, /trunk/src/GnomeSubtitles/Core/Menus.cs
   trunk/src/GnomeSubtitles/Ui/Status.cs
      - copied, changed from r1003, /trunk/src/GnomeSubtitles/Core/Status.cs
   trunk/src/GnomeSubtitles/Ui/SubtitleEdit/
      - copied from r1003, /trunk/src/GnomeSubtitles/SubtitleEdit/
   trunk/src/GnomeSubtitles/Ui/SubtitleView/
      - copied from r1003, /trunk/src/GnomeSubtitles/SubtitleView/
   trunk/src/GnomeSubtitles/Ui/Video/
      - copied from r1003, /trunk/src/GnomeSubtitles/Video/
   trunk/src/GnomeSubtitles/Ui/Video/Exception/
   trunk/src/GnomeSubtitles/Ui/Video/Exception/PlayerCouldNotOpenVideoException.cs
      - copied, changed from r1003, /trunk/src/GnomeSubtitles/Exception/PlayerCouldNotOpenVideoException.cs
   trunk/src/GnomeSubtitles/Ui/WidgetNames.cs
      - copied, changed from r1003, /trunk/src/GnomeSubtitles/Core/WidgetNames.cs
Removed:
   trunk/src/GnomeSubtitles/Commands/
   trunk/src/GnomeSubtitles/Core/GUI.cs
   trunk/src/GnomeSubtitles/Core/Menus.cs
   trunk/src/GnomeSubtitles/Core/Status.cs
   trunk/src/GnomeSubtitles/Core/WidgetNames.cs
   trunk/src/GnomeSubtitles/Dialogs/
   trunk/src/GnomeSubtitles/Exception/PlayerCouldNotOpenVideoException.cs
   trunk/src/GnomeSubtitles/SubtitleEdit/
   trunk/src/GnomeSubtitles/SubtitleView/
   trunk/src/GnomeSubtitles/Video/
Modified:
   trunk/gnome-subtitles.mdp
   trunk/gnome-subtitles.mds
   trunk/src/GnomeSubtitles/Command/AdjustTimingsCommand.cs
   trunk/src/GnomeSubtitles/Command/ChangeFrameRateCommand.cs
   trunk/src/GnomeSubtitles/Command/ChangeStyleCommand.cs
   trunk/src/GnomeSubtitles/Command/ChangeTimingCommand.cs
   trunk/src/GnomeSubtitles/Command/Command.cs
   trunk/src/GnomeSubtitles/Command/CommandActivatedArgs.cs
   trunk/src/GnomeSubtitles/Command/CommandActivatedHandler.cs
   trunk/src/GnomeSubtitles/Command/CommandManager.cs
   trunk/src/GnomeSubtitles/Command/CommandTarget.cs
   trunk/src/GnomeSubtitles/Command/DeleteSubtitlesCommand.cs
   trunk/src/GnomeSubtitles/Command/DeleteTextCommand.cs
   trunk/src/GnomeSubtitles/Command/DeleteTextContentCommand.cs
   trunk/src/GnomeSubtitles/Command/DeleteTranslationCommand.cs
   trunk/src/GnomeSubtitles/Command/FixedMultipleSelectionCommand.cs
   trunk/src/GnomeSubtitles/Command/FixedSingleSelectionCommand.cs
   trunk/src/GnomeSubtitles/Command/InsertSubtitleCommand.cs
   trunk/src/GnomeSubtitles/Command/InsertTextCommand.cs
   trunk/src/GnomeSubtitles/Command/InsertTextContentCommand.cs
   trunk/src/GnomeSubtitles/Command/InsertTranslationCommand.cs
   trunk/src/GnomeSubtitles/Command/MultipleSelectionCommand.cs
   trunk/src/GnomeSubtitles/Command/ReplaceAllCommand.cs
   trunk/src/GnomeSubtitles/Command/ShiftTimingsCommand.cs
   trunk/src/GnomeSubtitles/Command/SingleSelectionCommand.cs
   trunk/src/GnomeSubtitles/Command/VideoSetSubtitleTimingCommand.cs
   trunk/src/GnomeSubtitles/Core/Clipboards.cs
   trunk/src/GnomeSubtitles/Core/Config.cs
   trunk/src/GnomeSubtitles/Core/Document.cs
   trunk/src/GnomeSubtitles/Core/EncodingDescription.cs
   trunk/src/GnomeSubtitles/Core/Encodings.cs
   trunk/src/GnomeSubtitles/Core/EventHandlers.cs
   trunk/src/GnomeSubtitles/Core/Global.cs
   trunk/src/GnomeSubtitles/Core/Search.cs
   trunk/src/GnomeSubtitles/Core/SpellLanguage.cs
   trunk/src/GnomeSubtitles/Core/SpellLanguages.cs
   trunk/src/GnomeSubtitles/Core/Util.cs
   trunk/src/GnomeSubtitles/Dialog/AboutDialog.cs
   trunk/src/GnomeSubtitles/Dialog/Dialogs.cs
   trunk/src/GnomeSubtitles/Dialog/EncodingsDialog.cs
   trunk/src/GnomeSubtitles/Dialog/ErrorDialog.cs
   trunk/src/GnomeSubtitles/Dialog/FileOpenDialog.cs
   trunk/src/GnomeSubtitles/Dialog/FileOpenErrorDialog.cs
   trunk/src/GnomeSubtitles/Dialog/FilePropertiesDialog.cs
   trunk/src/GnomeSubtitles/Dialog/FileSaveAsDialog.cs
   trunk/src/GnomeSubtitles/Dialog/FileSaveErrorDialog.cs
   trunk/src/GnomeSubtitles/Dialog/FileTranslationOpenDialog.cs
   trunk/src/GnomeSubtitles/Dialog/GladeDialog.cs
   trunk/src/GnomeSubtitles/Dialog/HeadersDialog.cs
   trunk/src/GnomeSubtitles/Dialog/PreferencesDialog.cs
   trunk/src/GnomeSubtitles/Dialog/ReportBugWindow.cs
   trunk/src/GnomeSubtitles/Dialog/SaveConfirmationDialog.cs
   trunk/src/GnomeSubtitles/Dialog/SearchDialog.cs
   trunk/src/GnomeSubtitles/Dialog/SetLanguageDialog.cs
   trunk/src/GnomeSubtitles/Dialog/SubtitleFileChooserDialog.cs
   trunk/src/GnomeSubtitles/Dialog/SubtitleFileOpenErrorDialog.cs
   trunk/src/GnomeSubtitles/Dialog/TimingsAdjustDialog.cs
   trunk/src/GnomeSubtitles/Dialog/TimingsShiftDialog.cs
   trunk/src/GnomeSubtitles/Dialog/VideoErrorDialog.cs
   trunk/src/GnomeSubtitles/Dialog/VideoFileOpenErrorDialog.cs
   trunk/src/GnomeSubtitles/Dialog/VideoOpenDialog.cs
   trunk/src/GnomeSubtitles/Execution/BugReporter.cs
   trunk/src/GnomeSubtitles/Execution/Executable.cs
   trunk/src/GnomeSubtitles/Execution/Execution.cs
   trunk/src/GnomeSubtitles/Ui/SubtitleEdit/SubtitleEdit.cs
   trunk/src/GnomeSubtitles/Ui/SubtitleEdit/SubtitleEditSpinButtons.cs
   trunk/src/GnomeSubtitles/Ui/SubtitleEdit/SubtitleEditText.cs
   trunk/src/GnomeSubtitles/Ui/SubtitleEdit/SubtitleEditTextView.cs
   trunk/src/GnomeSubtitles/Ui/SubtitleEdit/SubtitleEditTranslation.cs
   trunk/src/GnomeSubtitles/Ui/SubtitleView/CellRendererCenteredText.cs
   trunk/src/GnomeSubtitles/Ui/SubtitleView/SelectionIntended.cs
   trunk/src/GnomeSubtitles/Ui/SubtitleView/SelectionType.cs
   trunk/src/GnomeSubtitles/Ui/SubtitleView/SubtitleSelection.cs
   trunk/src/GnomeSubtitles/Ui/SubtitleView/SubtitleView.cs
   trunk/src/GnomeSubtitles/Ui/SubtitleView/Subtitles.cs
   trunk/src/GnomeSubtitles/Ui/Video/Player.cs
   trunk/src/GnomeSubtitles/Ui/Video/PlayerPositionWatcher.cs
   trunk/src/GnomeSubtitles/Ui/Video/Video.cs
   trunk/src/GnomeSubtitles/Ui/Video/VideoFiles.cs
   trunk/src/GnomeSubtitles/Ui/Video/VideoPosition.cs
   trunk/src/GnomeSubtitles/Ui/Video/VideoSubtitle.cs

Modified: trunk/gnome-subtitles.mdp
==============================================================================
--- trunk/gnome-subtitles.mdp	(original)
+++ trunk/gnome-subtitles.mdp	Sun Jun 15 22:50:00 2008
@@ -1,7 +1,7 @@
 <Project name="gnome-subtitles" fileversion="2.0" language="C#" clr-version="Net_2_0" ctype="DotNetProject">
   <Configurations active="Debug">
     <Configuration name="Debug" ctype="DotNetProjectConfiguration">
-      <Output directory="build" assembly="gnome-subtitles" />
+      <Output directory="build" assemblyKeyFile="." assembly="gnome-subtitles" />
       <Build debugmode="True" target="WinExe" />
       <Execution runwithwarnings="True" consolepause="True" runtime="MsNet" clr-version="Net_2_0" />
       <CodeGeneration compiler="Csc" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="True" mainclass="GnomeSubtitles.Executable" generatexmldocumentation="False" win32Icon="." ctype="CSharpCompilerParameters" />
@@ -19,89 +19,61 @@
     <File name="src/GnomeSubtitles/Execution" subtype="Directory" buildaction="Compile" />
     <File name="src/GnomeSubtitles/Execution/Executable.cs" subtype="Code" buildaction="Compile" />
     <File name="src/GnomeSubtitles/Execution/Execution.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/AdjustTimingsCommand.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/ChangeFrameRateCommand.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/ChangeStyleCommand.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/ChangeTimingCommand.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/Command.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/CommandManager.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/DeleteSubtitlesCommand.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/FixedMultipleSelectionCommand.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/FixedSingleSelectionCommand.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/InsertSubtitleCommand.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/MultipleSelectionCommand.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/ShiftTimingsCommand.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/SingleSelectionCommand.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/AboutDialog.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/GladeDialog.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/HeadersDialog.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/SearchDialog.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/SubtitleFileChooserDialog.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/ReplaceAllCommand.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/AdjustTimingsCommand.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/ChangeFrameRateCommand.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/ChangeStyleCommand.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/ChangeTimingCommand.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/Command.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/CommandManager.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/DeleteSubtitlesCommand.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/FixedMultipleSelectionCommand.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/FixedSingleSelectionCommand.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/InsertSubtitleCommand.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/MultipleSelectionCommand.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/ShiftTimingsCommand.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/SingleSelectionCommand.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/AboutDialog.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/GladeDialog.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/HeadersDialog.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/SearchDialog.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/SubtitleFileChooserDialog.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/ReplaceAllCommand.cs" subtype="Code" buildaction="Compile" />
     <File name="data" subtype="Directory" buildaction="Compile" />
     <File name="data/gnome-subtitles.png" subtype="Code" buildaction="EmbedAsResource" />
     <File name="data/gnome-subtitles-logo.png" subtype="Code" buildaction="EmbedAsResource" />
-    <File name="src/GnomeSubtitles/Dialogs/ReportBugWindow.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/TimingsAdjustDialog.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/SaveConfirmationDialog.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/FileOpenDialog.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/FileOpenErrorDialog.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/FileSaveAsDialog.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/TimingsShiftDialog.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/VideoOpenDialog.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Exception" subtype="Directory" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/VideoSetSubtitleTimingCommand.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Exception/PlayerCouldNotOpenVideoException.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/SubtitleFileOpenErrorDialog.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/VideoFileOpenErrorDialog.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/ReportBugWindow.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/TimingsAdjustDialog.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/SaveConfirmationDialog.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/FileOpenDialog.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/FileOpenErrorDialog.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/FileSaveAsDialog.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/TimingsShiftDialog.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/VideoOpenDialog.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/VideoSetSubtitleTimingCommand.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/SubtitleFileOpenErrorDialog.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/VideoFileOpenErrorDialog.cs" subtype="Code" buildaction="Compile" />
     <File name="data/video-set-subtitle-start-16x.png" subtype="Code" buildaction="EmbedAsResource" />
     <File name="data/video-set-subtitle-end-16x.png" subtype="Code" buildaction="EmbedAsResource" />
-    <File name="src/GnomeSubtitles/Dialogs/PreferencesDialog.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/EncodingsDialog.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/PreferencesDialog.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/EncodingsDialog.cs" subtype="Code" buildaction="Compile" />
     <File name="src/GnomeSubtitles/Execution/BugReporter.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/FilePropertiesDialog.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/ErrorDialog.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/FileSaveErrorDialog.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/CommandTarget.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/CommandActivatedArgs.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/CommandActivatedHandler.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Core/Clipboards.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/FilePropertiesDialog.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/ErrorDialog.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/FileSaveErrorDialog.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/CommandTarget.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/CommandActivatedArgs.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/CommandActivatedHandler.cs" subtype="Code" buildaction="Compile" />
     <File name="src/GnomeSubtitles/Core/Config.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Core/Document.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Core/EncodingDescription.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Core/Encodings.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Core/EventHandlers.cs" subtype="Code" buildaction="Compile" />
     <File name="src/GnomeSubtitles/Core/Global.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Core/GUI.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Core/Menus.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Core/Search.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Core/Status.cs" subtype="Code" buildaction="Compile" />
     <File name="src/GnomeSubtitles/Core/Util.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Core/WidgetNames.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/SubtitleEdit/SubtitleEdit.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/SubtitleEdit/SubtitleEditSpinButtons.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/SubtitleEdit/SubtitleEditText.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/SubtitleEdit/SubtitleEditTextView.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/SubtitleEdit/SubtitleEditTranslation.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/SubtitleView/CellRendererCenteredText.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/SubtitleView/SelectionIntended.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/SubtitleView/SelectionType.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/SubtitleView/Subtitles.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/SubtitleView/SubtitleSelection.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/SubtitleView/SubtitleView.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Video/Video.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Video/VideoFiles.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Video/VideoPosition.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Video/VideoSubtitle.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/InsertTextContentCommand.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/InsertTextCommand.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/InsertTranslationCommand.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/DeleteTextContentCommand.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/DeleteTextCommand.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Commands/DeleteTranslationCommand.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/Dialogs.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/FileTranslationOpenDialog.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Video/Player.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/InsertTextContentCommand.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/InsertTextCommand.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/InsertTranslationCommand.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/DeleteTextContentCommand.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/DeleteTextCommand.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Command/DeleteTranslationCommand.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/Dialogs.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/FileTranslationOpenDialog.cs" subtype="Code" buildaction="Compile" />
     <File name="src/Glade/AboutDialog.glade" subtype="Code" buildaction="EmbedAsResource" />
     <File name="src/Glade/EncodingsDialog.glade" subtype="Code" buildaction="EmbedAsResource" />
     <File name="src/Glade/ErrorDialog.glade" subtype="Code" buildaction="EmbedAsResource" />
@@ -116,13 +88,42 @@
     <File name="src/Glade/TimingsAdjustDialog.glade" subtype="Code" buildaction="EmbedAsResource" />
     <File name="src/Glade/TimingsShiftDialog.glade" subtype="Code" buildaction="EmbedAsResource" />
     <File name="src/Glade/VideoOpenDialog.glade" subtype="Code" buildaction="EmbedAsResource" />
-    <File name="src/GnomeSubtitles/Video/PlayerPositionWatcher.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/VideoErrorDialog.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Dialogs/SetLanguageDialog.cs" subtype="Code" buildaction="Compile" />
-    <File name="src/GnomeSubtitles/Core/SpellLanguages.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/VideoErrorDialog.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Dialog/SetLanguageDialog.cs" subtype="Code" buildaction="Compile" />
     <File name="src/Glade/SetLanguageDialog.glade" subtype="Code" buildaction="EmbedAsResource" />
     <File name="src/GnomeSubtitles/Execution/gnome-subtitles.exe.config" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="src/GnomeSubtitles/Ui" subtype="Directory" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/Menus.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/Status.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/WidgetNames.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/SubtitleEdit/SubtitleEdit.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/SubtitleEdit/SubtitleEditSpinButtons.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/SubtitleEdit/SubtitleEditText.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/SubtitleEdit/SubtitleEditTextView.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/SubtitleEdit/SubtitleEditTranslation.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/SubtitleView/CellRendererCenteredText.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/SubtitleView/SelectionIntended.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/SubtitleView/SelectionType.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/SubtitleView/SubtitleSelection.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/SubtitleView/SubtitleView.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/Video/Video.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/Video/VideoFiles.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/Video/VideoPosition.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/Video/VideoSubtitle.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/SubtitleView/Subtitles.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/Video/Player.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/Video/PlayerPositionWatcher.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Core/EncodingDescription.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Core/Encodings.cs" subtype="Code" buildaction="Compile" />
     <File name="src/GnomeSubtitles/Core/SpellLanguage.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Core/SpellLanguages.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/Video/Exception" subtype="Directory" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/Video/Exception/PlayerCouldNotOpenVideoException.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Core/Document.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Core/Clipboards.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Core/Search.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Ui/MainUi.cs" subtype="Code" buildaction="Compile" />
+    <File name="src/GnomeSubtitles/Core/EventHandlers.cs" subtype="Code" buildaction="Compile" />
   </Contents>
   <References>
     <ProjectReference type="Gac" localcopy="True" refto="gtk-sharp, Version=2.8.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" />
@@ -136,6 +137,7 @@
     <ProjectReference type="Assembly" localcopy="True" refto="build/GStreamerPlaybin.dll" />
     <ProjectReference type="Assembly" localcopy="True" refto="../../../../usr/lib/sublib/sublib.dll" />
   </References>
+  <Deployment.LinuxDeployData generateScript="False" />
   <DeployTargets />
   <DeploymentInformation strategy="File">
     <excludeFiles />

Modified: trunk/gnome-subtitles.mds
==============================================================================
--- trunk/gnome-subtitles.mds	(original)
+++ trunk/gnome-subtitles.mds	Sun Jun 15 22:50:00 2008
@@ -1,5 +1,5 @@
-<Combine name="gnome-subtitles" fileversion="2.0" outputpath="./build/" MakePkgConfig="False" MakeLibPC="True">
-  <Configurations active="Release">
+<Combine name="gnome-subtitles" fileversion="2.0" outputpath="build/" MakePkgConfig="False" MakeLibPC="True">
+  <Configurations active="Debug">
     <Configuration name="Debug" ctype="CombineConfiguration">
       <Entry build="True" name="gnome-subtitles" configuration="Debug" />
     </Configuration>
@@ -12,6 +12,6 @@
   </StartMode>
   <DeployTargets />
   <Entries>
-    <Entry filename="./gnome-subtitles.mdp" />
+    <Entry filename="gnome-subtitles.mdp" />
   </Entries>
 </Combine>
\ No newline at end of file

Modified: trunk/src/GnomeSubtitles/Command/AdjustTimingsCommand.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/AdjustTimingsCommand.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/AdjustTimingsCommand.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -17,10 +17,11 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+using GnomeSubtitles.Ui.SubtitleView;
 using Mono.Unix;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public class AdjustTimingsCommand : FixedMultipleSelectionCommand {
 	private static string description = Catalog.GetString("Adjusting timings");

Modified: trunk/src/GnomeSubtitles/Command/ChangeFrameRateCommand.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/ChangeFrameRateCommand.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/ChangeFrameRateCommand.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -19,7 +19,7 @@
 
 using Mono.Unix;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public abstract class ChangeFrameRateCommand : FixedMultipleSelectionCommand {
 	private float storedFrameRate = 0;

Modified: trunk/src/GnomeSubtitles/Command/ChangeStyleCommand.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/ChangeStyleCommand.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/ChangeStyleCommand.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -21,7 +21,7 @@
 using Mono.Unix;
 using SubLib;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public abstract class ChangeStyleCommand : FixedMultipleSelectionCommand {
 	private bool styleValue;

Modified: trunk/src/GnomeSubtitles/Command/ChangeTimingCommand.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/ChangeTimingCommand.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/ChangeTimingCommand.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -21,7 +21,7 @@
 using SubLib;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public abstract class ChangeTimingCommand : FixedSingleSelectionCommand {
 	private TimeSpan storedTime;

Modified: trunk/src/GnomeSubtitles/Command/Command.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/Command.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/Command.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -17,7 +17,7 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public abstract class Command {
 	private string description;

Modified: trunk/src/GnomeSubtitles/Command/CommandActivatedArgs.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/CommandActivatedArgs.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/CommandActivatedArgs.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -19,7 +19,7 @@
 
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public class CommandActivatedArgs : EventArgs {
 	private CommandTarget target;

Modified: trunk/src/GnomeSubtitles/Command/CommandActivatedHandler.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/CommandActivatedHandler.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/CommandActivatedHandler.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -19,7 +19,7 @@
 
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public delegate void CommandActivatedHandler (object o, CommandActivatedArgs args);
 

Modified: trunk/src/GnomeSubtitles/Command/CommandManager.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/CommandManager.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/CommandManager.cs	Sun Jun 15 22:50:00 2008
@@ -20,7 +20,7 @@
 using Mono.Unix;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public class CommandManager {
 	private int limit = 40;

Modified: trunk/src/GnomeSubtitles/Command/CommandTarget.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/CommandTarget.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/CommandTarget.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -17,7 +17,7 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 /// <summary>
 /// Represents the target of a command.

Modified: trunk/src/GnomeSubtitles/Command/DeleteSubtitlesCommand.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/DeleteSubtitlesCommand.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/DeleteSubtitlesCommand.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -21,7 +21,7 @@
 using Mono.Unix;
 using SubLib;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public class DeleteSubtitlesCommand : MultipleSelectionCommand {
 	private static string description = Catalog.GetString("Deleting Subtitles");

Modified: trunk/src/GnomeSubtitles/Command/DeleteTextCommand.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/DeleteTextCommand.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/DeleteTextCommand.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -17,10 +17,11 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+using GnomeSubtitles.Ui.SubtitleEdit;
 using Mono.Unix;
 using SubLib;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public class DeleteTextCommand : DeleteTextContentCommand {
 	private static string description = Catalog.GetString("Editing Text"); //Must be equal to InsertTextCommand

Modified: trunk/src/GnomeSubtitles/Command/DeleteTextContentCommand.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/DeleteTextContentCommand.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/DeleteTextContentCommand.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -17,11 +17,12 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+using GnomeSubtitles.Ui.SubtitleEdit;
 using Mono.Unix;
 using SubLib;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public abstract class DeleteTextContentCommand : FixedSingleSelectionCommand {
 	private int index; //The start offset of the deleted text

Modified: trunk/src/GnomeSubtitles/Command/DeleteTranslationCommand.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/DeleteTranslationCommand.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/DeleteTranslationCommand.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -17,10 +17,11 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+using GnomeSubtitles.Ui.SubtitleEdit;
 using Mono.Unix;
 using SubLib;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public class DeleteTranslationCommand : DeleteTextContentCommand {
 	private static string description = Catalog.GetString("Editing Translation"); //Must be equal to InsertTranslationCommand

Modified: trunk/src/GnomeSubtitles/Command/FixedMultipleSelectionCommand.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/FixedMultipleSelectionCommand.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/FixedMultipleSelectionCommand.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -17,9 +17,10 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+using GnomeSubtitles.Ui.SubtitleView;
 using Gtk;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 /// <summary>Represents a <see cref="Command" /> in which the selection never changes during execution/undo/redo.</summary>
 public abstract class FixedMultipleSelectionCommand : MultipleSelectionCommand {

Modified: trunk/src/GnomeSubtitles/Command/FixedSingleSelectionCommand.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/FixedSingleSelectionCommand.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/FixedSingleSelectionCommand.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -19,7 +19,7 @@
 
 using Gtk;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public abstract class FixedSingleSelectionCommand : SingleSelectionCommand {
 	private bool reselect = false;

Modified: trunk/src/GnomeSubtitles/Command/InsertSubtitleCommand.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/InsertSubtitleCommand.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/InsertSubtitleCommand.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -21,7 +21,7 @@
 using Mono.Unix;
 using SubLib;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public abstract class InsertSubtitleCommand : SingleSelectionCommand {
 	private static string description = Catalog.GetString("Inserting Subtitle");

Modified: trunk/src/GnomeSubtitles/Command/InsertTextCommand.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/InsertTextCommand.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/InsertTextCommand.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -17,10 +17,11 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+using GnomeSubtitles.Ui.SubtitleEdit;
 using Mono.Unix;
 using SubLib;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public class InsertTextCommand : InsertTextContentCommand {
 	private static string description = Catalog.GetString("Editing Text"); //Must be equal to DeleteTextCommand

Modified: trunk/src/GnomeSubtitles/Command/InsertTextContentCommand.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/InsertTextContentCommand.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/InsertTextContentCommand.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -17,11 +17,12 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+using GnomeSubtitles.Ui.SubtitleEdit;
 using Mono.Unix;
 using SubLib;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public abstract class InsertTextContentCommand : FixedSingleSelectionCommand {
 	private int index; //The offset where the text was inserted

Modified: trunk/src/GnomeSubtitles/Command/InsertTranslationCommand.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/InsertTranslationCommand.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/InsertTranslationCommand.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -17,10 +17,11 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+using GnomeSubtitles.Ui.SubtitleEdit;
 using Mono.Unix;
 using SubLib;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public class InsertTranslationCommand : InsertTextContentCommand {
 	private static string description = Catalog.GetString("Editing Translation"); //Must be equal to DeleteTranslationCommand

Modified: trunk/src/GnomeSubtitles/Command/MultipleSelectionCommand.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/MultipleSelectionCommand.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/MultipleSelectionCommand.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -17,9 +17,10 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+using GnomeSubtitles.Ui.SubtitleView;
 using Gtk;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public abstract class MultipleSelectionCommand : Command {
 	private TreePath[] paths = null;

Modified: trunk/src/GnomeSubtitles/Command/ReplaceAllCommand.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/ReplaceAllCommand.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/ReplaceAllCommand.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -23,7 +23,7 @@
 using System;
 using System.Text.RegularExpressions;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public class ReplaceAllCommand : MultipleSelectionCommand {
 	private static string description = Catalog.GetString("Replacing All");

Modified: trunk/src/GnomeSubtitles/Command/ShiftTimingsCommand.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/ShiftTimingsCommand.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/ShiftTimingsCommand.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -17,12 +17,13 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+using GnomeSubtitles.Ui.SubtitleView;
 using Gtk;
 using Mono.Unix;
 using SubLib;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public class ShiftTimingsCommand : FixedMultipleSelectionCommand {
 	private static string description = Catalog.GetString("Shifting timings");

Modified: trunk/src/GnomeSubtitles/Command/SingleSelectionCommand.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/SingleSelectionCommand.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/SingleSelectionCommand.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -19,7 +19,7 @@
 
 using Gtk;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public abstract class SingleSelectionCommand : Command {
 	private TreePath path = null;

Modified: trunk/src/GnomeSubtitles/Command/VideoSetSubtitleTimingCommand.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Commands/VideoSetSubtitleTimingCommand.cs	(original)
+++ trunk/src/GnomeSubtitles/Command/VideoSetSubtitleTimingCommand.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -20,7 +20,7 @@
 using Mono.Unix;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Command {
 
 public class VideoSetSubtitleStartCommand : ChangeStartCommand {
 	private static string description = Catalog.GetString("Setting Subtitle Start");

Modified: trunk/src/GnomeSubtitles/Core/Clipboards.cs
==============================================================================
--- trunk/src/GnomeSubtitles/Core/Clipboards.cs	(original)
+++ trunk/src/GnomeSubtitles/Core/Clipboards.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006,2008 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -21,7 +21,7 @@
 using System;
 using SubLib;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Core {
 
 public class Clipboards {
 	private Clipboard clipboard = null;

Modified: trunk/src/GnomeSubtitles/Core/Config.cs
==============================================================================
--- trunk/src/GnomeSubtitles/Core/Config.cs	(original)
+++ trunk/src/GnomeSubtitles/Core/Config.cs	Sun Jun 15 22:50:00 2008
@@ -20,7 +20,7 @@
 using GConf;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Core {
 
 public class Config {
 	private Client client = null;

Modified: trunk/src/GnomeSubtitles/Core/Document.cs
==============================================================================
--- trunk/src/GnomeSubtitles/Core/Document.cs	(original)
+++ trunk/src/GnomeSubtitles/Core/Document.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -17,12 +17,13 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+using GnomeSubtitles.Command;
 using Mono.Unix;
 using SubLib;
 using System.IO;
 using System.Text;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Core {
 
 public class Document {
 	private Subtitles subtitles = null;

Modified: trunk/src/GnomeSubtitles/Core/EncodingDescription.cs
==============================================================================
--- trunk/src/GnomeSubtitles/Core/EncodingDescription.cs	(original)
+++ trunk/src/GnomeSubtitles/Core/EncodingDescription.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -19,7 +19,7 @@
 
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Core {
 
 public struct EncodingDescription : IComparable {
 	private int codePage;

Modified: trunk/src/GnomeSubtitles/Core/Encodings.cs
==============================================================================
--- trunk/src/GnomeSubtitles/Core/Encodings.cs	(original)
+++ trunk/src/GnomeSubtitles/Core/Encodings.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -21,7 +21,7 @@
 using System;
 using System.Text;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Core {
 
 public class Encodings {
 

Modified: trunk/src/GnomeSubtitles/Core/EventHandlers.cs
==============================================================================
--- trunk/src/GnomeSubtitles/Core/EventHandlers.cs	(original)
+++ trunk/src/GnomeSubtitles/Core/EventHandlers.cs	Sun Jun 15 22:50:00 2008
@@ -23,7 +23,7 @@
 using SubLib;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Core {
 
 public class EventHandlers {
 

Modified: trunk/src/GnomeSubtitles/Core/Global.cs
==============================================================================
--- trunk/src/GnomeSubtitles/Core/Global.cs	(original)
+++ trunk/src/GnomeSubtitles/Core/Global.cs	Sun Jun 15 22:50:00 2008
@@ -17,6 +17,10 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+using GnomeSubtitles.Command;
+using GnomeSubtitles.Dialog;
+using GnomeSubtitles.Execution;
+using GnomeSubtitles.Ui;
 using Gtk;
 using Mono.Unix;
 using SubLib;
@@ -24,12 +28,12 @@
 using System.IO;
 using System.Text;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Core {
 
 public class Global {
 	private static Glade.XML glade = null;
 	
-	private static GnomeSubtitles.GUI gui = null;
+	private static MainUi ui = null;
 	private static Execution execution = null;
 	private static EventHandlers handlers = null;
 	private static CommandManager commandManager = null;

Modified: trunk/src/GnomeSubtitles/Core/Search.cs
==============================================================================
--- trunk/src/GnomeSubtitles/Core/Search.cs	(original)
+++ trunk/src/GnomeSubtitles/Core/Search.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -22,7 +22,7 @@
 using System;
 using System.Text.RegularExpressions;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Core {
 
 /// <summary>Represents a search environment.</summary>
 /// <remarks>The search dialog is kept as a reference, and created on its first use.</remarks>
@@ -86,7 +86,7 @@
 		}			
 	}
 
-	/* Private methods */
+	#region Private methods
 	
 	private void InitDialog (bool showReplace) {
 		dialog = Global.Dialogs.SearchDialog;
@@ -170,6 +170,8 @@
 			Match match = dialog.ForwardRegex.Match(selection); //Either forward and backward regexes work
 			return (match.Success && (match.Length == selection.Length));
 	}
+	
+	#endregion
 
 }
 

Modified: trunk/src/GnomeSubtitles/Core/SpellLanguage.cs
==============================================================================
--- trunk/src/GnomeSubtitles/Core/SpellLanguage.cs	(original)
+++ trunk/src/GnomeSubtitles/Core/SpellLanguage.cs	Sun Jun 15 22:50:00 2008
@@ -22,7 +22,7 @@
 using System.Globalization;
 using System.Text.RegularExpressions;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Core {
 
 public class SpellLanguage : IComparable {
 	private string id = null;

Modified: trunk/src/GnomeSubtitles/Core/SpellLanguages.cs
==============================================================================
--- trunk/src/GnomeSubtitles/Core/SpellLanguages.cs	(original)
+++ trunk/src/GnomeSubtitles/Core/SpellLanguages.cs	Sun Jun 15 22:50:00 2008
@@ -23,7 +23,7 @@
 using System.Runtime.InteropServices;
 using SubLib;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Core {
 
 /* Delegates */
 public delegate void LanguageListHandler (string langTag, string providerName, string providerDesc, string providerFile, IntPtr userdata);

Modified: trunk/src/GnomeSubtitles/Core/Util.cs
==============================================================================
--- trunk/src/GnomeSubtitles/Core/Util.cs	(original)
+++ trunk/src/GnomeSubtitles/Core/Util.cs	Sun Jun 15 22:50:00 2008
@@ -22,7 +22,7 @@
 using System.Globalization;
 using SubLib;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Core {
 
 public class Util {
   

Modified: trunk/src/GnomeSubtitles/Dialog/AboutDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/AboutDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/AboutDialog.cs	Sun Jun 15 22:50:00 2008
@@ -20,7 +20,7 @@
 using Gtk;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 public class AboutDialog : GladeDialog {
 	private new Gtk.AboutDialog dialog = null;

Modified: trunk/src/GnomeSubtitles/Dialog/Dialogs.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/Dialogs.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/Dialogs.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -19,7 +19,7 @@
 
 using SubLib;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 public class Dialogs {
 	private FileSaveAsDialog fileSaveAsDialog = null;

Modified: trunk/src/GnomeSubtitles/Dialog/EncodingsDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/EncodingsDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/EncodingsDialog.cs	Sun Jun 15 22:50:00 2008
@@ -22,7 +22,7 @@
 using Mono.Unix;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 public class EncodingsDialog : GladeDialog {
 	private string[] chosenNames = new string[0];

Modified: trunk/src/GnomeSubtitles/Dialog/ErrorDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/ErrorDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/ErrorDialog.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -21,7 +21,7 @@
 using Mono.Unix;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 public abstract class ErrorDialog : GladeDialog {
 	protected new MessageDialog dialog = null;

Modified: trunk/src/GnomeSubtitles/Dialog/FileOpenDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/FileOpenDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/FileOpenDialog.cs	Sun Jun 15 22:50:00 2008
@@ -27,7 +27,7 @@
 using System.Text;
 using System.Text.RegularExpressions;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 public class FileOpenDialog : SubtitleFileChooserDialog {
 	private ArrayList videoFiles = null; //The full paths of the video files in the current fir

Modified: trunk/src/GnomeSubtitles/Dialog/FileOpenErrorDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/FileOpenErrorDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/FileOpenErrorDialog.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -21,7 +21,7 @@
 using Mono.Unix;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 public abstract class FileOpenErrorDialog : ErrorDialog {
 	

Modified: trunk/src/GnomeSubtitles/Dialog/FilePropertiesDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/FilePropertiesDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/FilePropertiesDialog.cs	Sun Jun 15 22:50:00 2008
@@ -24,7 +24,7 @@
 using System;
 using System.Text;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 public class FilePropertiesDialog : GladeDialog {
 

Modified: trunk/src/GnomeSubtitles/Dialog/FileSaveAsDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/FileSaveAsDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/FileSaveAsDialog.cs	Sun Jun 15 22:50:00 2008
@@ -25,7 +25,7 @@
 using System.IO;
 using System.Text;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 public class FileSaveAsDialog : SubtitleFileChooserDialog {
 	private SubtitleTextType textType;

Modified: trunk/src/GnomeSubtitles/Dialog/FileSaveErrorDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/FileSaveErrorDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/FileSaveErrorDialog.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -24,7 +24,7 @@
 using System.IO;
 using System.Security;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 public class FileSaveErrorDialog : ErrorDialog {
 	

Modified: trunk/src/GnomeSubtitles/Dialog/FileTranslationOpenDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/FileTranslationOpenDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/FileTranslationOpenDialog.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -19,7 +19,7 @@
 
 using Mono.Unix;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 public class FileTranslationOpenDialog : FileOpenDialog {
 	

Modified: trunk/src/GnomeSubtitles/Dialog/GladeDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/GladeDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/GladeDialog.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -20,7 +20,7 @@
 using System;
 using Gtk;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 public class GladeDialog {
 	private Glade.XML glade = null;

Modified: trunk/src/GnomeSubtitles/Dialog/HeadersDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/HeadersDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/HeadersDialog.cs	Sun Jun 15 22:50:00 2008
@@ -22,8 +22,7 @@
 using Gtk;
 using SubLib;
 
-namespace GnomeSubtitles {
-
+namespace GnomeSubtitles.Dialog {
 
 public class HeadersDialog : GladeDialog {
 	private Headers headers = null;

Modified: trunk/src/GnomeSubtitles/Dialog/PreferencesDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/PreferencesDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/PreferencesDialog.cs	Sun Jun 15 22:50:00 2008
@@ -21,7 +21,7 @@
 using Gtk;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 public class PreferencesDialog : GladeDialog {
 

Modified: trunk/src/GnomeSubtitles/Dialog/ReportBugWindow.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/ReportBugWindow.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/ReportBugWindow.cs	Sun Jun 15 22:50:00 2008
@@ -22,7 +22,7 @@
 using SubLib;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 public class BugReportWindow {
 	private Clipboard clipboard = null;

Modified: trunk/src/GnomeSubtitles/Dialog/SaveConfirmationDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/SaveConfirmationDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/SaveConfirmationDialog.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -22,9 +22,8 @@
 using SubLib;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
-/* TODO: Use MessageDialog from Glade? */
 public class SaveConfirmationDialog {
 	private MessageDialog dialog = null;
 	private bool toClose = false;

Modified: trunk/src/GnomeSubtitles/Dialog/SearchDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/SearchDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/SearchDialog.cs	Sun Jun 15 22:50:00 2008
@@ -23,7 +23,7 @@
 using System;
 using System.Text.RegularExpressions;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 internal enum SearchDialogResponse { Find = 1, Replace, ReplaceAll, Close = -6 };
 

Modified: trunk/src/GnomeSubtitles/Dialog/SetLanguageDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/SetLanguageDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/SetLanguageDialog.cs	Sun Jun 15 22:50:00 2008
@@ -23,7 +23,7 @@
 using SubLib;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 public class SetLanguageDialog : GladeDialog {
 	private ListStore store = null;

Modified: trunk/src/GnomeSubtitles/Dialog/SubtitleFileChooserDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/SubtitleFileChooserDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/SubtitleFileChooserDialog.cs	Sun Jun 15 22:50:00 2008
@@ -24,7 +24,7 @@
 using System.Collections;
 using System.Text;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 public abstract class SubtitleFileChooserDialog : GladeDialog {
 	private int fixedEncoding = -1;

Modified: trunk/src/GnomeSubtitles/Dialog/SubtitleFileOpenErrorDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/SubtitleFileOpenErrorDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/SubtitleFileOpenErrorDialog.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -23,7 +23,7 @@
 using System.IO;
 using System.Security;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 public class SubtitleFileOpenErrorDialog : FileOpenErrorDialog {
 

Modified: trunk/src/GnomeSubtitles/Dialog/TimingsAdjustDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/TimingsAdjustDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/TimingsAdjustDialog.cs	Sun Jun 15 22:50:00 2008
@@ -23,7 +23,7 @@
 using SubLib;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 
 public class TimingsAdjustDialog : GladeDialog {

Modified: trunk/src/GnomeSubtitles/Dialog/TimingsShiftDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/TimingsShiftDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/TimingsShiftDialog.cs	Sun Jun 15 22:50:00 2008
@@ -23,7 +23,7 @@
 using SubLib;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 public class TimingsShiftDialog : GladeDialog {
 	private TimingMode timingMode = TimingMode.Frames;

Modified: trunk/src/GnomeSubtitles/Dialog/VideoErrorDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/VideoErrorDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/VideoErrorDialog.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -21,7 +21,7 @@
 using Mono.Unix;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 public class VideoErrorDialog : ErrorDialog {
 	private static string primary = Catalog.GetString("Could not continue the video playback");

Modified: trunk/src/GnomeSubtitles/Dialog/VideoFileOpenErrorDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/VideoFileOpenErrorDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/VideoFileOpenErrorDialog.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -20,7 +20,7 @@
 using Mono.Unix;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 public class VideoFileOpenErrorDialog : FileOpenErrorDialog {
 

Modified: trunk/src/GnomeSubtitles/Dialog/VideoOpenDialog.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Dialogs/VideoOpenDialog.cs	(original)
+++ trunk/src/GnomeSubtitles/Dialog/VideoOpenDialog.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -21,7 +21,7 @@
 using Mono.Unix;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Dialog {
 
 public class VideoOpenDialog : GladeDialog {
 	protected new FileChooserDialog dialog = null;
@@ -50,7 +50,7 @@
 	}
 	
 	/* Private methods */
-	
+
 	/* TODO check how other players are setting up the filters, possibly using MIME types. */
 	private void SetFilters () {
 

Modified: trunk/src/GnomeSubtitles/Execution/BugReporter.cs
==============================================================================
--- trunk/src/GnomeSubtitles/Execution/BugReporter.cs	(original)
+++ trunk/src/GnomeSubtitles/Execution/BugReporter.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -22,7 +22,7 @@
 using System.Diagnostics;
 using System.IO;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Execution {
 
 public class BugReporter {
 
@@ -38,7 +38,7 @@
 		}
 	}
 	
-	/* Private members */
+	#region Private members
 	
 	private static void RunBugBuddy (Exception exception, string bugInfo) {
 		string path = WriteBugInfo(exception, bugInfo);
@@ -83,6 +83,8 @@
 		int number = random.Next(10000);
 		return Path.GetTempPath() + Path.DirectorySeparatorChar + number + ".tmp";
 	}
+	
+	#endregion
 
 }
 

Modified: trunk/src/GnomeSubtitles/Execution/Executable.cs
==============================================================================
--- trunk/src/GnomeSubtitles/Execution/Executable.cs	(original)
+++ trunk/src/GnomeSubtitles/Execution/Executable.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -21,7 +21,7 @@
 using System.Runtime.InteropServices;
 using System.Text;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Execution {
 
 public class Executable {
 
@@ -30,6 +30,8 @@
 	[DllImport("libc")]
 	private static extern void setproctitle(byte [] fmt, byte [] str_arg); //Used in BSD's
 
+	#region Public methods
+
 	public static bool SetProcessNamePrctl (string name) {
 		try {
 			if (prctl(15, Encoding.ASCII.GetBytes(name + "\0"), 0, 0, 0) != 0) { // 15 = PR_SET_NAME
@@ -66,6 +68,8 @@
 		SetProcessName(execution.ExecutableName);
 		Global.Run(execution);
 	}
+	
+	#endregion
 
 }
 

Modified: trunk/src/GnomeSubtitles/Execution/Execution.cs
==============================================================================
--- trunk/src/GnomeSubtitles/Execution/Execution.cs	(original)
+++ trunk/src/GnomeSubtitles/Execution/Execution.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -22,24 +22,27 @@
 using System.IO;
 using System.Reflection;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Execution {
 
 public class Execution {
 	private Program program = null;
 	private bool initialized = false;
 
-	/* Constant strings */
+	#region Constant strings
+	
 	private const string applicationName = "Gnome Subtitles";
 	private const string applicationID = "gnome-subtitles";
 	private const string subLibAssemblyName = "sublib";
 	
+	#endregion
+	
 	private string[] args = null;
 	
 	public Execution (string[] args) {
 		this.args = args;
 	}
 	
-	/* Public properties */
+	#region Public properties
 	
 	public bool Initialized {
 		get { return initialized; }
@@ -117,7 +120,9 @@
 		get { return applicationID; }
 	}
 	
-	/* Public methods */
+	#endregion
+	
+	#region Public methods
 	
 	public void Init () {
 		program = new Program(applicationID, Version, Gnome.Modules.UI, args);
@@ -132,7 +137,9 @@
 		program.Quit();
 	}
 	
-	/* Private methods */
+	#endregion
+	
+	#region Private methods
 	
 	private string RemoveTrailingZeros (string version) {
 		while (version.EndsWith(".0")) {
@@ -140,6 +147,8 @@
 		}
 		return version;
 	}
+
+	#endregion
 	
 }
 

Added: trunk/src/GnomeSubtitles/Ui/MainUi.cs
==============================================================================
--- (empty file)
+++ trunk/src/GnomeSubtitles/Ui/MainUi.cs	Sun Jun 15 22:50:00 2008
@@ -0,0 +1,531 @@
+/*
+ * This file is part of Gnome Subtitles.
+ * Copyright (C) 2006-2008 Pedro Castro
+ *
+ * Gnome Subtitles is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * Gnome Subtitles is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+ */
+
+using Gtk;
+using Mono.Unix;
+using SubLib;
+using System;
+using System.IO;
+using System.Text;
+
+namespace GnomeSubtitles.Ui {
+
+public class MainUi {
+	private Window window = null;
+	private Menus menus = null;
+	private Video video = null;
+	private SubtitleView view = null;
+	private SubtitleEdit edit = null;
+	private Status status = null;
+	
+	/* Constant strings */
+	private const string gladeFilename = "MainWindow.glade";
+	private const string iconFilename = "gnome-subtitles.png";
+	
+	public MainUi (EventHandlers handlers, out Glade.XML glade) {
+		glade = new Glade.XML(null, gladeFilename, null, Global.Execution.TranslationDomain);
+		
+		window = glade.GetWidget("window") as Window;
+		window.Icon = new Gdk.Pixbuf(null, iconFilename);
+		window.SetDefaultSize(Global.Config.PrefsWindowWidth, Global.Config.PrefsWindowHeight);
+		
+		video = new Video();
+		view = new SubtitleView();
+		edit = new SubtitleEdit();
+		menus = new Menus();
+		status = new Status();
+
+		glade.Autoconnect(handlers);
+		
+		window.Visible = true;
+    }
+
+	/* Public properties */
+
+	public Window Window {
+		get { return window; }
+	}
+
+	public Menus Menus {
+		get { return menus; }
+	}
+	
+	public Video Video {
+		get { return video; }
+	}
+	
+	public SubtitleView View {
+		get { return view; }
+	}
+	
+	public SubtitleEdit Edit {
+		get { return edit; }
+	}
+	
+	public Status Status {
+		get { return status; }
+	}
+
+    
+    /* Public Methods */
+    
+    /// <summary>Starts the GUI</summary>
+    /// <remarks>A file is opened if it was specified as argument. If it wasn't, a blank start is performed.</summary>
+    public void Start () {
+    	string[] args = Global.Execution.Args;
+    	if (args.Length > 0) {
+    		string subtitleFile = args[0];
+    		string videoFile = Global.Config.PrefsVideoAutoChooseFile ? VideoFiles.FindMatchingVideo(subtitleFile) : String.Empty;
+			Open(subtitleFile, -1, videoFile);
+		}
+		else
+			BlankStartUp();
+    }
+    
+    /// <summary>Quits the application.</summary>
+    public void Quit () {
+		if (ToCloseAfterWarning()) {
+			video.Quit();
+			Global.Quit();
+		}
+    }
+    
+	/// <summary>Kills the window in the most quick and unfriendly way.</summary>
+    public void Kill () {
+		window.Destroy();
+    }
+
+	/// <summary>Creates a new subtitles document for the specified path.</summary>
+	/// <param name="path">The subtitles' filename. If it's an empty string, 'Unsaved Subtitles' will be used instead.</param>
+	/// <remarks>If there's a document opened with unsaved changes, a warning dialog is shown.</remarks>
+    public void New (string path) {
+    	if (!ToCreateNewAfterWarning())
+    		return;
+
+		if (path == String.Empty) {
+			//To translators: this is the filename for new files (before being saved)
+			path = Catalog.GetString("Unsaved Subtitles");
+		}
+
+		Global.CreateDocumentNew(path);
+
+		if (Global.Document.Subtitles.Count == 0) {
+			Global.CommandManager.Execute(new InsertFirstSubtitleCommand());
+		}
+    }
+    
+    /// <summary>Shows the open dialog and possibly opens a subtitle.</summary>
+    /// <remarks>If there's a document currently open with unsaved changes, a warning dialog
+    /// is shown before opening the new file.</remarks>
+    public void Open () {
+    	FileOpenDialog dialog = new FileOpenDialog();
+    	dialog.Show();
+    	bool toOpen = dialog.WaitForResponse();
+    	if (toOpen && ToOpenAfterWarning()) {
+    		string filename = dialog.Filename;
+    		int codePage = (dialog.HasChosenEncoding ? dialog.ChosenEncoding.CodePage : -1);
+    		string videoFilename = dialog.VideoFilename;
+    		Open(filename, codePage, videoFilename);
+    	}
+    }
+        
+    public void OpenVideo () {
+    	VideoOpenDialog dialog = new VideoOpenDialog();
+    	dialog.Show();
+		bool toOpen = dialog.WaitForResponse();
+		if (toOpen) {
+			string videoUri = dialog.Uri;
+			OpenVideo(videoUri);
+		}
+    }
+    
+    public void CloseVideo () {
+    	Video.Close();
+    	UpdateFromCloseVideo();
+    }
+    
+    /// <summary>Executes a Save operation.</summary>
+    /// <remarks>If the document hasn't been saved before, a SaveAs is executed.</remarks>
+    /// <returns>Whether the file was saved or not.</returns>
+    public bool Save () {
+    	if (Global.Document.CanTextBeSaved) { //Check if document can be saved or needs a SaveAs
+			Save(Global.Document.TextFile);
+			return true;
+		}
+		else
+			return SaveAs();
+    }
+
+    /// <summary>Executes a SaveAs operation.</summary>
+    /// <remarks>After saving, the timing mode is set to the timing mode of the subtitle format using when saving.</remarks>
+    /// <returns>Whether the file was saved or not.</returns>
+    public bool SaveAs () {
+		FileSaveAsDialog dialog = Global.Dialogs.FileSaveAsDialog;
+		FileProperties properties = ShowSaveAsDialog(dialog);
+		if (properties != null) {
+			Save(properties);
+			return true;
+		}
+		else
+			return false;
+	}
+	
+	/// <summary>Starts a new translation.</summary>
+	/// <remarks>If there's a translation open with unsaved changes, a warning dialog is shown.</remarks>
+    public void TranslationNew () {
+    	if (!ToCreateNewTranslationAfterWarning())
+    		return;
+
+		Global.Document.NewTranslation();
+    }
+    
+    /// <summary>Shows the open translation dialog and possibly opens a file.</summary>
+    /// <remarks>If there's a translation currently open with unsaved changes, a warning dialog
+    /// is shown before opening the new file.</remarks>
+    public void TranslationOpen () {
+    	FileOpenDialog dialog = new FileTranslationOpenDialog();
+    	dialog.Show();
+    	bool toOpen = dialog.WaitForResponse();
+    	if (toOpen && ToOpenTranslationAfterWarning()) {
+    		string filename = dialog.Filename;
+    		int codePage = (dialog.HasChosenEncoding ? dialog.ChosenEncoding.CodePage : -1);
+    		OpenTranslation(filename, codePage);
+    	}
+    }
+    
+    /// <summary>Executes a Save operation regarding the translation.</summary>
+    /// <remarks>If the translation hasn't been saved before, a TranslationSaveAs is executed.</remarks>
+    /// <returns>Whether the translation file was saved or not.</returns>
+    public bool TranslationSave () {
+    	if (Global.Document.CanTranslationBeSaved) { //Check if translation can be saved or needs a SaveAs
+			SaveTranslation(Global.Document.TranslationFile);
+			return true;
+		}
+		else
+			return TranslationSaveAs();
+    }
+    
+    /// <summary>Executes a translation SaveAs operation.</summary>
+    /// <returns>Whether the translation file was saved or not.</returns>
+    public bool TranslationSaveAs () {
+		FileSaveAsDialog dialog = Global.Dialogs.TranslationSaveAsDialog;
+		FileProperties properties = ShowSaveAsDialog(dialog);
+		if (properties != null) {
+			SaveTranslation(properties);
+			return true;
+		}
+		else
+			return false;
+	}
+
+    /// <summary>Closes a translation.</summary>
+	/// <remarks>If there's a translation open with unsaved changes, a warning dialog is shown.</remarks>
+    public void TranslationClose () {
+    	if (!ToCloseTranslationAfterWarning())
+    		return;
+
+		Global.Document.CloseTranslation();
+    }
+
+	public void UpdateFromDocumentModified (bool modified) {
+		string prefix = (modified ? "*" : String.Empty);
+		window.Title = prefix + Global.Document.TextFile.Filename +
+			" - " + Global.Execution.ApplicationName;
+	}
+	
+	public void UpdateFromNewDocument (bool wasLoaded) {
+		view.UpdateFromNewDocument(wasLoaded);
+		edit.UpdateFromNewDocument(wasLoaded);
+		menus.UpdateFromNewDocument(wasLoaded);
+	}
+	
+	public void UpdateFromNewTranslationDocument () {
+		view.UpdateFromNewTranslationDocument();
+		edit.UpdateFromNewTranslationDocument();
+		menus.UpdateFromNewTranslationDocument();
+	}
+	
+	public void UpdateFromCloseTranslation () {
+		view.UpdateFromCloseTranslation();
+		edit.UpdateFromCloseTranslation();
+		menus.UpdateFromCloseTranslation();
+	}
+	
+	public void UpdateFromTimingMode (TimingMode mode) {
+		view.UpdateFromTimingMode(mode);
+		edit.UpdateFromTimingMode(mode);
+		video.UpdateFromTimingMode(mode);
+	}
+	
+	public void UpdateFromOpenVideo () {
+		menus.UpdateFromOpenVideo();
+	}
+	
+	public void UpdateFromCloseVideo () {
+		menus.UpdateFromCloseVideo();
+	}
+	
+	/// <summary>Updates the various parts of the GUI based on the current selection.</summary>
+	public void UpdateFromSelection () {
+		if (view.Selection.Count == 1)
+			UpdateFromSelection(view.Selection.Subtitle);
+		else
+			UpdateFromSelection(view.Selection.Paths);
+	}
+	
+	/// <summary>Updates the various parts of the GUI based on the current subtitle count.</summary>
+	public void UpdateFromSubtitleCount () {
+		int count = Global.Document.Subtitles.Collection.Count;
+		menus.UpdateFromSubtitleCount(count);
+	}
+
+	
+	/* Private members */
+	
+	/// <summary>Opens a subtitle file, given its filename, code page and video filename.</summary>
+	/// <param name="path">The path of the subtitles file to open.</param>
+	/// <param name="codePage">The code page of the filename. To use autodetection, set it to -1.</param>
+	/// <param name="videoFilename">The videoFilename to open. If <see cref="String.Empty" />, no video will be opened.</param>
+	/// <remarks>An error dialog is presented if an exception is caught during open.</remarks>
+    private void Open (string path, int codePage, string videoFilename) {
+    	try {
+    		Encoding encoding =  CodePageToEncoding(codePage);
+    		Global.CreateDocumentOpen(path, encoding);
+			view.Selection.SelectFirst();
+		
+			if (videoFilename != String.Empty)
+				OpenVideo(videoFilename);
+		}
+		catch (Exception exception) {
+			SubtitleFileOpenErrorDialog errorDialog = new SubtitleFileOpenErrorDialog(path, exception);
+			errorDialog.Show();
+			bool toOpenAgain = errorDialog.WaitForResponse();
+			if (toOpenAgain)
+				Open();
+		}
+    }
+    
+    /// <summary>Creates an <see cref="Encoding" /> from a code page.</summary>
+    /// <param name="codePage">The code page.</param>
+    /// <returns>The respective <see cref="Encoding" />, or null if codePage == -1.</returns>
+    /// <exception cref="EncodingNotSupportedException">Thrown if a detected encoding is not supported by the platform.</exception>
+    private Encoding CodePageToEncoding (int codePage) {
+    	if (codePage == -1)
+    		return null;
+
+    	try {
+    		return Encoding.GetEncoding(codePage);
+    	}
+    	catch (NotSupportedException) {
+    		throw new EncodingNotSupportedException();
+    	}
+    }
+
+    /// <summary>Opens a translation file, given its filename and code page.</summary>
+	/// <param name="path">The path of the translation file to open.</param>
+	/// <param name="codePage">The code page of the filename. To use autodetection, set it to -1.</param>
+	/// <remarks>An error dialog is presented if an exception is caught during open.</remarks>
+    private void OpenTranslation (string path, int codePage) {
+    	try {
+    		Encoding encoding = (codePage == -1 ? null : Encoding.GetEncoding(codePage));
+    		Global.Document.OpenTranslation(path, encoding);
+		}
+		catch (Exception exception) {
+			SubtitleFileOpenErrorDialog errorDialog = new SubtitleFileOpenErrorDialog(path, exception);
+			errorDialog.Show();
+			bool toOpenAgain = errorDialog.WaitForResponse();
+			if (toOpenAgain)
+				Open();
+		}
+    }
+    
+    private void OpenVideo (string videoUriString) {
+    	Menus.SetViewVideoActivity(true);
+    	Uri videoUri = null;
+		try {
+			videoUri = new Uri(videoUriString);
+			Video.Open(videoUri);
+			UpdateFromOpenVideo();
+		}
+		catch (Exception exception) {
+			Video.Close();
+			VideoFileOpenErrorDialog errorDialog = new VideoFileOpenErrorDialog(videoUri, exception);
+			errorDialog.Show();
+			bool toOpenAgain = errorDialog.WaitForResponse();
+	    	if (toOpenAgain)
+	    		OpenVideo();
+		}
+    }
+    
+    private void Save (FileProperties fileProperties) {
+		try {
+			Global.Document.Save(fileProperties);
+		}
+		catch (Exception exception) {
+			FileSaveErrorDialog errorDialog = new FileSaveErrorDialog(fileProperties.Path, exception);
+			errorDialog.Show();
+			bool toSaveAgain = errorDialog.WaitForResponse();
+	    	if (toSaveAgain)
+	    		SaveAs();			
+		}
+	}
+	
+	private void SaveTranslation (FileProperties fileProperties) {
+		try {
+			Global.Document.SaveTranslation(fileProperties);
+		}
+		catch (Exception exception) {
+			FileSaveErrorDialog errorDialog = new FileSaveErrorDialog(fileProperties.Path, exception); //TODO check messages for translation
+			errorDialog.Show();
+			bool toSaveAgain = errorDialog.WaitForResponse();
+	    	if (toSaveAgain)
+	    		TranslationSaveAs();			
+		}
+	}
+	
+	/// <summary>Displays a SaveAs dialog and gets the chosen options as <cref="FileProperties" />.</summary>
+	/// <param name="dialog">The dialog to display.</param>
+	/// <returns>The chosen file properties, or null in case SaveAs was canceled.</returns>
+	private FileProperties ShowSaveAsDialog (FileSaveAsDialog dialog) {
+		dialog.Show();
+		bool toSaveAs = dialog.WaitForResponse();
+		if (!toSaveAs)
+			return null;
+		
+		string path = dialog.Filename;
+		Encoding encoding = Encoding.GetEncoding(dialog.ChosenEncoding.CodePage);
+		SubtitleType subtitleType = dialog.SubtitleType;			
+		NewlineType newlineType = dialog.NewlineType;
+		TimingMode timingMode = Global.TimingMode;
+		return new FileProperties(path, encoding, subtitleType, timingMode, newlineType);
+	}
+	
+	/// <summary>Executes a blank startup operation.</summary>
+	/// <remarks>This is used when no document is loaded.</remarks>
+	private void BlankStartUp () {
+    	menus.BlankStartUp();
+    	view.BlankStartUp();
+    	edit.BlankStartUp();
+    }
+		
+	/// <summary>Updates the GUI from the specified selected Subtitle.</summary>
+	/// <param name="subtitle">The subtitle that is currently selected.</param>
+	/// <remarks>This is only used when there is only one selected path. When there are zero or more than one
+	/// paths selected, <see cref="UpdateFromSelection(TreePath[])" /> must be used.</remarks>
+	private void UpdateFromSelection (Subtitle subtitle) {
+		menus.UpdateFromSelection(subtitle);
+		edit.UpdateFromSelection(subtitle);
+		video.UpdateFromSelection(true);
+	}
+
+	/// <summary>Updates the GUI from the specified selected paths.</summary>
+	/// <param name="paths">The paths from which the GUI should be updated.</param>
+	/// <remarks>This is only used when there are either zero or more than one selected paths. When there is only
+	/// one path selected, <see cref="UpdateFromSelection(Subtitle)" /> must be used.</remarks>
+	private void UpdateFromSelection (TreePath[] paths) {
+		menus.UpdateFromSelection(paths);
+		edit.Enabled = false;
+		video.UpdateFromSelection(false);
+	}    
+
+	/// <summary>Whether there are unsaved normal changes.</summary>
+	private bool ExistTextUnsavedChanges () {
+		return Global.IsDocumentLoaded && Global.Document.WasTextModified;
+	}
+	
+	/// <summary>Whether there are unsaved translation changes.</summary>
+	private bool ExistTranslationUnsavedChanges () {
+		return Global.IsDocumentLoaded && Global.Document.IsTranslationLoaded && Global.Document.WasTranslationModified;
+	}
+
+	/// <summary>Whether the program should be closed, after choosing the respective confirmation dialog.</summary>
+    private bool ToCloseAfterWarning () {
+    	bool toCreate = true;
+    	if (ExistTextUnsavedChanges()) {
+	    	SaveConfirmationDialog subtitleDialog = new SaveSubtitlesOnCloseFileConfirmationDialog();
+    		toCreate = subtitleDialog.WaitForResponse();
+    	}
+    	if (toCreate && ExistTranslationUnsavedChanges()) {
+   			SaveConfirmationDialog translationDialog = new SaveTranslationOnCloseConfirmationDialog();
+   			toCreate = translationDialog.WaitForResponse();
+   		}
+    	return toCreate; 
+	}
+
+    /// <summary>Whether a new document should be created, after choosing the respective confirmation dialog.</summary>
+    private bool ToCreateNewAfterWarning () {
+    	bool toCreate = true;
+   		if (ExistTextUnsavedChanges()) {
+    		SaveConfirmationDialog subtitleDialog = new SaveSubtitlesOnNewFileConfirmationDialog();
+   			toCreate = subtitleDialog.WaitForResponse();
+   		}
+   		if (toCreate && ExistTranslationUnsavedChanges()) {
+   			SaveConfirmationDialog translationDialog = new SaveTranslationOnNewFileConfirmationDialog();
+   			toCreate = translationDialog.WaitForResponse();
+   		}
+   		return toCreate;
+	}
+	
+	/// <summary>Whether a document should be opened, after choosing the respective confirmation dialog.</summary>
+	private bool ToOpenAfterWarning () {
+   		bool toCreate = true;
+   		if (ExistTextUnsavedChanges()) {
+    		SaveConfirmationDialog subtitleDialog = new SaveSubtitlesOnOpenFileConfirmationDialog();
+   			toCreate = subtitleDialog.WaitForResponse();
+   		}
+   		if (toCreate && ExistTranslationUnsavedChanges()) {
+   			SaveConfirmationDialog translationDialog = new SaveTranslationOnOpenConfirmationDialog();
+   			toCreate = translationDialog.WaitForResponse();
+   		}
+   		return toCreate;
+	}
+
+	/// <summary>Whether a new translation should be created, after choosing the respective confirmation dialog.</summary>
+    private bool ToCreateNewTranslationAfterWarning () {
+   		if (ExistTranslationUnsavedChanges()) {
+    		SaveConfirmationDialog dialog = new SaveTranslationOnNewTranslationConfirmationDialog();
+   			return dialog.WaitForResponse();
+   		}
+   		else
+    		return true; 
+	}
+	
+	/// <summary>Whether a translation should be opened, after choosing the respective confirmation dialog.</summary>
+	private bool ToOpenTranslationAfterWarning () {
+   		if (ExistTranslationUnsavedChanges()) {
+    		SaveConfirmationDialog dialog = new SaveTranslationOnOpenConfirmationDialog();
+   			return dialog.WaitForResponse();
+   		}
+   		else
+    		return true; 
+	}
+	
+	/// <summary>Whether a translation should be closed, after choosing the respective confirmation dialog.</summary>
+    private bool ToCloseTranslationAfterWarning () {
+   		if (ExistTranslationUnsavedChanges()) {
+    		SaveConfirmationDialog dialog = new SaveTranslationOnCloseConfirmationDialog();
+   			return dialog.WaitForResponse();
+   		}
+   		else
+    		return true; 
+	}
+
+}
+
+}

Copied: trunk/src/GnomeSubtitles/Ui/Menus.cs (from r1003, /trunk/src/GnomeSubtitles/Core/Menus.cs)
==============================================================================
--- /trunk/src/GnomeSubtitles/Core/Menus.cs	(original)
+++ trunk/src/GnomeSubtitles/Ui/Menus.cs	Sun Jun 15 22:50:00 2008
@@ -23,7 +23,7 @@
 using System;
 using System.Globalization;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Ui {
 
 public class Menus {
 	#pragma warning disable 612 //TODO Tooltips has been deprecated

Copied: trunk/src/GnomeSubtitles/Ui/Status.cs (from r1003, /trunk/src/GnomeSubtitles/Core/Status.cs)
==============================================================================
--- /trunk/src/GnomeSubtitles/Core/Status.cs	(original)
+++ trunk/src/GnomeSubtitles/Ui/Status.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -21,7 +21,7 @@
 using Mono.Unix;
 using SubLib;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Ui {
 
 public class Status {
 	//private Statusbar messageStatus = null;

Modified: trunk/src/GnomeSubtitles/Ui/SubtitleEdit/SubtitleEdit.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/SubtitleEdit/SubtitleEdit.cs	(original)
+++ trunk/src/GnomeSubtitles/Ui/SubtitleEdit/SubtitleEdit.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -22,7 +22,7 @@
 using System.Collections;
 using SubLib;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Ui.SubtitleEdit {
 
 public class SubtitleEdit {
 

Modified: trunk/src/GnomeSubtitles/Ui/SubtitleEdit/SubtitleEditSpinButtons.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/SubtitleEdit/SubtitleEditSpinButtons.cs	(original)
+++ trunk/src/GnomeSubtitles/Ui/SubtitleEdit/SubtitleEditSpinButtons.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -21,7 +21,7 @@
 using SubLib;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Ui.SubtitleEdit {
 
 public class SubtitleEditSpinButtons {
 	private TimingMode timingMode = TimingMode.Frames; //Need to store to prevent from connecting more than 1 handler to the spin buttons. Default is Frames because it's going to be set to Times in the constructor.

Modified: trunk/src/GnomeSubtitles/Ui/SubtitleEdit/SubtitleEditText.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/SubtitleEdit/SubtitleEditText.cs	(original)
+++ trunk/src/GnomeSubtitles/Ui/SubtitleEdit/SubtitleEditText.cs	Sun Jun 15 22:50:00 2008
@@ -20,7 +20,7 @@
 using Gtk;
 using SubLib;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Ui.SubtitleEdit {
 
 public class SubtitleEditText : SubtitleEditTextView {
 

Modified: trunk/src/GnomeSubtitles/Ui/SubtitleEdit/SubtitleEditTextView.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/SubtitleEdit/SubtitleEditTextView.cs	(original)
+++ trunk/src/GnomeSubtitles/Ui/SubtitleEdit/SubtitleEditTextView.cs	Sun Jun 15 22:50:00 2008
@@ -23,7 +23,7 @@
 using System.Collections;
 using System.Runtime.InteropServices;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Ui.SubtitleEdit {
 
 public abstract class SubtitleEditTextView {
 	private TextView textView = null;

Modified: trunk/src/GnomeSubtitles/Ui/SubtitleEdit/SubtitleEditTranslation.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/SubtitleEdit/SubtitleEditTranslation.cs	(original)
+++ trunk/src/GnomeSubtitles/Ui/SubtitleEdit/SubtitleEditTranslation.cs	Sun Jun 15 22:50:00 2008
@@ -20,7 +20,7 @@
 using Gtk;
 using SubLib;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Ui.SubtitleEdit {
 
 public class SubtitleEditTranslation : SubtitleEditTextView {
 

Modified: trunk/src/GnomeSubtitles/Ui/SubtitleView/CellRendererCenteredText.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/SubtitleView/CellRendererCenteredText.cs	(original)
+++ trunk/src/GnomeSubtitles/Ui/SubtitleView/CellRendererCenteredText.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -20,7 +20,7 @@
 using Gdk;
 using Gtk;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Ui.SubtitleView {
 
 /// <summary>Provides a cell renderer that centers text with multiple lines.</summary>
 //TODO It looks like the Alignment property can now be used. It requires GTK# 2.10.

Modified: trunk/src/GnomeSubtitles/Ui/SubtitleView/SelectionIntended.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/SubtitleView/SelectionIntended.cs	(original)
+++ trunk/src/GnomeSubtitles/Ui/SubtitleView/SelectionIntended.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -17,7 +17,7 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Ui.SubtitleView {
 
 /// <summary>
 /// Represents an intended selection.

Modified: trunk/src/GnomeSubtitles/Ui/SubtitleView/SelectionType.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/SubtitleView/SelectionType.cs	(original)
+++ trunk/src/GnomeSubtitles/Ui/SubtitleView/SelectionType.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -17,7 +17,7 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Ui.SubtitleView {
 
 /// <summary>
 /// Represents a selection type.

Modified: trunk/src/GnomeSubtitles/Ui/SubtitleView/SubtitleSelection.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/SubtitleView/SubtitleSelection.cs	(original)
+++ trunk/src/GnomeSubtitles/Ui/SubtitleView/SubtitleSelection.cs	Sun Jun 15 22:50:00 2008
@@ -21,7 +21,7 @@
 using System;
 using SubLib;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Ui.SubtitleView {
 
 public class SubtitleSelection {
 

Modified: trunk/src/GnomeSubtitles/Ui/SubtitleView/SubtitleView.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/SubtitleView/SubtitleView.cs	(original)
+++ trunk/src/GnomeSubtitles/Ui/SubtitleView/SubtitleView.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -22,7 +22,7 @@
 using System;
 using SubLib;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Ui.SubtitleView {
 
 public class SubtitleView {
 	private Subtitles subtitles = null; //A reference to Global.Subtitles, kept here because it's often accessed by CellRenderers.

Modified: trunk/src/GnomeSubtitles/Ui/SubtitleView/Subtitles.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/SubtitleView/Subtitles.cs	(original)
+++ trunk/src/GnomeSubtitles/Ui/SubtitleView/Subtitles.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -21,7 +21,7 @@
 using System;
 using SubLib;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Ui.SubtitleView {
 
 public class Subtitles : SubLib.Subtitles {
 	private ListStore model = new ListStore(typeof(Subtitle));

Copied: trunk/src/GnomeSubtitles/Ui/Video/Exception/PlayerCouldNotOpenVideoException.cs (from r1003, /trunk/src/GnomeSubtitles/Exception/PlayerCouldNotOpenVideoException.cs)
==============================================================================
--- /trunk/src/GnomeSubtitles/Exception/PlayerCouldNotOpenVideoException.cs	(original)
+++ trunk/src/GnomeSubtitles/Ui/Video/Exception/PlayerCouldNotOpenVideoException.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -19,7 +19,7 @@
 
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Ui.Video.Exception {
 
 public class PlayerCouldNotOpenVideoException : ApplicationException {
 

Modified: trunk/src/GnomeSubtitles/Ui/Video/Player.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Video/Player.cs	(original)
+++ trunk/src/GnomeSubtitles/Ui/Video/Player.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -21,7 +21,7 @@
 using Gtk;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Ui.Video {
 
 /* Delegates */
 public delegate void PlayerErrorCaughtFunc (string message); //Represents a function that handles a caught error

Modified: trunk/src/GnomeSubtitles/Ui/Video/PlayerPositionWatcher.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Video/PlayerPositionWatcher.cs	(original)
+++ trunk/src/GnomeSubtitles/Ui/Video/PlayerPositionWatcher.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -21,7 +21,7 @@
 using System;
 using System.IO;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Ui.Video {
 
 /* Delegates */
 public delegate TimeSpan PlayerGetTimeFunc (); //Represents a function that gets a time from the player

Modified: trunk/src/GnomeSubtitles/Ui/Video/Video.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Video/Video.cs	(original)
+++ trunk/src/GnomeSubtitles/Ui/Video/Video.cs	Sun Jun 15 22:50:00 2008
@@ -22,7 +22,7 @@
 using System;
 using System.Text.RegularExpressions;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Ui.Video {
 
 public class Video {
 	private HBox videoArea = null;

Modified: trunk/src/GnomeSubtitles/Ui/Video/VideoFiles.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Video/VideoFiles.cs	(original)
+++ trunk/src/GnomeSubtitles/Ui/Video/VideoFiles.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2007 Pedro Castro
+ * Copyright (C) 2007-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -22,7 +22,7 @@
 using System.IO;
 using System.Text.RegularExpressions;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Ui.Video {
 
 public class VideoFiles {
 	private static Regex videoFilesRegex = new Regex(@"^.*\.((avi)|(mpeg)|(mpg)|(mp4)|(ogm)|(divx)|(xvid)|(mov)|(ogg))$");

Modified: trunk/src/GnomeSubtitles/Ui/Video/VideoPosition.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Video/VideoPosition.cs	(original)
+++ trunk/src/GnomeSubtitles/Ui/Video/VideoPosition.cs	Sun Jun 15 22:50:00 2008
@@ -1,6 +1,6 @@
 /*
  * This file is part of Gnome Subtitles.
- * Copyright (C) 2006-2007 Pedro Castro
+ * Copyright (C) 2006-2008 Pedro Castro
  *
  * Gnome Subtitles is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -22,7 +22,7 @@
 using SubLib;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Ui.Video {
 
 public class VideoPosition {
 	private Player player = null;

Modified: trunk/src/GnomeSubtitles/Ui/Video/VideoSubtitle.cs
==============================================================================
--- /trunk/src/GnomeSubtitles/Video/VideoSubtitle.cs	(original)
+++ trunk/src/GnomeSubtitles/Ui/Video/VideoSubtitle.cs	Sun Jun 15 22:50:00 2008
@@ -21,8 +21,9 @@
 using SubLib;
 using System;
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Ui.Video {
 
+//TODO change name to SubtitleOverlay
 public class VideoSubtitle {
 	private Label label = null;
 	

Copied: trunk/src/GnomeSubtitles/Ui/WidgetNames.cs (from r1003, /trunk/src/GnomeSubtitles/Core/WidgetNames.cs)
==============================================================================
--- /trunk/src/GnomeSubtitles/Core/WidgetNames.cs	(original)
+++ trunk/src/GnomeSubtitles/Ui/WidgetNames.cs	Sun Jun 15 22:50:00 2008
@@ -17,7 +17,7 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
-namespace GnomeSubtitles {
+namespace GnomeSubtitles.Ui {
 
 public class WidgetNames {
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]