void AccountModifyDlg::updateUserID() { if(key.isNull()) { setKeyID(false); } else { setKeyID(true, key.primaryUserId()); } }
void AccountModifyDlg::clearKey() { setKeyID(false); key = QCA::PGPKey(); }
/* * data write */ LOCAL INT writeData( ID devid, INT datano, INT datacnt, void *buf, SDI sdi ) { W size; KbDef *kbdef; UW kbsel, kid; ER err = E_OK; /* parameter check */ if ( datacnt < 0 ) { DEBUG_PRINT(("writeData, datacnt(%d) err\n", datacnt)); return E_PAR; } kbsel = kid = 0; switch ( datano ) { case DN_KPEVENT: /* message buffer ID for event notification (RW) */ size = sizeof(kpMgrInfo.eventMbf); break; case DN_KPSTAT: /* KB/PD status (RW) */ size = sizeof(kpMgrInfo.kpState); break; case DN_KEYTAB: /* keytable (RW) */ kbdef = GetKbDef(0, kpMgrInfo.kb.keyID); size = ( kbdef == NULL )? 0: kbdef->size - offsetof(KeyDef, keytab); break; case DN_KEYMODE: /* change key mode (RW) */ size = sizeof(kpMgrInfo.kb.keyMode); break; case DN_PDMODE: /* PD mode (RW) */ size = sizeof(kpMgrInfo.pd.pdMode); break; case DN_PDRANGE: /* PD range (RW) */ size = sizeof(kpMgrInfo.pd.pdRange); break; case DN_PDSIM: /* PD simulation speed (RW) */ size = sizeof(kpMgrInfo.pd.pdSimSpeed); break; case DN_PDSIMINH: /* halt PD simulation temporarily (RW) */ size = sizeof(kpMgrInfo.pd.pdSimInh); break; case DN_KEYID: /* keyboard ID (RW) */ size = sizeof(kpMgrInfo.kb.keyID); break; case DN_KPMETABUT: /* meta key / button status (W) */ size = sizeof(MetaBut) * 2; break; case DN_KEYMAP: /* keymap (R) */ case DN_KPINPUT: /* input mailbox ID (R) */ /* read-only attribute data */ DEBUG_PRINT(("writeData, read only\n")); return E_PAR; default: if ( SelKbDef(&kbsel, &kid, datano) ) { /* DN_KEYDEF keyboard definition (RW) */ kbdef = GetKbDef(kbsel, kid); size = ( kbdef == NULL )? 0: kbdef->size; } else { /* data number error */ DEBUG_PRINT(("writeData, datano(%d) err\n", datano)); return E_PAR; } } if ( datacnt > 0 ) { if ( datano != DN_KEYTAB && !(datano <= DN_KEYDEF_S && datano >= DN_KEYDEF_E) && !(datano <= DN_KEYDEF2_S && datano >= DN_KEYDEF2_E) ) { /* except for keytable, partial write is prohibited */ if ( datacnt < size ) return E_PAR; } /* data write */ switch ( datano ) { case DN_KPEVENT: /* message buffer ID for event notification */ kpMgrInfo.eventMbf = *(ID*)buf; break; case DN_KPSTAT: /* KB/PD status */ err = setKpState((KPStat*)buf); break; case DN_KEYTAB: /* keytable */ err = setKeyTab((KeyTab*)buf, datacnt); break; case DN_KEYMODE: /* key mode */ err = setKeyMode((KeyMode*)buf); break; case DN_PDMODE: /* PD mode */ err = setPdMode((PdMode*)buf); break; case DN_PDRANGE: /* PD range */ err = setPdRange((PdRange*)buf); break; case DN_PDSIM: /* PD simulation speed */ err = setPdSimSpeed(*(W*)buf); break; case DN_PDSIMINH: /* halt PD simulation temporarily */ err = setPdSimInh(*(BOOL*)buf); break; case DN_KEYID: /* keyboard ID */ err = setKeyID(*(UW*)buf); break; case DN_KPMETABUT: /* meta key / button status */ err = setKpMetaBut((MetaBut*)buf); break; default: /* keyboard definition */ err = setKeyDef((KeyDef*)buf, kbsel, kid, datacnt); } } if ( err != E_OK ) { DEBUG_PRINT(("writeData, write err = %d\n", err)); return err; } return size; }