asset drag/drop to viewers, bluebanana bug, listbox fontlist highlight
[goodguy/history.git] / cinelerra-5.1 / cinelerra / interlacemodes.C
index 58dc042aa73d56828ad5e60c8d371cc7a5357c9b..4a1118ad931dda9bc18aa98257d1d4567b7c141d 100644 (file)
@@ -3,15 +3,15 @@
  * under the terms of the GNU Lesser General Public License as published
  * by the Free Software Foundation; either version 2 of the License, or
  * (at your option) any later version.
- * 
+ *
  * This library is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  * Lesser General Public License for more details.
- * 
+ *
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
  * USA
  */
 
 
 void ilaceautofixoption_to_text(char *string, int autofixoption)
 {
+       const char *cp = 0;
        switch(autofixoption) {
-       case BC_ILACE_AUTOFIXOPTION_AUTO:       strcpy(string, BC_ILACE_AUTOFIXOPTION_AUTO_T);          return;
-       case BC_ILACE_AUTOFIXOPTION_MANUAL:     strcpy(string, BC_ILACE_AUTOFIXOPTION_MANUAL_T);        return;
+       case ILACE_AUTOFIXOPTION_AUTO:          cp = ILACE_AUTOFIXOPTION_AUTO_T;        break;
+       case ILACE_AUTOFIXOPTION_MANUAL:        cp = ILACE_AUTOFIXOPTION_MANUAL_T;      break;
+       default: cp = ILACE_UNKNOWN_T;  break;
        }
-       strcpy(string, BC_ILACE_UNKNOWN_T);
+       strcpy(string, _(cp));
 }
 
 int ilaceautofixoption_from_text(const char *text, int thedefault)
 {
-       if(!strcasecmp(text, BC_ILACE_AUTOFIXOPTION_AUTO_T))    return BC_ILACE_AUTOFIXOPTION_AUTO;
-       if(!strcasecmp(text, BC_ILACE_AUTOFIXOPTION_MANUAL_T))  return BC_ILACE_AUTOFIXOPTION_MANUAL;
+       if(!strcasecmp(text, _(ILACE_AUTOFIXOPTION_AUTO_T)))    return ILACE_AUTOFIXOPTION_AUTO;
+       if(!strcasecmp(text, _(ILACE_AUTOFIXOPTION_MANUAL_T)))  return ILACE_AUTOFIXOPTION_MANUAL;
        return thedefault;
 }
 
