Subversion Repositories filter_foundry

Rev

Rev 444 | Rev 454 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 444 Rev 453
Line 73... Line 73...
73
                                if(strcmp(linebuf,"%RGB-1.0")){
73
                                if(strcmp(linebuf,"%RGB-1.0")){
74
                                        // *reason = _strdup("This doesn't look like a Filter Factory file (first line is not \"%RGB-1.0\").");
74
                                        // *reason = _strdup("This doesn't look like a Filter Factory file (first line is not \"%RGB-1.0\").");
75
                                        break;
75
                                        break;
76
                                }
76
                                }
77
                        }else if(linecnt<=8){
77
                        }else if(linecnt<=8){
-
 
78
                                int v;
-
 
79
                                v = atoi(linebuf);
-
 
80
                                if (v < 0) v = 0;
-
 
81
                                if (v > 255) v = 255;
78
                                slider[linecnt-1] = atoi(linebuf);
82
                                slider[linecnt-1] = v;
79
                        }else{
83
                        }else{
80
                                if(lineptr){
84
                                if(lineptr){
81
                                        /* it's not an empty line; append it to current expr string */
85
                                        /* it's not an empty line; append it to current expr string */
82
                                        if( q+lineptr > curexpr+MAXEXPR ){
86
                                        if( q+lineptr > curexpr+MAXEXPR ){
83
                                                *reason = _strdup("Found an expression longer than 1024 characters.");
87
                                                *reason = _strdup("Found an expression longer than 1024 characters.");
Line 278... Line 282...
278
                                        }
282
                                        }
279
 
283
 
280
                                        // Sliders
284
                                        // Sliders
281
                                        for (i = 0; i < 8; i++) {
285
                                        for (i = 0; i < 8; i++) {
282
                                                char* sliderName;
286
                                                char* sliderName;
-
 
287
                                                int v;
283
                                                val = _ffx_read_str(&q);
288
                                                val = _ffx_read_str(&q);
284
                                                sliderName = val;
289
                                                sliderName = val;
285
                                                if (format_version >= 12) {
290
                                                if (format_version >= 12) {
286
                                                        // Format FFX1.2 has prefixes {S} = Slider, {C} = Checkbox, none = Slider
291
                                                        // Format FFX1.2 has prefixes {S} = Slider, {C} = Checkbox, none = Slider
287
                                                        if ((sliderName[0] == '{') && (sliderName[1] == 'S') && (sliderName[2] == '}')) sliderName += 3;
292
                                                        if ((sliderName[0] == '{') && (sliderName[1] == 'S') && (sliderName[2] == '}')) sliderName += 3;
Line 290... Line 295...
290
                                                strcpy(gdata->parm.szCtl[i], sliderName);
295
                                                strcpy(gdata->parm.szCtl[i], sliderName);
291
                                                free(val);
296
                                                free(val);
292
                                                gdata->parm.ctl_used[i] = (bool32_t)*((byte*)q);
297
                                                gdata->parm.ctl_used[i] = (bool32_t)*((byte*)q);
293
                                                q += sizeof(byte);
298
                                                q += sizeof(byte);
294
                                                gdata->parm.val[i] = *((uint32_t*)q);
299
                                                gdata->parm.val[i] = *((uint32_t*)q);
295
                                                slider[i] = *((uint32_t*)q);
300
                                                v = *((uint32_t*)q);
-
 
301
                                                if (v < 0) v = 0;
-
 
302
                                                if (v > 255) v = 255;
-
 
303
                                                slider[i] = v;
296
                                                q += sizeof(uint32_t);
304
                                                q += sizeof(uint32_t);
297
                                        }
305
                                        }
298
 
306
 
299
                                        // Maps (are not part of the format!)
307
                                        // Maps (are not part of the format!)
300
                                        strcpy(gdata->parm.szMap[0], "Map 0:");
308
                                        strcpy(gdata->parm.szMap[0], "Map 0:");
Line 740... Line 748...
740
                                }
748
                                }
741
 
749
 
742
                                // Slider values
750
                                // Slider values
743
                                for (i = 0; i < 8; i++) {
751
                                for (i = 0; i < 8; i++) {
744
                                        char keyname[7], tmp[5];
752
                                        char keyname[7], tmp[5];
-
 
753
                                        int v;
745
                                        sprintf(keyname, "val[%d]", i);
754
                                        sprintf(keyname, "val[%d]", i);
746
                                        if (!_picoReadProperty(q, count, keyname, tmp, sizeof(tmp), false)) {
755
                                        if (!_picoReadProperty(q, count, keyname, tmp, sizeof(tmp), false)) {
747
                                                sprintf(keyname, "def[%d]", i);
756
                                                sprintf(keyname, "def[%d]", i);
748
                                                if (!_picoReadProperty(q, count, keyname, tmp, sizeof(tmp), false)) {
757
                                                if (!_picoReadProperty(q, count, keyname, tmp, sizeof(tmp), false)) {
749
                                                        strcpy(tmp,"0");
758
                                                        strcpy(tmp,"0");
750
                                                }
759
                                                }
751
                                        }
760
                                        }
-
 
761
                                        v = atoi(tmp);
-
 
762
                                        if (v < 0) v = 0;
-
 
763
                                        if (v > 255) v = 255;
752
                                        gdata->parm.val[i] = slider[i] = atoi(tmp);
764
                                        gdata->parm.val[i] = slider[i] = v;
753
                                }
765
                                }
754
 
766
 
755
                                // Map names
767
                                // Map names
756
                                for (i = 0; i < 4; i++) {
768
                                for (i = 0; i < 4; i++) {
757
                                        char keyname[7];
769
                                        char keyname[7];