void ItemIndexWidget::initGraph()
{
    static QSize sIconSize(64, 64);

    std::string iconPath = GameDirecotry::ItemDirectory + _gameItem.icon();
    setIcon(QString::fromStdString(iconPath), sIconSize);
    setItemName(QString::fromStdString(_gameItem.name().c_str()));
    setItemDescription(QString::fromStdString(_gameItem.description().c_str()));
    setItemTypename(QString::fromStdString(_gameItem.typeName().c_str()));
    setItemCount(_gameItem.count());
    
    _ui->btnEmploy->setEnabled(_gameItem.flags() & ItemFlag::Item_CanUse);
    _ui->btnEmploy->setText(QString::fromStdString(ItemHelper::Employ::toEmployName(_gameItem.type())));
}
Exemple #2
0
void ItemMgr::loadConfig(const char * configFile)
{
    tinyxml2::XMLDocument doc;
    doc.LoadFile(configFile);
    auto root = doc.FirstChildElement("Items");
    auto itemElement = root->FirstChildElement();
    while (itemElement)
    {
        auto item = new ItemType(m_itemList.size());
        item->setName(itemElement->FirstChildElement("name")->GetText());
        item->setItemDescription(itemElement->FirstChildElement("description")->GetText());
        auto resPath = std::string("items/res/");
        resPath.append(itemElement->FirstChildElement("res_path")->GetText());
        item->setResPath(resPath);
        m_itemList.push_back(item);
        itemElement = itemElement->NextSiblingElement();
    }
}
bool IncidenceConverter::convertToCalendarItem(KCal::Incidence *incidence, ngwt__CalendarItem *item)
{
    kdDebug() << k_funcinfo << endl;
    //TODO: support the new iCal standard recurrence rule

    // ngwt__CalendarItem
    item->rdate = 0;
    item->rrule = 0;
    item->exdate = 0;
    item->recurrenceKey = 0;
    item->iCalId = 0;
    // ngwt__Mail
    item->subject = 0;
    item->originalSubject = 0;
    item->subjectPrefix = 0;
    item->distribution = 0;
    item->message = 0;
    item->attachments = 0;
    item->options = 0;
    item->link = 0;
    item->hasAttachment = false;
    item->size = 0;
    item->subType = 0;
    item->nntpOrImap = 0;
    item->smimeType = 0;
    // ngwt__BoxEntry
    item->status = 0;
    item->thread = 0;
    item->msgId = 0;
    item->messageId = 0;
    item->source = 0;
    item->returnSentItemsId = 0;
    item->delivered = 0;
    item->class_ = 0;
    item->security = 0;
    item->comment = 0;
    // ngwt__ContainerItem
    item->categories = 0;
    item->created = 0;
    item->customs = 0;
    // ngwt__Item
    item->id = 0;
    item->name = 0;
    item->version = 0;
    item->modified = 0;
    item->changes = 0;

    QString id = incidence->customProperty("GWRESOURCE", "UID");
    if(!id.isEmpty()) item->id = qStringToString(id);

    // Container
    if(!incidence->customProperty("GWRESOURCE", "CONTAINER").isEmpty())
    {
        std::vector<ngwt__ContainerRef *> *container = soap_new_std__vectorTemplateOfPointerTongwt__ContainerRef(soap(), -1);
        ngwt__ContainerRef *containerRef = soap_new_ngwt__ContainerRef(soap(), -1);
        containerRef->deleted = 0;
        containerRef->__item = incidence->customProperty("GWRESOURCE", "CONTAINER").utf8();
        container->push_back(containerRef);

        item->container = *container;
    }

    // secrecy
    item->class_ = (ngwt__ItemClass *)soap_malloc(soap(), sizeof(ngwt__ItemClass));
    switch(incidence->secrecy())
    {
        case KCal::Event::SecrecyPublic:
            *item->class_ = Public;
            break;
        case KCal::Event::SecrecyPrivate:
            *item->class_ = Private;
            break;
        case KCal::Event::SecrecyConfidential:
            *item->class_ = Private;
            break;
    }

    // options
    item->options = soap_new_ngwt__ItemOptions(soap(), -1);
    item->options->concealSubject = 0;
    item->options->delayDeliveryUntil = 0;
    item->options->expires = 0;
    item->options->hidden = 0;
    item->options->priority = Standard;

    // summary
    if(!incidence->summary().isEmpty())
        item->subject = qStringToString(incidence->summary());

    // TODO: reinstate when we know that this isn't causing problems with recurrence
    //   if ( incidence->created().isValid() ) {
    //     item->created = qDateTimeToChar( incidence->created(), mTimezone );
    //   } else
    //     item->created = 0;

    //   if ( incidence->lastModified().isValid() )
    //     item->modified = qDateTimeToChar( incidence->lastModified(), mTimezone );

    setItemDescription(incidence, item);

    item->source = (ngwt__ItemSource *)soap_malloc(soap(), sizeof(ngwt__ItemSource));
#if 1
    if(incidence->attendeeCount() > 0)
    {
        setAttendees(incidence, item);
        *item->source = sent_;
    }
    else
        *item->source = personal_;
#endif

    setRecurrence(incidence, item);
    return true;
}