@@ -48,42 +50,44 @@ int ilaceautofixoption_from_text(const char *text, int thedefault)
 
 void ilacemode_to_text(char *string, int ilacemode)
 {
+       const char *cp = 0;
        switch(ilacemode) {
-       case BC_ILACE_MODE_UNDETECTED:     strcpy(string, BC_ILACE_MODE_UNDETECTED_T);      return;
-       case BC_ILACE_MODE_TOP_FIRST:      strcpy(string, BC_ILACE_MODE_TOP_FIRST_T);       return;
-       case BC_ILACE_MODE_BOTTOM_FIRST:   strcpy(string, BC_ILACE_MODE_BOTTOM_FIRST_T);    return;
-       case BC_ILACE_MODE_NOTINTERLACED:  strcpy(string, BC_ILACE_MODE_NOTINTERLACED_T);   return;
+       case ILACE_MODE_UNDETECTED:     cp = ILACE_MODE_UNDETECTED_T;      break;
+       case ILACE_MODE_TOP_FIRST:      cp = ILACE_MODE_TOP_FIRST_T;       break;
+       case ILACE_MODE_BOTTOM_FIRST:   cp = ILACE_MODE_BOTTOM_FIRST_T;    break;
+       case ILACE_MODE_NOTINTERLACED:  cp = ILACE_MODE_NOTINTERLACED_T;   break;
+       default: cp = ILACE_UNKNOWN_T;  break;
        }
-       strcpy(string, BC_ILACE_UNKNOWN_T);
+       strcpy(string, _(cp));
 }
 
 int ilacemode_from_text(const char *text, int thedefault)
 {
-       if(!strcasecmp(text, BC_ILACE_MODE_UNDETECTED_T))     return BC_ILACE_MODE_UNDETECTED;
-       if(!strcasecmp(text, BC_ILACE_MODE_TOP_FIRST_T))      return BC_ILACE_MODE_TOP_FIRST;
-       if(!strcasecmp(text, BC_ILACE_MODE_BOTTOM_FIRST_T))   return BC_ILACE_MODE_BOTTOM_FIRST;
-       if(!strcasecmp(text, BC_ILACE_MODE_NOTINTERLACED_T))  return BC_ILACE_MODE_NOTINTERLACED;
+       if(!strcasecmp(text, _(ILACE_MODE_UNDETECTED_T)))     return ILACE_MODE_UNDETECTED;
+       if(!strcasecmp(text, _(ILACE_MODE_TOP_FIRST_T)))      return ILACE_MODE_TOP_FIRST;
+       if(!strcasecmp(text, _(ILACE_MODE_BOTTOM_FIRST_T)))   return ILACE_MODE_BOTTOM_FIRST;
+       if(!strcasecmp(text, _(ILACE_MODE_NOTINTERLACED_T)))  return ILACE_MODE_NOTINTERLACED;
        return thedefault;
 }
 
 void ilacemode_to_xmltext(char *string, int ilacemode)
 {
        switch(ilacemode) {
-       case BC_ILACE_MODE_UNDETECTED:     strcpy(string, BC_ILACE_MODE_UNDETECTED_XMLT);      return;
-       case BC_ILACE_MODE_TOP_FIRST:      strcpy(string, BC_ILACE_MODE_TOP_FIRST_XMLT);       return;
-       case BC_ILACE_MODE_BOTTOM_FIRST:   strcpy(string, BC_ILACE_MODE_BOTTOM_FIRST_XMLT);    return;
-       case BC_ILACE_MODE_NOTINTERLACED:  strcpy(string, BC_ILACE_MODE_NOTINTERLACED_XMLT);   return;
+       case ILACE_MODE_UNDETECTED:     strcpy(string, ILACE_MODE_UNDETECTED_XMLT);      return;
+       case ILACE_MODE_TOP_FIRST:      strcpy(string, ILACE_MODE_TOP_FIRST_XMLT);       return;
+       case ILACE_MODE_BOTTOM_FIRST:   strcpy(string, ILACE_MODE_BOTTOM_FIRST_XMLT);    return;
+       case ILACE_MODE_NOTINTERLACED:  strcpy(string, ILACE_MODE_NOTINTERLACED_XMLT);   return;
        }
-       strcpy(string, BC_ILACE_UNKNOWN_T);
+       strcpy(string, ILACE_UNKNOWN_T);
 }
 
 int ilacemode_from_xmltext(const char *text, int thedefault)
 {
        if( text ) {
-               if(!strcasecmp(text, BC_ILACE_MODE_UNDETECTED_XMLT))     return BC_ILACE_MODE_UNDETECTED;
-               if(!strcasecmp(text, BC_ILACE_MODE_TOP_FIRST_XMLT))      return BC_ILACE_MODE_TOP_FIRST;
-               if(!strcasecmp(text, BC_ILACE_MODE_BOTTOM_FIRST_XMLT))   return BC_ILACE_MODE_BOTTOM_FIRST;
-               if(!strcasecmp(text, BC_ILACE_MODE_NOTINTERLACED_XMLT))  return BC_ILACE_MODE_NOTINTERLACED;
+               if(!strcasecmp(text, ILACE_MODE_UNDETECTED_XMLT))     return ILACE_MODE_UNDETECTED;
+               if(!strcasecmp(text, ILACE_MODE_TOP_FIRST_XMLT))      return ILACE_MODE_TOP_FIRST;
+               if(!strcasecmp(text, ILACE_MODE_BOTTOM_FIRST_XMLT))   return ILACE_MODE_BOTTOM_FIRST;
+               if(!strcasecmp(text, ILACE_MODE_NOTINTERLACED_XMLT))  return ILACE_MODE_NOTINTERLACED;
        }
        return thedefault;
 }
