示例#1
0
        }// GetTimeUnitFromTimeString

        private void PutValuesinPage()
        {
            String sSettingCommand = "ExposedTypes";

            if (m_sConfigFile != null)
            {
                sSettingCommand += "," + m_sConfigFile;
            }

            m_et = (ExposedTypes)CConfigStore.GetSetting(sSettingCommand);

            DataRow newRow;

            // Now build the Well Known objects table
            for (int i = 0; i < m_et.scWellKnownMode.Count; i++)
            {
                newRow = m_dtObjectURIs.NewRow();
                // Find a good name

                String sName = m_et.scWellKnownObjectName[i];
                if (sName == null || sName.Length == 0)
                {
                    // We'll show the type instead
                    sName = m_et.scWellKnownType[i];
                }

                newRow["Object Name"] = sName;
                newRow["URI"]         = m_et.scWellKnownUri[i];

                m_dtObjectURIs.Rows.Add(newRow);
            }
        }// PutValuesinPage
        }// InsertPropSheetPageControls

        //-------------------------------------------------
        // PutValuesinPage
        //
        // This function put data onto the property page
        //-------------------------------------------------
        private void PutValuesinPage()
        {
            // Get info that we'll need from the node
            CNode node = CNodeManager.GetNode(m_iCookie);
            // This should be ok now, but if we need this functionality
            // off of different nodes.....
            CVersionPolicy vp = (CVersionPolicy)node;



            m_txtAssemName.Text      = m_bri.Name;
            m_txtPublicKeyToken.Text = m_bri.PublicKeyToken;

            // Figure out the current Publisher Policy Setting

            String sGetSettingString = "PublisherPolicyFor" + m_bri.Name + "," + m_bri.PublicKeyToken;

            // If we are getting this from an App config file, let's add that info
            m_sConfigFile = vp.ConfigFile;

            if (m_sConfigFile != null)
            {
                sGetSettingString += "," + m_sConfigFile;
                bool fUsePubPolicy = (bool)CConfigStore.GetSetting(sGetSettingString);
                m_chkPubPolicy.Checked = fUsePubPolicy;
            }
            // If this isn't an app config file, we don't want to show the
            // 'Apply Publisher Policy' Checkbox or description
            else
            {
                m_chkPubPolicy.Visible           = false;
                m_lblPublisherPolicyHelp.Visible = false;
            }
        }// PutValuesinPage
        }// AddMenuItems

        internal override void MenuCommand(int nCommandID, Object oResultItem)
        {
            if (nCommandID == COMMANDS.ADD_ASSEMBLY)
            {
                CFusionNoVersionDialog            fd = new CFusionNoVersionDialog();
                System.Windows.Forms.DialogResult dr = fd.ShowDialog();
                if (dr == System.Windows.Forms.DialogResult.OK)
                {
                    AddAssembly(fd.Assem);
                }
            }

            else if (nCommandID == COMMANDS.SHOW_LISTVIEW)
            {
                m_oResults = this;
                RefreshResultView();
                m_fShowHTMLPage = false;
            }

            else if (nCommandID == COMMANDS.SHOW_TASKPAD)
            {
                m_oResults      = m_taskPad;
                m_fShowHTMLPage = true;

                // The HTML pages comes displayed with this checkbox marked. Make
                // sure we update the xml setting
                CConfigStore.SetSetting("ShowHTMLForFullTrustAssem", "yes");
                RefreshResultView();
            }
        }// MenuCommand
        }// onRestoreView

        internal override void TaskPadTaskNotify(Object arg, Object param, IConsole2 con, CData com)
        {
            if ((int)arg == 1)
            {
                CConfigStore.SetSetting("ShowHTMLForSharedAssem", (bool)param?"yes":"no");
                m_fShowHTMLPage = (bool)param;

                // We'll change the result object but we won't refresh our result view
                // because the user doesn't necesarily want that to happen. However,
                // the next time the user visits this node, they will see the new result
                // view
                m_oResults = m_fShowHTMLPage?(Object)m_taskPad:(Object)this;
            }
            else if ((int)arg == 0)
            {
                m_oResults = this;
                RefreshResultView();
            }
            else if ((int)arg == 2)
            {
                MenuCommand(COMMANDS.ADD_GACASSEMBLY, null);
                // Inform our Command History that we did this
                CCommandHistory.CommandExecuted(new CDO(this), COMMANDS.ADD_GACASSEMBLY);
            }
        }// TaskPadTaskNotify
        }// PSet

        internal override void TaskPadTaskNotify(Object arg, Object param, IConsole2 con, CData com)
        {
            if ((int)arg == 0)
            {
                m_oResults = this;
                RefreshResultView();
            }
            else if ((int)arg == 1)
            {
                MenuCommand(COMMANDS.ADD_PERMISSIONS);
            }
            else if ((int)arg == 2)
            {
                OpenMyPropertyPage();
            }
            else if ((int)arg == 3)
            {
                CConfigStore.SetSetting("ShowHTMLForPermissionSet", (bool)param?"yes":"no");
                m_fShowHTMLPage = (bool)param;

                // We'll change the result object but we won't refresh our result view
                // because the user doesn't necesarily want that to happen. However,
                // the next time the user visits this node, they will see the new result
                // view
                m_oResults = m_fShowHTMLPage?(Object)m_taskpad:(Object)this;
            }
        }// TaskPadTaskNotify
示例#6
0
        }// PutValuesinPage

        //-------------------------------------------------
        // ApplyData
        //
        // This function gets called when the user clicks the
        // OK or Apply button. We should take all our information
        // from the wizard and "Make it so".
        //-------------------------------------------------
        internal override bool ApplyData()
        {
            // Set the garbage collector setting
            String sGCSetting;

            sGCSetting = (m_radNormal.Checked == true)?"false":"true";

            if (!CConfigStore.SetSetting("GarbageCollector," + m_appFiles.sAppConfigFile, sGCSetting))
            {
                return(false);
            }

            // Set the binding mode
            String sBindingSetting;

            sBindingSetting = (m_chkSafeBinding.Checked == true)?"yes":"no";

            if (!CConfigStore.SetSetting("BindingMode," + m_appFiles.sAppConfigFile, sBindingSetting))
            {
                return(false);
            }

            // Set the Search Path
            if (!CConfigStore.SetSetting("SearchPath," + m_appFiles.sAppConfigFile, m_txtSearchPath.Text))
            {
                return(false);
            }

            /*
             * // Set the required version of the runtime
             * CConfigStore.SetSetting("RequiredRuntimeVersion," + m_appFiles.sAppConfigFile, m_cbRuntimeVersion.Text);
             */
            return(true);
        }// ApplyData
        }// AddMenuItems

        internal override void MenuCommand(int nCommandID, Object oResultItem)
        {
            if (nCommandID == COMMANDS.DUPLICATE_PERMISSIONSET)
            {
                NamedPermissionSet nps = (NamedPermissionSet)m_psetWrapper.PSet.Copy();

                String sBaseName = nps.Name;

                nps.Name = String.Format(CResourceStore.GetString("CSinglePermissionSet:PrependtoDupPSets"), nps.Name);
                int nCounter = 1;
                // make sure it's not already used
                while (Security.isPermissionSetNameUsed(m_pl, nps.Name))
                {
                    nCounter++;
                    nps.Name = String.Format(CResourceStore.GetString("CSinglePermissionSet:NumPrependtoDupPSets"), nCounter.ToString(), sBaseName);
                }


                CNode node = CNodeManager.GetNodeByHScope(ParentHScopeItem);
                CSinglePermissionSet newNode = ((CPermissionSet)node).AddPermissionSet(nps);
                newNode.SecurityPolicyChanged();
                // Put the selection on the new permission set we just created
                CNodeManager.SelectScopeItem(newNode.HScopeItem);
            }

            else if (nCommandID == COMMANDS.VIEW_PERMISSION)
            {
                int iResultItem = (int)oResultItem - 1;
                // Pop up the Dialog Box for this permission
                (new CReadOnlyPermission((IPermission)m_alPermissions[iResultItem])).ShowDialog();
            }

            else if (nCommandID == COMMANDS.ADD_PERMISSIONS)
            {
                CAddPermissionsWizard wiz = new CAddPermissionsWizard(m_psetWrapper);
                wiz.LaunchWizard(Cookie);
                if (wiz.didFinish)
                {
                    SecurityPolicyChanged();
                    GenerateGivenPermissionsStringList();
                    CNodeManager.Console.SelectScopeItem(HScopeItem);
                }
            }
            else if (nCommandID == COMMANDS.SHOW_LISTVIEW)
            {
                m_oResults = this;
                RefreshResultView();
                m_fShowHTMLPage = false;
            }

            else if (nCommandID == COMMANDS.SHOW_TASKPAD)
            {
                m_oResults      = m_taskpad;
                m_fShowHTMLPage = true;
                // The HTML pages comes displayed with this checkbox marked. Make
                // sure we update the xml setting
                CConfigStore.SetSetting("ShowHTMLForPermissionSet", "yes");
                RefreshResultView();
            }
        }// MenuCommand
