23 QString leftIp = this->sourceModel()->data( left ).toString();
24 QString rightIp = this->sourceModel()->data( right ).toString();
25 leftIp.replace(
'.',
' ');
26 rightIp.replace(
'.',
' ');
27 int lres = sscanf (leftIp.toStdString().c_str(),
"%d %d %d %d",&l1,&l2,&l3,&l4);
28 int rres = sscanf (rightIp.toStdString().c_str(),
"%d %d %d %d",&r1,&r2,&r3,&r4);
31 int lval = (l1 * 16777216) + (l2 * 65536) + (l3 * 256) + (l4);
32 int rval = (r1 * 16777216) + (r2 * 65536) + (r3 * 256) + (r4);
35 else if (left.column()==2)
37 QString leftStr = this->sourceModel()->data( left ).toString();
38 QString rightStr = this->sourceModel()->data( right ).toString();
41 memset(&left_time, 0,
sizeof(
struct tm));
42 memset(&right_time, 0,
sizeof(
struct tm));
43 sscanf(leftStr.toStdString().c_str(),
"%d:%d:%d %d/%d/%d", &left_time.tm_hour, &left_time.tm_min, &left_time.tm_sec, &left_time.tm_mday, &left_time.tm_mon, &left_time.tm_year);
44 sscanf(rightStr.toStdString().c_str(),
"%d:%d:%d %d/%d/%d", &right_time.tm_hour, &right_time.tm_min, &right_time.tm_sec, &right_time.tm_mday, &right_time.tm_mon, &right_time.tm_year);
45 left_time.tm_year-=1900;
46 right_time.tm_year-=1900;
47 double diff = difftime(mktime(&left_time), mktime(&right_time));
50 else if (left.column()==3 || left.column()==4 || left.column()==5)
53 int leftInt = this->sourceModel()->data( left ).toInt();
54 int rightInt = this->sourceModel()->data( right ).toInt();
55 return leftInt < rightInt;
58 return QSortFilterProxyModel::lessThan(left,right);
int diff(std::string contextName, folderType fType, bool verbose)