@@ -92,54 +96,56 @@ int ilacemode_from_xmltext(const char *text, int thedefault)
 
 void ilacefixmethod_to_text(char *string, int fixmethod)
 {
+       const char *cp = 0;
        switch(fixmethod) {
-       case BC_ILACE_FIXMETHOD_NONE:           strcpy(string, BC_ILACE_FIXMETHOD_NONE_T);      return;
-       case BC_ILACE_FIXMETHOD_UPONE:          strcpy(string, BC_ILACE_FIXMETHOD_UPONE_T);     return;
-       case BC_ILACE_FIXMETHOD_DOWNONE:        strcpy(string, BC_ILACE_FIXMETHOD_DOWNONE_T);   return;
+       case ILACE_FIXMETHOD_NONE:      cp = ILACE_FIXMETHOD_NONE_T;    break;
+       case ILACE_FIXMETHOD_UPONE:     cp = ILACE_FIXMETHOD_UPONE_T;   break;
+       case ILACE_FIXMETHOD_DOWNONE:   cp = ILACE_FIXMETHOD_DOWNONE_T; break;
+       default: cp = ILACE_UNKNOWN_T;  break;
        }
-       strcpy(string, BC_ILACE_UNKNOWN_T);
+       strcpy(string, _(cp));
 }
 
 int ilacefixmethod_from_text(const char *text, int thedefault)
 {
-       if(!strcasecmp(text, BC_ILACE_FIXMETHOD_NONE_T))        return BC_ILACE_FIXMETHOD_NONE;
-       if(!strcasecmp(text, BC_ILACE_FIXMETHOD_UPONE_T))       return BC_ILACE_FIXMETHOD_UPONE;
-       if(!strcasecmp(text, BC_ILACE_FIXMETHOD_DOWNONE_T))     return BC_ILACE_FIXMETHOD_DOWNONE;
-       return thedefault; 
+       if(!strcasecmp(text, _(ILACE_FIXMETHOD_NONE_T)))        return ILACE_FIXMETHOD_NONE;
+       if(!strcasecmp(text, _(ILACE_FIXMETHOD_UPONE_T)))       return ILACE_FIXMETHOD_UPONE;
+       if(!strcasecmp(text, _(ILACE_FIXMETHOD_DOWNONE_T)))     return ILACE_FIXMETHOD_DOWNONE;
+       return thedefault;
 }
 
 void ilacefixmethod_to_xmltext(char *string, int fixmethod)
 {
        switch(fixmethod) {
-       case BC_ILACE_FIXMETHOD_NONE:           strcpy(string, BC_ILACE_FIXMETHOD_NONE_XMLT);           return;
-       case BC_ILACE_FIXMETHOD_UPONE:          strcpy(string, BC_ILACE_FIXMETHOD_UPONE_XMLT);          return;
-       case BC_ILACE_FIXMETHOD_DOWNONE:        strcpy(string, BC_ILACE_FIXMETHOD_DOWNONE_XMLT);        return;
+       case ILACE_FIXMETHOD_NONE:      strcpy(string, ILACE_FIXMETHOD_NONE_XMLT);      return;
+       case ILACE_FIXMETHOD_UPONE:     strcpy(string, ILACE_FIXMETHOD_UPONE_XMLT);     return;
+       case ILACE_FIXMETHOD_DOWNONE:   strcpy(string, ILACE_FIXMETHOD_DOWNONE_XMLT);   return;
        }
-       strcpy(string, BC_ILACE_UNKNOWN_T);
+       strcpy(string, ILACE_UNKNOWN_T);
 }
 
 int ilacefixmethod_from_xmltext(const char *text, int thedefault)
 {
-       if(!strcasecmp(text, BC_ILACE_FIXMETHOD_NONE_XMLT))     return BC_ILACE_FIXMETHOD_NONE;
-       if(!strcasecmp(text, BC_ILACE_FIXMETHOD_UPONE_XMLT))    return BC_ILACE_FIXMETHOD_UPONE;
-       if(!strcasecmp(text, BC_ILACE_FIXMETHOD_DOWNONE_XMLT))  return BC_ILACE_FIXMETHOD_DOWNONE;
-       return thedefault; 
+       if(!strcasecmp(text, ILACE_FIXMETHOD_NONE_XMLT))        return ILACE_FIXMETHOD_NONE;
+       if(!strcasecmp(text, ILACE_FIXMETHOD_UPONE_XMLT))       return ILACE_FIXMETHOD_UPONE;
+       if(!strcasecmp(text, ILACE_FIXMETHOD_DOWNONE_XMLT))     return ILACE_FIXMETHOD_DOWNONE;
+       return thedefault;
 }
 
-int  ilaceautofixmethod(int projectmode, int assetmode) 
+int  ilaceautofixmethod(int projectmode, int assetmode)
 {
        if (projectmode == assetmode)
-               return BC_ILACE_FIXMETHOD_NONE;
-       if( (projectmode == BC_ILACE_MODE_BOTTOM_FIRST && assetmode == BC_ILACE_MODE_TOP_FIRST ) ||
-           (projectmode == BC_ILACE_MODE_TOP_FIRST  && assetmode == BC_ILACE_MODE_BOTTOM_FIRST) )
-               return BC_ILACE_FIXDEFAULT;
+               return ILACE_FIXMETHOD_NONE;
+       if( (projectmode == ILACE_MODE_BOTTOM_FIRST && assetmode == ILACE_MODE_TOP_FIRST ) ||
+           (projectmode == ILACE_MODE_TOP_FIRST  && assetmode == ILACE_MODE_BOTTOM_FIRST) )
+               return ILACE_FIXDEFAULT;
        // still to implement anything else...
-       return BC_ILACE_FIXMETHOD_NONE;
+       return ILACE_FIXMETHOD_NONE;
 }
 
 int  ilaceautofixmethod2(int projectilacemode, int assetautofixoption, int assetilacemode, int assetfixmethod)
 {
-       if (assetautofixoption == BC_ILACE_AUTOFIXOPTION_AUTO)
+       if (assetautofixoption == ILACE_AUTOFIXOPTION_AUTO)
                return (ilaceautofixmethod(projectilacemode, assetilacemode));
        return (assetfixmethod);
 }
