summaryrefslogtreecommitdiff
path: root/src/tool
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2013-04-06 13:14:47 +0200
committerPaul Buetow <paul@buetow.org>2013-04-06 13:14:47 +0200
commitee315a27b72dc967a8a90f132725b7c8e4fd9fba (patch)
tree349db556063b17a3c84dc9348495bd11d73b0417 /src/tool
parent630af0ed6c0af69c7df2e45aef7a87722a3c00c0 (diff)
tagging ychat-0.7.5ychat-0.7.5
Diffstat (limited to 'src/tool')
-rw-r--r--src/tool/dir.cpp68
-rw-r--r--src/tool/dir.h48
-rw-r--r--src/tool/tool.cpp280
-rw-r--r--src/tool/tool.h52
4 files changed, 175 insertions, 273 deletions
diff --git a/src/tool/dir.cpp b/src/tool/dir.cpp
index e91f227..ae48d5f 100644
--- a/src/tool/dir.cpp
+++ b/src/tool/dir.cpp
@@ -1,27 +1,3 @@
-/*:*
- *: File: ./src/tool/dir.cpp
- *:
- *: yChat; Homepage: www.yChat.org; Version 0.7.9.5-RELEASE
- *:
- *: Copyright (C) 2003 Paul C. Buetow, Volker Richter
- *: Copyright (C) 2004 Paul C. Buetow
- *: Copyright (C) 2005 EXA Digital Solutions GbR
- *:
- *: This program is free software; you can redistribute it and/or
- *: modify it under the terms of the GNU General Public License
- *: as published by the Free Software Foundation; either version 2
- *: of the License, or (at your option) any later version.
- *:
- *: This program 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 General Public License for more details.
- *:
- *: You should have received a copy of the GNU General Public License
- *: along with this program; if not, write to the Free Software
- *: Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- *:*/
-
#ifndef DIR_CPP
#define DIR_CPP
@@ -31,60 +7,60 @@ using namespace std;
dir::dir()
{
- b_open = false;
+ b_open = false;
}
dir::~dir()
{
- vec_dir.clear();
- close_dir();
+ vec_dir.clear();
+ close_dir();
}
bool
dir::open_dir( char *c_dir )
{
- string s_dir( c_dir );
- return open_dir( s_dir );
+ string s_dir( c_dir );
+ return open_dir( s_dir );
}
bool
dir::open_dir( string &s_dir )
{
- if ( b_open )
- return false;
+ if ( b_open )
+ return false;
- p_d = opendir( s_dir.c_str() );
+ p_d = opendir( s_dir.c_str() );
- if ( p_d == NULL )
- return false; // Could not open dir.
+ if ( p_d == NULL )
+ return false; // Could not open dir.
- b_open = true;
+ b_open = true;
- return true; // Could open dir with success.
+ return true; // Could open dir with success.
}
void
dir::close_dir()
{
- if ( b_open && p_d != NULL )
- {
- closedir( p_d );
- b_open = false;
- }
+ if ( b_open && p_d != NULL )
+ {
+ closedir( p_d );
+ b_open = false;
+ }
}
void
dir::read_dir()
{
- if ( p_d != NULL )
- while( p_ep = readdir( p_d ) )
- vec_dir.push_back( string( p_ep->d_name ) );
+ if ( p_d != NULL )
+ while( p_ep = readdir( p_d ) )
+ vec_dir.push_back( string( p_ep->d_name ) );
}
-vector<string>
+vector<string>
dir::get_dir_vec()
{
- return vec_dir;
+ return vec_dir;
}
#endif
diff --git a/src/tool/dir.h b/src/tool/dir.h
index f77839e..22ec510 100644
--- a/src/tool/dir.h
+++ b/src/tool/dir.h
@@ -1,27 +1,3 @@
-/*:*
- *: File: ./src/tool/dir.h
- *:
- *: yChat; Homepage: www.yChat.org; Version 0.7.9.5-RELEASE
- *:
- *: Copyright (C) 2003 Paul C. Buetow, Volker Richter
- *: Copyright (C) 2004 Paul C. Buetow
- *: Copyright (C) 2005 EXA Digital Solutions GbR
- *:
- *: This program is free software; you can redistribute it and/or
- *: modify it under the terms of the GNU General Public License
- *: as published by the Free Software Foundation; either version 2
- *: of the License, or (at your option) any later version.
- *:
- *: This program 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 General Public License for more details.
- *:
- *: You should have received a copy of the GNU General Public License
- *: along with this program; if not, write to the Free Software
- *: Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- *:*/
-
#ifndef DIR_H
#define DIR_H
@@ -40,20 +16,20 @@ using namespace std;
class dir
{
private:
- bool b_open;
- DIR *p_d;
- struct dirent *p_ep;
- vector<string> vec_dir;
+ bool b_open;
+ DIR *p_d;
+ struct dirent *p_ep;
+ vector<string> vec_dir;
public:
- dir();
- ~dir();
-
- bool open_dir( char *c_dir );
- bool open_dir( string &s_dir );
- void close_dir();
- void read_dir();
- vector<string> get_dir_vec();
+ dir();
+ ~dir();
+
+ bool open_dir( char *c_dir );
+ bool open_dir( string &s_dir );
+ void close_dir();
+ void read_dir();
+ vector<string> get_dir_vec();
};
#endif
diff --git a/src/tool/tool.cpp b/src/tool/tool.cpp
index 8a470cd..dec9bdb 100644
--- a/src/tool/tool.cpp
+++ b/src/tool/tool.cpp
@@ -1,27 +1,3 @@
-/*:*
- *: File: ./src/tool/tool.cpp
- *:
- *: yChat; Homepage: www.yChat.org; Version 0.7.9.5-RELEASE
- *:
- *: Copyright (C) 2003 Paul C. Buetow, Volker Richter
- *: Copyright (C) 2004 Paul C. Buetow
- *: Copyright (C) 2005 EXA Digital Solutions GbR
- *:
- *: This program is free software; you can redistribute it and/or
- *: modify it under the terms of the GNU General Public License
- *: as published by the Free Software Foundation; either version 2
- *: of the License, or (at your option) any later version.
- *:
- *: This program 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 General Public License for more details.
- *:
- *: You should have received a copy of the GNU General Public License
- *: along with this program; if not, write to the Free Software
- *: Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- *:*/
-
#ifndef TOOL_CPP
#define TOOL_CPP
@@ -38,136 +14,135 @@
bool
tool::is_alpha_numeric( string &s_digit )
{
- const char *p_digit = s_digit.c_str();
- int i_len = strlen( p_digit );
+ const char *p_digit = s_digit.c_str();
+ int i_len = strlen( p_digit );
- for( int i=0; i<i_len; i++ )
- {
- if ( ! isalnum( *p_digit ) )
- return false;
- p_digit++;
- }
+ for( int i=0; i<i_len; i++ )
+ {
+ if ( ! isalnum( *p_digit ) )
+ return false;
+ p_digit++;
+ }
- return true;
+ return true;
}
string
tool::int2string( int i_int )
{
- char buf[64];
- sprintf(buf, "%d", i_int);
- return buf;
+ char buf[64];
+ sprintf(buf, "%d", i_int);
+ return buf;
}
long
tool::unixtime()
{
- time_t clock;
- return (long) time( &clock );
+ time_t clock;
+ return (long) time( &clock );
}
int
tool::string2int( string s_digit )
{
- const char *p_digit = s_digit.c_str();
- int i_res = 0;
-
- // Convert each digit char and add into result.
- while (*p_digit >= '0' && *p_digit <='9')
- {
- i_res = (i_res * 10) + (*p_digit - '0');
- p_digit++;
- }
-
- // Check that there were no non-digits at end.
- if (*p_digit != 0)
- {
- return -1;
- }
-
- return i_res;
+ const char *p_digit = s_digit.c_str();
+ int i_res = 0;
+
+ // Convert each digit char and add into result.
+ while (*p_digit >= '0' && *p_digit <='9')
+ {
+ i_res = (i_res * 10) + (*p_digit - '0');
+ p_digit++;
+ }
+
+ // Check that there were no non-digits at end.
+ if (*p_digit != 0)
+ {
+ return -1;
+ }
+
+ return i_res;
}
string
tool::to_lower( string s_str )
{
- string s_tmp("");
+ string s_tmp("");
- for( int i = 0; i < s_str.size() ;i++ )
- s_tmp = s_tmp + (char) tolower( s_str.at(i) );
+ for( int i = 0; i < s_str.size() ;i++ )
+ s_tmp = s_tmp + (char) tolower( s_str.at(i) );
- return s_tmp;
+ return s_tmp;
}
void
tool::strip_html( string *p_str)
{
- int i_pos;
-
- if( (i_pos=p_str->find("<", 0)) == string::npos )
- return;
-
- while(true)
- {
- p_str->replace(i_pos, 1, "&lt;");
+ int i_pos;
- if( (i_pos = p_str->find("<", 0)) == string::npos )
+ if( (i_pos=p_str->find("<", 0)) == string::npos )
return;
- }
+
+ while(true)
+ {
+ p_str->replace(i_pos, 1, "&lt;");
+
+ if( (i_pos = p_str->find("<", 0)) == string::npos )
+ return;
+ }
}
string
tool::ychat_version()
{
- return "yChat " + string(VERSION)
- + "-" + string(BRANCH)
- + " Build " + int2string(BUILDNR);
+ return "yChat " + string(VERSION)
+ + "-" + string(BRANCH)
+ + " Build " + int2string(BUILDNR);
}
list<string>
-tool::split_string(string s_string, string s_split)
-{
- list<string> list_ret;
- unsigned i_pos, i_len = s_split.length();
+tool::split_string(string s_string, string s_split) {
+ list<string> list_ret;
+ unsigned i_pos, i_len = s_split.length();
- while ( (i_pos = s_string.find(s_split)) != string::npos )
- {
- list_ret.push_back( s_string.substr(0, i_pos) );
- s_string = s_string.substr( i_pos + i_len );
- }
+ while ( (i_pos = s_string.find(s_split)) != string::npos )
+ {
+ list_ret.push_back( s_string.substr(0, i_pos) );
+ s_string = s_string.substr( i_pos + i_len );
+ }
- list_ret.push_back( s_string );
+ list_ret.push_back( s_string );
- return list_ret;
+ return list_ret;
}
string
tool::trim( string s_str )
{
- if( s_str.empty() )
- return s_str;
+ if( s_str.empty() )
+ return s_str;
- char c_cur = s_str[0];
- int i_pos = 0;
+ char c_cur = s_str[0];
+ int i_pos = 0;
- // left trim
- while ( c_cur == ' '|| c_cur == '\n' || c_cur == '\r' )
- {
- s_str.erase(i_pos,1);
- c_cur = s_str[++i_pos];
- }
+ // left trim
+ while ( c_cur == ' '|| c_cur == '\n' || c_cur == '\r' )
+ {
+ s_str.erase(i_pos,1);
+ c_cur = s_str[++i_pos];
+ }
- // right trim
- i_pos = s_str.size();
- c_cur = s_str[s_str.size()];
+ // right trim
+ i_pos = s_str.size();
+ c_cur = s_str[s_str.size()];
- while ( c_cur == ' ' || c_cur == '\n' || c_cur == '\0' || c_cur == '\r' )
- {
- s_str.erase(i_pos, 1);
- c_cur = s_str[--i_pos];
- }
+ while ( c_cur == ' ' || c_cur == '\n' || c_cur == '\0' || c_cur == '\r' )
+ {
+ s_str.erase(i_pos, 1);
+ c_cur = s_str[--i_pos];
+ }
- return s_str;
+ return s_str;
}
char*
@@ -175,8 +150,7 @@ tool::clean_char( char* c_str )
{
// Ralf:
for ( char* c_pos = c_str; *c_pos != '\0'; ++c_pos )
- if ( iscntrl(*c_pos) )
- *c_pos = ' ';
+ if ( iscntrl(*c_pos) ) *c_pos = ' ';
return c_str;
}
@@ -184,80 +158,80 @@ tool::clean_char( char* c_str )
string
tool::replace( string s_string, string s_search, string s_replace )
{
- unsigned i_pos[2];
+ unsigned i_pos[2];
- for ( i_pos[0] = s_string.find( s_search );
- i_pos[0] != string::npos;
- i_pos[0] = s_string.find( s_search, i_pos[1] ) )
- {
- s_string.replace( i_pos[0], s_search.length(), s_replace );
- i_pos[1] = i_pos[0] + s_replace.length();
- }
+ for ( i_pos[0] = s_string.find( s_search );
+ i_pos[0] != string::npos;
+ i_pos[0] = s_string.find( s_search, i_pos[1] ) )
+ {
+ s_string.replace( i_pos[0], s_search.length(), s_replace );
+ i_pos[1] = i_pos[0] + s_replace.length();
+ }
- return s_string;
+ return s_string;
}
string
tool::get_extension( string s_file )
{
- int i_pos = s_file.find_last_of(".");
+ int i_pos = s_file.find_last_of(".");
- if( i_pos != string::npos )
- {
- string s_ext = s_file.substr(i_pos+1, s_file.size()-i_pos-1 );
- for( int i = 0; i < s_ext.size(); ++i )
- s_ext[i] = tolower(s_ext[i]);
+ if( i_pos != string::npos )
+ {
+ string s_ext = s_file.substr(i_pos+1, s_file.size()-i_pos-1 );
+ for( int i = 0; i < s_ext.size(); ++i )
+ s_ext[i] = tolower(s_ext[i]);
- return to_lower(s_ext);
- }
+ return to_lower(s_ext);
+ }
- return "";
+ return "";
}
char*
tool::int2char( int i_int )
{
- char *buf = new char[64];
- sprintf(buf, "%d", i_int);
- return buf;
+ char *buf = new char[64];
+ sprintf(buf, "%d", i_int);
+ return buf;
}
string
tool::shell_command( string s_command, method m_method )
{
- FILE *file;
- char buf[READBUF];
- char *c_pos;
- string s_ret = "";
-
- wrap::system_message(SHELLEX);
- wrap::system_message(s_command);
-
- if( (file=popen(s_command.c_str(), "r")) == NULL )
- {
- wrap::system_message( SHELLER );
- }
- else
- {
- while(true)
+ FILE *file;
+ char buf[READBUF];
+ char *c_pos;
+ string s_ret = "";
+
+ wrap::system_message(SHELLEX);
+ wrap::system_message(s_command);
+
+ if( (file=popen(s_command.c_str(), "r")) == NULL )
{
+ wrap::system_message( SHELLER );
+ }
+
+ else
+ {
+ while(true)
+ {
if(fgets(buf, READBUF, file) == NULL)
- break;
-
- switch (m_method)
- {
- case METH_NCURSES:
- wrap::system_message( clean_char(buf) );
- break;
- default:
- s_ret.append("\n" + string(buf));
+ break;
+
+ switch (m_method) {
+ case METH_NCURSES:
+ wrap::system_message( clean_char(buf) );
+ break;
+ default:
+ s_ret.append("\n" + string(buf));
} // switch
- }
+ }
- pclose(file);
- }
+ pclose(file);
+ }
- return s_ret;
+ return s_ret;
}
#endif
diff --git a/src/tool/tool.h b/src/tool/tool.h
index e293e5e..b296514 100644
--- a/src/tool/tool.h
+++ b/src/tool/tool.h
@@ -1,27 +1,3 @@
-/*:*
- *: File: ./src/tool/tool.h
- *:
- *: yChat; Homepage: www.yChat.org; Version 0.7.9.5-RELEASE
- *:
- *: Copyright (C) 2003 Paul C. Buetow, Volker Richter
- *: Copyright (C) 2004 Paul C. Buetow
- *: Copyright (C) 2005 EXA Digital Solutions GbR
- *:
- *: This program is free software; you can redistribute it and/or
- *: modify it under the terms of the GNU General Public License
- *: as published by the Free Software Foundation; either version 2
- *: of the License, or (at your option) any later version.
- *:
- *: This program 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 General Public License for more details.
- *:
- *: You should have received a copy of the GNU General Public License
- *: along with this program; if not, write to the Free Software
- *: Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- *:*/
-
#ifndef TOOL_H
#define TOOL_H
@@ -34,20 +10,20 @@ using namespace std;
class tool
{
public:
- static list<string> split_string(string s_string, string s_split);
- static bool is_alpha_numeric( string &s_digit );
- static char* int2char( int i_int );
- static char* clean_char( char* c_str);
- static string trim( string s_str );
- static string replace( string s_string, string s_search, string s_replace );
- static string int2string( int i_int );
- static long unixtime();
- static int string2int( string s_digit );
- static string get_extension( string s_file );
- static string to_lower( string s_str );
- static void strip_html( string *p_str );
- static string shell_command( string s_command, method m_method );
- static string ychat_version();
+ static list<string> split_string(string s_string, string s_split);
+ static bool is_alpha_numeric( string &s_digit );
+ static char* int2char( int i_int );
+ static char* clean_char( char* c_str);
+ static string trim( string s_str );
+ static string replace( string s_string, string s_search, string s_replace );
+ static string int2string( int i_int );
+ static long unixtime();
+ static int string2int( string s_digit );
+ static string get_extension( string s_file );
+ static string to_lower( string s_str );
+ static void strip_html( string *p_str );
+ static string shell_command( string s_command, method m_method );
+ static string ychat_version();
};
#endif