示例#8
0
        }// TaskPadTaskNotify

        internal bool AddConfiguredAssembly(BindingRedirInfo bri)
        {
            // Let's trace through our parents looking for an Application node
            // If this node's parent is an Application node, then we know we're
            // configuring assemblies on a per app basis
            CNode node = null;

            if (ParentHScopeItem != -1)
            {
                node = CNodeManager.GetNodeByHScope(ParentHScopeItem);
            }

            String sPostFix = "";

            // If this is an application node, make sure we tell the config store
            // about it
            if (node is CApplication)
            {
                sPostFix = "," + ((CApplication)node).AppConfigFile;
            }

            if (!CConfigStore.SetSetting("ConfiguredAssemblies" + sPostFix, bri))
            {
                return(false);
            }

            // Now we'll tell out node to Refresh itself,
            // but only if we're showing the list view
            if (m_oResults == this)
            {
                RefreshResultView();
            }

            return(true);
        }// AddConfiguredAssembly
示例#9
0
        }// onDoubleClick

        internal override int onDelete(Object o)
        {
            String sMessage;

            if (o is ArrayList)
            {
                sMessage = CResourceStore.GetString("CVersionPolicy:ConfirmDeleteConfig");
            }
            else
            {
                sMessage = String.Format(CResourceStore.GetString("CVersionPolicy:ConfirmDeleteSingleConfig"), ((BindingRedirInfo)o).Name);
            }

            int nRes = MessageBox(sMessage,
                                  CResourceStore.GetString("CVersionPolicy:ConfirmDeleteConfigTitle"),
                                  MB.ICONQUESTION | MB.YESNO);


            if (nRes == MB.IDYES)
            {
                // Let's trace through our parents looking for an Application node
                CNode node = CNodeManager.GetNode(m_iCookie);
                // If this node's parent is an Application node, then we know we're
                // configuring assemblies on a per app basis
                int iParentHScope = node.ParentHScopeItem;
                if (iParentHScope != -1)
                {
                    node = CNodeManager.GetNodeByHScope(iParentHScope);
                }

                String sPostFix = "";
                // If this is an application node, make sure we tell the config store
                // about it
                if (node is CApplication)
                {
                    sPostFix = "," + ((CApplication)node).AppConfigFile;
                }

                if (o is ArrayList)
                {
                    ArrayList al   = (ArrayList)o;
                    int       nLen = al.Count;
                    for (int i = 0; i < nLen; i++)
                    {
                        int iResultNum = ((int)al[i]) - 1;

                        CConfigStore.SetSetting("ConfiguredAssembliesDelete" + sPostFix, ((BindingRedirInfo)m_ol[iResultNum]));
                    }
                }
                else
                {
                    CConfigStore.SetSetting("ConfiguredAssembliesDelete" + sPostFix, (BindingRedirInfo)o);
                }
                // Now we'll Refresh ourselves
                RefreshResultView();
            }
            return(HRESULT.S_OK);
        }// onDelete
        }// onChange

        internal override bool ApplyData()
        {
            if (m_sConfigFile != null)
            {
                String sSetSettingString = "PublisherPolicyFor" + m_bri.Name + "," + m_bri.PublicKeyToken;
                sSetSettingString += "," + m_sConfigFile;
                return(CConfigStore.SetSetting(sSetSettingString, m_chkPubPolicy.Checked));
            }
            return(true);
        } // ApplyData
