344 |
if( !cache ) |
if( !cache ) |
345 |
BUG( dlg ); |
BUG( dlg ); |
346 |
keylist_reload( lv, cache, KEYLIST_LIST, KEY_SORT_USERID ); |
keylist_reload( lv, cache, KEYLIST_LIST, KEY_SORT_USERID ); |
347 |
km_complete_status_bar (sb, lv); |
km_update_status_bar (sb, lv); |
348 |
} |
} |
349 |
} /* do_check_cache */ |
} /* do_check_cache */ |
350 |
|
|
480 |
void |
void |
481 |
update_ui_items (HWND hwnd, listview_ctrl_t lv) |
update_ui_items (HWND hwnd, listview_ctrl_t lv) |
482 |
{ |
{ |
|
int key_selected = 0, key_has_sec = 0; |
|
|
int i, key_inv = 0; |
|
483 |
HWND hwnd_child; |
HWND hwnd_child; |
484 |
HMENU hmenu; |
HMENU hmenu; |
485 |
|
int key_selected = 0; |
486 |
|
int key_has_sec = 0; |
487 |
|
int key_inv = 0; |
488 |
|
int mult_resids[] = {ID_KEYMISC_PROPS, ID_KEYMISC_SIGN, ID_KEYMISC_EDITKEY, |
489 |
|
ID_KEYMISC_CHECKSIGS, ID_KEYMISC_REVCERT, 0}; |
490 |
|
int i; |
491 |
|
|
492 |
/* Get some states */ |
/* Get some states */ |
493 |
key_selected = SendMessage (GetDlgItem (hwnd, IDC_KEYMISC_KEYLIST), |
key_selected = SendMessage (GetDlgItem (hwnd, IDC_KEYMISC_KEYLIST), |
517 |
set_menu_state (hmenu, ID_KEYMISC_SIGN, key_selected && !key_inv ? MF_ENABLED : MF_GRAYED); |
set_menu_state (hmenu, ID_KEYMISC_SIGN, key_selected && !key_inv ? MF_ENABLED : MF_GRAYED); |
518 |
set_menu_state (hmenu, ID_KEYMISC_EDITKEY, key_selected? MF_ENABLED : MF_GRAYED); |
set_menu_state (hmenu, ID_KEYMISC_EDITKEY, key_selected? MF_ENABLED : MF_GRAYED); |
519 |
set_menu_state (hmenu, ID_KEYMISC_CHECKSIGS, key_selected? MF_ENABLED : MF_GRAYED); |
set_menu_state (hmenu, ID_KEYMISC_CHECKSIGS, key_selected? MF_ENABLED : MF_GRAYED); |
520 |
|
|
521 |
|
/* Disable some menu items when multiple keys are selected. */ |
522 |
|
if (listview_count_items (lv, 1) > 1) { |
523 |
|
for (i=0; mult_resids[i] != 0; i++) |
524 |
|
set_menu_state (hmenu, mult_resids[i], MF_GRAYED); |
525 |
|
} |
526 |
} |
} |
527 |
|
|
528 |
|
/* Disable some context menu items when multiple keys are selected. */ |
529 |
|
static void |
530 |
|
popup_multiple (HWND dlg, HMENU hm) |
531 |
|
{ |
532 |
|
int resids[] = { |
533 |
|
ID_KEYCTX_EDIT, |
534 |
|
ID_KEYCTX_SIGN, |
535 |
|
ID_KEYCTX_REV, |
536 |
|
ID_KEYCTX_ENABLE, |
537 |
|
ID_KEYCTX_DISABLE, |
538 |
|
ID_KEYCTX_ADDKEY, |
539 |
|
ID_KEYCTX_ADDPHOTO, |
540 |
|
ID_KEYCTX_ADDUID, |
541 |
|
ID_KEYCTX_ADDREV, |
542 |
|
ID_KEYCTX_LISTSIGS, |
543 |
|
ID_KEYCTX_MAXTRUST, |
544 |
|
ID_KEYCTX_PROPS, |
545 |
|
ID_KEYCTX_SENDMAIL, |
546 |
|
0 |
547 |
|
}; |
548 |
|
int i; |
549 |
|
for (i=0; i < resids[i] != 0; i++) |
550 |
|
set_menu_state (hm, resids[i], MF_GRAYED); |
551 |
|
} |
552 |
|
|
553 |
|
|
554 |
/* The items which are shown when GPG is in read-only mode. */ |
/* The items which are shown when GPG is in read-only mode. */ |
555 |
static void |
static void |
678 |
SendMessage (statbar, SB_SETPARTS, (WPARAM)3, (LPARAM)partpos); |
SendMessage (statbar, SB_SETPARTS, (WPARAM)3, (LPARAM)partpos); |
679 |
|
|
680 |
km_update_default_key_str (statbar); |
km_update_default_key_str (statbar); |
681 |
km_complete_status_bar (statbar, lv); |
km_update_status_bar (statbar, lv); |
682 |
|
|
683 |
return statbar; |
return statbar; |
684 |
} |
} |
1000 |
host = kserver_get_hostname (0, -1, &port); |
host = kserver_get_hostname (0, -1, &port); |
1001 |
set_menu_text (popup, ID_KEYCTX_KS_DEFAULT, host); |
set_menu_text (popup, ID_KEYCTX_KS_DEFAULT, host); |
1002 |
popup_gpg_readonly (dlg, popup); |
popup_gpg_readonly (dlg, popup); |
1003 |
|
if (listview_count_items (kmi->lv, 1) > 1) |
1004 |
|
popup_multiple (dlg, popup); |
1005 |
TrackPopupMenu (popup, TPM_RIGHTALIGN, p.x, p.y, 0, dlg, NULL); |
TrackPopupMenu (popup, TPM_RIGHTALIGN, p.x, p.y, 0, dlg, NULL); |
1006 |
DestroyMenu (popup); |
DestroyMenu (popup); |
1007 |
DestroyMenu (hm); |
DestroyMenu (hm); |