Exemplo n.º 1
0
        public void DelayedInitialize()
        {
            // This group source gives us a separator for DAPs in the source view.
            SourceManager.GroupSource dap_group = new SourceManager.GroupSource(Catalog.GetString("Devices"), 400);
            ThreadAssist.ProxyToMain(delegate {
                ServiceManager.SourceManager.AddSource(dap_group);
            });

            lock (sync) {
                if (initialized || ServiceManager.HardwareManager == null)
                {
                    return;
                }

                sources             = new Dictionary <string, DapSource> ();
                supported_dap_types = new List <DapPriorityNode> ();

                AddinManager.AddExtensionNodeHandler("/Banshee/Dap/DeviceClass", OnExtensionChanged);

                ServiceManager.HardwareManager.DeviceAdded   += OnHardwareDeviceAdded;
                ServiceManager.HardwareManager.DeviceRemoved += OnHardwareDeviceRemoved;
                ServiceManager.HardwareManager.DeviceCommand += OnDeviceCommand;
                ServiceManager.SourceManager.SourceRemoved   += OnSourceRemoved;
                initialized = true;

                // Now that we've loaded all the enabled DAP providers, load the devices
                foreach (IDevice device in ServiceManager.HardwareManager.GetAllDevices())
                {
                    MapDevice(device);
                }
            }
        }
Exemplo n.º 2
0
        public void DelayedInitialize ()
        {
            // This group source gives us a separator for DAPs in the source view.
            SourceManager.GroupSource dap_group = new SourceManager.GroupSource (Catalog.GetString ("Devices"), 400);
            ThreadAssist.ProxyToMain (delegate {
                ServiceManager.SourceManager.AddSource (dap_group);
            });

            lock (sync) {
                if (initialized || ServiceManager.HardwareManager == null)
                    return;

                sources = new Dictionary<string, DapSource> ();
                supported_dap_types = new List<DapPriorityNode> ();

                AddinManager.AddExtensionNodeHandler ("/Banshee/Dap/DeviceClass", OnExtensionChanged);

                ServiceManager.HardwareManager.DeviceAdded += OnHardwareDeviceAdded;
                ServiceManager.HardwareManager.DeviceRemoved += OnHardwareDeviceRemoved;
                ServiceManager.HardwareManager.DeviceCommand += OnDeviceCommand;
                ServiceManager.SourceManager.SourceRemoved += OnSourceRemoved;
                initialized = true;

                // Now that we've loaded all the enabled DAP providers, load the devices
                foreach (IDevice device in ServiceManager.HardwareManager.GetAllDevices ()) {
                    MapDevice (device);
                }
            }
        }
 static DapService ()
 {
     // This group source gives us a seperator for DAPs in the source view.
     // We add it when we get our first dap source, and then remove it when
     //we lose the last one.
     dap_group = new SourceManager.GroupSource ("Device", 400);
 }