示例#11
0
        }// CompareBindingRedirInfo

        internal override void RefreshResultView()
        {
            if (m_sConfigFile == null)
            {
                m_ol = (ArrayList)CConfigStore.GetSetting("ConfiguredAssemblies");
            }
            else
            {
                m_ol = (ArrayList)CConfigStore.GetSetting("ConfiguredAssemblies," + m_sConfigFile);
            }

            base.RefreshResultView();
        }// RefreshResultView
示例#12
0
        }// onVisibleChange

        private void PutValuesinPage()
        {
            m_nPrevSelection = -1;

            String sSettingCommand = "RemotingChannels";

            if (m_sConfigFile != null)
            {
                sSettingCommand += "," + m_sConfigFile;
            }
            try
            {
                m_alRemotingChannels = (ArrayList)CConfigStore.GetSetting(sSettingCommand);

                m_cbChannel.Items.Clear();
                for (int i = 0; i < m_alRemotingChannels.Count; i++)
                {
                    // Go searching for the "displayname" attribute
                    int j;
                    for (j = 0; j < ((RemotingChannel)m_alRemotingChannels[i]).scAttributeName.Count; j++)
                    {
                        if (((RemotingChannel)m_alRemotingChannels[i]).scAttributeName[j].ToLower(CultureInfo.InvariantCulture).Equals("displayname"))
                        {
                            m_cbChannel.Items.Add(((RemotingChannel)m_alRemotingChannels[i]).scAttributeValue[j]);
                            break;
                        }
                    }
                    // This is funny... this channel didn't have a name....
                    if (j == ((RemotingChannel)m_alRemotingChannels[i]).scAttributeName.Count)
                    {
                        m_cbChannel.Items.Add(CResourceStore.GetString("<no name>"));
                    }
                }

                if (m_alRemotingChannels.Count > 0)
                {
                    m_cbChannel.SelectedIndex = 0;
                    onChannelChange(null, null);
                }
                else
                {
                    m_cbChannel.Text = CResourceStore.GetString("<none>");
                }
            }
            catch (Exception)
            {
                // An exception will get thrown if there was an error reading
                // the remoting config info. Don't allow the property page to open.
                CloseSheet();
            }
        }// PutValuesinPage
