private void OnServerChange(int arg0)
 {
     if (arg0 == 0)
     {
         // Stop
         if (m_deviceTarget != null)
         {
             JavaOMI.UnregisterShortcut(m_name.text);
             m_deviceTarget.StopThread();
         }
         m_deviceTarget = null;
         SetInteractable(true);
     }
     else if (arg0 == 1 || arg0 == 2)
     {
         // Run
         if (m_deviceTarget == null)
         {
             m_deviceTarget = new JavaOMI(new JavaOpenMacroCommunicationProcess(GetServerIp(), GetServerPort(), m_threadPriority));
             if (!JavaOMI.IsServerRegistered(m_name.text))
             {
                 JavaOMI.RegisterShortcut(m_name.text, m_deviceTarget, true);
             }
         }
         m_deviceTarget.SetPause(arg0 == 2);
         SetInteractable(false);
     }
     SavePrefData(m_saveOnHardrive);
 }