author | llornkcor <llornkcor> | 2002-09-25 00:57:41 (UTC) |
---|---|---|
committer | llornkcor <llornkcor> | 2002-09-25 00:57:41 (UTC) |
commit | aec4470eeec00493e92680f36a0f58964abdbe8a (patch) (unidiff) | |
tree | aff353d875cfb1e30eccd01330617309618f5575 | |
parent | b4c23347000668cc111418cce4ec2822977e5c9d (diff) | |
download | opie-aec4470eeec00493e92680f36a0f58964abdbe8a.zip opie-aec4470eeec00493e92680f36a0f58964abdbe8a.tar.gz opie-aec4470eeec00493e92680f36a0f58964abdbe8a.tar.bz2 |
change to reflect familiar's record/memo button sending Key_24 now
-rw-r--r-- | core/applets/vmemo/vmemo.cpp | 2 | ||||
-rw-r--r-- | noncore/settings/sound/soundsettingsbase.cpp | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/core/applets/vmemo/vmemo.cpp b/core/applets/vmemo/vmemo.cpp index 226f058..d6128a6 100644 --- a/core/applets/vmemo/vmemo.cpp +++ b/core/applets/vmemo/vmemo.cpp | |||
@@ -509,126 +509,126 @@ bool VMemo::record() { | |||
509 | // } else { // 16 bit only capabilities | 509 | // } else { // 16 bit only capabilities |
510 | 510 | ||
511 | msg.sprintf("Recording format other"); | 511 | msg.sprintf("Recording format other"); |
512 | qDebug(msg); | 512 | qDebug(msg); |
513 | 513 | ||
514 | int bufsize=1024; | 514 | int bufsize=1024; |
515 | int bytesWritten=0; | 515 | int bytesWritten=0; |
516 | signed short sound[1024], monoBuffer[1024]; | 516 | signed short sound[1024], monoBuffer[1024]; |
517 | char abuf[bufsize/2]; | 517 | char abuf[bufsize/2]; |
518 | short sbuf[bufsize]; | 518 | short sbuf[bufsize]; |
519 | Config vmCfg("Vmemo"); | 519 | Config vmCfg("Vmemo"); |
520 | vmCfg.setGroup("Defaults"); | 520 | vmCfg.setGroup("Defaults"); |
521 | useADPCM = vmCfg.readBoolEntry("use_ADPCM", 0); | 521 | useADPCM = vmCfg.readBoolEntry("use_ADPCM", 0); |
522 | 522 | ||
523 | while(recording) { | 523 | while(recording) { |
524 | 524 | ||
525 | if(useADPCM) | 525 | if(useADPCM) |
526 | result = read( dsp, sbuf, bufsize); // 8192 | 526 | result = read( dsp, sbuf, bufsize); // 8192 |
527 | else | 527 | else |
528 | result = read(dsp, sound, 1024); // 8192 | 528 | result = read(dsp, sound, 1024); // 8192 |
529 | if( result <= 0) { | 529 | if( result <= 0) { |
530 | perror("recording error "); | 530 | perror("recording error "); |
531 | // qDebug(currentFileName); | 531 | // qDebug(currentFileName); |
532 | QMessageBox::message(tr("Note"),tr("error recording")); | 532 | QMessageBox::message(tr("Note"),tr("error recording")); |
533 | recording=FALSE; | 533 | recording=FALSE; |
534 | break; | 534 | break; |
535 | return FALSE; | 535 | return FALSE; |
536 | } | 536 | } |
537 | 537 | ||
538 | if(useADPCM) { | 538 | if(useADPCM) { |
539 | adpcm_coder( sbuf, abuf, result/2, &encoder_state); | 539 | adpcm_coder( sbuf, abuf, result/2, &encoder_state); |
540 | bytesWritten = ::write(wav, abuf, result/4); | 540 | bytesWritten = ::write(wav, abuf, result/4); |
541 | 541 | ||
542 | } else { | 542 | } else { |
543 | for (int i = 0; i < result; i++) { //since Z is mono do normally | 543 | for (int i = 0; i < result; i++) { //since Z is mono do normally |
544 | monoBuffer[i] = sound[i]; | 544 | monoBuffer[i] = sound[i]; |
545 | } | 545 | } |
546 | 546 | ||
547 | length+=write(wav, monoBuffer, result); | 547 | length+=write(wav, monoBuffer, result); |
548 | } | 548 | } |
549 | length +=bytesWritten; | 549 | length +=bytesWritten; |
550 | 550 | ||
551 | if(length<0) { | 551 | if(length<0) { |
552 | recording=false; | 552 | recording=false; |
553 | perror("dev/dsp's is a lookin' messy"); | 553 | perror("dev/dsp's is a lookin' messy"); |
554 | QMessageBox::message("Vmemo","Error writing to file\n"+ fileName); | 554 | QMessageBox::message("Vmemo","Error writing to file\n"+ fileName); |
555 | break; | 555 | break; |
556 | return FALSE; | 556 | return FALSE; |
557 | } | 557 | } |
558 | // printf("%d\r",length); | 558 | // printf("%d\r",length); |
559 | // fflush(stdout); | 559 | // fflush(stdout); |
560 | qApp->processEvents(); | 560 | qApp->processEvents(); |
561 | } | 561 | } |
562 | // qDebug("file has length of %d lasting %d seconds", | 562 | // qDebug("file has length of %d lasting %d seconds", |
563 | // length, (( length / speed) / channels) / 2 ); | 563 | // length, (( length / speed) / channels) / 2 ); |
564 | // } | 564 | // } |
565 | 565 | ||
566 | //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<// | 566 | //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<// |
567 | 567 | ||
568 | value = length+36; | 568 | value = length+36; |
569 | 569 | ||
570 | lseek(wav, 4, SEEK_SET); | 570 | lseek(wav, 4, SEEK_SET); |
571 | write(wav, &value, 4); | 571 | write(wav, &value, 4); |
572 | lseek(wav, 40, SEEK_SET); | 572 | lseek(wav, 40, SEEK_SET); |
573 | 573 | ||
574 | write(wav, &length, 4); | 574 | write(wav, &length, 4); |
575 | 575 | ||
576 | track.close(); | 576 | track.close(); |
577 | qDebug("Track closed"); | 577 | qDebug("Track closed"); |
578 | 578 | ||
579 | if( ioctl( dsp, SNDCTL_DSP_RESET,0) == -1) | 579 | if( ioctl( dsp, SNDCTL_DSP_RESET,0) == -1) |
580 | perror("ioctl(\"SNDCTL_DSP_RESET\")"); | 580 | perror("ioctl(\"SNDCTL_DSP_RESET\")"); |
581 | 581 | ||
582 | ::close(dsp); | 582 | ::close(dsp); |
583 | 583 | ||
584 | qDebug("done recording "+fileName); | 584 | qDebug("done recording "+fileName); |
585 | 585 | ||
586 | Config cfg("qpe"); | 586 | Config cfg("qpe"); |
587 | cfg.setGroup("Volume"); | 587 | cfg.setGroup("Volume"); |
588 | QString foo = cfg.readEntry("Mute","TRUE"); | 588 | QString foo = cfg.readEntry("Mute","TRUE"); |
589 | if(foo.find("TRUE",0,TRUE) != -1) | 589 | if(foo.find("TRUE",0,TRUE) != -1) |
590 | QCopEnvelope( "QPE/System", "volumeChange(bool)" ) << TRUE; //mute | 590 | QCopEnvelope( "QPE/System", "volumeChange(bool)" ) << TRUE; //mute |
591 | return TRUE; | 591 | return TRUE; |
592 | } | 592 | } |
593 | 593 | ||
594 | int VMemo::setToggleButton(int tog) { | 594 | int VMemo::setToggleButton(int tog) { |
595 | 595 | ||
596 | for( int i=0; i < 10;i++) { | 596 | for( int i=0; i < 10;i++) { |
597 | switch (tog) { | 597 | switch (tog) { |
598 | case 0: | 598 | case 0: |
599 | return -1; | 599 | return -1; |
600 | break; | 600 | break; |
601 | case 1: | 601 | case 1: |
602 | return 0; | 602 | return 0; |
603 | break; | 603 | break; |
604 | case 2: | 604 | case 2: |
605 | return Key_Escape; | 605 | return Key_F24; //was Escape |
606 | break; | 606 | break; |
607 | case 3: | 607 | case 3: |
608 | return Key_Space; | 608 | return Key_Space; |
609 | break; | 609 | break; |
610 | case 4: | 610 | case 4: |
611 | return Key_F12; | 611 | return Key_F12; |
612 | break; | 612 | break; |
613 | case 5: | 613 | case 5: |
614 | return Key_F9; | 614 | return Key_F9; |
615 | break; | 615 | break; |
616 | case 6: | 616 | case 6: |
617 | return Key_F10; | 617 | return Key_F10; |
618 | break; | 618 | break; |
619 | case 7: | 619 | case 7: |
620 | return Key_F11; | 620 | return Key_F11; |
621 | break; | 621 | break; |
622 | case 8: | 622 | case 8: |
623 | return Key_F13; | 623 | return Key_F13; |
624 | break; | 624 | break; |
625 | }; | 625 | }; |
626 | } | 626 | } |
627 | return -1; | 627 | return -1; |
628 | } | 628 | } |
629 | 629 | ||
630 | void VMemo::timerBreak() { | 630 | void VMemo::timerBreak() { |
631 | //stop | 631 | //stop |
632 | stopRecording(); | 632 | stopRecording(); |
633 | QMessageBox::message("Vmemo","Vmemo recording has ended"); | 633 | QMessageBox::message("Vmemo","Vmemo recording has ended"); |
634 | } | 634 | } |
diff --git a/noncore/settings/sound/soundsettingsbase.cpp b/noncore/settings/sound/soundsettingsbase.cpp index 1a60109..5421bb4 100644 --- a/noncore/settings/sound/soundsettingsbase.cpp +++ b/noncore/settings/sound/soundsettingsbase.cpp | |||
@@ -45,141 +45,141 @@ static const char* const image0_data[] = { | |||
45 | ".....a.....#.##.", | 45 | ".....a.....#.##.", |
46 | "..........#..#..", | 46 | "..........#..#..", |
47 | "............##.."}; | 47 | "............##.."}; |
48 | 48 | ||
49 | static const char* const image1_data[] = { | 49 | static const char* const image1_data[] = { |
50 | "16 16 3 1", | 50 | "16 16 3 1", |
51 | ". c None", | 51 | ". c None", |
52 | "# c #000000", | 52 | "# c #000000", |
53 | "a c #ff0000", | 53 | "a c #ff0000", |
54 | "................", | 54 | "................", |
55 | "................", | 55 | "................", |
56 | "................", | 56 | "................", |
57 | ".....#..........", | 57 | ".....#..........", |
58 | "....##..........", | 58 | "....##..........", |
59 | "...###...a...a..", | 59 | "...###...a...a..", |
60 | "######..aaa.aaa.", | 60 | "######..aaa.aaa.", |
61 | "######...aaaaa..", | 61 | "######...aaaaa..", |
62 | "######....aaa...", | 62 | "######....aaa...", |
63 | "######...aaaaa..", | 63 | "######...aaaaa..", |
64 | "######..aaa.aaa.", | 64 | "######..aaa.aaa.", |
65 | "...###...a...a..", | 65 | "...###...a...a..", |
66 | "....##..........", | 66 | "....##..........", |
67 | ".....#..........", | 67 | ".....#..........", |
68 | "................", | 68 | "................", |
69 | "................"}; | 69 | "................"}; |
70 | 70 | ||
71 | 71 | ||
72 | /* | 72 | /* |
73 | * Constructs a SoundSettingsBase which is a child of 'parent', with the | 73 | * Constructs a SoundSettingsBase which is a child of 'parent', with the |
74 | * name 'name' and widget flags set to 'f' | 74 | * name 'name' and widget flags set to 'f' |
75 | * | 75 | * |
76 | * The dialog will by default be modeless, unless you set 'modal' to | 76 | * The dialog will by default be modeless, unless you set 'modal' to |
77 | * TRUE to construct a modal dialog. | 77 | * TRUE to construct a modal dialog. |
78 | */ | 78 | */ |
79 | SoundSettingsBase::SoundSettingsBase( QWidget* parent, const char* name, bool modal, WFlags fl ) | 79 | SoundSettingsBase::SoundSettingsBase( QWidget* parent, const char* name, bool modal, WFlags fl ) |
80 | : QMainWindow( parent, name, fl ) | 80 | : QMainWindow( parent, name, fl ) |
81 | { | 81 | { |
82 | QPixmap image0( ( const char** ) image0_data ); | 82 | QPixmap image0( ( const char** ) image0_data ); |
83 | QPixmap image1( ( const char** ) image1_data ); | 83 | QPixmap image1( ( const char** ) image1_data ); |
84 | if ( !name ) | 84 | if ( !name ) |
85 | setName( "SoundSettingsBase" ); | 85 | setName( "SoundSettingsBase" ); |
86 | // resize(255,301); | 86 | // resize(255,301); |
87 | setCaption( tr( "Vmemo Settings" ) ); | 87 | setCaption( tr( "Vmemo Settings" ) ); |
88 | 88 | ||
89 | SoundSettingsBaseLayout = new QGridLayout( this ); | 89 | SoundSettingsBaseLayout = new QGridLayout( this ); |
90 | SoundSettingsBaseLayout->setSpacing( 4 ); | 90 | SoundSettingsBaseLayout->setSpacing( 4 ); |
91 | SoundSettingsBaseLayout->setMargin( 4 ); | 91 | SoundSettingsBaseLayout->setMargin( 4 ); |
92 | 92 | ||
93 | QHBoxLayout *Layout11; | 93 | QHBoxLayout *Layout11; |
94 | Layout11 = new QHBoxLayout; | 94 | Layout11 = new QHBoxLayout; |
95 | Layout11->setSpacing( 4 ); | 95 | Layout11->setSpacing( 4 ); |
96 | Layout11->setMargin( 0 ); | 96 | Layout11->setMargin( 0 ); |
97 | 97 | ||
98 | stereoCheckBox = new QCheckBox( this, "stereoCheckBox" ); | 98 | stereoCheckBox = new QCheckBox( this, "stereoCheckBox" ); |
99 | stereoCheckBox->setText( tr( "Stereo" ) ); | 99 | stereoCheckBox->setText( tr( "Stereo" ) ); |
100 | Layout11->addWidget( stereoCheckBox ); | 100 | Layout11->addWidget( stereoCheckBox ); |
101 | 101 | ||
102 | sixteenBitCheckBox = new QCheckBox( this, "sixteenBitCheckBox" ); | 102 | sixteenBitCheckBox = new QCheckBox( this, "sixteenBitCheckBox" ); |
103 | sixteenBitCheckBox->setText( tr( "16 bit" ) ); | 103 | sixteenBitCheckBox->setText( tr( "16 bit" ) ); |
104 | Layout11->addWidget( sixteenBitCheckBox ); | 104 | Layout11->addWidget( sixteenBitCheckBox ); |
105 | 105 | ||
106 | AlertCheckBox = new QCheckBox( this, "AlertCheckBox" ); | 106 | AlertCheckBox = new QCheckBox( this, "AlertCheckBox" ); |
107 | AlertCheckBox->setText( tr( "Visual Alerts" ) ); | 107 | AlertCheckBox->setText( tr( "Visual Alerts" ) ); |
108 | Layout11->addWidget( AlertCheckBox ); | 108 | Layout11->addWidget( AlertCheckBox ); |
109 | 109 | ||
110 | SoundSettingsBaseLayout->addLayout( Layout11, 0, 0); | 110 | SoundSettingsBaseLayout->addLayout( Layout11, 0, 0); |
111 | 111 | ||
112 | sampleRateLabel = new QLabel(this, "sampleRateLabel" ); | 112 | sampleRateLabel = new QLabel(this, "sampleRateLabel" ); |
113 | sampleRateLabel->setText( tr( "Sample Rate:" ) ); | 113 | sampleRateLabel->setText( tr( "Sample Rate:" ) ); |
114 | SoundSettingsBaseLayout->addMultiCellWidget( sampleRateLabel , 1, 1, 0, 0, 1); | 114 | SoundSettingsBaseLayout->addMultiCellWidget( sampleRateLabel , 1, 1, 0, 0, 1); |
115 | 115 | ||
116 | sampleRate = new QComboBox( FALSE,this, "sampleRate" ); | 116 | sampleRate = new QComboBox( FALSE,this, "sampleRate" ); |
117 | 117 | ||
118 | sampleRate->insertItem( tr( "8000" ) ); | 118 | sampleRate->insertItem( tr( "8000" ) ); |
119 | sampleRate->insertItem( tr( "11025" ) ); | 119 | sampleRate->insertItem( tr( "11025" ) ); |
120 | sampleRate->insertItem( tr( "22050" ) ); | 120 | sampleRate->insertItem( tr( "22050" ) ); |
121 | sampleRate->insertItem( tr( "33075" ) ); | 121 | sampleRate->insertItem( tr( "33075" ) ); |
122 | sampleRate->insertItem( tr( "44100" ) ); | 122 | sampleRate->insertItem( tr( "44100" ) ); |
123 | SoundSettingsBaseLayout->addMultiCellWidget( sampleRate, 2, 2, 0, 0, 1 ); | 123 | SoundSettingsBaseLayout->addMultiCellWidget( sampleRate, 2, 2, 0, 0, 1 ); |
124 | 124 | ||
125 | TextLabel1 = new QLabel( this, "TextLabel1" ); | 125 | TextLabel1 = new QLabel( this, "TextLabel1" ); |
126 | TextLabel1->setText( tr( "Recording Directory:" ) ); | 126 | TextLabel1->setText( tr( "Recording Directory:" ) ); |
127 | SoundSettingsBaseLayout->addMultiCellWidget( TextLabel1, 3, 3, 0, 0, 1); | 127 | SoundSettingsBaseLayout->addMultiCellWidget( TextLabel1, 3, 3, 0, 0, 1); |
128 | 128 | ||
129 | 129 | ||
130 | LocationComboBox = new QComboBox( FALSE, this, "LocationComboBox" ); | 130 | LocationComboBox = new QComboBox( FALSE, this, "LocationComboBox" ); |
131 | SoundSettingsBaseLayout->addMultiCellWidget( LocationComboBox, 4, 4, 0, 8, 1); | 131 | SoundSettingsBaseLayout->addMultiCellWidget( LocationComboBox, 4, 4, 0, 8, 1); |
132 | 132 | ||
133 | QLabel *TextLabelKey; | 133 | QLabel *TextLabelKey; |
134 | TextLabelKey = new QLabel( this, "TextLabelKey" ); | 134 | TextLabelKey = new QLabel( this, "TextLabelKey" ); |
135 | TextLabelKey->setText( tr( "Recording Key:" ) ); | 135 | TextLabelKey->setText( tr( "Recording Key:" ) ); |
136 | SoundSettingsBaseLayout->addMultiCellWidget(TextLabelKey , 5, 5, 0, 0, 1); | 136 | SoundSettingsBaseLayout->addMultiCellWidget(TextLabelKey , 5, 5, 0, 0, 1); |
137 | 137 | ||
138 | keyComboBox = new QComboBox( FALSE, this, "keyComboBox" ); | 138 | keyComboBox = new QComboBox( FALSE, this, "keyComboBox" ); |
139 | keyComboBox->insertItem( tr( "" ) ); | 139 | keyComboBox->insertItem( tr( "" ) ); |
140 | keyComboBox->insertItem( tr( "Taskbar Icon" ) ); | 140 | keyComboBox->insertItem( tr( "Taskbar Icon" ) ); |
141 | keyComboBox->insertItem( tr( "Key_Escape" ) ); | 141 | keyComboBox->insertItem( tr( "Key_Record" ) ); |
142 | keyComboBox->insertItem( tr( "Key_Space" ) ); | 142 | keyComboBox->insertItem( tr( "Key_Space" ) ); |
143 | keyComboBox->insertItem( tr( "Key_Home" ) ); | 143 | keyComboBox->insertItem( tr( "Key_Home" ) ); |
144 | keyComboBox->insertItem( tr( "Key_Calender" ) ); | 144 | keyComboBox->insertItem( tr( "Key_Calender" ) ); |
145 | keyComboBox->insertItem( tr( "Key_Contacts" ) ); | 145 | keyComboBox->insertItem( tr( "Key_Contacts" ) ); |
146 | keyComboBox->insertItem( tr( "Key_Menu" ) ); | 146 | keyComboBox->insertItem( tr( "Key_Menu" ) ); |
147 | keyComboBox->insertItem( tr( "Key_Mail" ) ); | 147 | keyComboBox->insertItem( tr( "Key_Mail" ) ); |
148 | SoundSettingsBaseLayout->addMultiCellWidget( keyComboBox , 6, 6, 0, 0 ,1); | 148 | SoundSettingsBaseLayout->addMultiCellWidget( keyComboBox , 6, 6, 0, 0 ,1); |
149 | 149 | ||
150 | keyLabel= new QLabel( this, "keyLabel" ); | 150 | keyLabel= new QLabel( this, "keyLabel" ); |
151 | SoundSettingsBaseLayout->addMultiCellWidget( keyLabel , 6, 6, 0, 2, 3); | 151 | SoundSettingsBaseLayout->addMultiCellWidget( keyLabel , 6, 6, 0, 2, 3); |
152 | 152 | ||
153 | QLabel *timeLimitLabel; | 153 | QLabel *timeLimitLabel; |
154 | timeLimitLabel= new QLabel( this, "timeLimitLabel" ); | 154 | timeLimitLabel= new QLabel( this, "timeLimitLabel" ); |
155 | timeLimitLabel->setText( tr( "Recording Limit in seconds:" ) ); | 155 | timeLimitLabel->setText( tr( "Recording Limit in seconds:" ) ); |
156 | SoundSettingsBaseLayout->addMultiCellWidget( timeLimitLabel , 7, 7, 0, 0, 1); | 156 | SoundSettingsBaseLayout->addMultiCellWidget( timeLimitLabel , 7, 7, 0, 0, 1); |
157 | 157 | ||
158 | timeLimitComboBox = new QComboBox( FALSE, this, "timeLimitComboBox" ); | 158 | timeLimitComboBox = new QComboBox( FALSE, this, "timeLimitComboBox" ); |
159 | timeLimitComboBox->insertItem( tr( "30" ) ); | 159 | timeLimitComboBox->insertItem( tr( "30" ) ); |
160 | timeLimitComboBox->insertItem( tr( "20" ) ); | 160 | timeLimitComboBox->insertItem( tr( "20" ) ); |
161 | timeLimitComboBox->insertItem( tr( "15" ) ); | 161 | timeLimitComboBox->insertItem( tr( "15" ) ); |
162 | timeLimitComboBox->insertItem( tr( "10" ) ); | 162 | timeLimitComboBox->insertItem( tr( "10" ) ); |
163 | timeLimitComboBox->insertItem( tr( "5" ) ); | 163 | timeLimitComboBox->insertItem( tr( "5" ) ); |
164 | timeLimitComboBox->insertItem( tr( "Unlimited" ) ); | 164 | timeLimitComboBox->insertItem( tr( "Unlimited" ) ); |
165 | 165 | ||
166 | SoundSettingsBaseLayout->addMultiCellWidget(timeLimitComboBox , 8, 8, 0, 0, 1); | 166 | SoundSettingsBaseLayout->addMultiCellWidget(timeLimitComboBox , 8, 8, 0, 0, 1); |
167 | 167 | ||
168 | 168 | ||
169 | restartCheckBox= new QCheckBox( this, "restartCheck" ); | 169 | restartCheckBox= new QCheckBox( this, "restartCheck" ); |
170 | restartCheckBox->setText( tr( "Restart Opie if needed" ) ); | 170 | restartCheckBox->setText( tr( "Restart Opie if needed" ) ); |
171 | 171 | ||
172 | SoundSettingsBaseLayout->addMultiCellWidget( restartCheckBox , 9, 9, 0, 0, 1); | 172 | SoundSettingsBaseLayout->addMultiCellWidget( restartCheckBox , 9, 9, 0, 0, 1); |
173 | 173 | ||
174 | 174 | ||
175 | QSpacerItem* spacer4 = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Expanding ); | 175 | QSpacerItem* spacer4 = new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Expanding ); |
176 | SoundSettingsBaseLayout->addItem( spacer4, 9, 0 ); | 176 | SoundSettingsBaseLayout->addItem( spacer4, 9, 0 ); |
177 | } | 177 | } |
178 | 178 | ||
179 | /* | 179 | /* |
180 | * Destroys the object and frees any allocated resources | 180 | * Destroys the object and frees any allocated resources |
181 | */ | 181 | */ |
182 | SoundSettingsBase::~SoundSettingsBase() | 182 | SoundSettingsBase::~SoundSettingsBase() |
183 | { | 183 | { |
184 | // no need to delete child widgets, Qt does it all for us | 184 | // no need to delete child widgets, Qt does it all for us |
185 | } | 185 | } |