示例#13
0
        }// AddMenuItems

        internal override void MenuCommand(int iCommandID, Object oResultNum)
        {
            if (iCommandID == COMMANDS.ADD_ASSEMBLY)
            {
                CApplicationDepends appDepends = null;
                // Let's trace through our parents looking for an Application node
                CNode node = CNodeManager.GetNode(m_iCookie);
                // If this node's parent is an Application node, then we know we're
                // configuring assemblies on a per app basis
                int iParentHScope = node.ParentHScopeItem;
                if (iParentHScope != -1)
                {
                    node = CNodeManager.GetNodeByHScope(iParentHScope);
                }

                // If this is an application node, make sure we tell the config store
                // about it
                if (node is CApplication)
                {
                    // Cool, we have a dependent assemblies node
                    appDepends = ((CApplication)node).AppDependsNode;
                }

                CConfigAssemWizard wiz = new CConfigAssemWizard(appDepends);
                wiz.LaunchWizard(Cookie);
                if (wiz.NewAssembly != null)
                {
                    if (AddConfiguredAssembly(wiz.NewAssembly))
                    {
                        onDoubleClick(wiz.NewAssembly);
                    }
                }
            }
            else if (iCommandID == COMMANDS.SHOW_LISTVIEW)
            {
                m_oResults = this;
                RefreshResultView();
                m_fShowHTMLPage = false;
            }

            else if (iCommandID == COMMANDS.SHOW_TASKPAD)
            {
                m_oResults      = m_taskPad;
                m_fShowHTMLPage = true;

                // The HTML pages comes displayed with this checkbox marked. Make
                // sure we update the xml setting
                CConfigStore.SetSetting("ShowHTMLForConfigAssem", "yes");
                RefreshResultView();
            }
        }// MenuCommand
示例#14
0
        }// ValidateData

        internal override bool ApplyData()
        {
            // Make sure we've displayed this page first
            if (m_dg != null)
            {
                // Let's build a CodebaseLocations structure and put all our data in it.
                CodebaseLocations cbl = new CodebaseLocations();
                cbl.scVersion  = new StringCollection();
                cbl.scCodeBase = new StringCollection();

                // Let's jump to a new cell, to make sure the current cell we
                // were editing has it's changes 'saved'
                m_dg.CurrentCell = new DataGridCell(0, 1);
                m_dg.CurrentCell = new DataGridCell(0, 0);


                // We need to do a try/catch block here since we getting the count of
                // rows from the data table isn't completely accurate, so we'll just loop
                // until the data grid throws us an exception about accessing an invalid row.
                int nRow = 0;

                while (nRow <= m_dt.Rows.Count)
                {
                    if (isValidRow(nRow))
                    {
                        cbl.scVersion.Add((String)m_dg[nRow, 0]);
                        cbl.scCodeBase.Add((String)m_dg[nRow, 1]);
                    }
                    nRow++;
                }

                String sSetSettingString = "CodeBasesFor" + m_bri.Name + "," + m_bri.PublicKeyToken;
                if (m_sConfigFile != null)
                {
                    sSetSettingString += "," + m_sConfigFile;
                }


                if (!CConfigStore.SetSetting(sSetSettingString, cbl))
                {
                    return(false);
                }

                CNodeManager.GetNode(m_iCookie).RefreshResultView();


                return(true);
            }
            return(false);
        }// ApplyData
示例#15
0
        }// getNumColumns

        public override int getNumRows()
        {
            if (m_ol == null)
            {
                if (m_sConfigFile == null)
                {
                    m_ol = (ArrayList)CConfigStore.GetSetting("ConfiguredAssemblies");
                }
                else
                {
                    m_ol = (ArrayList)CConfigStore.GetSetting("ConfiguredAssemblies," + m_sConfigFile);
                }
            }
            return(m_ol.Count);
        }// GetNumRows
示例#16
0
        }// onChannelChange

        internal override bool ApplyData()
        {
            m_dg.CurrentCell = new DataGridCell(0, 0);
            // This call will copy all the current table stuff into our ArrayList
            onChannelChange(null, null);

            String sSettingCommand = "RemotingChannels";

            if (m_sConfigFile != null)
            {
                sSettingCommand += "," + m_sConfigFile;
            }

            return(CConfigStore.SetSetting(sSettingCommand, m_alRemotingChannels));
        } // ApplyData
示例#17
0
        }// InsertPropSheetPageControls

        private void PutValuesinPage()
        {
            m_chkUseSecurity.Checked = (bool)CConfigStore.GetSetting("SecurityEnabled");

            String setting = (String)CConfigStore.GetSetting("GarbageCollector");

            if (setting != null && setting.ToLower(CultureInfo.InvariantCulture).Equals("true"))
            {
                m_radConcurrent.Checked = true;
            }
            else
            {
                m_radNormal.Checked = true;
            }
        }// PutValuesinPage
