view gui/skin/cut.c @ 25661:293aeec83153

Replace the persistent CODECS_FLAG_SELECTED by a local "stringset" with an almost-trivial implementation. This allows making the builtin codec structs const, and it also makes clearer that this "selected" status is not used outside the init functions.
author reimar
date Sat, 12 Jan 2008 14:05:46 +0000
parents 17bf4f4b0715
children b0a7b35b78d2
line wrap: on
line source


#include <string.h>
#include <stdlib.h>

void cutItem( char * in,char * out,char sep,int num )
{
 int i,n,c;
 for ( c=0,n=0,i=0;i<strlen( in );i++ )
  {
   if ( in[i] == sep ) n++;
   if ( n >= num && in[i] != sep ) out[c++]=in[i];
   if ( n >= num && in[i+1] == sep ) { out[c]=0; return; }
  }
 out[c]=0;
}

int cutItemToInt( char * in,char sep,int num )
{
 char tmp[512];
 cutItem( in,tmp,sep,num ); 
 return atoi( tmp );
}

float cutItemToFloat( char * in,char sep,int num )
{
 char tmp[512];
 cutItem( in,tmp,sep,num ); 
 return atof( tmp );
}

void cutChunk( char * in,char * s1 )
{
 cutItem( in,s1,'=',0 );
 memmove( in,strchr( in,'=' )+1,strlen( in ) - strlen( s1 ) );
}