本文整理汇总了C++中MyMoneyFile::modifySecurity方法的典型用法代码示例。如果您正苦于以下问题:C++ MyMoneyFile::modifySecurity方法的具体用法?C++ MyMoneyFile::modifySecurity怎么用?C++ MyMoneyFile::modifySecurity使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MyMoneyFile
的用法示例。
在下文中一共展示了MyMoneyFile::modifySecurity方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: createObjects
void KNewInvestmentWizard::createObjects(const QString& parentId)
{
MyMoneyFile* file = MyMoneyFile::instance();
QValueList<MyMoneySecurity> list = MyMoneyFile::instance()->securityList();
QValueList<MyMoneySecurity>::ConstIterator it;
MyMoneySecurity::eSECURITYTYPE type = KMyMoneyUtils::stringToSecurity(m_securityType->currentText());
MyMoneyFileTransaction ft;
try {
// update all relevant attributes only, if we create a stock
// account and the security is unknown or we modifiy the security
MyMoneySecurity newSecurity(m_security);
newSecurity.setName(m_investmentName->text());
newSecurity.setTradingSymbol(m_investmentSymbol->text());
newSecurity.setTradingMarket(m_tradingMarket->currentText());
newSecurity.setSmallestAccountFraction(m_fraction->value());
newSecurity.setTradingCurrency(m_tradingCurrencyEdit->security().id());
newSecurity.setSecurityType(type);
newSecurity.deletePair("kmm-online-source");
newSecurity.deletePair("kmm-online-quote-system");
newSecurity.deletePair("kmm-online-factor");
newSecurity.deletePair("kmm-security-id");
if(!m_onlineSourceCombo->currentText().isEmpty()) {
if (m_useFinanceQuote->isChecked()) {
FinanceQuoteProcess p;
newSecurity.setValue("kmm-online-quote-system", "Finance::Quote");
newSecurity.setValue("kmm-online-source", p.crypticName(m_onlineSourceCombo->currentText()));
}else{
newSecurity.setValue("kmm-online-source", m_onlineSourceCombo->currentText());
}
}
if(m_onlineFactor->isEnabled() && (m_onlineFactor->value() != MyMoneyMoney(1,1)))
newSecurity.setValue("kmm-online-factor", m_onlineFactor->value().toString());
if(!m_investmentIdentification->text().isEmpty())
newSecurity.setValue("kmm-security-id", m_investmentIdentification->text());
if(m_security.id().isEmpty() || newSecurity != m_security) {
m_security = newSecurity;
// add or update it
if(m_security.id().isEmpty()) {
file->addSecurity(m_security);
} else {
file->modifySecurity(m_security);
}
}
if(m_createAccount) {
// now that the security exists, we can add the account to store it
m_account.setName(m_investmentName->text());
if(m_account.accountType() == MyMoneyAccount::UnknownAccountType)
m_account.setAccountType(MyMoneyAccount::Stock);
m_account.setCurrencyId(m_security.id());
switch(m_priceMode->currentItem()) {
case 0:
m_account.deletePair("priceMode");
break;
case 1:
case 2:
m_account.setValue("priceMode", QString("%1").arg(m_priceMode->currentItem()));
break;
}
if(m_account.id().isEmpty()) {
MyMoneyAccount parent = file->account(parentId);
file->addAccount(m_account, parent);
} else
file->modifyAccount(m_account);
}
ft.commit();
} catch(MyMoneyException* e) {
KMessageBox::detailedSorry(0, i18n("Unable to create all objects for the investment"), QString("%1 caugt in %2:%3").arg(e->what()).arg(e->file()).arg(e->line()));
delete e;
}
}