示例#18
0
        }// PutValuesinPage

        internal override bool ApplyData()
        {
            if (!CConfigStore.SetSetting("SecurityEnabled", m_chkUseSecurity.Checked))
            {
                return(false);
            }

            if (!CConfigStore.SetSetting("GarbageCollector", m_radConcurrent.Checked?"true":"false"))
            {
                return(false);
            }

            PutValuesinPage();

            return(true);
        }// ApplyData
示例#19
0
        }// ValidateData

        private void PutValuesinPage()
        {
            m_nPrevSelection = -1;

            String sSettingCommand = "RemotingApplications";

            if (m_sConfigFile != null)
            {
                sSettingCommand += "," + m_sConfigFile;
            }

            try
            {
                m_alRemotingAppInfo = (ArrayList)CConfigStore.GetSetting(sSettingCommand);

                m_cbRemoteApps.Items.Clear();
                for (int i = 0; i < m_alRemotingAppInfo.Count; i++)
                {
                    String sName = ((RemotingApplicationInfo)m_alRemotingAppInfo[i]).sName;
                    if (sName == null || sName.Length == 0)
                    {
                        sName = CResourceStore.GetString("CRemotingProp1:NoDisplayName");
                    }

                    m_cbRemoteApps.Items.Add(sName);
                }
                if (m_alRemotingAppInfo.Count > 0)
                {
                    m_cbRemoteApps.DropDownStyle = ComboBoxStyle.DropDownList;
                    m_cbRemoteApps.SelectedIndex = 0;
                    onRemotingAppChange(null, null);
                }
                else
                {
                    m_cbRemoteApps.Text      = CResourceStore.GetString("CRemotingProp1:NoRemoteApps");
                    m_cbRemoteApps.Enabled   = false;
                    m_txtAppLocation.Enabled = false;
                }
            }
            catch (Exception)
            {
                // An exception will get thrown if there was an error reading
                // the remoting config info. Don't allow the property page to open.
                CloseSheet();
            }
        }// PutValuesinPage
示例#20
0
        }// onDelete

        internal override void Showing()
        {
            if (!m_fReadShowHTML)
            {
                m_fShowHTMLPage = ((String)CConfigStore.GetSetting("ShowHTMLForConfigAssem")).Equals("yes");

                if (m_fShowHTMLPage)
                {
                    m_oResults = m_taskPad;
                }
                else
                {
                    m_oResults = this;
                }

                m_fReadShowHTML = true;
            }
        }// Showing
示例#21
0
        }// Showing

        internal override int onDelete(Object o)
        {
            int nRes = MessageBox(CResourceStore.GetString("CApplication:VerifyRemoveApp"),
                                  CResourceStore.GetString("CApplication:VerifyRemoveAppTitle"),
                                  MB.ICONQUESTION | MB.YESNO);

            if (nRes == MB.IDYES)
            {
                // Grab our parent node and tell him to remove us
                CNodeManager.GetNodeByHScope(ParentHScopeItem).RemoveSpecificChild(Cookie);
                // Change the XML...
                if (CConfigStore.SetSetting("RemoveAppConfigFile", m_appInfo))
                {
                    return(HRESULT.S_OK);
                }
            }
            return(HRESULT.S_FALSE);
        }// onDelete
