Ejemplo n.º 1
0
void SmlAllModel::refresh(int orderColumn, int orderMode)
{
    QString orderString("");
    switch (orderColumn) {
    case 0: {
        if(orderMode) orderString = "ORDER by sml.smlid DESC";
        else orderString = "ORDER by sml.smlid ASC";
    }
    break;
    case 1: {
        if(orderMode) orderString = "ORDER by smla.author DESC";
        else orderString = "ORDER by smla.author ASC";
    }
    break;
    case 2: {
        if(orderMode) orderString = "ORDER by sml.title DESC";
        else orderString = "ORDER by sml.title ASC";
    }
    break;
    case 3: {
        if(orderMode) orderString = "ORDER by smlp.publisher DESC";
        else orderString = "ORDER by smlp.publisher ASC";
    }
    break;
    }

    QSqlQuery query("SELECT sml.smlid, smla.author, sml.title, smlp.publisher FROM sheetmusiclibrary sml, smlauthor smla, smlpublisher smlp WHERE smla.smlauthorid=sml.author AND smlp.smlpublisherid=sml.publisher "+orderString, *myW->getMyDb()->getMyPupilDb());
    setQuery(query);
    if (query.lastError().isValid()) qDebug() << "DB Error: 148 - " << query.lastError();

    setHeaderData(0, Qt::Horizontal, QObject::tr("Index"));
    setHeaderData(1, Qt::Horizontal, QObject::tr("Komponist / Author"));
    setHeaderData(2, Qt::Horizontal, QObject::tr("Titel"));
    setHeaderData(3, Qt::Horizontal, QObject::tr("Verlag"));
}
Ejemplo n.º 2
0
String D2StatData::format(D2ItemStat const& stat, bool abbrev)
{
  if (!stat.stat)
    return String::null;
  if (abbrev)
  {
    static char const* ab_cls[] = {"ama", "sorc", "nec", "pala", "barb", "druid", "assa"};
    static char const* ab_tab[] = {"bow sk", "p&m", "java sk",
                                   "fire sk", "light sk", "cold sk",
                                   "curses", "p&b", "nec summ",
                                   "pc sk", "off auras", "def auras",
                                   "barb combat", "masteries", "warcries",
                                   "dru summ", "shape sk", "ele sk",
                                   "traps", "shadow sk", "martial arts"};
    char const* src = stat.stat->acronym;
    if (stat.stat->id == 111 && stat.value1 == stat.value2)
      src = "$1 dmg";
    if (!src) return String::null;
    String dst;
    for (int i = 0; src[i]; i++)
    {
      if (src[i] == '$')
      {
        i++;
        if (src[i] == '0')
        {
          switch (stat.stat->id)
          {
          case 83:
            dst += ab_cls[stat.param];
            break;
          case 97:
          case 107:
          case 195:
          case 196:
          case 197:
          case 198:
          case 199:
          case 201:
          case 204:
            dst += String(skillNames[stat.param]).toLower();
            break;
          case 126:
            dst += "fire sk";
            break;
          case 188:
            dst += ab_tab[stat.param];
            break;
          }
        }
        else if (src[i] == '1')
          dst.printf("%d", stat.value1);
        else if (src[i] == '2')
          dst.printf("%d", stat.value2);
      }
      else
        dst += src[i];
    }
    return dst;
  }
  else
  {
    char const* desc = stat.stat->descpos;
    if (stat.value1 < 0) desc = stat.stat->descneg;
    switch (stat.stat->descfunc)
    {
    case 11: // format string, one %d
    case 19:
      return String::format(desc, stat.value1);
    case 14:
      return String::format(data->getLocalizedString(tabString[stat.param]), stat.value1);
    case 33: // fake, $d-$d range
      return String::format(desc, stat.value1, stat.value2);
    case 34: // fake, $d range over %d
      return String::format(desc, stat.value1, stat.param / 25);
    case 15: // %d%% chance to cast level %d %s on ...
      return String::format(desc, stat.value1, stat.value2, skillNames[stat.param]);
    case 16: // Level %d %s aura
      return String::format(desc, stat.value1, skillNames[stat.param]);
    case 24: // Level $1 $0 (%d/%d Charges)
      return String::format("%s%d %s %s", str_Level, stat.value2, skillNames[stat.param],
        String::format(desc, stat.value1, stat.value1));
    case 23:
      return String::format("%d%% %s %s", stat.value1, desc, str_Returned);
    case 27:
      return String::format("+%d %s %s %s", stat.value1, str_to, skillNames[stat.param],
        data->getLocalizedString(10917 + skillClass[stat.param]));
    case 28:
      return String::format("+%d %s %s", stat.value1, str_to, skillNames[stat.param]);
    case 12:
      return (stat.value1 != 1 ? orderString(stat.stat->descval, desc,
        String::format("+%d", stat.value1)) : desc);
    case 13:
      return orderString(stat.stat->descval, data->getLocalizedString(clsString[stat.param]),
        String::format("+%d", stat.value1));
    case 20:
      return orderString(stat.stat->descval, desc, String::format("-%d%%", stat.value1));

    case 1:
      return orderString(stat.stat->descval, desc, String::format("+%d", stat.value1));
    case 2:
      return orderString(stat.stat->descval, desc, String::format("%d%%", stat.value1));
    case 3:
      return orderString(stat.stat->descval, desc, String::format("%d", stat.value1));
    case 4:
      return orderString(stat.stat->descval, desc, String::format("+%d%%", stat.value1));
    case 6:
      return String::format("%s %s", orderString(stat.stat->descval, desc,
        String::format("+%d", stat.value1)), stat.stat->desc2);
    case 7:
      return String::format("%s %s", orderString(stat.stat->descval, desc,
        String::format("%d%%", stat.value1)), stat.stat->desc2);
    case 8:
      return String::format("%s %s", orderString(stat.stat->descval, desc,
        String::format("+%d%%", stat.value1)), stat.stat->desc2);
    case 9:
      return String::format("%s %s", orderString(stat.stat->descval, desc,
        String::format("%d", stat.value1)), stat.stat->desc2);
    }
    return "???";
  }
}