1 | |
2 | /* |
3 | * kPPP: A front end for pppd for the KDE project |
4 | * |
5 | * $Id$ |
6 | * |
7 | * Copyright (C) 1997 Bernd Johannes Wuebben |
8 | * wuebben@math.cornell.edu |
9 | * |
10 | * based on EzPPP: |
11 | * Copyright (C) 1997 Jay Painter |
12 | * |
13 | * This program is free software; you can redistribute it and/or |
14 | * modify it under the terms of the GNU Library General Public |
15 | * License as published by the Free Software Foundation; either |
16 | * version 2 of the License, or (at your option) any later version. |
17 | * |
18 | * This program is distributed in the hope that it will be useful, |
19 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
20 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
21 | * Library General Public License for more details. |
22 | * |
23 | * You should have received a copy of the GNU Library General Public |
24 | * License along with this program; if not, write to the Free |
25 | * Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. |
26 | */ |
27 | |
28 | #include "scriptedit.h" |
29 | #include <qlayout.h> |
30 | #include <qcombobox.h> |
31 | #include <qlineedit.h> |
32 | //Added by qt3to4: |
33 | #include <QHBoxLayout> |
34 | |
35 | ScriptEdit::ScriptEdit( QWidget *parent ) |
36 | : QWidget(parent) |
37 | { |
38 | QHBoxLayout *tl = new QHBoxLayout(this); |
39 | tl->setSpacing(10); |
40 | tl->setMargin(0); |
41 | |
42 | st = new QComboBox(this); |
43 | st->setObjectName("st" ); |
44 | st->addItem("Expect" ); |
45 | st->addItem("Send" ); |
46 | st->addItem("Pause (sec)" ); |
47 | st->addItem("Hangup" ); |
48 | st->addItem("Answer" ); |
49 | st->addItem("Timeout (sec)" ); |
50 | st->addItem("Password" ); |
51 | st->addItem("ID" ); |
52 | st->addItem("Prompt" ); |
53 | st->addItem("PWPrompt" ); |
54 | st->addItem("LoopStart" ); |
55 | st->addItem("LoopEnd" ); |
56 | st->addItem("Scan" ); |
57 | st->addItem("Save" ); |
58 | st->addItem("SendNoEcho" ); |
59 | connect(st, SIGNAL(activated(int)), SLOT(setType(int))); |
60 | |
61 | se = new QLineEdit(this); |
62 | se->setObjectName("se" ); // oh yes, signor :-) |
63 | se->setGeometry(120, 5, 140, 25); |
64 | se->setMaxLength(50); |
65 | connect(se, SIGNAL(returnPressed()), SLOT(seReturnPressed())); |
66 | |
67 | tl->addWidget(st, 3); |
68 | tl->addWidget(se, 7); |
69 | |
70 | setType(0); |
71 | |
72 | tl->activate(); |
73 | } |
74 | |
75 | |
76 | void ScriptEdit::setEnabled(bool b) { |
77 | se->setEnabled(b); |
78 | st->setEnabled(b); |
79 | } |
80 | |
81 | void ScriptEdit::seReturnPressed() { |
82 | emit returnPressed(); |
83 | } |
84 | |
85 | |
86 | QString ScriptEdit::text()const { |
87 | return se->text(); |
88 | } |
89 | |
90 | void ScriptEdit::setText(const QString &t) { |
91 | se->setText(t); |
92 | } |
93 | |
94 | |
95 | int ScriptEdit::type()const { |
96 | return st->currentIndex(); |
97 | } |
98 | |
99 | void ScriptEdit::setType(int i) { |
100 | switch(i) { |
101 | case Expect: |
102 | se->setText("" ); |
103 | se->setEnabled(true); |
104 | break; |
105 | |
106 | case Send: |
107 | se->setText("" ); |
108 | se->setEnabled(true); |
109 | break; |
110 | |
111 | case Pause: |
112 | se->setText("" ); |
113 | se->setEnabled(true); |
114 | break; |
115 | |
116 | case Hangup: |
117 | se->setText("" ); |
118 | se->setEnabled(false); |
119 | break; |
120 | |
121 | case Answer: |
122 | se->setText("" ); |
123 | se->setEnabled(false); |
124 | break; |
125 | |
126 | case Timeout: |
127 | se->setText("" ); |
128 | se->setEnabled(true); |
129 | break; |
130 | |
131 | case Password: |
132 | se->setText("" ); |
133 | se->setEnabled(true); |
134 | break; |
135 | |
136 | case ID: |
137 | se->setText("" ); |
138 | se->setEnabled(true); |
139 | break; |
140 | |
141 | case Prompt: |
142 | se->setText("" ); |
143 | se->setEnabled(true); |
144 | break; |
145 | |
146 | case PWPrompt: |
147 | se->setText("" ); |
148 | se->setEnabled(true); |
149 | break; |
150 | |
151 | case LoopStart: |
152 | se->setText("" ); |
153 | se->setEnabled(true); |
154 | break; |
155 | |
156 | case LoopEnd: |
157 | se->setText("" ); |
158 | se->setEnabled(true); |
159 | break; |
160 | |
161 | case Scan: |
162 | se->setText("" ); |
163 | se->setEnabled(true); |
164 | break; |
165 | |
166 | case Save: |
167 | se->setText("password" ); |
168 | se->setEnabled(false); |
169 | break; |
170 | |
171 | default: break; |
172 | } |
173 | } |
174 | |
175 | #include "scriptedit.moc" |
176 | |