internal static ServerModelNode AddServerToHomeView(DappleModel oModel, LayerBuilder oLayer) { const bool Enabled = true; const bool DontAddToHomeViewYet = false; const bool DontSubmitToDappleSearch = false; ServerModelNode result = null; // --- Add the server to the model --- if (oLayer is ArcIMSQuadLayerBuilder) { ArcIMSQuadLayerBuilder castLayer = oLayer as ArcIMSQuadLayerBuilder; result = oModel.AddArcIMSServer(new ArcIMSServerUri(castLayer.ServerURL), Enabled, DontAddToHomeViewYet, DontSubmitToDappleSearch); } else if (oLayer is DAPQuadLayerBuilder) { DAPQuadLayerBuilder castLayer = oLayer as DAPQuadLayerBuilder; result = oModel.AddDAPServer(new DapServerUri(castLayer.ServerURL), Enabled, DontAddToHomeViewYet, DontSubmitToDappleSearch); } else if (oLayer is WMSQuadLayerBuilder) { WMSQuadLayerBuilder castLayer = oLayer as WMSQuadLayerBuilder; result = oModel.AddWMSServer(new WMSServerUri(castLayer.ServerURL), Enabled, DontAddToHomeViewYet, DontSubmitToDappleSearch); } else { throw new ApplicationException("Don't know how to get the server of type " + oLayer.GetType().ToString()); } result.AddToHomeView(); return(result); }
internal ServerModelNode AddWMSServer(WMSServerUri oUri, bool blEnabled, bool blUpdateHomeView, bool blSubmitToDappleSearch) { lock (m_oLock) { // --- Don't add the server if it's already in the model --- ServerModelNode result = m_oRootNode.WMSServers.GetServer(oUri); if (result != null) { return(result); } // --- Add the server --- result = m_oRootNode.WMSServers.AddServer(oUri, blEnabled); // --- Update home view if necessary --- if (blUpdateHomeView) { result.AddToHomeView(); } // --- Submit to DappleSearch if necessary --- if (blSubmitToDappleSearch) { SubmitServerToSearchEngine(oUri.ToBaseUri(), ServerModelNode.ServerType.WMS); } OnServerAdded(EventArgs.Empty); return(result); } }
internal void ToggleServer(ServerModelNode oServer, bool blUpdateHomeView) { lock (m_oLock) { oServer.ToggleEnabled(); if (blUpdateHomeView) { oServer.AddToHomeView(); HomeView.SetServerEnabled(oServer.Uri, oServer.Enabled); } OnServerToggled(EventArgs.Empty); } }
internal void SetFavouriteServer(ServerModelNode oServer, bool blUpdateHomeView) { lock (m_oLock) { if (m_oFavouriteServer == null || !m_oFavouriteServer.Uri.ToBaseUri().Equals(oServer.Uri.ToBaseUri())) { m_oFavouriteServer = m_oRootNode.SetFavouriteServer(oServer.Uri.ToBaseUri()); if (blUpdateHomeView) { oServer.AddToHomeView(); HomeView.SetFavourite(m_oFavouriteServer.Uri); } m_oSelectedNode = m_oFavouriteServer; OnFavouriteServerChanged(EventArgs.Empty); } } }