示例#22
0
        }// AddMenuItems

        internal override void MenuCommand(int iCommandID, Object oResultItem)
        {
            if (iCommandID == COMMANDS.FIND_DEPENDENTASSEMBLIES)
            {
                // Ok, let's see if we're currently being worked on....
                m_thread.Suspend();
                m_taskPadWaiting = new CGenericTaskPad(this, "LOADINGDEPENDASSEM_HTML");
                m_oResults       = m_taskPadWaiting;
                RefreshResultView();

                // If the thread is currently working on this node, m_ThreadNode will be this node.
                // The second case is a little more tricky. If this node is next in line, there's
                // the possibility that our thread that handles this will be a few instructions
                // away from getting him. We won't bother working with it then.
                if (!m_fIKnowMyDependencies && m_ThreadNode != this && m_alNodes[0] != this)
                {
                    FindDependenciesForThisNode(this);
                    m_fIKnowMyDependencies = true;
                }
                // Our thread is working on it... let's give it high priority...
                else
                {
                    m_thread.Priority = ThreadPriority.Highest;
                }

                m_thread.Resume();
            }
            else if (iCommandID == COMMANDS.SHOW_LISTVIEW && m_fAllowListView)
            {
                m_oResults = this;
                RefreshResultView();
                m_fShowHTMLPage = false;
            }

            else if (iCommandID == COMMANDS.SHOW_TASKPAD)
            {
                m_oResults      = m_taskPad;
                m_fShowHTMLPage = true;
                // The HTML pages comes displayed with this checkbox marked. Make
                // sure we update the xml setting
                CConfigStore.SetSetting("ShowHTMLForDependAssem", "yes");
                RefreshResultView();
            }
        }// MenuCommand
示例#23
0
        }// onDeleteEntireRow

        private void PutValuesinPage()
        {
            // Get info that we'll need from the node
            CNode node = CNodeManager.GetNode(m_iCookie);
            // This should be ok now, but if we need this functionality
            // off of different nodes.....
            CVersionPolicy vp = (CVersionPolicy)node;


            String sGetSettingString = "BindingPolicyFor" + m_bri.Name + "," + m_bri.PublicKeyToken;

            // If we are getting this from an App config file, let's add that info
            m_sConfigFile = vp.ConfigFile;

            if (m_sConfigFile != null)
            {
                sGetSettingString += "," + m_sConfigFile;
            }

            BindingPolicy bp = (BindingPolicy)CConfigStore.GetSetting(sGetSettingString);

            int iLen = bp.scBaseVersion.Count;

            for (int i = 0; i < iLen; i++)
            {
                DataRow newRow;
                newRow = m_dt.NewRow();
                newRow["Requested Version"] = bp.scBaseVersion[i];
                newRow["New Version"]       = bp.scRedirectVersion[i];
                m_dt.Rows.Add(newRow);
            }

            // We want to have at least 1 row
            while (m_dt.Rows.Count < 1)
            {
                DataRow newRow;
                newRow = m_dt.NewRow();
                newRow["Requested Version"] = "";
                newRow["New Version"]       = "";
                m_dt.Rows.Add(newRow);
            }
            m_dg.CurrentCell = new DataGridCell(iLen, 0);
        }// PutValuesinPage
        }// onDelete

        internal override void TaskPadTaskNotify(Object arg, Object param, IConsole2 con, CData com)
        {
            if ((int)arg == 1)
            {
                CConfigStore.SetSetting("ShowHTMLForFullTrustAssem", (bool)param?"yes":"no");
                m_fShowHTMLPage = (bool)param;

                // We'll change the result object but we won't refresh our result view
                // because the user doesn't necesarily want that to happen. However,
                // the next time the user visits this node, they will see the new result
                // view
                m_oResults = m_fShowHTMLPage?(Object)m_taskPad:(Object)this;
            }
            else if ((int)arg == 0)
            {
                m_oResults = this;
                RefreshResultView();
            }
        }// TaskPadTaskNotify
