Search in sources :

Example 6 with CertificateNode

use of org.jcryptool.crypto.keystore.ui.views.nodes.keys.CertificateNode in project core by jcryptool.

the class KeystoreView method hookContextMenu.

private void hookContextMenu() {
    // $NON-NLS-1$
    MenuManager menuMgr = new MenuManager("#PopupMenu");
    menuMgr.setRemoveAllWhenShown(true);
    menuMgr.addMenuListener(new IMenuListener() {

        public void menuAboutToShow(IMenuManager manager) {
            if (viewer.getTree().getSelection().length == 0) {
                fillAddContactMenu(manager);
                return;
            }
            Object selection = viewer.getTree().getSelection()[0].getData();
            if (selection instanceof ContactDescriptorNode) {
                selectedNodeType = NodeType.CONTACT_NODE;
                selectedNodeInfo = ((ContactDescriptorNode) selection).getName();
                fillContactContextMenu(manager);
            } else if (selection instanceof SecretKeyNode) {
                LogUtil.logInfo(((SecretKeyNode) selection).getAlias().getAliasString());
                selectedNodeType = NodeType.SECRETKEY_NODE;
                selectedNodeAlias = ((SecretKeyNode) selection).getAlias();
                selectedSecretKeyNode = ((SecretKeyNode) selection);
                fillSecretKeyContextMenu(manager);
            } else if (selection instanceof KeyPairNode) {
                if (((KeyPairNode) selection).getPrivateKeyAlias() != null)
                    LogUtil.logInfo(((KeyPairNode) selection).getPrivateKeyAlias().getAliasString());
                selectedNodeType = NodeType.KEYPAIR_NODE;
                selectedNodeAlias = ((KeyPairNode) selection).getPrivateKeyAlias();
                selectedKeyPairNode = ((KeyPairNode) selection);
                fillKeyPairContextMenu(manager);
            } else if (selection instanceof CertificateNode) {
                IKeyStoreAlias alias = ((CertificateNode) selection).getAlias();
                if (alias.getKeyStoreEntryType().equals(KeyType.PUBLICKEY)) {
                    selectedNodeType = NodeType.PUBLICKEY_NODE;
                    selectedNodeAlias = ((CertificateNode) selection).getAlias();
                    selectedPublicKeyNode = ((CertificateNode) selection);
                    fillCertificateContextMenu(manager);
                } else if (alias.getKeyStoreEntryType().equals(KeyType.KEYPAIR_PUBLIC_KEY)) {
                    selectedNodeType = NodeType.PUBLICKEY_NODE;
                    selectedNodeAlias = ((CertificateNode) selection).getAlias();
                    selectedPublicKeyNode = ((CertificateNode) selection);
                    fillKeyPairPublicContextMenu(manager);
                }
            }
        }
    });
    Menu menu = menuMgr.createContextMenu(viewer.getControl());
    viewer.getControl().setMenu(menu);
    getSite().registerContextMenu("org.jcryptool.crypto.keystore.popup", menuMgr, viewer);
}
Also used : ContactDescriptorNode(org.jcryptool.crypto.keystore.ui.views.nodes.ContactDescriptorNode) CertificateNode(org.jcryptool.crypto.keystore.ui.views.nodes.keys.CertificateNode) MenuManager(org.eclipse.jface.action.MenuManager) IMenuManager(org.eclipse.jface.action.IMenuManager) IMenuManager(org.eclipse.jface.action.IMenuManager) SecretKeyNode(org.jcryptool.crypto.keystore.ui.views.nodes.keys.SecretKeyNode) Menu(org.eclipse.swt.widgets.Menu) IMenuListener(org.eclipse.jface.action.IMenuListener) KeyPairNode(org.jcryptool.crypto.keystore.ui.views.nodes.keys.KeyPairNode) IKeyStoreAlias(org.jcryptool.crypto.keystore.keys.IKeyStoreAlias)

Aggregations

CertificateNode (org.jcryptool.crypto.keystore.ui.views.nodes.keys.CertificateNode)6 IKeyStoreAlias (org.jcryptool.crypto.keystore.keys.IKeyStoreAlias)3 AbstractKeyNode (org.jcryptool.crypto.keystore.ui.views.nodes.keys.AbstractKeyNode)3 IKeyStoreListener (org.jcryptool.crypto.keystore.ui.views.interfaces.IKeyStoreListener)2 SecretKeyNode (org.jcryptool.crypto.keystore.ui.views.nodes.keys.SecretKeyNode)2 DSAPrivateKey (de.flexiprovider.core.dsa.DSAPrivateKey)1 DSAPublicKey (de.flexiprovider.core.dsa.DSAPublicKey)1 SSVElGamalPrivateKey (de.flexiprovider.core.elgamal.semanticallysecure.SSVElGamalPrivateKey)1 SSVElGamalPublicKey (de.flexiprovider.core.elgamal.semanticallysecure.SSVElGamalPublicKey)1 MpRSAPrivateKey (de.flexiprovider.core.mprsa.MpRSAPrivateKey)1 ECPrivateKey (de.flexiprovider.ec.keys.ECPrivateKey)1 ECSecretKey (de.flexiprovider.ec.keys.ECSecretKey)1 IQDSAPrivateKey (de.flexiprovider.nf.iq.iqdsa.IQDSAPrivateKey)1 IQDSAPublicKey (de.flexiprovider.nf.iq.iqdsa.IQDSAPublicKey)1 IQGQPublicKey (de.flexiprovider.nf.iq.iqgq.IQGQPublicKey)1 IQRDSAPrivateKey (de.flexiprovider.nf.iq.iqrdsa.IQRDSAPrivateKey)1 IQRDSAPublicKey (de.flexiprovider.nf.iq.iqrdsa.IQRDSAPublicKey)1 McElieceCCA2PrivateKey (de.flexiprovider.pqc.ecc.mceliece.McElieceCCA2PrivateKey)1 McEliecePublicKey (de.flexiprovider.pqc.ecc.mceliece.McEliecePublicKey)1 NiederreiterPrivateKey (de.flexiprovider.pqc.ecc.niederreiter.NiederreiterPrivateKey)1