/*************************************************************************** smb4kbookmark.cpp - A bookmark container. ------------------- begin : Feb 04 2004 copyright : (C) 2004 by Franck Babin (C) 2005-2007 by Alexander Reinholdt email : babinfranck@yahoo.ca dustpuppy@mail.berlios.de ***************************************************************************/ /*************************************************************************** * 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., 51 Franklin Street, Fifth Floor, Boston, * * MA 02110-1301 USA * ***************************************************************************/ // KDE includes #include // application specific includes #include "smb4kbookmark.h" #include "smb4knetworkitems.h" Smb4KBookmark::Smb4KBookmark( const TQString &host, const TQString &share, const TQString &workgroup, const TQString &ip, const TQString &type, const TQString &label ) : m_host( host ), m_share( share ), m_workgroup( workgroup ), m_type( type ), m_label( label ) { //FIXME should throw an exception if one of the param is empty m_ip = ipIsValid( ip ) ? ip : TQString(); m_bookmark = TQString( "//%1/%2" ).arg( m_host, m_share ); } Smb4KBookmark::Smb4KBookmark( Smb4KShareItem *item, const TQString &ip, const TQString &label ) : m_host( item->host() ), m_share( item->name() ), m_workgroup( item->workgroup() ), m_type( item->plainType() ), m_label( label ) { m_ip = ipIsValid( ip ) ? ip : TQString(); m_bookmark = TQString( "//%1/%2" ).arg( m_host, m_share ); } Smb4KBookmark::~Smb4KBookmark() { } void Smb4KBookmark::setShareName( const TQString &name ) { m_share = name; m_bookmark = TQString( "//%1/%2" ).arg( m_host, m_share ); } void Smb4KBookmark::setIP( const TQString &ip ) { m_ip = ipIsValid( ip ) ? ip : TQString(); } void Smb4KBookmark::setLabel( const TQString &text ) { m_label = text; } bool Smb4KBookmark::ipIsValid( const TQString &ip ) { if ( !ip.isEmpty() ) { KNetwork::KIpAddress ip_address = KNetwork::KIpAddress( ip ); if ( !ip_address.isIPv4Addr() && !ip_address.isIPv6Addr() ) { return false; } } else { return false; } return true; }