public void Dispose()
 {
     // Check if we've binded to an event before, and if so, the source is still available
     if ((Parser != null) && (languageChangedEvent != null))
     {
         // Unbind to the event
         Parser.OnAfterLanguageChanged -= languageChangedEvent;
         languageChangedEvent           = null;
     }
 }
        private void SetupLabelNow(TranslationManager parser)
        {
            // Confirm the parser is ready
            if ((parser != null) && (parser.IsReady == true))
            {
                // Unbind to the last event
                OnDestroy();

                // Bind to the parser's event
                languageChangedEvent           = new TranslationManager.LanguageChanged(AfterLanguageChanged);
                parser.OnAfterLanguageChanged += languageChangedEvent;
            }

            // Update the label
            UpdateLabelNow(parser);
        }