EMail.cpp 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616
  1. #include "..\..\Global\Variablen.h"
  2. #include "..\..\Global\Initialisierung.h"
  3. #include "EMail.h"
  4. #include <Text.h>
  5. #include <Punkt.h>
  6. // Inhalt der EMailÄndern Klasse aus EMail.h
  7. // Konstruktor
  8. EMailÄndern::EMailÄndern( Schrift *zSchrift, Fenster *zVorLoginFenster )
  9. {
  10. Punkt bildschirmmitte = Bildschirmmitte();
  11. eMailÄndern = initKnopf( 10, 210, 130, 30, zSchrift, Knopf::Style::Sichtbar, "E-Mail ändern" );
  12. eMailÄndern->setMausEreignisParameter( this );
  13. eMailÄndern->setMausEreignis( eMailÄndernEMailÄndernME );
  14. initToolTip( eMailÄndern, "Account E-Mail Adresse ändern.", zSchrift->getThis(), hauptScreen );
  15. zVorLoginFenster->addMember( eMailÄndern );
  16. fenster = initFenster( bildschirmmitte.x - 125, bildschirmmitte.y - 100, 250, 200, zSchrift, Fenster::Style::Erlaubt | Fenster::Style::Rahmen | Fenster::Style::Titel | Fenster::Style::TitelBuffered, "E-Mail ändern" );
  17. name = initTextFeld( 20, 20, 208, 20, zSchrift, TextFeld::Style::TextFeld, "Name" );
  18. name->setTastaturEreignisParameter( this );
  19. name->setTastaturEreignis( eMailÄndernNameTE );
  20. initToolTip( name, "Account Name.", zSchrift->getThis(), hauptScreen );
  21. fenster->addMember( name );
  22. passwort = initTextFeld( 20, 50, 208, 20, zSchrift, TextFeld::Style::TextFeld, "Passwort" );
  23. passwort->setTastaturEreignisParameter( this );
  24. passwort->setTastaturEreignis( eMailÄndernPasswortTE );
  25. initToolTip( passwort, "Account Passwort.", zSchrift->getThis(), hauptScreen );
  26. fenster->addMember( passwort );
  27. geheimnis = initTextFeld( 20, 80, 208, 20, zSchrift, TextFeld::Style::TextFeld, "Geheimis" );
  28. geheimnis->setTastaturEreignisParameter( this );
  29. geheimnis->setTastaturEreignis( eMailÄndernGeheimnisTE );
  30. initToolTip( geheimnis, "Account Geheimnis.", zSchrift->getThis(), hauptScreen );
  31. fenster->addMember( geheimnis );
  32. nEMail = initTextFeld( 20, 110, 208, 20, zSchrift, TextFeld::Style::TextFeld, "neue E-Mail Adresse" );
  33. nEMail->setTastaturEreignisParameter( this );
  34. nEMail->setTastaturEreignis( eMailÄndernNEMailTE );
  35. initToolTip( nEMail, "Neue E-Mail Adresse.", zSchrift->getThis(), hauptScreen );
  36. fenster->addMember( nEMail );
  37. weiter = initKnopf( 74, 140, 100, 20, zSchrift, Knopf::Style::Sichtbar, "weiter" );
  38. weiter->setMausEreignisParameter( this );
  39. weiter->setMausEreignis( eMailÄndernWeiterME );
  40. nachricht = initTextFeld( 0, 5, 255, 150, zSchrift, TextFeld::Style::HCenter | TextFeld::Style::Mehrzeilig, "" );
  41. fenster->addMember( nachricht );
  42. fenster->addMember( weiter );
  43. zVorLoginFenster->addMember( fenster );
  44. ref = 1;
  45. }
  46. // Destruktor
  47. EMailÄndern::~EMailÄndern()
  48. {
  49. if( eMailÄndern )
  50. eMailÄndern = eMailÄndern->release();
  51. if( fenster )
  52. fenster = fenster->release();
  53. if( name )
  54. name = name->release();
  55. if( passwort )
  56. passwort = passwort->release();
  57. if( geheimnis )
  58. geheimnis = geheimnis->release();
  59. if( nEMail )
  60. nEMail = nEMail->release();
  61. if( weiter )
  62. weiter = weiter->release();
  63. if( nachricht )
  64. nachricht = nachricht->release();
  65. }
  66. // Privat
  67. void EMailÄndern::zeigeNachricht( const char *txt )
  68. {
  69. Punkt bildschirmmitte = Bildschirmmitte();
  70. name->removeStyle( TextFeld::Style::Sichtbar );
  71. passwort->removeStyle( TextFeld::Style::Sichtbar );
  72. geheimnis->removeStyle( TextFeld::Style::Sichtbar );
  73. nEMail->removeStyle( TextFeld::Style::Sichtbar );
  74. fenster->setSize( 250, 150 );
  75. fenster->setPosition( bildschirmmitte.x - 125, bildschirmmitte.y - 75 );
  76. weiter->setPosition( 139, 100 );
  77. weiter->setText( "Ok" );
  78. nachricht->setText( txt );
  79. if( nachricht->zText()->getLength() > 30 )
  80. {
  81. int pos = -1;
  82. bool set = 0;
  83. int lastp = 0;
  84. for( int i = 20; i < nachricht->zText()->getLength(); )
  85. {
  86. char *tmp = &nachricht->zText()->getText()[ i ];
  87. while( *tmp != ' ' && i < nachricht->zText()->getLength() )
  88. {
  89. tmp++;
  90. i++;
  91. if( i - 30 >= lastp )
  92. {
  93. if( set )
  94. {
  95. lastp = pos;
  96. set = 0;
  97. nachricht->zText()->getText()[ pos ] = '\n';
  98. }
  99. else
  100. lastp += 5;
  101. }
  102. }
  103. if( i < nachricht->zText()->getLength() )
  104. {
  105. pos = i;
  106. set = 1;
  107. tmp++;
  108. i++;
  109. }
  110. }
  111. }
  112. nachricht->addStyle( TextFeld::Style::Sichtbar );
  113. }
  114. // Knopfdruck
  115. void EMailÄndern::druckFremdKnopf() // Ein anderer Knopf wurde gedrückt
  116. {
  117. fenster->removeStyle( Fenster::Style::Sichtbar );
  118. eMailÄndern->setLinienRahmenBreite( 2 );
  119. eMailÄndern->setAlphaFeldFarbe( 0x5500FF00 );
  120. eMailÄndern->setAlphaFeldStrength( -5 );
  121. }
  122. bool EMailÄndern::eMailÄndernME( void *obj, MausEreignis me ) // MausEreignis im Knopf eMailÄndern
  123. {
  124. if( me.id == ME_RLinks )
  125. {
  126. vorLogin->setEMailÄndern();
  127. eMailÄndern->setLinienRahmenBreite( 3 );
  128. eMailÄndern->setAlphaFeldFarbe( 0xFF000000 );
  129. eMailÄndern->setAlphaFeldStrength( 20 );
  130. Punkt bildschirmmitte = Bildschirmmitte();
  131. fenster->setSize( 255, 200 );
  132. fenster->setPosition( bildschirmmitte.x - 125, bildschirmmitte.y - 100 );
  133. fenster->addStyle( Fenster::Style::Sichtbar );
  134. nachricht->removeStyle( TextFeld::Style::Sichtbar );
  135. weiter->setText( "weiter" );
  136. weiter->setPosition( 75, 140 );
  137. name->addStyle( TextFeld::Style::Sichtbar );
  138. passwort->addStyle( TextFeld::Style::Sichtbar );
  139. geheimnis->addStyle( TextFeld::Style::Sichtbar );
  140. nEMail->addStyle( TextFeld::Style::Sichtbar );
  141. name->addStyle( TextFeld::Style::Fokus );
  142. name->setAuswahl( name->zText()->getLength(), 0 );
  143. }
  144. return 1;
  145. }
  146. bool EMailÄndern::nameTE( void *obj, TastaturEreignis te ) // Tastaturereignis im Textfeld name
  147. {
  148. if( te.id == TE_Press && te.taste == T_Enter )
  149. return 0;
  150. if( te.id == TE_Release && ( te.taste == T_Enter || te.taste == T_Tab ) )
  151. {
  152. name->removeStyle( TextFeld::Style::Fokus );
  153. passwort->addStyle( TextFeld::Style::Fokus );
  154. passwort->setAuswahl( passwort->zText()->getLength(), 0 );
  155. }
  156. if( name->zText()->getLength() >= 25 && istSchreibbar( te.taste ) )
  157. return 0;
  158. return 1;
  159. }
  160. bool EMailÄndern::passwortTE( void *obj, TastaturEreignis te ) // Tastaturereignis im Textfeld passwort
  161. {
  162. if( te.id == TE_Press && te.taste == T_Enter )
  163. return 0;
  164. if( te.id == TE_Press )
  165. passwort->setSchowChar( '*' );
  166. if( te.id == TE_Release && ( te.taste == T_Enter || te.taste == T_Tab ) )
  167. {
  168. passwort->removeStyle( TextFeld::Style::Fokus );
  169. geheimnis->addStyle( TextFeld::Style::Fokus );
  170. geheimnis->setAuswahl( geheimnis->zText()->getLength(), 0 );
  171. }
  172. if( passwort->zText()->getLength() >= 25 && istSchreibbar( te.taste ) )
  173. return 0;
  174. return 1;
  175. }
  176. bool EMailÄndern::geheimnisTE( void *obj, TastaturEreignis te ) // Tastaturereignis im Textfeld geheimnis
  177. {
  178. if( te.id == TE_Press && te.taste == T_Enter )
  179. return 0;
  180. if( te.id == TE_Press )
  181. geheimnis->setSchowChar( '*' );
  182. if( te.id == TE_Release && ( te.taste == T_Enter || te.taste == T_Tab ) )
  183. {
  184. geheimnis->removeStyle( TextFeld::Style::Fokus );
  185. nEMail->addStyle( TextFeld::Style::Fokus );
  186. nEMail->setAuswahl( nEMail->zText()->getLength(), 0 );
  187. }
  188. if( geheimnis->zText()->getLength() >= 50 && istSchreibbar( te.taste ) )
  189. return 0;
  190. return 1;
  191. }
  192. bool EMailÄndern::nEMailTE( void *obj, TastaturEreignis te ) // Tastaturereignis im Textfeld nEMail
  193. {
  194. if( te.id == TE_Press && te.taste == T_Enter )
  195. return 0;
  196. if( te.id == TE_Press )
  197. nEMail->setSchowChar( '*' );
  198. if( te.id == TE_Release && te.taste == T_Enter )
  199. {
  200. nEMail->removeStyle( TextFeld::Style::Fokus );
  201. MausEreignis me;
  202. me.id = ME_RLinks;
  203. weiterME( 0, me );
  204. }
  205. if( nEMail->zText()->getLength() >= 50 && istSchreibbar( te.taste ) )
  206. return 0;
  207. return 1;
  208. }
  209. bool EMailÄndern::weiterME( void *obj, MausEreignis me ) // MausEreignis im Knopf weiter
  210. {
  211. if( me.id == ME_RLinks )
  212. {
  213. if( weiter->zText()->istGleich( "weiter" ) )
  214. {
  215. if( name->zText()->getLength() == 0 )
  216. zeigeNachricht( "Bitte gebe deinen Accountnamen ein." );
  217. if( passwort->zText()->getLength() == 0 )
  218. zeigeNachricht( "Bitte gebe dein Accountpasswort ein." );
  219. if( geheimnis->zText()->getLength() == 0 )
  220. zeigeNachricht( "Bitte gebe dein Accountgeheimnis ein." );
  221. if( nEMail->zText()->getLength() == 0 )
  222. zeigeNachricht( "Bitte gebe eine neue E-Mail Addresse ein." );
  223. if( weiter->zText()->istGleich( "Ok" ) )
  224. return 1;
  225. new AktionsThread( 8, name->zText()->getText(), passwort->zText()->getText(), geheimnis->zText()->getText(), nEMail->zText()->getText(), 0 );
  226. }
  227. else
  228. {
  229. Punkt bildschirmmitte = Bildschirmmitte();
  230. fenster->setSize( 255, 200 );
  231. fenster->setPosition( bildschirmmitte.x - 125, bildschirmmitte.y - 100 );
  232. fenster->addStyle( Fenster::Style::Sichtbar );
  233. nachricht->removeStyle( TextFeld::Style::Sichtbar );
  234. weiter->setText( "weiter" );
  235. weiter->setPosition( 75, 140 );
  236. name->addStyle( TextFeld::Style::Sichtbar );
  237. passwort->addStyle( TextFeld::Style::Sichtbar );
  238. geheimnis->addStyle( TextFeld::Style::Sichtbar );
  239. nEMail->addStyle( TextFeld::Style::Sichtbar );
  240. name->addStyle( TextFeld::Style::Fokus );
  241. name->setAuswahl( name->zText()->getLength(), 0 );
  242. }
  243. }
  244. return 1;
  245. }
  246. void EMailÄndern::setReturn( bool ret ) // Setzt den Returnwert
  247. {
  248. if( ret )
  249. zeigeNachricht( "E-Mail erfolgreich geändert." );
  250. else if( lastError.getLength() )
  251. zeigeNachricht( lastError );
  252. else
  253. zeigeNachricht( "Es ist ein Unbekannter Fehler aufgetreten." );
  254. }
  255. // Reference Counting
  256. EMailÄndern *EMailÄndern::getThis()
  257. {
  258. ref++;
  259. return this;
  260. }
  261. EMailÄndern *EMailÄndern::release()
  262. {
  263. ref--;
  264. if( !ref )
  265. delete this;
  266. return 0;
  267. }
  268. // Inhalt der EMailVergessen Klasse aus EMail.h
  269. // Konstruktor
  270. EMailVergessen::EMailVergessen( Schrift *zSchrift, Fenster *zVorLoginFenster )
  271. {
  272. Punkt bildschirmmitte = Bildschirmmitte();
  273. eMailVergessen = initKnopf( 10, 410, 130, 30, zSchrift, Knopf::Style::Sichtbar, "E-Mail vergessen" );
  274. eMailVergessen->setMausEreignisParameter( this );
  275. eMailVergessen->setMausEreignis( eMailVergessenEMailVergessenME );
  276. initToolTip( eMailVergessen, "Account E-Mail Adresse anzeigen.", zSchrift->getThis(), hauptScreen );
  277. zVorLoginFenster->addMember( eMailVergessen );
  278. fenster = initFenster( bildschirmmitte.x - 125, bildschirmmitte.y - 85, 250, 170, zSchrift, Fenster::Style::Erlaubt | Fenster::Style::Rahmen | Fenster::Style::Titel | Fenster::Style::TitelBuffered, "E-Mail vergessen" );
  279. name = initTextFeld( 20, 20, 208, 20, zSchrift, TextFeld::Style::TextFeld, "Name" );
  280. name->setTastaturEreignisParameter( this );
  281. name->setTastaturEreignis( eMailVergessenNameTE );
  282. initToolTip( name, "Account Name.", zSchrift->getThis(), hauptScreen );
  283. fenster->addMember( name );
  284. passwort = initTextFeld( 20, 50, 208, 20, zSchrift, TextFeld::Style::TextFeld, "Passwort" );
  285. passwort->setTastaturEreignisParameter( this );
  286. passwort->setTastaturEreignis( eMailVergessenPasswortTE );
  287. initToolTip( passwort, "Account Passwort.", zSchrift->getThis(), hauptScreen );
  288. fenster->addMember( passwort );
  289. geheimnis = initTextFeld( 20, 80, 208, 20, zSchrift, TextFeld::Style::TextFeld, "Geheimis" );
  290. geheimnis->setTastaturEreignisParameter( this );
  291. geheimnis->setTastaturEreignis( eMailVergessenGeheimnisTE );
  292. initToolTip( geheimnis, "Account Geheimnis.", zSchrift->getThis(), hauptScreen );
  293. fenster->addMember( geheimnis );
  294. weiter = initKnopf( 74, 110, 100, 20, zSchrift, Knopf::Style::Sichtbar, "weiter" );
  295. weiter->setMausEreignisParameter( this );
  296. weiter->setMausEreignis( eMailVergessenWeiterME );
  297. nachricht = initTextFeld( 0, 5, 255, 150, zSchrift, TextFeld::Style::HCenter | TextFeld::Style::Mehrzeilig, "" );
  298. fenster->addMember( nachricht );
  299. fenster->addMember( weiter );
  300. zVorLoginFenster->addMember( fenster );
  301. ref = 1;
  302. }
  303. // Destruktor
  304. EMailVergessen::~EMailVergessen()
  305. {
  306. if( eMailVergessen )
  307. eMailVergessen = eMailVergessen->release();
  308. if( fenster )
  309. fenster = fenster->release();
  310. if( name )
  311. name = name->release();
  312. if( passwort )
  313. passwort = passwort->release();
  314. if( geheimnis )
  315. geheimnis = geheimnis->release();
  316. if( weiter )
  317. weiter = weiter->release();
  318. if( nachricht )
  319. nachricht = nachricht->release();
  320. }
  321. // Privat
  322. void EMailVergessen::zeigeNachricht( const char *txt )
  323. {
  324. Punkt bildschirmmitte = Bildschirmmitte();
  325. name->removeStyle( TextFeld::Style::Sichtbar );
  326. passwort->removeStyle( TextFeld::Style::Sichtbar );
  327. geheimnis->removeStyle( TextFeld::Style::Sichtbar );
  328. fenster->setSize( 250, 150 );
  329. fenster->setPosition( bildschirmmitte.x - 125, bildschirmmitte.y - 75 );
  330. weiter->setPosition( 139, 100 );
  331. weiter->setText( "Ok" );
  332. nachricht->setText( txt );
  333. if( nachricht->zText()->getLength() > 30 )
  334. {
  335. int pos = -1;
  336. bool set = 0;
  337. int lastp = 0;
  338. for( int i = 20; i < nachricht->zText()->getLength(); )
  339. {
  340. char *tmp = &nachricht->zText()->getText()[ i ];
  341. while( *tmp != ' ' && i < nachricht->zText()->getLength() )
  342. {
  343. tmp++;
  344. i++;
  345. if( i - 30 >= lastp )
  346. {
  347. if( set )
  348. {
  349. lastp = pos;
  350. set = 0;
  351. nachricht->zText()->getText()[ pos ] = '\n';
  352. }
  353. else
  354. lastp += 5;
  355. }
  356. }
  357. if( i < nachricht->zText()->getLength() )
  358. {
  359. pos = i;
  360. set = 1;
  361. tmp++;
  362. i++;
  363. }
  364. }
  365. }
  366. nachricht->addStyle( TextFeld::Style::Sichtbar );
  367. }
  368. // Knopfdruck
  369. void EMailVergessen::druckFremdKnopf() // Ein anderer Knopf wurde gedrückt
  370. {
  371. fenster->removeStyle( Fenster::Style::Sichtbar );
  372. eMailVergessen->setLinienRahmenBreite( 2 );
  373. eMailVergessen->setAlphaFeldFarbe( 0x5500FF00 );
  374. eMailVergessen->setAlphaFeldStrength( -5 );
  375. }
  376. bool EMailVergessen::eMailVergessenME( void *obj, MausEreignis me ) // MausEreignis im Knopf eMailVergessen
  377. {
  378. if( me.id == ME_RLinks )
  379. {
  380. vorLogin->setEMailVergessen();
  381. eMailVergessen->setLinienRahmenBreite( 3 );
  382. eMailVergessen->setAlphaFeldFarbe( 0xFF000000 );
  383. eMailVergessen->setAlphaFeldStrength( 20 );
  384. Punkt bildschirmmitte = Bildschirmmitte();
  385. fenster->setSize( 255, 170 );
  386. fenster->setPosition( bildschirmmitte.x - 125, bildschirmmitte.y - 85 );
  387. fenster->addStyle( Fenster::Style::Sichtbar );
  388. nachricht->removeStyle( TextFeld::Style::Sichtbar );
  389. weiter->setText( "weiter" );
  390. weiter->setPosition( 75, 110 );
  391. name->addStyle( TextFeld::Style::Sichtbar );
  392. passwort->addStyle( TextFeld::Style::Sichtbar );
  393. geheimnis->addStyle( TextFeld::Style::Sichtbar );
  394. name->addStyle( TextFeld::Style::Fokus );
  395. name->setAuswahl( name->zText()->getLength(), 0 );
  396. }
  397. return 1;
  398. }
  399. bool EMailVergessen::nameTE( void *obj, TastaturEreignis te ) // Tastaturereignis im Textfeld name
  400. {
  401. if( te.id == TE_Press && te.taste == T_Enter )
  402. return 0;
  403. if( te.id == TE_Release && ( te.taste == T_Enter || te.taste == T_Tab ) )
  404. {
  405. name->removeStyle( TextFeld::Style::Fokus );
  406. passwort->addStyle( TextFeld::Style::Fokus );
  407. passwort->setAuswahl( passwort->zText()->getLength(), 0 );
  408. }
  409. if( name->zText()->getLength() >= 25 && istSchreibbar( te.taste ) )
  410. return 0;
  411. return 1;
  412. }
  413. bool EMailVergessen::passwortTE( void *obj, TastaturEreignis te ) // Tastaturereignis im Textfeld passwort
  414. {
  415. if( te.id == TE_Press && te.taste == T_Enter )
  416. return 0;
  417. if( te.id == TE_Press )
  418. passwort->setSchowChar( '*' );
  419. if( te.id == TE_Release && ( te.taste == T_Enter || te.taste == T_Tab ) )
  420. {
  421. passwort->removeStyle( TextFeld::Style::Fokus );
  422. geheimnis->addStyle( TextFeld::Style::Fokus );
  423. geheimnis->setAuswahl( geheimnis->zText()->getLength(), 0 );
  424. }
  425. if( passwort->zText()->getLength() >= 25 && istSchreibbar( te.taste ) )
  426. return 0;
  427. return 1;
  428. }
  429. bool EMailVergessen::geheimnisTE( void *obj, TastaturEreignis te ) // Tastaturereignis im Textfeld geheimnis
  430. {
  431. if( te.id == TE_Press && te.taste == T_Enter )
  432. return 0;
  433. if( te.id == TE_Press )
  434. geheimnis->setSchowChar( '*' );
  435. if( te.id == TE_Release && te.taste == T_Enter )
  436. {
  437. geheimnis->removeStyle( TextFeld::Style::Fokus );
  438. MausEreignis me;
  439. me.id = ME_RLinks;
  440. weiterME( 0, me );
  441. }
  442. if( geheimnis->zText()->getLength() >= 50 && istSchreibbar( te.taste ) )
  443. return 0;
  444. return 1;
  445. }
  446. bool EMailVergessen::weiterME( void *obj, MausEreignis me ) // MausEreignis im Knopf weiter
  447. {
  448. if( me.id == ME_RLinks )
  449. {
  450. if( weiter->zText()->istGleich( "weiter" ) )
  451. {
  452. if( name->zText()->getLength() == 0 )
  453. zeigeNachricht( "Bitte gebe deinen Accountnamen ein." );
  454. if( passwort->zText()->getLength() == 0 )
  455. zeigeNachricht( "Bitte gebe dein Accountpasswort ein." );
  456. if( geheimnis->zText()->getLength() == 0 )
  457. zeigeNachricht( "Bitte gebe dein Accountgeheimnis ein." );
  458. if( weiter->zText()->istGleich( "Ok" ) )
  459. return 1;
  460. new AktionsThread( 9, name->zText()->getText(), passwort->zText()->getText(), geheimnis->zText()->getText(), 0, 0 );
  461. }
  462. else
  463. {
  464. Punkt bildschirmmitte = Bildschirmmitte();
  465. fenster->setSize( 255, 170 );
  466. fenster->setPosition( bildschirmmitte.x - 125, bildschirmmitte.y - 85 );
  467. fenster->addStyle( Fenster::Style::Sichtbar );
  468. nachricht->removeStyle( TextFeld::Style::Sichtbar );
  469. weiter->setText( "weiter" );
  470. weiter->setPosition( 75, 110 );
  471. name->addStyle( TextFeld::Style::Sichtbar );
  472. passwort->addStyle( TextFeld::Style::Sichtbar );
  473. geheimnis->addStyle( TextFeld::Style::Sichtbar );
  474. name->addStyle( TextFeld::Style::Fokus );
  475. name->setAuswahl( name->zText()->getLength(), 0 );
  476. }
  477. }
  478. return 1;
  479. }
  480. void EMailVergessen::setReturn( bool ret, char *eMail ) // Setzt den Returnwert
  481. {
  482. if( ret )
  483. {
  484. Text *nachricht = new Text( "Deine E-Mail Addresse lautet:'" );
  485. nachricht->append( eMail );
  486. nachricht->append( "'." );
  487. zeigeNachricht( nachricht->getText() );
  488. nachricht = nachricht->release();
  489. }
  490. else if( lastError.getLength() )
  491. zeigeNachricht( lastError );
  492. else
  493. zeigeNachricht( "Es ist ein Unbekannter Fehler aufgetreten." );
  494. delete eMail;
  495. }
  496. // Reference Counting
  497. EMailVergessen *EMailVergessen::getThis()
  498. {
  499. ref++;
  500. return this;
  501. }
  502. EMailVergessen *EMailVergessen::release()
  503. {
  504. ref--;
  505. if( !ref )
  506. delete this;
  507. return 0;
  508. }
  509. // messages
  510. bool eMailÄndernEMailÄndernME( void *p, void *obj, MausEreignis me )
  511. {
  512. if( !p )
  513. return 0;
  514. return ( (EMailÄndern*)p )->eMailÄndernME( obj, me );
  515. }
  516. bool eMailÄndernNameTE( void *p, void *obj, TastaturEreignis te )
  517. {
  518. if( !p )
  519. return 0;
  520. return ( (EMailÄndern*)p )->nameTE( obj, te );
  521. }
  522. bool eMailÄndernPasswortTE( void *p, void *obj, TastaturEreignis te )
  523. {
  524. if( !p )
  525. return 0;
  526. return ( (EMailÄndern*)p )->passwortTE( obj, te );
  527. }
  528. bool eMailÄndernGeheimnisTE( void *p, void *obj, TastaturEreignis te )
  529. {
  530. if( !p )
  531. return 0;
  532. return ( (EMailÄndern*)p )->geheimnisTE( obj, te );
  533. }
  534. bool eMailÄndernNEMailTE( void *p, void *obj, TastaturEreignis te )
  535. {
  536. if( !p )
  537. return 0;
  538. return ( (EMailÄndern*)p )->nEMailTE( obj, te );
  539. }
  540. bool eMailÄndernWeiterME( void *p, void *obj, MausEreignis me )
  541. {
  542. if( !p )
  543. return 0;
  544. return ( (EMailÄndern*)p )->weiterME( obj, me );
  545. }
  546. bool eMailVergessenEMailVergessenME( void *p, void *obj, MausEreignis me )
  547. {
  548. if( !p )
  549. return 0;
  550. return ( (EMailVergessen*)p )->eMailVergessenME( obj, me );
  551. }
  552. bool eMailVergessenNameTE( void *p, void *obj, TastaturEreignis te )
  553. {
  554. if( !p )
  555. return 0;
  556. return ( (EMailVergessen*)p )->nameTE( obj, te );
  557. }
  558. bool eMailVergessenPasswortTE( void *p, void *obj, TastaturEreignis te )
  559. {
  560. if( !p )
  561. return 0;
  562. return ( (EMailVergessen*)p )->passwortTE( obj, te );
  563. }
  564. bool eMailVergessenGeheimnisTE( void *p, void *obj, TastaturEreignis te )
  565. {
  566. if( !p )
  567. return 0;
  568. return ( (EMailVergessen*)p )->geheimnisTE( obj, te );
  569. }
  570. bool eMailVergessenWeiterME( void *p, void *obj, MausEreignis me )
  571. {
  572. if( !p )
  573. return 0;
  574. return ( (EMailVergessen*)p )->weiterME( obj, me );
  575. }