added full line support
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@465
This commit is contained in:
		
							parent
							
								
									25692864a9
								
							
						
					
					
						commit
						46a1e79f94
					
				
					 2 changed files with 12 additions and 1 deletions
				
			
		| 
						 | 
				
			
			@ -30,7 +30,7 @@ public:
 | 
			
		|||
	CommandLine(int argc,char * argv[]);
 | 
			
		||||
	CommandLine(char * name,char * cmdline);
 | 
			
		||||
	const char * GetFileName(){ return file_name.c_str();}	
 | 
			
		||||
 | 
			
		||||
    
 | 
			
		||||
	bool FindExist(char * name,bool remove=false);
 | 
			
		||||
	bool FindHex(char * name,int & value,bool remove=false);
 | 
			
		||||
	bool FindInt(char * name,int & value,bool remove=false);
 | 
			
		||||
| 
						 | 
				
			
			@ -38,6 +38,7 @@ public:
 | 
			
		|||
	bool FindCommand(int which,std::string & value);
 | 
			
		||||
	bool FindStringBegin(char * begin,std::string & value, bool remove=false);
 | 
			
		||||
	int GetCount(void);
 | 
			
		||||
    void CommandLine::GetFullLine( char * in);
 | 
			
		||||
private:
 | 
			
		||||
	typedef std::list<std::string>::iterator cmd_it;
 | 
			
		||||
	std::list<std::string> cmds;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -369,3 +369,13 @@ CommandLine::CommandLine(char * name,char * cmdline) {
 | 
			
		|||
	}
 | 
			
		||||
	if (inword || inquote) cmds.push_back(str);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void CommandLine::GetFullLine(char * in) {
 | 
			
		||||
    cmd_it it;
 | 
			
		||||
    *in=0;
 | 
			
		||||
    char spatie[2]={' ',0};
 | 
			
		||||
	for (it=cmds.begin();it!=cmds.end();it++) {
 | 
			
		||||
        strcat(in,spatie);
 | 
			
		||||
        strcat(in,(*it).c_str());
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue