Example #1
0
 public ITPadApp GetAppInstance(TPadApplicationDescriptor descriptor, ITPadAppContainer container, ITPadAppController controller, TPadCore core, TPadLauncherSettings settings)
 {
     InfCaptureApp capture = new InfCaptureApp(core, container, controller, descriptor.AppUUID);
       capture.Conditions = Conditions;
       capture.ExperimentalOrder = ExperimentalOrder;
       capture.Activate(settings.Context);
       return capture;
 }
Example #2
0
 public TPadLauncherSettings GetSettings(TPadLauncherSettings settings)
 {
     throw new NotImplementedException();
 }
Example #3
0
 public ITPadApp GetAppInstance(TPadApplicationDescriptor descriptor, ITPadAppContainer container, ITPadAppController controller, TPadCore core, TPadLauncherSettings settings)
 {
     InfSeekingApp seeker = new InfSeekingApp(core, container, controller, descriptor.AppUUID);
       seeker.Activate(settings.Context);
       return seeker;
 }
Example #4
0
 public ITPadApp GetAppInstance(TPadApplicationDescriptor descriptor, ITPadAppContainer container, ITPadAppController controller, TPadCore core, TPadLauncherSettings settings)
 {
     QReaderApp reader = new QReaderApp(core, container, controller, descriptor.AppUUID);
       reader.Activate(settings.Context);
       return reader;
 }
Example #5
0
 public ITPadApp GetAppInstance(TPadApplicationDescriptor descriptor, ITPadAppContainer container, ITPadAppController controller, TPadCore core, TPadLauncherSettings settings)
 {
     InfProviderApp provider = new InfProviderApp(core, container, controller, descriptor);
       provider.Activate(settings.Context);
       return provider;
 }
Example #6
0
 public TPadLauncherSettings GetSettings(TPadLauncherSettings settings)
 {
     return settings;
 }
Example #7
0
        public ITPadApp GetAppInstance(TPadApplicationDescriptor descriptor, ITPadAppContainer container, ITPadAppController controller, TPadCore core, TPadLauncherSettings settings)
        {
            ActiveReaderApp appInstance = new ActiveReaderApp(core, container, controller, descriptor.AppUUID);

              return appInstance;
        }
Example #8
0
 public ITPadApp GetAppInstance(TPadApplicationDescriptor descriptor, ITPadAppContainer container, ITPadAppController controller, TPadCore core, TPadLauncherSettings settings)
 {
     PhotoAlbumApp photoAlbum = new PhotoAlbumApp(core, container, controller, descriptor.AppUUID);
       photoAlbum.Activate(settings.Context);
       return photoAlbum;
 }
Example #9
0
 public ITPadApp GetAppInstance(TPadApplicationDescriptor descriptor, ITPadAppContainer container, ITPadAppController controller, TPadCore core, TPadLauncherSettings settings)
 {
     GraphExplorerApp graphExplorer = new GraphExplorerApp(core, container, controller, descriptor.AppUUID);
       return graphExplorer;
 }
Example #10
0
 public ITPadApp GetAppInstance(TPadApplicationDescriptor descriptor, ITPadAppContainer container, ITPadAppController controller, TPadCore core, TPadLauncherSettings settings)
 {
     CalculatorApp calculator = new CalculatorApp(core, container, controller, descriptor.AppUUID);
       calculator.Activate(settings.Context);
       return calculator;
 }
Example #11
0
        private void LaunchApp(TPadApplicationDescriptor descriptor, Dictionary<String, Object> appContext = null, bool foreground = true)
        {
            if (descriptor == null)
            return;

              TPadLauncherSettings settings = new TPadLauncherSettings();
              settings.Context = appContext;

              ITPadApp application = descriptor.Launcher.GetAppInstance(descriptor, Container, Controller, Core, settings);
              descriptor.Instance = application;
              descriptor.Instance.Closed += application_Closed;
              descriptor.Instance.IsTopApp += application_IsTopApp;
              descriptor.Instance.RequestFocus += application_RequestFocus;
              descriptor.Instance.RequestAction += application_RequestAction;

              if (descriptor.AppType == typeof(InfSeeking.InfSeekingApp))
              {
            (descriptor.Instance as InfSeeking.InfSeekingApp).GetTarget += ShellApp_GetTarget;
            (descriptor.Instance as InfSeeking.InfSeekingApp).SendResultOK += ShellApp_SendResultOK;
            (descriptor.Instance as InfSeeking.InfSeekingApp).SendErrorData += ShellApp_SendErrorData;
            (descriptor.Instance as InfSeeking.InfSeekingApp).SearchStarted += ShellApp_SearchStarted;
              }
              else if (descriptor.AppType == typeof(InfSeeking.InfProviderApp))
              {
            (descriptor.Instance as InfSeeking.InfProviderApp).GetTarget += ShellApp_GetTarget;
              }

              descriptor.RunningSide = Core.Device.FlippingSide;

              RunningApps.Add(descriptor);

              Container.LoadTPadApp(application, foreground);
        }
Example #12
0
        //Receives messages for all the possible applications and checks there is a running version of the app
        // This class acts as the pre-delivery listener
        public void MessageReceived(TransportMessage message, string rawMessage)
        {
            //Searchers all the networked apps by seeing if they implement the ITransportListener class
              var networkedApps = Applications.Where(app => app.AppType.GetInterfaces().Contains(typeof(ITransportListener)));

              //Selects the ones that listen to the particular type of message
              var targetApps = networkedApps.Where(app =>
              {
            TPadLauncherSettings settings = new TPadLauncherSettings();
            settings = app.Launcher.GetSettings(settings);
            if (!settings.Context.ContainsKey("ITransportListener.MessageType"))
              return false;

            String messageType = settings.Context["ITransportListener.MessageType"] as String;
            if (messageType == null)
              return false;

            int type = Int32.Parse(messageType);
            if (type == message.MessageType)
              return true;

            return false;
              });

              //Checks whether there is a runtime version of the app
              var notRunning = targetApps.Where(app => !RunningApps.Contains(app));

              Dispatcher.Invoke(DispatcherPriority.Render,
            (Action)delegate()
            {
              //Launches all the instances that are not already running
              foreach (TPadApplicationDescriptor descriptor in notRunning)
            LaunchApp(descriptor, null, false);
            });
        }