Rev 7878 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
3363 | leency | 1 | |
2 | { |
||
3 | int j; |
||
7422 | leency | 4 | int iss = a; |
3363 | leency | 5 | int size1, size2; |
7972 | leency | 6 | if (a >= b) return; |
5606 | pavelyakov | 7 | size2 = items.get(b)*304 + buf+64; |
7972 | leency | 8 | for (j = a; j <= b; j++) { |
9 | size1 = items.get(j)*304 + buf+64; |
||
10 | if (ESDWORD[size1] <= ESDWORD[size2]) { items.swap(iss,j); iss++;} |
||
11 | } |
||
12 | Sort_by_Size (a, iss-2); |
||
3363 | leency | 13 | Sort_by_Size (iss, b); |
14 | } |
||
15 | |||
16 | |||
17 | |||
18 | { |
||
19 | int j; |
||
7422 | leency | 20 | int isn = a; |
3363 | leency | 21 | dword name2 = items.get(b)*304 + buf+72; |
7972 | leency | 22 | if (a >= b) return; |
5606 | pavelyakov | 23 | for (j = a; j <= b; j++) { |
7878 | leency | 24 | if (strcmpi(items.get(j)*304 + buf+72, name2)<=0) { items.swap(isn,j); isn++;} |
7972 | leency | 25 | } |
7878 | leency | 26 | Sort_by_Name(a, isn-2); |
3363 | leency | 27 | Sort_by_Name(isn, b); |
28 | } |
||
29 | |||
30 | |||
31 | |||
32 | { |
||
7422 | leency | 33 | int j; |
34 | dword filename1, filename2, ext1, ext2; |
||
3363 | leency | 35 | int n, isn = a; |
36 | if (a >= b) return; |
||
5606 | pavelyakov | 37 | filename2 = items.get(b)*304 + buf+72; |
7972 | leency | 38 | for (j = a; j <= b; j++) |
3363 | leency | 39 | { |
40 | filename1 = items.get(j)*304 + buf+72; |
||
7972 | leency | 41 | |
3363 | leency | 42 | |
43 | WHILE (n>0) && (ESBYTE[filename1+n]!='.') n--; |
||
5631 | pavelyakov | 44 | if (n) ext1 = filename1+n+1; else ext1=0; |
5606 | pavelyakov | 45 | n=strlen(filename2); |
5631 | pavelyakov | 46 | n--; |
47 | WHILE (n>0) && (ESBYTE[filename2+n]!='.') n--; |
||
48 | if (n) ext2 = filename2+n+1; else ext2=0; |
||
5606 | pavelyakov | 49 | |
3363 | leency | 50 | |
51 | if (n<0) { items.swap(isn, j); isn++;} |
||
7972 | leency | 52 | if (!n) && (strcmp(filename1, filename2) <= 0) { items.swap(isn,j); isn++;} |
53 | } |
||
3363 | leency | 54 | Sort_by_Type(a, isn-2); |
55 | Sort_by_Type(isn, b); |
||
56 | }=>0)>=>элементов>=0)>=>элементов>=>=>элементов> |
||
57 |