@ -18,7 +18,6 @@
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
//
# include <qapplication.h>
# include <qfiledialog.h>
# include <qmessagebox.h>
@ -34,8 +33,6 @@
EditSettings : : EditSettings ( QWidget * parent )
: RDDialog ( parent )
{
setModal ( true ) ;
QString sql ;
RDSqlQuery * q ;
@ -45,7 +42,7 @@ EditSettings::EditSettings(QWidget *parent)
// Fix the Window Size
//
setMinimumSize ( sizeHint ( ) ) ;
setMaximumSize ( sizeHint ( ) ) ;
setMaximumHeight ( sizeHint ( ) . heigh t ( ) ) ;
edit_system = new RDSystem ( ) ;
@ -57,37 +54,35 @@ EditSettings::EditSettings(QWidget *parent)
// System Sample Rate
//
edit_sample_rate_box = new QComboBox ( this ) ;
edit_sample_rate_box - > setGeometry ( 250 , 10 , 70 , 20 ) ;
edit_sample_rate_box - > insertItem ( " 32000 " ) ;
edit_sample_rate_box - > insertItem ( " 44100 " ) ;
edit_sample_rate_box - > insertItem ( " 48000 " ) ;
QLabel * label = new QLabel ( edit_sample_rate_box , tr ( " System Sample Rate: " ) , this ) ;
label - > setGeometry ( 10 , 10 , 235 , 20 ) ;
label - > setFont ( labelFont ( ) ) ;
label - > setAlignment ( Qt : : AlignRight | Qt : : AlignVCenter | Qt : : TextShowMnemonic ) ;
label = new QLabel ( tr ( " samples/second " ) , this ) ;
label - > setGeometry ( 325 , 10 , sizeHint ( ) . width ( ) - 285 , 20 ) ;
label - > setFont ( labelFont ( ) ) ;
label - > setAlignment ( Qt : : AlignLeft | Qt : : AlignVCenter | Qt : : TextShowMnemonic ) ;
edit_sample_rate_label =
new QLabel ( edit_sample_rate_box , tr ( " System Sample Rate: " ) , this ) ;
edit_sample_rate_label - > setFont ( labelFont ( ) ) ;
edit_sample_rate_label - >
setAlignment ( Qt : : AlignRight | Qt : : AlignVCenter | Qt : : TextShowMnemonic ) ;
edit_sample_rate_unit_label = new QLabel ( tr ( " samples/second " ) , this ) ;
edit_sample_rate_unit_label - > setGeometry ( 325 , 10 , sizeHint ( ) . width ( ) - 285 , 20 ) ;
edit_sample_rate_unit_label - > setFont ( labelFont ( ) ) ;
edit_sample_rate_unit_label - >
setAlignment ( Qt : : AlignLeft | Qt : : AlignVCenter | Qt : : TextShowMnemonic ) ;
//
// Allow Duplicate Cart Titles Box
//
edit_duplicate_carts_box = new QCheckBox ( this ) ;
edit_duplicate_carts_box - > setGeometry ( 20 , 32 , 15 , 15 ) ;
connect ( edit_duplicate_carts_box , SIGNAL ( toggled ( bool ) ) ,
this , SLOT ( duplicatesCheckedData ( bool ) ) ) ;
label =
edit_duplicate_ label=
new QLabel ( edit_duplicate_carts_box , tr ( " Allow Duplicate Cart Titles " ) , this ) ;
label - > setGeometry ( 40 , 30 , sizeHint ( ) . width ( ) - 50 , 20 ) ;
label - > setFont ( labelFont ( ) ) ;
label - > setAlignment ( Qt : : AlignLeft | Qt : : AlignVCenter | Qt : : TextShowMnemonic ) ;
edit_duplicate_ label- > setFont ( labelFont ( ) ) ;
edit_duplicate_label - >
setAlignment ( Qt : : AlignLeft | Qt : : AlignVCenter | Qt : : TextShowMnemonic ) ;
edit_fix_duplicate_carts_box = new QCheckBox ( this ) ;
edit_fix_duplicate_carts_box - > setGeometry ( 30 , 52 , 15 , 15 ) ;
edit_fix_duplicate_carts_label = new QLabel ( edit_fix_duplicate_carts_box ,
tr ( " Auto-Correct Duplicate Cart Titles " ) , this ) ;
edit_fix_duplicate_carts_label - > setGeometry ( 50 , 50 , sizeHint ( ) . width ( ) - 60 , 20 ) ;
edit_fix_duplicate_carts_label - > setFont ( labelFont ( ) ) ;
edit_fix_duplicate_carts_label - >
setAlignment ( Qt : : AlignLeft | Qt : : AlignVCenter | Qt : : TextShowMnemonic ) ;
@ -96,77 +91,93 @@ EditSettings::EditSettings(QWidget *parent)
// ISCI Cross Reference Path
//
edit_isci_path_edit = new QLineEdit ( this ) ;
edit_isci_path_edit - > setGeometry ( 250 , 76 , sizeHint ( ) . width ( ) - 260 , 20 ) ;
label = new QLabel ( edit_isci_path_edit , tr ( " ISCI Cross Reference Path: " ) , this ) ;
label - > setGeometry ( 10 , 76 , 235 , 20 ) ;
label - > setFont ( labelFont ( ) ) ;
label - > setAlignment ( Qt : : AlignRight | Qt : : AlignVCenter | Qt : : TextShowMnemonic ) ;
edit_isci_path_label =
new QLabel ( edit_isci_path_edit , tr ( " ISCI Cross Reference Path: " ) , this ) ;
edit_isci_path_ label- > setFont ( labelFont ( ) ) ;
edit_isci_path_ label- >
setAlignment ( Qt : : AlignRight | Qt : : AlignVCenter | Qt : : TextShowMnemonic ) ;
//
// Notification Address
//
edit_notification_address_edit = new QLineEdit ( this ) ;
edit_notification_address_edit - > setGeometry ( 250 , 98 , 150 , 20 ) ;
label = new QLabel ( edit_notification_address_edit , tr ( " Multicast Address for Notifications " ) , this ) ;
label - > setGeometry ( 10 , 98 , 235 , 20 ) ;
label - > setFont ( labelFont ( ) ) ;
label - > setAlignment ( Qt : : AlignRight | Qt : : AlignVCenter | Qt : : TextShowMnemonic ) ;
edit_notification_address_label =
new QLabel ( edit_notification_address_edit ,
tr ( " Multicast Address for Notifications " ) , this ) ;
edit_notification_address_label - > setFont ( labelFont ( ) ) ;
edit_notification_address_label - >
setAlignment ( Qt : : AlignRight | Qt : : AlignVCenter | Qt : : TextShowMnemonic ) ;
//
// Maximum POST Size
//
edit_maxpost_spin = new QSpinBox ( this ) ;
edit_maxpost_spin - > setGeometry ( 250 , 120 , 60 , 20 ) ;
edit_maxpost_spin - > setRange ( 1 , 1000 ) ;
label = new QLabel ( edit_maxpost_spin , tr ( " Maximum Remote Post Length: " ) , this ) ;
label - > setGeometry ( 10 , 120 , 235 , 20 ) ;
label - > setFont ( labelFont ( ) ) ;
label - > setAlignment ( Qt : : AlignRight | Qt : : AlignVCenter | Qt : : TextShowMnemonic ) ;
label = new QLabel ( tr ( " Mbytes " ) , this ) ;
label - > setGeometry ( 315 , 120 , 60 , 20 ) ;
label - > setFont ( labelFont ( ) ) ;
label - > setAlignment ( Qt : : AlignLeft | Qt : : AlignVCenter | Qt : : TextShowMnemonic ) ;
edit_maxpost_label =
new QLabel ( edit_maxpost_spin , tr ( " Maximum Remote Post Length: " ) , this ) ;
edit_maxpost_label - > setFont ( labelFont ( ) ) ;
edit_maxpost_label - >
setAlignment ( Qt : : AlignRight | Qt : : AlignVCenter | Qt : : TextShowMnemonic ) ;
edit_maxpost_unit_label = new QLabel ( tr ( " Mbytes " ) , this ) ;
edit_maxpost_unit_label - > setFont ( labelFont ( ) ) ;
edit_maxpost_unit_label - >
setAlignment ( Qt : : AlignLeft | Qt : : AlignVCenter | Qt : : TextShowMnemonic ) ;
//
// Temporary Cart Group
//
edit_temp_cart_group_box = new QComboBox ( this ) ;
edit_temp_cart_group_box - > setGeometry ( 250 , 141 , 100 , 20 ) ;
sql = " select NAME from GROUPS order by NAME " ;
q = new RDSqlQuery ( sql ) ;
while ( q - > next ( ) ) {
edit_temp_cart_group_box - > insertItem ( q - > value ( 0 ) . toString ( ) ) ;
}
delete q ;
label = new QLabel ( edit_temp_cart_group_box , tr ( " Temporary Cart Group: " ) , this ) ;
label - > setGeometry ( 10 , 141 , 235 , 20 ) ;
label - > setFont ( labelFont ( ) ) ;
label - > setAlignment ( Qt : : AlignRight | Qt : : AlignVCenter | Qt : : TextShowMnemonic ) ;
edit_temp_cart_group_label =
new QLabel ( edit_temp_cart_group_box , tr ( " Temporary Cart Group: " ) , this ) ;
edit_temp_cart_group_label - > setFont ( labelFont ( ) ) ;
edit_temp_cart_group_label - >
setAlignment ( Qt : : AlignRight | Qt : : AlignVCenter | Qt : : TextShowMnemonic ) ;
//
// Show User List
//
edit_show_user_list_box = new QCheckBox ( this ) ;
edit_show_user_list_box - > setGeometry ( 20 , 165 , 15 , 15 ) ;
connect ( edit_show_user_list_box , SIGNAL ( toggled ( bool ) ) ,
this , SLOT ( duplicatesCheckedData ( bool ) ) ) ;
label =
edit_show_user_list_ label=
new QLabel ( edit_show_user_list_box , tr ( " Show User List in RDLogin " ) , this ) ;
label - > setGeometry ( 40 , 163 , sizeHint ( ) . width ( ) - 50 , 20 ) ;
label - > setFont ( labelFont ( ) ) ;
label - > setAlignment ( Qt : : AlignLeft | Qt : : AlignVCenter | Qt : : TextShowMnemonic ) ;
edit_show_user_list_label - > setFont ( labelFont ( ) ) ;
edit_show_user_list_label - >
setAlignment ( Qt : : AlignLeft | Qt : : AlignVCenter | Qt : : TextShowMnemonic ) ;
//
// RSS Processor Host
//
edit_rss_processor_box = new QComboBox ( this ) ;
sql = QString ( " select NAME from STATIONS order by NAME " ) ;
q = new RDSqlQuery ( sql ) ;
edit_rss_processor_box - > insertItem ( 0 , tr ( " [none] " ) ) ;
while ( q - > next ( ) ) {
edit_rss_processor_box - > insertItem ( edit_rss_processor_box - > count ( ) ,
q - > value ( 0 ) . toString ( ) ) ;
}
delete q ;
edit_rss_processor_label =
new QLabel ( edit_rss_processor_box , tr ( " Process RSS Updates On " ) + " : " , this ) ;
edit_rss_processor_label - > setFont ( labelFont ( ) ) ;
edit_rss_processor_label - >
setAlignment ( Qt : : AlignRight | Qt : : AlignVCenter | Qt : : TextShowMnemonic ) ;
//
// Duplicate List (initially hidden)
//
edit_duplicate_label = new QLabel ( this ) ;
edit_duplicate_label - > setText ( tr ( " The following duplicate titles must be corrected before \" Allow Duplicate Values \" can be turned off. " ) ) ;
edit_duplicate_label - > setWordWrap ( true ) ;
edit_duplicate_label - > setGeometry ( 15 , 186 , sizeHint ( ) . width ( ) - 30 , 50 ) ;
edit_duplicate_label - > setFont ( subLabelFont ( ) ) ;
edit_duplicate_label - > hide ( ) ;
edit_duplicate_hidden_label = new QLabel ( this ) ;
edit_duplicate_hidden_label - > setText ( tr ( " The following duplicate titles must be corrected before \" Allow Duplicate Values \" can be turned off. " ) ) ;
edit_duplicate_hidden_label - > setWordWrap ( true ) ;
edit_duplicate_hidden_label - > setFont ( subLabelFont ( ) ) ;
edit_duplicate_hidden_label - > hide ( ) ;
edit_duplicate_list = new Q3ListView ( this ) ;
edit_duplicate_list - > setGeometry ( 10 , 234 , sizeHint ( ) . width ( ) - 20 , 215 ) ;
edit_duplicate_list - > setItemMargin ( 5 ) ;
edit_duplicate_list - > setAllColumnsShowFocus ( true ) ;
edit_duplicate_list - > addColumn ( tr ( " Cart " ) ) ;
@ -175,8 +186,6 @@ EditSettings::EditSettings(QWidget *parent)
edit_duplicate_list - > setColumnAlignment ( 1 , Qt : : AlignLeft ) ;
edit_duplicate_list - > hide ( ) ;
edit_save_button = new QPushButton ( this ) ;
edit_save_button - >
setGeometry ( sizeHint ( ) . width ( ) - 85 , 454 , 70 , 25 ) ;
edit_save_button - > setFont ( buttonFont ( ) ) ;
edit_save_button - > setText ( tr ( " &Save List " ) ) ;
connect ( edit_save_button , SIGNAL ( clicked ( ) ) , this , SLOT ( saveData ( ) ) ) ;
@ -186,8 +195,6 @@ EditSettings::EditSettings(QWidget *parent)
// Ok Button
//
edit_ok_button = new QPushButton ( this ) ;
edit_ok_button - > setGeometry ( sizeHint ( ) . width ( ) - 180 , sizeHint ( ) . height ( ) - 60 ,
80 , 50 ) ;
edit_ok_button - > setFont ( buttonFont ( ) ) ;
edit_ok_button - > setText ( tr ( " &OK " ) ) ;
connect ( edit_ok_button , SIGNAL ( clicked ( ) ) , this , SLOT ( okData ( ) ) ) ;
@ -196,8 +203,6 @@ EditSettings::EditSettings(QWidget *parent)
// Cancel Button
//
edit_cancel_button = new QPushButton ( this ) ;
edit_cancel_button - > setGeometry ( sizeHint ( ) . width ( ) - 90 , sizeHint ( ) . height ( ) - 60 ,
80 , 50 ) ;
edit_cancel_button - > setFont ( buttonFont ( ) ) ;
edit_cancel_button - > setText ( tr ( " &Cancel " ) ) ;
connect ( edit_cancel_button , SIGNAL ( clicked ( ) ) , this , SLOT ( cancelData ( ) ) ) ;
@ -212,6 +217,16 @@ EditSettings::EditSettings(QWidget *parent)
setText ( edit_system - > notificationAddress ( ) . toString ( ) ) ;
edit_show_user_list_box - > setChecked ( edit_system - > showUserList ( ) ) ;
QString station = edit_system - > rssProcessorStation ( ) ;
for ( int i = 0 ; i < edit_rss_processor_box - > count ( ) ; i + + ) {
if ( edit_rss_processor_box - > text ( i ) = = station ) {
edit_rss_processor_box - > setCurrentIndex ( i ) ;
}
}
for ( int i = 0 ; i < edit_sample_rate_box - > count ( ) ; i + + ) {
if ( edit_sample_rate_box - > text ( i ) . toUInt ( ) = = edit_system - > sampleRate ( ) ) {
edit_sample_rate_box - > setCurrentItem ( i ) ;
@ -236,7 +251,7 @@ EditSettings::~EditSettings()
QSize EditSettings : : sizeHint ( ) const
{
return QSize ( 500 , 262 + y_pos ) ;
return QSize ( 500 , 284 + y_pos ) ;
}
@ -350,7 +365,7 @@ void EditSettings::okData()
setMinimumHeight ( sizeHint ( ) . height ( ) ) ;
setMaximumHeight ( sizeHint ( ) . height ( ) ) ;
edit_duplicate_carts_box - > setChecked ( true ) ;
edit_duplicate_label - > show ( ) ;
edit_duplicate_hidden_ label - > show ( ) ;
edit_duplicate_list - > show ( ) ;
edit_save_button - > show ( ) ;
edit_duplicate_list - > clear ( ) ;
@ -402,6 +417,12 @@ void EditSettings::okData()
setNotificationAddress ( QHostAddress ( edit_notification_address_edit - > text ( ) ) ) ;
edit_system - > setTempCartGroup ( edit_temp_cart_group_box - > currentText ( ) ) ;
edit_system - > setShowUserList ( edit_show_user_list_box - > isChecked ( ) ) ;
if ( edit_rss_processor_box - > currentIndex ( ) = = 0 ) {
edit_system - > setRssProcessorStation ( ) ;
}
else {
edit_system - > setRssProcessorStation ( edit_rss_processor_box - > currentText ( ) ) ;
}
done ( 0 ) ;
}
@ -433,3 +454,41 @@ void EditSettings::BuildDuplicatesList(std::map<unsigned,QString> *dups)
}
delete q ;
}
void EditSettings : : resizeEvent ( QResizeEvent * e )
{
edit_sample_rate_box - > setGeometry ( 250 , 10 , 70 , 20 ) ;
edit_sample_rate_label - > setGeometry ( 10 , 10 , 235 , 20 ) ;
edit_duplicate_carts_box - > setGeometry ( 20 , 32 , 15 , 15 ) ;
edit_duplicate_label - > setGeometry ( 40 , 30 , size ( ) . width ( ) - 50 , 20 ) ;
edit_fix_duplicate_carts_box - > setGeometry ( 30 , 52 , 15 , 15 ) ;
edit_fix_duplicate_carts_label - > setGeometry ( 50 , 50 , size ( ) . width ( ) - 60 , 20 ) ;
edit_show_user_list_box - > setGeometry ( 20 , 74 , 15 , 15 ) ;
edit_show_user_list_label - > setGeometry ( 40 , 72 , size ( ) . width ( ) - 50 , 20 ) ;
edit_isci_path_edit - > setGeometry ( 250 , 98 , size ( ) . width ( ) - 260 , 20 ) ;
edit_isci_path_label - > setGeometry ( 10 , 98 , 235 , 20 ) ;
edit_notification_address_edit - > setGeometry ( 250 , 120 , 150 , 20 ) ;
edit_notification_address_label - > setGeometry ( 10 , 120 , 235 , 20 ) ;
edit_maxpost_spin - > setGeometry ( 250 , 142 , 60 , 20 ) ;
edit_maxpost_label - > setGeometry ( 10 , 142 , 235 , 20 ) ;
edit_maxpost_unit_label - > setGeometry ( 315 , 142 , 60 , 20 ) ;
edit_temp_cart_group_box - > setGeometry ( 250 , 163 , 100 , 20 ) ;
edit_temp_cart_group_label - > setGeometry ( 10 , 163 , 235 , 20 ) ;
edit_rss_processor_label - > setGeometry ( 10 , 185 , 235 , 20 ) ;
edit_rss_processor_box - > setGeometry ( 250 , 185 , 200 , 20 ) ;
edit_duplicate_hidden_label - > setGeometry ( 15 , 186 , size ( ) . width ( ) - 30 , 50 ) ;
edit_duplicate_list - > setGeometry ( 10 , 234 , size ( ) . width ( ) - 20 , 215 ) ;
edit_save_button - > setGeometry ( size ( ) . width ( ) - 85 , 454 , 70 , 25 ) ;
edit_ok_button - > setGeometry ( size ( ) . width ( ) - 180 , size ( ) . height ( ) - 60 , 80 , 50 ) ;
edit_cancel_button - > setGeometry ( size ( ) . width ( ) - 90 , size ( ) . height ( ) - 60 , 80 , 50 ) ;
}