@@ -147,10 +153,10 @@ int  ilaceautofixmethod2(int projectilacemode, int assetautofixoption, int asset
 int ilace_bc_to_yuv4mpeg(int ilacemode)
 {
        switch (ilacemode) {
-       case BC_ILACE_MODE_UNDETECTED:  return(Y4M_UNKNOWN);
-       case BC_ILACE_MODE_TOP_FIRST:   return(Y4M_ILACE_TOP_FIRST);
-       case BC_ILACE_MODE_BOTTOM_FIRST: return(Y4M_ILACE_BOTTOM_FIRST);
-       case BC_ILACE_MODE_NOTINTERLACED: return(Y4M_ILACE_NONE);
+       case ILACE_MODE_UNDETECTED:     return(Y4M_UNKNOWN);
+       case ILACE_MODE_TOP_FIRST:      return(Y4M_ILACE_TOP_FIRST);
+       case ILACE_MODE_BOTTOM_FIRST: return(Y4M_ILACE_BOTTOM_FIRST);
+       case ILACE_MODE_NOTINTERLACED: return(Y4M_ILACE_NONE);
        }
        return(Y4M_UNKNOWN);
 }
@@ -158,25 +164,27 @@ int ilace_bc_to_yuv4mpeg(int ilacemode)
 int ilace_yuv4mpeg_to_bc(int ilacemode)
 {
        switch (ilacemode) {
-       case Y4M_UNKNOWN:               return (BC_ILACE_MODE_UNDETECTED);
-       case Y4M_ILACE_NONE:            return (BC_ILACE_MODE_NOTINTERLACED);
-       case Y4M_ILACE_TOP_FIRST:       return (BC_ILACE_MODE_TOP_FIRST);
-       case Y4M_ILACE_BOTTOM_FIRST:    return (BC_ILACE_MODE_BOTTOM_FIRST);
-//     case Y4M_ILACE_MIXED:           return (BC_ILACE_MODE_UNDETECTED);  // fixme!!
+       case Y4M_UNKNOWN:               return (ILACE_MODE_UNDETECTED);
+       case Y4M_ILACE_NONE:            return (ILACE_MODE_NOTINTERLACED);
+       case Y4M_ILACE_TOP_FIRST:       return (ILACE_MODE_TOP_FIRST);
+       case Y4M_ILACE_BOTTOM_FIRST:    return (ILACE_MODE_BOTTOM_FIRST);
+//     case Y4M_ILACE_MIXED:           return (ILACE_MODE_UNDETECTED);  // fixme!!
        }
-       return (BC_ILACE_MODE_UNDETECTED);
+       return (ILACE_MODE_UNDETECTED);
 }
 
 
 void ilace_yuv4mpeg_mode_to_text(char *string, int ilacemode)
 {
+       const char *cp = 0;
        switch(ilacemode) {
-       case Y4M_UNKNOWN:             strcpy(string, BC_ILACE_Y4M_UKNOWN_T);       return;
-       case Y4M_ILACE_NONE:          strcpy(string, BC_ILACE_Y4M_NONE_T);         return;
-       case Y4M_ILACE_TOP_FIRST:     strcpy(string, BC_ILACE_Y4M_TOP_FIRST_T);    return;
-       case Y4M_ILACE_BOTTOM_FIRST:  strcpy(string, BC_ILACE_Y4M_BOTTOM_FIRST_T); return;
-//     case Y4M_ILACE_MIXED:         strcpy(string, BC_ILACE_Y4M_MIXED_T);        return;
+       case Y4M_UNKNOWN:             cp = ILACE_Y4M_UKNOWN_T;       break;
+       case Y4M_ILACE_NONE:          cp = ILACE_Y4M_NONE_T;         break;
+       case Y4M_ILACE_TOP_FIRST:     cp = ILACE_Y4M_TOP_FIRST_T;    break;
+       case Y4M_ILACE_BOTTOM_FIRST:  cp = ILACE_Y4M_BOTTOM_FIRST_T; break;
+//     case Y4M_ILACE_MIXED:         cp = ILACE_Y4M_MIXED_T;        break;
+       default: cp = ILACE_UNKNOWN_T;  break;
        }
-       strcpy(string, BC_ILACE_UNKNOWN_T);
+       strcpy(string, _(cp));
 }