@@ -17,6 +17,7 @@ public TextToSpeech(CameraWindow cw = null)
17
17
CW = cw ;
18
18
Text = LocRm . GetString ( "TextToSpeech" ) ;
19
19
button1 . Text = LocRm . GetString ( "OK" ) ;
20
+ button3 . Text = LocRm . GetString ( "OK" ) ;
20
21
}
21
22
22
23
public override sealed string Text
@@ -27,7 +28,8 @@ public override sealed string Text
27
28
28
29
private void TextToSpeech_Load ( object sender , EventArgs e )
29
30
{
30
- PopSentences ( ) ;
31
+ PopSentences ( ) ;
32
+ PopPaths ( ) ;
31
33
}
32
34
33
35
private void button1_Click ( object sender , EventArgs e )
@@ -80,16 +82,76 @@ private void PopSentences()
80
82
81
83
private void ddlSay_KeyPress ( object sender , KeyPressEventArgs e )
82
84
{
83
- if ( e . KeyChar == ( char ) Keys . Return )
85
+ if ( e . KeyChar == ( char ) Keys . Return )
84
86
{
85
87
Say ( ) ;
86
88
e . Handled = true ;
87
89
}
88
90
}
89
91
90
- private void ddlSay_SelectedIndexChanged ( object sender , EventArgs e )
92
+ private void ddlPath_KeyPress ( object sender , KeyPressEventArgs e )
91
93
{
94
+ if ( e . KeyChar == ( char ) Keys . Return )
95
+ {
96
+ Play ( ) ;
97
+ e . Handled = true ;
98
+ }
99
+ }
100
+
101
+ private void button2_Click ( object sender , EventArgs e )
102
+ {
103
+ if ( dlgOpen . ShowDialog ( this ) == DialogResult . OK )
104
+ {
105
+ ddlPath . Text = dlgOpen . FileName ;
106
+ }
107
+ }
92
108
109
+ private void button3_Click ( object sender , EventArgs e )
110
+ {
111
+ Play ( ) ;
112
+ }
113
+
114
+ private void Play ( )
115
+ {
116
+ var p = ddlPath . Text ;
117
+ if ( ! string . IsNullOrEmpty ( p ) )
118
+ {
119
+ AudioSynth . Play ( p , CW ) ;
120
+ CW . LogToPlugin ( "Play: " + p ) ;
121
+ var _p = new List < string > { p } ;
122
+ foreach ( var i in ddlPath . Items )
123
+ {
124
+ if ( ! _p . Contains ( i ) && ! string . IsNullOrEmpty ( i . ToString ( ) ) )
125
+ _p . Add ( i . ToString ( ) ) ;
126
+ }
127
+
128
+ var x = "" ;
129
+ int j = 0 ;
130
+ foreach ( string s in _p )
131
+ {
132
+ if ( j < 10 )
133
+ x += s + "|" ;
134
+ else
135
+ {
136
+ break ;
137
+ }
138
+ j ++ ;
139
+ }
140
+ x = x . Trim ( '|' ) ;
141
+ MainForm . Conf . PlayPaths = x ;
142
+ PopPaths ( ) ;
143
+ }
144
+ }
145
+
146
+ private void PopPaths ( )
147
+ {
148
+ ddlPath . Items . Clear ( ) ;
149
+ var s = MainForm . Conf . PlayPaths . Split ( '|' ) ;
150
+ foreach ( var p in s )
151
+ {
152
+ if ( ! string . IsNullOrEmpty ( p ) )
153
+ ddlPath . Items . Add ( p ) ;
154
+ }
93
155
}
94
156
}
95
157
}
0 commit comments