#! /bin/bash
# 2006.12.14
DATE=$(date +20%y.%m.%d)

if [ $# -lt 1 ]
then
	echo "Usage : newclass [classname]"
	echo "Wrong Number of Argument"
	exit 1
fi

if [ -f ./$1.cpp ]
then
	echo "$1.cpp already exists!"
	exit 1
fi

if [ -f ./$1.h ]
then
	echo "$1.h already exists!"
	exit 1
fi

CLASS=`echo $1 | sed 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
DEFNAME=`echo $CLASS | sed 's/.*/__C&_H__/'`

FIRST=`echo $1 | cut -c1 | sed 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRS
TUVWXYZ/'`
LAST=`echo $1 | sed 's/.\(.*\)/\1/'`
CLASSNAME=C$FIRST$LAST

touch $1.cpp $1.h

echo "#include \"$1.h\"" > $1.cpp
echo "// $DATE" >> $1.cpp
echo "// butcool@hitel.net" >> $1.cpp
echo "// " >> $1.cpp
echo "" >> $1.cpp
echo "" >> $1.cpp
echo "$CLASSNAME::$CLASSNAME()" >> $1.cpp
echo "{" >> $1.cpp
echo "" >> $1.cpp
echo "}" >> $1.cpp
echo "" >> $1.cpp
echo "$CLASSNAME::~$CLASSNAME()" >> $1.cpp
echo "{" >> $1.cpp
echo "" >> $1.cpp
echo "}" >> $1.cpp
echo "" >> $1.cpp
echo "// vim: set fdm=marker:" >> $1.cpp
echo "#ifndef $DEFNAME" > $1.h
echo "#define $DEFNAME" >> $1.h
echo "// $DATE" >> $1.h
echo "// butcool@hitel.net" >> $1.h
echo "// " >> $1.h
echo "" >> $1.h
echo "" >> $1.h
echo "class $CLASSNAME" >> $1.h
echo "{" >> $1.h
echo "public: " >> $1.h
echo "   $CLASSNAME();" >> $1.h
echo "   ~$CLASSNAME();" >> $1.h
echo "" >> $1.h
echo "private: " >> $1.h
echo "" >> $1.h
echo "" >> $1.h
echo "};" >> $1.h
echo "" >> $1.h
echo "" >> $1.h
echo "#endif // $DEFNAME" >> $1.h
echo "" >> $1.h
echo "// vim: set fdm=marker:" >> $1.h
