summaryrefslogtreecommitdiff
path: root/noncore/settings/networksettings2/lancard
Side-by-side diff
Diffstat (limited to 'noncore/settings/networksettings2/lancard') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/networksettings2/lancard/lancard_NN.cpp29
-rw-r--r--noncore/settings/networksettings2/lancard/lancard_NN.h11
-rw-r--r--noncore/settings/networksettings2/lancard/lancard_NNI.cpp15
-rw-r--r--noncore/settings/networksettings2/lancard/lancard_NNI.h6
-rw-r--r--noncore/settings/networksettings2/lancard/lancardrun.h5
5 files changed, 32 insertions, 34 deletions
diff --git a/noncore/settings/networksettings2/lancard/lancard_NN.cpp b/noncore/settings/networksettings2/lancard/lancard_NN.cpp
index 7d36918..480ddf9 100644
--- a/noncore/settings/networksettings2/lancard/lancard_NN.cpp
+++ b/noncore/settings/networksettings2/lancard/lancard_NN.cpp
@@ -21,47 +21,52 @@ const QString LanCardNetNode::nodeDescription(){
<p>Sets up a wired regular LAN card.</p>\
<p>Use this to set up 10/100/1000 MBit LAN cards.</p>\
"
);
}
ANetNodeInstance * LanCardNetNode::createInstance( void ) {
return new ALanCard( this );
}
const char ** LanCardNetNode::needs( void ) {
return LanCardNeeds;
}
const char * LanCardNetNode::provides( void ) {
return "device";
}
bool LanCardNetNode::generateProperFilesFor(
ANetNodeInstance * ) {
return 1;
}
-bool LanCardNetNode::hasDataFor( const QString & S, bool DS ) {
- return DS && S == "interfaces";
-}
-
-bool LanCardNetNode::generateDataForCommonFile(
- SystemFile & ,
- long ,
- ANetNodeInstance * ) {
- return 1;
+bool LanCardNetNode::hasDataFor( const QString & S ) {
+ return S == "interfaces";
}
bool LanCardNetNode::generateDeviceDataForCommonFile(
SystemFile & S ,
- long DevNr ,
- ANetNodeInstance * NNI ) {
- return ((ALanCard *)NNI)->generateDeviceDataForCommonFile(S, DevNr);
+ long DevNr ) {
+ QString NIC = genNic( DevNr );
+
+ if( S.name() == "interfaces" ) {
+ // generate mapping stanza for this interface
+ S << "# check if " << NIC << " can be brought UP" << endl;
+ S << "mapping " << NIC << endl;
+ S << " script networksettings2-request" << endl << endl;
+ }
+ return 0;
+}
+
+QString LanCardNetNode::genNic( long nr ) {
+ QString S;
+ return S.sprintf( "eth%ld", nr );
}
extern "C" {
void create_plugin( QList<ANetNode> & PNN ) {
PNN.append( new LanCardNetNode() );
}
}
diff --git a/noncore/settings/networksettings2/lancard/lancard_NN.h b/noncore/settings/networksettings2/lancard/lancard_NN.h
index 9690c76..dcdd0da 100644
--- a/noncore/settings/networksettings2/lancard/lancard_NN.h
+++ b/noncore/settings/networksettings2/lancard/lancard_NN.h
@@ -7,40 +7,43 @@ class ALanCard;
class LanCardNetNode : public ANetNode{
Q_OBJECT
public:
LanCardNetNode();
virtual ~LanCardNetNode();
virtual const QString pixmapName()
{ return "Devices/card"; }
virtual const QString nodeName()
{ return tr("LAN card"); }
virtual const QString nodeDescription() ;
virtual ANetNodeInstance * createInstance( void );
virtual const char ** needs( void );
virtual const char * provides( void );
virtual bool generateProperFilesFor( ANetNodeInstance * NNI );
- virtual bool hasDataFor( const QString & S, bool DS );
- virtual bool generateDataForCommonFile(
- SystemFile & SF, long DevNr, ANetNodeInstance * NNI );
+ virtual bool hasDataFor( const QString & S );
virtual bool generateDeviceDataForCommonFile(
- SystemFile & SF, long DevNr, ANetNodeInstance * NNI );
+ SystemFile & SF, long DevNr );
+
+ virtual long instanceCount( void )
+ { return 2; }
+
+ virtual QString genNic( long );
private:
};
extern "C"
{
void create_plugin( QList<ANetNode> & PNN );
};
#endif
diff --git a/noncore/settings/networksettings2/lancard/lancard_NNI.cpp b/noncore/settings/networksettings2/lancard/lancard_NNI.cpp
index a6401db..5962d52 100644
--- a/noncore/settings/networksettings2/lancard/lancard_NNI.cpp
+++ b/noncore/settings/networksettings2/lancard/lancard_NNI.cpp
@@ -22,37 +22,30 @@ void ALanCard::setSpecificAttribute( QString & A, QString & V ) {
void ALanCard::saveSpecificAttribute( QTextStream & TS) {
TS << "matchanycard=" <<
((Data.AnyLanCard) ? "yes" : "no") << endl;
for( QStringList::Iterator it = Data.HWAddresses.begin();
it != Data.HWAddresses.end(); ++it ) {
TS << "match=" << quote( *it ) << endl;
}
}
QWidget * ALanCard::edit( QWidget * parent ) {
GUI = new LanCardEdit( parent );
GUI->showData( Data );
return GUI;
}
QString ALanCard::acceptable( void ) {
return ( GUI ) ? GUI->acceptable( ) : QString();
}
void ALanCard::commit( void ) {
if( GUI && GUI->commit( Data ) )
setModified( 1 );
}
-bool ALanCard::generateDeviceDataForCommonFile( SystemFile & S, long DevNr ) {
- AsDevice * Dev = runtime()->device();
- QString NIC = Dev->genNic( DevNr );
-
- if( S.name() == "interfaces" ) {
- // generate mapping stanza for this interface
- S << "# check if " << NIC << " can be brought UP" << endl;
- S << "mapping " << NIC << endl;
- S << " script networksettings2-request" << endl << endl;
- }
- return 0;
+bool ALanCard::generateDataForCommonFile(
+ SystemFile & ,
+ long ) {
+ return 1;
}
diff --git a/noncore/settings/networksettings2/lancard/lancard_NNI.h b/noncore/settings/networksettings2/lancard/lancard_NNI.h
index 16f5f56..4e91523 100644
--- a/noncore/settings/networksettings2/lancard/lancard_NNI.h
+++ b/noncore/settings/networksettings2/lancard/lancard_NNI.h
@@ -6,40 +6,42 @@
#include "lancardrun.h"
class LanCardNetNode;
class LanCardEdit;
class ALanCard : public ANetNodeInstance {
public :
ALanCard( LanCardNetNode * PNN );
QWidget * edit( QWidget * parent );
QString acceptable( void );
void commit( void );
RuntimeInfo * runtime( void )
{ if( RT == 0 )
RT = new LanCardRun( this, Data );
return RT;
}
virtual void * data( void )
{ return (void *)&Data; }
- bool generateDeviceDataForCommonFile( SystemFile & S, long DevNr );
-
+ virtual bool hasDataFor( const QString & )
+ { return 0; }
+ virtual bool generateDataForCommonFile(
+ SystemFile & S, long DevNr );
protected :
virtual void setSpecificAttribute( QString & Attr, QString & Value );
virtual void saveSpecificAttribute( QTextStream & TS );
private :
LanCardEdit * GUI;
LanCardData Data;
LanCardRun * RT;
};
#endif
diff --git a/noncore/settings/networksettings2/lancard/lancardrun.h b/noncore/settings/networksettings2/lancard/lancardrun.h
index 8dbd1b1..499b417 100644
--- a/noncore/settings/networksettings2/lancard/lancardrun.h
+++ b/noncore/settings/networksettings2/lancard/lancardrun.h
@@ -1,42 +1,37 @@
#ifndef LANCARDRUN_H
#define LANCARDRUN_H
#include <asdevice.h>
#include <qregexp.h>
#include "lancarddata.h"
class LanCardRun : public AsDevice {
public :
LanCardRun( ANetNodeInstance * NNI,
LanCardData & Data ) : AsDevice( NNI ),
Pat( "eth[0-9]" )
{ }
- virtual long count( void )
- { return 2; }
- virtual QString genNic( long nr )
- { QString S; return S.sprintf( "eth%ld", nr ); }
-
virtual AsDevice * device( void )
{ return (AsDevice *)this; }
virtual AsDevice * asDevice( void )
{ return (AsDevice *)this; }
protected :
void detectState( NodeCollection * NC );
bool setState( NodeCollection * NC, Action_t A );
bool canSetState( State_t Curr, Action_t A );
bool handlesInterface( const QString & I );
private :
InterfaceInfo * getInterface( void );
QRegExp Pat;
};
#endif