[gnome-subtitles] Implemented translation subtitle reloading



commit 38916fbd9dccb40d98d845c4a82c71cd551a8e83
Author: Andrei Dziahel <develop7 develop7 info>
Date:   Wed Oct 16 21:34:31 2013 +0300

    Implemented translation subtitle reloading

 src/Glade/MainWindow.glade               |   19 +++++++++++++++++++
 src/GnomeSubtitles/Core/EventHandlers.cs |    4 ++++
 src/GnomeSubtitles/Ui/MainUi.cs          |    8 ++++++++
 src/GnomeSubtitles/Ui/Menus.cs           |    1 +
 src/GnomeSubtitles/Ui/WidgetNames.cs     |    1 +
 5 files changed, 33 insertions(+), 0 deletions(-)
---
diff --git a/src/Glade/MainWindow.glade b/src/Glade/MainWindow.glade
index 03a2c76..2019e31 100644
--- a/src/Glade/MainWindow.glade
+++ b/src/Glade/MainWindow.glade
@@ -112,6 +112,25 @@
                               </widget>
                             </child>
                             <child>
+                              <widget class="GtkImageMenuItem" id="fileTranslationReload">
+                                <property name="label" translatable="yes">_Reload</property>
+                                <property name="visible">True</property>
+                                <property name="sensitive">False</property>
+                                <property name="events">GDK_POINTER_MOTION_MASK | 
GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                                <property name="use_underline">True</property>
+                                <property name="use_stock">False</property>
+                                <signal name="activate" handler="OnFileTranslationReload"/>
+                                <accelerator key="r" modifiers="GDK_SHIFT_MASK | GDK_MOD1_MASK" 
signal="activate" />
+                                <child internal-child="image">
+                                  <widget class="GtkImage" id="fileTranslationReloadImage">
+                                    <property name="visible">True</property>
+                                    <property name="stock">gtk-refresh</property>
+                                    <property name="icon-size">1</property>
+                                  </widget>
+                                </child>
+                              </widget>
+                            </child>
+                            <child>
                               <widget class="GtkImageMenuItem" id="fileTranslationSave">
                                 <property name="label" translatable="yes">_Save</property>
                                 <property name="visible">True</property>
diff --git a/src/GnomeSubtitles/Core/EventHandlers.cs b/src/GnomeSubtitles/Core/EventHandlers.cs
index e63a73b..8e9c957 100644
--- a/src/GnomeSubtitles/Core/EventHandlers.cs
+++ b/src/GnomeSubtitles/Core/EventHandlers.cs
@@ -72,6 +72,10 @@ public class EventHandlers {
        public void OnFileTranslationSave (object o, EventArgs args) {
                Base.Ui.TranslationSave();
        }
+       
+       public void OnFileTranslationReload (object o, EventArgs args) {
+               Base.Ui.TranslationReload();
+       }
 
        public void OnFileTranslationSaveAs (object o, EventArgs args) {
                Base.Ui.TranslationSaveAs();
diff --git a/src/GnomeSubtitles/Ui/MainUi.cs b/src/GnomeSubtitles/Ui/MainUi.cs
index c96067d..263636e 100644
--- a/src/GnomeSubtitles/Ui/MainUi.cs
+++ b/src/GnomeSubtitles/Ui/MainUi.cs
@@ -228,6 +228,14 @@ public class MainUi {
                else
                        return TranslationSaveAs();
     }
+       
+       /// <summary>
+       /// Reopens current translation file
+       /// </summary>
+       public void TranslationReload () {
+               //FIXME: encoding is autodetected, which is fine for me, but it should be remembered somewhere
+               OpenTranslation(Base.Document.TranslationFile.Path, -1); 
+       }
 
     /// <summary>Executes a translation SaveAs operation.</summary>
     /// <returns>Whether the translation file was saved or not.</returns>
diff --git a/src/GnomeSubtitles/Ui/Menus.cs b/src/GnomeSubtitles/Ui/Menus.cs
index a459872..5aba66b 100644
--- a/src/GnomeSubtitles/Ui/Menus.cs
+++ b/src/GnomeSubtitles/Ui/Menus.cs
@@ -234,6 +234,7 @@ public class Menus {
                SetSensitivity(WidgetNames.FileTranslationSave, sensitivity);
                SetSensitivity(WidgetNames.FileTranslationSaveAs, sensitivity);
                SetSensitivity(WidgetNames.FileTranslationClose, sensitivity);
+               SetSensitivity(WidgetNames.FileTranslationReload, sensitivity);
                SetSensitivity(WidgetNames.ToolsSetTranslationLanguage, sensitivity);
 
                bool oneSubtitleSelected = (Core.Base.Ui.View.Selection.Count == 1);
diff --git a/src/GnomeSubtitles/Ui/WidgetNames.cs b/src/GnomeSubtitles/Ui/WidgetNames.cs
index 47cb37f..cb9a5d5 100644
--- a/src/GnomeSubtitles/Ui/WidgetNames.cs
+++ b/src/GnomeSubtitles/Ui/WidgetNames.cs
@@ -34,6 +34,7 @@ public class WidgetNames {
        public const string FileProperties = "fileProperties";
        public const string FileTranslationNew = "fileTranslationNew";
        public const string FileTranslationOpen = "fileTranslationOpen";
+       public const string FileTranslationReload = "fileTranslationReload";
        public const string FileTranslationSave = "fileTranslationSave";
        public const string FileTranslationSaveAs = "fileTranslationSaveAs";
        public const string FileTranslationClose = "fileTranslationClose";


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