示例#25
0
        }// onRemotingAppChange

        internal override bool ApplyData()
        {
            // Get our currently displayed data into our array list
            if (m_alRemotingAppInfo.Count > 0)
            {
                m_dg.CurrentCell = new DataGridCell(0, 0);
                m_dg.CurrentCell = new DataGridCell(0, 1);
            }

            onRemotingAppChange(null, null);
            String sSettingCommand = "RemotingApplications";

            if (m_sConfigFile != null)
            {
                sSettingCommand += "," + m_sConfigFile;
            }

            return(CConfigStore.SetSetting(sSettingCommand, m_alRemotingAppInfo));
        } // ApplyData
        }// MenuCommand

        internal override void Showing()
        {
            // Figure out what to display
            if (!m_fReadShowHTML)
            {
                m_taskPad = new CGenericTaskPad(this, "FULLTRUSTASSEM_HTML");

                m_fShowHTMLPage = ((String)CConfigStore.GetSetting("ShowHTMLForFullTrustAssem")).Equals("yes");

                if (m_fShowHTMLPage)
                {
                    m_oResults = m_taskPad;
                }
                else
                {
                    m_oResults = this;
                }
                m_fReadShowHTML = true;
            }
        }// Showing
        }// onRename

        internal override void Showing()
        {
            // See if we've read from the XML file yet whether we're supposed to
            // show the HTML file
            if (!m_fReadShowHTML)
            {
                // Now tell my taskpad that I'm ready....
                m_fShowHTMLPage = ((String)CConfigStore.GetSetting("ShowHTMLForPermissionSet")).Equals("yes");

                if (m_fShowHTMLPage)
                {
                    m_oResults = m_taskpad;
                }
                else
                {
                    m_oResults = this;
                }

                m_fReadShowHTML = true;
            }
        }// Showing
示例#28
0
        }// ValidateData

        internal override bool ApplyData()
        {
            if (m_et.scWellKnownMode.Count > 0)
            {
                m_dgObjectURIs.CurrentCell = new DataGridCell(0, 0);
            }

            for (int i = 0; i < m_et.scWellKnownMode.Count; i++)
            {
                m_et.scWellKnownUri[i] = (String)m_dtObjectURIs.Rows[i]["URI"];
            }

            String sSettingCommand = "ExposedTypes";

            if (m_sConfigFile != null)
            {
                sSettingCommand += "," + m_sConfigFile;
            }

            return(CConfigStore.SetSetting(sSettingCommand, m_et));
        } // ApplyData
示例#29
0
        static CCommandHistory()
        {
            // Read our stuff from the configuration
            try
            {
                m_olCommands = (ArrayList)CConfigStore.GetSetting("CommandHistory");
            }
            catch (Exception)
            {
                m_olCommands = null;
            }
            AgeCommands();
            // Make sure we can execute the commands this time around

            // This is bad. VerifyCommands needs the entire tree view
            // to be completely filled in so it can run verifications on all
            // the 'most recently used commands' to make sure that all the nodes
            // are there that need to be.

            // However, this method is fired before the entire tree view is completely
            // built. So one would think we could wait until the tree view is done
            // before verifying commands and such, right?
            //
            // Unfortunately, we need to generate a web page that has the recently
            // used commands BEFORE the tree finishes. Such problems we have, don't
            // we?

            //VerifiyCommands();

            // Read the list of consumer commands.... will be useful for our lite container

            // Only try and do this if we're on a non-MMC host. If this fails, then
            // we should let the exception propgate up
            if (CNodeManager.Console is INonMMCHost)
            {
                m_alConsumerCommands = (ArrayList)CConfigStore.GetSetting("ConsumerCommands");
            }
        }// CCommandHistory
示例#30
0
        }// MenuCommand

        internal override void Showing()
        {
            if (m_oResults != m_taskPadWaiting)
            {
                // See if we've read from the XML file yet whether we're supposed to
                // show the HTML file
                if (!m_fReadShowHTML)
                {
                    // Now tell my taskpad that I'm ready....
                    m_fShowHTMLPage = ((String)CConfigStore.GetSetting("ShowHTMLForDependAssem")).Equals("yes");

                    if (m_fShowHTMLPage || m_olAssems == null)
                    {
                        m_oResults = m_taskPad;
                    }
                    else
                    {
                        m_oResults = this;
                    }

                    m_fReadShowHTML = true;
                }
            }
        }// Showing