Source Code (Use browser search to find items of interest.)
Class Index
klyx'SendFaxDialog (./klyx/src/SendFaxDialog.h:18)
class SendFaxDialog : public QDialog
{
Q_OBJECT
public:
SendFaxDialog ( LyXView* view, QWidget * parent=0, const char * name=0,
WFlags f=0 );
setFilename( QString _filename ) { filename = _filename; }
setSendCmd( QString _sendcmd ) { sendcmd = _sendcmd; }
setPhone( QString _phone ) { faxnoED->setText( _phone ); }
setName( QString _name ) { destnameED->setText( _name ); }
setCompany( QString _name ) { companyED->setText( _name ); }
private slots:
void okClicked();
void selectfromClicked();
void addtoClicked();
void deletefromClicked();
void saveClicked();
private:
LyXView* _view;
QLineEdit* faxnoED;
QLineEdit* destnameED;
QLineEdit* companyED;
QPushButton* savePB;
QMultiLineEdit* commentML;
QString filename;
QString sendcmd;
};
klyx'SendFaxDialog::SendFaxDialog() (./klyx/src/SendFaxDialog.C:38)
SendFaxDialog::SendFaxDialog( LyXView* view, QWidget * parent,
const char * name,
WFlags f ) :
QDialog( parent, name, true, f ),
_view( view )
{
QGroupBox* destinationGB = new QGroupBox( i18n( "Destination" ),
this );
destinationGB->setGeometry( 10, 10, 370, 140 );
QLabel* faxnoLA = new QLabel( i18n( "Fax no." ), this );
faxnoLA->setGeometry( 40, 30, 60, 30 );
faxnoLA->setAlignment( AlignRight | AlignVCenter );
faxnoED = new QLineEdit( this );
faxnoED->setGeometry( 110, 30, 260, 30 );
QLabel* destnameLA = new QLabel( i18n( "Dest. name" ), this );
destnameLA->setGeometry( 20, 70, 80, 30 );
destnameLA->setAlignment( AlignRight | AlignVCenter );
destnameED = new QLineEdit( this );
destnameED->setGeometry( 110, 70, 260, 30 );
QLabel* companyLA = new QLabel( i18n( "Company" ), this );
companyLA->setGeometry( 30, 110, 70, 30 );
companyLA->setAlignment( AlignRight | AlignVCenter );
companyED = new QLineEdit( this );
companyED->setGeometry( 110, 110, 260, 30 );
QGroupBox* phonebookGB = new QGroupBox( i18n( "Phone Book" ),
this );
phonebookGB->setGeometry( 10, 160, 370, 60 );
QPushButton* selectfromPB = new QPushButton( i18n( "S&elect from" ),
this );
selectfromPB->setGeometry( 20, 180, 80, 30 );
QObject::connect( selectfromPB, SIGNAL( clicked() ),
this, SLOT( selectfromClicked() ) );
QPushButton* addtoPB = new QPushButton( i18n( "&Add to" ),
this );
addtoPB->setGeometry( 110, 180, 80, 30 );
QObject::connect( addtoPB, SIGNAL( clicked() ),
this, SLOT( addtoClicked() ) );
QPushButton* deletefromPB = new QPushButton( i18n( "&Delete from" ),
this );
deletefromPB->setGeometry( 200, 180, 80, 30 );
QObject::connect( deletefromPB, SIGNAL( clicked() ),
this, SLOT( deletefromClicked() ) );
savePB = new QPushButton( i18n( "&Save" ), this );
savePB->setGeometry( 290, 180, 80, 30 );
QObject::connect( savePB, SIGNAL( clicked() ),
this, SLOT( saveClicked() ) );
QGroupBox* commentGB = new QGroupBox( i18n( "Comment" ),
this );
commentGB->setGeometry( 10, 230, 370, 190 );
commentML = new QMultiLineEdit( this );
commentML->setGeometry( 20, 250, 350, 160 );
QPushButton* okPB = new QPushButton( i18n( "OK" ), this );
okPB->setGeometry( 60, 440, 100, 30 );
okPB->setDefault( true );
connect( okPB, SIGNAL( clicked() ), SLOT( okClicked() ) );
QPushButton* cancelPB = new QPushButton( i18n( "Cancel" ),
this );
cancelPB->setGeometry( 230, 440, 100, 30 );
connect( cancelPB, SIGNAL( clicked() ), SLOT( reject() ) );
setCaption( i18n( "Send a fax" ) );
}
klyx'SendFaxDialog::okClicked() (./klyx/src/SendFaxDialog.C:118)
void SendFaxDialog::okClicked()
{
if ( !strlen( faxnoED->text() ) )
return;
LString logfile = TmpFileName( OnlyPath( filename.data() ),"FAX" );
LString cmd = sendcmd.data();
cmd += " >";
cmd += logfile + " 2>";
cmd += logfile;
cmd.subst( "$$Host", getenv( "FAX_SERVER" ) );
cmd.subst( "$$Comment", commentML->text().data() );
cmd.subst( "$$Enterprise", companyED->text() );
cmd.subst( "$$Name", destnameED->text() );
cmd.subst( "$$Phone", faxnoED->text() );
cmd.subst( "$$FName", filename.data() );
lyxerr.print( "CMD: " + cmd );
Systemcalls one( Systemcalls::System, cmd );
if( !logfile.empty() )
{
if( !klyxdialogs->logfile )
klyxdialogs->logfile = new Logfile( _view );
klyxdialogs->logfile->loadFile( logfile.c_str() );
if( klyxdialogs->logfile->isVisible() )
klyxdialogs->logfile->raise();
else
klyxdialogs->logfile->show();
}
remove( logfile.c_str() );
accept();
}
klyx'SendFaxDialog::selectfromClicked() (./klyx/src/SendFaxDialog.C:154)
void SendFaxDialog::selectfromClicked()
{
(void)klyxdialogs->phonebook->exec();
}
klyx'SendFaxDialog::addtoClicked() (./klyx/src/SendFaxDialog.C:160)
void SendFaxDialog::addtoClicked()
{
QString name = destnameED->text();
QString phone = faxnoED->text();
QString company = companyED->text();
if( phone.isEmpty() )
return;
char *buf = new char [50+company.length()];
sprintf(buf,"%-*.*s %-*.*s %s",
LEN_PHONE,LEN_PHONE,phone.data(),
LEN_NAME,LEN_NAME,name.data(),
company.data());
unsigned int i = 0;
for( i = 0; i < klyxdialogs->phonebook->listboxLB->count(); i++ )
{
QString line = klyxdialogs->phonebook->listboxLB->text( i );
if( line == buf )
break;
}
if( i >= klyxdialogs->phonebook->listboxLB->count() )
{
klyxdialogs->phonebook->listboxLB->insertItem( buf );
savePB->setText( i18n( "* Save *" ) );
}
delete[] buf;
}
klyx'SendFaxDialog::deletefromClicked() (./klyx/src/SendFaxDialog.C:193)
void SendFaxDialog::deletefromClicked()
{
QString name = destnameED->text();
QString phone = faxnoED->text();
QString company = companyED->text();
if( phone.isEmpty() )
return;
char *buf = new char [50+company.length()];
sprintf(buf,"%-*.*s %-*.*s %s",
LEN_PHONE,LEN_PHONE,phone.data(),
LEN_NAME,LEN_NAME,name.data(),
company.data());
unsigned int i = 0;
for( i = 0; i < klyxdialogs->phonebook->listboxLB->count(); i++ )
{
QString line = klyxdialogs->phonebook->listboxLB->text( i );
if( line == buf )
break;
}
if( i < klyxdialogs->phonebook->listboxLB->count() )
{
klyxdialogs->phonebook->listboxLB->removeItem( i );
savePB->setText( i18n( "* Save *" ) );
}
delete[] buf;
}
klyx'SendFaxDialog::saveClicked() (./klyx/src/SendFaxDialog.C:225)
void SendFaxDialog::saveClicked()
{
QFile file( klyxdialogs->phonebook->getFilename() );
if( !file.open( IO_WriteOnly | IO_Truncate ) )
{
WriteAlert(i18n("Error!"),i18n("Cannot open phone book: "),phone_book);
return;
}
QTextStream stream( &file );
unsigned int i = 0;
for( i = 0; i < klyxdialogs->phonebook->listboxLB->count(); i++ )
{
QString line = klyxdialogs->phonebook->listboxLB->text( i );
stream << line;
}
file.close();
savePB->setText( i18n( "Save" ) );
}