main.cpp 33 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914
  1. #include <Windows.h>
  2. #include <GdiPlus.h>
  3. #include <main.h>
  4. #include <Prozess.h>
  5. #include <Bildschirm.h>
  6. #include <MausEreignis.h>
  7. #include <TastaturEreignis.h>
  8. #include <sstream>
  9. #include <Punkt.h>
  10. #include <Knopf.h>
  11. #include <TextFeld.h>
  12. #include <Liste.h>
  13. #include <AlphaFeld.h>
  14. #include <Rahmen.h>
  15. #include <Scroll.h>
  16. #include <Fortschritt.h>
  17. #include <Datei.h>
  18. #include <Zeit.h>
  19. #include <Globals.h>
  20. #include "Import.h"
  21. using namespace Framework;
  22. bool Exit = 0;
  23. WFenster *fenster;
  24. Knopf *_beenden;
  25. TextFeld *_pfad;
  26. Knopf *_laden;
  27. LTDBDatei *_datei;
  28. AuswahlListe *_bilder;
  29. TextFeld *_import_Pfad;
  30. Knopf *_import;
  31. Knopf *_remove;
  32. Knopf *_von_Unten;
  33. FBalken *_fZwischenSchritt;
  34. FBalken *_fGesamtSchritt;
  35. TextFeld *_fZText;
  36. TextFeld *_fGText;
  37. BildZ *_vorschau;
  38. TextFeld *_pfad2;
  39. Knopf *_laden2;
  40. LTDBDatei *_datei2;
  41. AuswahlListe *_bilder2;
  42. TextFeld *_import_Pfad2;
  43. Knopf *_import2;
  44. Knopf *_remove2;
  45. Knopf *_von_Oben;
  46. FBalken *_fZwischenSchritt2;
  47. FBalken *_fGesamtSchritt2;
  48. TextFeld *_fZText2;
  49. TextFeld *_fGText2;
  50. BildZ *_vorschau2;
  51. Schrift *schriftNormal;
  52. void HFNSchließen( void *, void *fenster )
  53. {
  54. PostQuitMessage( 0 );
  55. }
  56. bool HFMausEvent( void *p, void *fenster, MausEreignis me )
  57. {
  58. return 1;
  59. }
  60. bool HFTastaturEvent( void *p, void *fenster, TastaturEreignis te )
  61. {
  62. return 1;
  63. }
  64. bool _beendenME( void *p, void *obj, MausEreignis me )
  65. {
  66. if( me.id == ME_RLinks )
  67. PostQuitMessage( 0 );
  68. return 1;
  69. }
  70. bool _pfadTE( void *p, void *obj, TastaturEreignis te )
  71. {
  72. if( te.id == TE_Release && te.taste == T_Enter )
  73. {
  74. MausEreignis me;
  75. me.id = ME_RLinks;
  76. me.mx = _laden->getX();
  77. me.my = _laden->getY();
  78. me.verarbeitet = 0;
  79. _laden->doMausEreignis( me );
  80. }
  81. return 1;
  82. }
  83. bool _ladenME( void *p, void *obj, MausEreignis me )
  84. {
  85. if( me.id == ME_RLinks )
  86. {
  87. fenster->zBildschirm()->unlock();
  88. if( !_pfad->zText()->hat( ".ltdb" ) )
  89. _pfad->zText()->append( ".ltdb" );
  90. _datei->setDatei( _pfad->getText() );
  91. if( !DateiExistiert( _pfad->getText() ) )
  92. _datei->erstellen();
  93. _datei->leseDaten( _fGesamtSchritt );
  94. int im = _bilder->getEintragAnzahl();
  95. _bilder->lockZeichnung();
  96. for( int i = 0; i < im; i++ )
  97. _bilder->removeEintrag( im - 1 - i );
  98. RCArray< Text > *bl = _datei->zBildListe();
  99. im = _datei->getBildAnzahl();
  100. for( int i = 0; i < im; i++ )
  101. {
  102. _bilder->addEintrag( bl->z( i )->getText() );
  103. _bilder->zEintrag( i )->setSchriftZ( schriftNormal->getThis() );
  104. _bilder->zEintrag( i )->setSchriftFarbe( 0xFFFFFFFF );
  105. _bilder->zEintrag( i )->setSize( 0, 20 );
  106. }
  107. _bilder->unlockZeichnung();
  108. _fGesamtSchritt->reset();
  109. fenster->zBildschirm()->lock();
  110. }
  111. return 1;
  112. }
  113. bool _bilderME( void *p, void *obj, MausEreignis me )
  114. {
  115. if( me.id == ME_RLinks )
  116. {
  117. fenster->zBildschirm()->unlock();
  118. int ausw = _bilder->getAuswahl();
  119. int ausw2 = _bilder->getKlickEintrag( me.my );
  120. if( ausw == ausw2 && ausw >= 0 )
  121. {
  122. Bild *bild = _datei->laden( _fGesamtSchritt, _bilder->zEintrag( ausw )->getText() );
  123. _vorschau->lockZeichnung();
  124. _vorschau->setBildZ( bild );
  125. _vorschau->unlockZeichnung();
  126. }
  127. _fGesamtSchritt->reset();
  128. fenster->zBildschirm()->lock();
  129. }
  130. return 1;
  131. }
  132. bool _import_PfadTE( void *p, void *obj, TastaturEreignis te )
  133. {
  134. if( te.id == TE_Release && te.taste == T_Enter )
  135. {
  136. MausEreignis me;
  137. me.id = ME_RLinks;
  138. me.mx = _import->getX();
  139. me.my = _import->getY();
  140. me.verarbeitet = 0;
  141. _import->doMausEreignis( me );
  142. }
  143. return 1;
  144. }
  145. bool _importME( void *p, void *obj, MausEreignis me )
  146. {
  147. if( me.id == ME_RLinks )
  148. {
  149. fenster->zBildschirm()->unlock();
  150. if( !_datei->zBildListe() )
  151. {
  152. WMessageBox( 0, new Text( "Error" ), new Text( "Es ist keine Datei geoeffnet!" ), MB_ICONERROR );
  153. return 1;
  154. }
  155. Text * pf = _import_Pfad->zText();
  156. if( !DateiExistiert( pf->getThis() ) )
  157. {
  158. WMessageBox( 0, new Text( "Error" ), new Text( "Unter dem angegebenen Pfad wurde nichts gefunden!" ), MB_ICONERROR );
  159. return 1;
  160. }
  161. _bilder->lockZeichnung();
  162. int im = _bilder->getEintragAnzahl();
  163. for( int i = 0; i < im; i++ )
  164. _bilder->removeEintrag( im - 1 - i );
  165. _bilder->unlockZeichnung();
  166. if( !DateiIstVerzeichnis( pf->getThis() ) )
  167. {
  168. pf->ersetzen( '/', '\\' );
  169. Text *name = pf->getTeilText( pf->positionVon( '\\', pf->anzahlVon( '\\' ) - 1 ) + 1 );
  170. _datei->speichern( _fGesamtSchritt, ladeBild( pf ), name );
  171. }
  172. else
  173. {
  174. _fGesamtSchritt->reset();
  175. _fGesamtSchritt->setAktionAnzahl( countVerzeichnis( pf->getThis() ) );
  176. ladeVerzeichnis( pf->getThis(), schriftNormal, _datei, _fZwischenSchritt, _fGesamtSchritt );
  177. }
  178. RCArray< Text > *bl = _datei->zBildListe();
  179. im = _datei->getBildAnzahl();
  180. _bilder->lockZeichnung();
  181. for( int i = 0; i < im; i++ )
  182. {
  183. _bilder->addEintrag( bl->z( i )->getText() );
  184. _bilder->zEintrag( i )->setSchriftZ( schriftNormal->getThis() );
  185. _bilder->zEintrag( i )->setSchriftFarbe( 0xFFFFFFFF );
  186. _bilder->zEintrag( i )->setSize( 0, 20 );
  187. }
  188. _bilder->unlockZeichnung();
  189. _fZwischenSchritt->reset();
  190. _fGesamtSchritt->reset();
  191. fenster->zBildschirm()->lock();
  192. }
  193. return 1;
  194. }
  195. bool _removeME( void *p, void *obj, MausEreignis me )
  196. {
  197. if( me.id == ME_RLinks )
  198. {
  199. fenster->zBildschirm()->unlock();
  200. int ausw = _bilder->getAuswahl();
  201. if( ausw < 0 || ausw > _bilder->getEintragAnzahl() )
  202. {
  203. WMessageBox( 0, new Text( "Error" ), new Text( "Es is kein Bild ausgewaehlt!" ), MB_ICONERROR );
  204. return 1;
  205. }
  206. _datei->remove( _fGesamtSchritt, _bilder->zEintrag( ausw )->getText() );
  207. _bilder->lockZeichnung();
  208. int im = _bilder->getEintragAnzahl();
  209. for( int i = 0; i < im; i++ )
  210. _bilder->removeEintrag( im - i - 1 );
  211. RCArray< Text > *bl = _datei->zBildListe();
  212. im = _datei->getBildAnzahl();
  213. for( int i = 0; i < im; i++ )
  214. {
  215. _bilder->addEintrag( bl->z( i )->getText() );
  216. _bilder->zEintrag( i )->setSchriftZ( schriftNormal->getThis() );
  217. _bilder->zEintrag( i )->setSchriftFarbe( 0xFFFFFFFF );
  218. _bilder->zEintrag( i )->setSize( 0, 20 );
  219. }
  220. _bilder->unlockZeichnung();
  221. _fGesamtSchritt->reset();
  222. fenster->zBildschirm()->lock();
  223. }
  224. return 1;
  225. }
  226. bool _von_UntenME( void *p, void *obj, MausEreignis me )
  227. {
  228. if( me.id == ME_RLinks )
  229. {
  230. fenster->zBildschirm()->unlock();
  231. if( !DateiExistiert( _datei->getPfad() ) || !DateiExistiert( _datei2->getPfad() ) )
  232. {
  233. WMessageBox( 0, new Text( "Error" ), new Text( "Es ist keine Datei geoeffnet!" ), MB_ICONERROR );
  234. return 1;
  235. }
  236. int ausw = _bilder2->getAuswahl();
  237. if( ausw < 0 || ausw > _bilder2->getEintragAnzahl() )
  238. {
  239. WMessageBox( 0, new Text( "Error" ), new Text( "Es is kein Bild ausgewaehlt!" ), MB_ICONERROR );
  240. return 1;
  241. }
  242. Bild *bild = _datei2->laden( _fZwischenSchritt, _bilder2->zEintrag( ausw )->getText() );
  243. _datei->speichern( _fGesamtSchritt, bild, _bilder2->zEintrag( ausw )->getText() );
  244. _bilder->lockZeichnung();
  245. int im = _bilder->getEintragAnzahl();
  246. for( int i = 0; i < im; i++ )
  247. _bilder->removeEintrag( im - i - 1 );
  248. RCArray< Text > *bl = _datei->zBildListe();
  249. im = _datei->getBildAnzahl();
  250. for( int i = 0; i < im; i++ )
  251. {
  252. _bilder->addEintrag( bl->z( i )->getText() );
  253. _bilder->zEintrag( i )->setSchriftZ( schriftNormal->getThis() );
  254. _bilder->zEintrag( i )->setSchriftFarbe( 0xFFFFFFFF );
  255. _bilder->zEintrag( i )->setSize( 0, 20 );
  256. }
  257. _bilder->unlockZeichnung();
  258. _fZwischenSchritt->reset();
  259. _fGesamtSchritt->reset();
  260. fenster->zBildschirm()->lock();
  261. }
  262. return 1;
  263. }
  264. bool _pfad2TE( void *p, void *obj, TastaturEreignis te )
  265. {
  266. if( te.id == TE_Release && te.taste == T_Enter )
  267. {
  268. MausEreignis me;
  269. me.id = ME_RLinks;
  270. me.mx = _laden2->getX();
  271. me.my = _laden2->getY();
  272. me.verarbeitet = 0;
  273. _laden2->doMausEreignis( me );
  274. }
  275. return 1;
  276. }
  277. bool _laden2ME( void *p, void *obj, MausEreignis me )
  278. {
  279. if( me.id == ME_RLinks )
  280. {
  281. fenster->zBildschirm()->unlock();
  282. if( !_pfad2->zText()->hat( ".ltdb" ) )
  283. _pfad2->zText()->append( ".ltdb" );
  284. _datei2->setDatei( _pfad2->getText() );
  285. if( !DateiExistiert( _pfad2->getText() ) )
  286. _datei2->erstellen();
  287. _datei2->leseDaten( _fGesamtSchritt2 );
  288. int im = _bilder2->getEintragAnzahl();
  289. _bilder2->lockZeichnung();
  290. for( int i = 0; i < im; i++ )
  291. _bilder2->removeEintrag( im - 1 - i );
  292. RCArray< Text > *bl = _datei2->zBildListe();
  293. im = _datei2->getBildAnzahl();
  294. for( int i = 0; i < im; i++ )
  295. {
  296. _bilder2->addEintrag( bl->z( i )->getText() );
  297. _bilder2->zEintrag( i )->setSchriftZ( schriftNormal->getThis() );
  298. _bilder2->zEintrag( i )->setSchriftFarbe( 0xFFFFFFFF );
  299. _bilder2->zEintrag( i )->setSize( 0, 20 );
  300. }
  301. _bilder2->unlockZeichnung();
  302. _fGesamtSchritt2->reset();
  303. fenster->zBildschirm()->lock();
  304. }
  305. return 1;
  306. }
  307. bool _bilder2ME( void *p, void *obj, MausEreignis me )
  308. {
  309. if( me.id == ME_RLinks )
  310. {
  311. fenster->zBildschirm()->unlock();
  312. int ausw = _bilder2->getAuswahl();
  313. int ausw2 = _bilder2->getKlickEintrag( me.my );
  314. if( ausw == ausw2 && ausw >= 0 )
  315. {
  316. Bild *bild = _datei2->laden( _fGesamtSchritt2, _bilder2->zEintrag( ausw )->getText() );
  317. _vorschau2->lockZeichnung();
  318. _vorschau2->setBildZ( bild );
  319. _vorschau2->unlockZeichnung();
  320. }
  321. _fGesamtSchritt2->reset();
  322. fenster->zBildschirm()->lock();
  323. }
  324. return 1;
  325. }
  326. bool _import_Pfad2TE( void *p, void *obj, TastaturEreignis te )
  327. {
  328. if( te.id == TE_Release && te.taste == T_Enter )
  329. {
  330. MausEreignis me;
  331. me.id = ME_RLinks;
  332. me.mx = _import2->getX();
  333. me.my = _import2->getY();
  334. me.verarbeitet = 0;
  335. _import2->doMausEreignis( me );
  336. }
  337. return 1;
  338. }
  339. bool _import2ME( void *p, void *obj, MausEreignis me )
  340. {
  341. if( me.id == ME_RLinks )
  342. {
  343. fenster->zBildschirm()->unlock();
  344. if( !_datei2->zBildListe() )
  345. {
  346. WMessageBox( 0, new Text( "Error" ), new Text( "Es ist keine Datei geoeffnet!" ), MB_ICONERROR );
  347. return 1;
  348. }
  349. Text * pf = _import_Pfad2->zText();
  350. if( !DateiExistiert( pf->getThis() ) )
  351. {
  352. WMessageBox( 0, new Text( "Error" ), new Text( "Unter dem angegebenen Pfad wurde nichts gefunden!" ), MB_ICONERROR );
  353. return 1;
  354. }
  355. _bilder2->lockZeichnung();
  356. int im = _bilder2->getEintragAnzahl();
  357. for( int i = 0; i < im; i++ )
  358. _bilder2->removeEintrag( im - 1 - i );
  359. _bilder2->unlockZeichnung();
  360. if( !DateiIstVerzeichnis( pf->getThis() ) )
  361. {
  362. pf->ersetzen( '/', '\\' );
  363. Text *name = pf->getTeilText( pf->positionVon( '\\', pf->anzahlVon( '\\' ) - 1 ) + 1 );
  364. _datei2->speichern( _fGesamtSchritt2, ladeBild( pf ), name );
  365. }
  366. else
  367. {
  368. _fGesamtSchritt2->reset();
  369. _fGesamtSchritt2->setAktionAnzahl( countVerzeichnis( pf->getThis() ) );
  370. ladeVerzeichnis( pf->getThis(), schriftNormal, _datei2, _fZwischenSchritt2, _fGesamtSchritt2 );
  371. }
  372. RCArray< Text > *bl = _datei2->zBildListe();
  373. im = _datei2->getBildAnzahl();
  374. _bilder2->lockZeichnung();
  375. for( int i = 0; i < im; i++ )
  376. {
  377. _bilder2->addEintrag( bl->z( i )->getText() );
  378. _bilder2->zEintrag( i )->setSchriftZ( schriftNormal->getThis() );
  379. _bilder2->zEintrag( i )->setSchriftFarbe( 0xFFFFFFFF );
  380. _bilder2->zEintrag( i )->setSize( 0, 20 );
  381. }
  382. _bilder2->unlockZeichnung();
  383. _fZwischenSchritt2->reset();
  384. _fGesamtSchritt2->reset();
  385. fenster->zBildschirm()->lock();
  386. }
  387. return 1;
  388. }
  389. bool _remove2ME( void *p, void *obj, MausEreignis me )
  390. {
  391. if( me.id == ME_RLinks )
  392. {
  393. fenster->zBildschirm()->unlock();
  394. int ausw = _bilder2->getAuswahl();
  395. if( ausw < 0 || ausw > _bilder2->getEintragAnzahl() )
  396. {
  397. WMessageBox( 0, new Text( "Error" ), new Text( "Es is kein Bild ausgewaehlt!" ), MB_ICONERROR );
  398. return 1;
  399. }
  400. _datei2->remove( _fGesamtSchritt2, _bilder2->zEintrag( ausw )->getText() );
  401. _bilder2->lockZeichnung();
  402. int im = _bilder2->getEintragAnzahl();
  403. for( int i = 0; i < im; i++ )
  404. _bilder2->removeEintrag( im - i - 1 );
  405. RCArray< Text > *bl = _datei2->zBildListe();
  406. im = _datei2->getBildAnzahl();
  407. for( int i = 0; i < im; i++ )
  408. {
  409. _bilder2->addEintrag( bl->z( i )->getText() );
  410. _bilder2->zEintrag( i )->setSchriftZ( schriftNormal->getThis() );
  411. _bilder2->zEintrag( i )->setSchriftFarbe( 0xFFFFFFFF );
  412. _bilder2->zEintrag( i )->setSize( 0, 20 );
  413. }
  414. _bilder2->unlockZeichnung();
  415. _fGesamtSchritt2->reset();
  416. fenster->zBildschirm()->lock();
  417. }
  418. return 1;
  419. }
  420. bool _von_ObenME( void *p, void *obj, MausEreignis me )
  421. {
  422. if( me.id == ME_RLinks )
  423. {
  424. fenster->zBildschirm()->unlock();
  425. if( !DateiExistiert( _datei->getPfad() ) || !DateiExistiert( _datei2->getPfad() ) )
  426. {
  427. WMessageBox( 0, new Text( "Error" ), new Text( "Es ist keine Datei geoeffnet!" ), MB_ICONERROR );
  428. return 1;
  429. }
  430. int ausw = _bilder->getAuswahl();
  431. if( ausw < 0 || ausw > _bilder->getEintragAnzahl() )
  432. {
  433. WMessageBox( 0, new Text( "Error" ), new Text( "Es is kein Bild ausgewaehlt!" ), MB_ICONERROR );
  434. return 1;
  435. }
  436. Bild *bild = _datei->laden( _fZwischenSchritt2, _bilder->zEintrag( ausw )->getText() );
  437. _datei2->speichern( _fGesamtSchritt2, bild, _bilder->zEintrag( ausw )->getText() );
  438. _bilder2->lockZeichnung();
  439. int im = _bilder2->getEintragAnzahl();
  440. for( int i = 0; i < im; i++ )
  441. _bilder2->removeEintrag( im - i - 1 );
  442. RCArray< Text > *bl = _datei2->zBildListe();
  443. im = _datei2->getBildAnzahl();
  444. for( int i = 0; i < im; i++ )
  445. {
  446. _bilder2->addEintrag( bl->z( i )->getText() );
  447. _bilder2->zEintrag( i )->setSchriftZ( schriftNormal->getThis() );
  448. _bilder2->zEintrag( i )->setSchriftFarbe( 0xFFFFFFFF );
  449. _bilder2->zEintrag( i )->setSize( 0, 20 );
  450. }
  451. _bilder2->unlockZeichnung();
  452. _fZwischenSchritt2->reset();
  453. _fGesamtSchritt2->reset();
  454. fenster->zBildschirm()->lock();
  455. }
  456. return 1;
  457. }
  458. DWORD WINAPI runThread( LPVOID args )
  459. {
  460. Bildschirm *screen = (Bildschirm *)args;
  461. ZeitMesser time;
  462. while( !Exit )
  463. {
  464. double tv = time.getSekunden();
  465. time.messungStart();
  466. screen->tick( tv );
  467. screen->render();
  468. if( tv < 1.0 / 30.0 )
  469. Sleep( (int)( ( 1.0 / 30.0 - tv ) * 1000 ) );
  470. time.messungEnde();
  471. }
  472. return 0;
  473. }
  474. int KSGStart Framework::Start( Startparam p )
  475. {
  476. Gdiplus::GdiplusStartupInput gdiplusStartupInput;
  477. ULONG_PTR gdiplusToken;
  478. Gdiplus::GdiplusStartup( &gdiplusToken, &gdiplusStartupInput, 0 );
  479. WNDCLASS wc = F_Normal( p.hinst );
  480. wc.lpszClassName = "LTDB Konverter - LENCK TECH";
  481. WFenster *HauptFenster = new WFenster();
  482. fenster = HauptFenster;
  483. HauptFenster->setVerschiebbar( 1 );
  484. HauptFenster->erstellen( WS_POPUP, wc );
  485. HauptFenster->setAnzeigeModus( p.show );
  486. HauptFenster->setMausAktion( HFMausEvent );
  487. HauptFenster->setNSchließAktion( HFNSchließen );
  488. HauptFenster->setTastaturAktion( HFTastaturEvent );
  489. HauptFenster->setSize( 700, 700 );
  490. HauptFenster->setPosition( Bildschirmmitte( HauptFenster->getThis() ) );
  491. Bildschirm *HFscreen = new Bildschirm3D( HauptFenster->getThis() );
  492. HauptFenster->setBildschirm( HFscreen->getThis() );
  493. HFscreen->update();
  494. HFscreen->render();
  495. LTDSDatei *schriftDatei = new LTDSDatei();
  496. schriftDatei->setPfad( new Text( "../Data/normal.ltds" ) );
  497. schriftDatei->leseDaten();
  498. schriftNormal = schriftDatei->ladeSchrift();
  499. schriftDatei->release();
  500. _datei = new LTDBDatei();
  501. _beenden = new Knopf();
  502. _beenden->setSchriftZ( schriftNormal->getThis() );
  503. _beenden->setText( "Programm beenden" );
  504. _beenden->setSchriftFarbe( 0xFFFFFFFF );
  505. _beenden->setSchriftSize( 12 );
  506. _beenden->setRahmenBreite( 2 );
  507. _beenden->setRahmenFarbe( 0xFF00FF00 );
  508. _beenden->setAlphaFeldFarbe( 0x5500FF00 );
  509. _beenden->setAlphaFeldStrength( -5 );
  510. _beenden->setKBFarbe( 0xFF000000 );
  511. _beenden->setKBStrength( 20 );
  512. _beenden->setMausEreignis( _beendenME );
  513. _beenden->setTastaturEreignis( 0 );
  514. _beenden->setSize( 130, 30 );
  515. _beenden->setPosition( 10, 10 );
  516. _beenden->setStyle( Knopf::Style::Sichtbar | Knopf::Style::Erlaubt | Knopf::Style::Buffered | Knopf::Style::KlickBuffer | Knopf::Style::Rahmen );
  517. HFscreen->addMember( _beenden );
  518. _pfad = new TextFeld();
  519. _pfad->setSchriftZ( schriftNormal->getThis() );
  520. _pfad->setText( "Dateipfad" );
  521. _pfad->setSchriftFarbe( 0xFFFFFFFF );
  522. _pfad->setSchriftSize( 12 );
  523. _pfad->setAlphaFeldFarbe( 0x5500FF00 );
  524. _pfad->setAlphaFeldStrength( -5 );
  525. _pfad->setRahmenBreite( 1 );
  526. _pfad->setRahmenFarbe( 0xFF00FF00 );
  527. _pfad->setStyle( TextFeld::Style::Sichtbar | TextFeld::Style::Rahmen | TextFeld::Style::Buffered | TextFeld::Style::Center | TextFeld::Style::Erlaubt );
  528. _pfad->setSize( 400, 20 );
  529. _pfad->setPosition( 150, 15 );
  530. _pfad->setTastaturEreignis( _pfadTE );
  531. HFscreen->addMember( _pfad );
  532. _laden = new Knopf();
  533. _laden->setSchriftZ( schriftNormal->getThis() );
  534. _laden->setText( "Datei laden" );
  535. _laden->setSchriftFarbe( 0xFFFFFFFF );
  536. _laden->setSchriftSize( 12 );
  537. _laden->setRahmenBreite( 2 );
  538. _laden->setRahmenFarbe( 0xFF00FF00 );
  539. _laden->setAlphaFeldFarbe( 0x5500FF00 );
  540. _laden->setAlphaFeldStrength( -5 );
  541. _laden->setKBFarbe( 0xFF000000 );
  542. _laden->setKBStrength( 20 );
  543. _laden->setMausEreignis( _ladenME );
  544. _laden->setTastaturEreignis( 0 );
  545. _laden->setSize( 130, 30 );
  546. _laden->setPosition( 560, 10 );
  547. _laden->setStyle( Knopf::Style::Sichtbar | Knopf::Style::Erlaubt | Knopf::Style::Buffered | Knopf::Style::KlickBuffer | Knopf::Style::Rahmen );
  548. HFscreen->addMember( _laden );
  549. _bilder = new AuswahlListe();
  550. _bilder->setStyle( AuswahlListe::Style::Sichtbar | AuswahlListe::Style::Rahmen | AuswahlListe::Style::Erlaubt | AuswahlListe::Style::AuswahlBuffer | AuswahlListe::Style::AuswahlRahmen | AuswahlListe::Style::VScroll );
  551. _bilder->setAAFZ( new AlphaFeld() );
  552. _bilder->zABuffer()->setFarbe( 0x7500FF00 );
  553. _bilder->zABuffer()->setStrength( 8 );
  554. _bilder->setRahmenFarbe( 0xFFFFFFFF );
  555. _bilder->setRahmenBreite( 2 );
  556. _bilder->setALRZ( new LRahmen() );
  557. _bilder->zARahmen()->setFarbe( 0xFF00FF00 );
  558. _bilder->setPosition( 10, 50 );
  559. _bilder->setSize( 120, 290 );
  560. _bilder->setVertikalKlickScroll( 5 );
  561. _bilder->setMausEreignis( _bilderME );
  562. _bilder->update();
  563. HFscreen->addMember( _bilder );
  564. _import_Pfad = new TextFeld();
  565. _import_Pfad->setSchriftZ( schriftNormal->getThis() );
  566. _import_Pfad->setText( "Import Pfad" );
  567. _import_Pfad->setSchriftFarbe( 0xFFFFFFFF );
  568. _import_Pfad->setSchriftSize( 12 );
  569. _import_Pfad->setAlphaFeldFarbe( 0x5500FF00 );
  570. _import_Pfad->setAlphaFeldStrength( -5 );
  571. _import_Pfad->setRahmenBreite( 1 );
  572. _import_Pfad->setRahmenFarbe( 0xFF00FF00 );
  573. _import_Pfad->setStyle( TextFeld::Style::Sichtbar | TextFeld::Style::Rahmen | TextFeld::Style::Buffered | TextFeld::Style::Center | TextFeld::Style::Erlaubt );
  574. _import_Pfad->setSize( 200, 20 );
  575. _import_Pfad->setPosition( 140, 60 );
  576. _import_Pfad->setTastaturEreignis( _import_PfadTE );
  577. HFscreen->addMember( _import_Pfad );
  578. _import = new Knopf();
  579. _import->setSchriftZ( schriftNormal->getThis() );
  580. _import->setText( "Importieren" );
  581. _import->setSchriftFarbe( 0xFFFFFFFF );
  582. _import->setSchriftSize( 12 );
  583. _import->setRahmenBreite( 2 );
  584. _import->setRahmenFarbe( 0xFF00FF00 );
  585. _import->setAlphaFeldFarbe( 0x5500FF00 );
  586. _import->setAlphaFeldStrength( -5 );
  587. _import->setKBFarbe( 0xFF000000 );
  588. _import->setKBStrength( 20 );
  589. _import->setMausEreignis( _importME );
  590. _import->setTastaturEreignis( 0 );
  591. _import->setSize( 130, 30 );
  592. _import->setPosition( 175, 90 );
  593. _import->setStyle( Knopf::Style::Sichtbar | Knopf::Style::Erlaubt | Knopf::Style::Buffered | Knopf::Style::KlickBuffer | Knopf::Style::Rahmen );
  594. HFscreen->addMember( _import );
  595. _remove = new Knopf();
  596. _remove->setSchriftZ( schriftNormal->getThis() );
  597. _remove->setText( "Löschen" );
  598. _remove->setSchriftFarbe( 0xFFFFFFFF );
  599. _remove->setSchriftSize( 12 );
  600. _remove->setRahmenBreite( 2 );
  601. _remove->setRahmenFarbe( 0xFF00FF00 );
  602. _remove->setAlphaFeldFarbe( 0x5500FF00 );
  603. _remove->setAlphaFeldStrength( -5 );
  604. _remove->setKBFarbe( 0xFF000000 );
  605. _remove->setKBStrength( 20 );
  606. _remove->setMausEreignis( _removeME );
  607. _remove->setTastaturEreignis( 0 );
  608. _remove->setSize( 130, 30 );
  609. _remove->setPosition( 175, 130 );
  610. _remove->setStyle( Knopf::Style::Sichtbar | Knopf::Style::Erlaubt | Knopf::Style::Buffered | Knopf::Style::KlickBuffer | Knopf::Style::Rahmen );
  611. HFscreen->addMember( _remove );
  612. _von_Unten = new Knopf();
  613. _von_Unten->setSchriftZ( schriftNormal->getThis() );
  614. _von_Unten->setText( "von Unten" );
  615. _von_Unten->setSchriftFarbe( 0xFFFFFFFF );
  616. _von_Unten->setSchriftSize( 12 );
  617. _von_Unten->setRahmenBreite( 2 );
  618. _von_Unten->setRahmenFarbe( 0xFF00FF00 );
  619. _von_Unten->setAlphaFeldFarbe( 0x5500FF00 );
  620. _von_Unten->setAlphaFeldStrength( -5 );
  621. _von_Unten->setKBFarbe( 0xFF000000 );
  622. _von_Unten->setKBStrength( 20 );
  623. _von_Unten->setMausEreignis( _von_UntenME );
  624. _von_Unten->setTastaturEreignis( 0 );
  625. _von_Unten->setSize( 130, 30 );
  626. _von_Unten->setPosition( 175, 170 );
  627. _von_Unten->setStyle( Knopf::Style::Sichtbar | Knopf::Style::Erlaubt | Knopf::Style::Buffered | Knopf::Style::KlickBuffer | Knopf::Style::Rahmen );
  628. HFscreen->addMember( _von_Unten );
  629. _fZText = new TextFeld();
  630. _fZText->setStyle( TextFeld::Style::Sichtbar );
  631. _fZText->setText( "Zwischenfortschritt:" );
  632. _fZText->setSchriftZ( schriftNormal->getThis() );
  633. _fZText->setSchriftFarbe( 0xFFFFFFFF );
  634. _fZText->setSize( 200, 15 );
  635. _fZText->setPosition( 140, 245 );
  636. HFscreen->addMember( _fZText );
  637. _fZwischenSchritt = new FBalken();
  638. _fZwischenSchritt->setStyle( FBalken::Style::Sichtbar | FBalken::Style::Prozent | FBalken::Style::Rahmen | FBalken::Style::Hintergrund | FBalken::Style::FFarbe | FBalken::Style::L_R );
  639. _fZwischenSchritt->setRahmenFarbe( 0xFFFFFFFF );
  640. _fZwischenSchritt->setHintergrundFarbe( 0xFF005000 );
  641. _fZwischenSchritt->setFBgFarbe( 0xFF00FF00 );
  642. _fZwischenSchritt->setAktionAnzahl( 100 );
  643. _fZwischenSchritt->setSchriftZ( schriftNormal->getThis() );
  644. _fZwischenSchritt->setSFarbe( 0xFFFFFFFF );
  645. _fZwischenSchritt->setSSize( 12 );
  646. _fZwischenSchritt->setSize( 200, 20 );
  647. _fZwischenSchritt->setPosition( 140, 260 );
  648. HFscreen->addMember( _fZwischenSchritt );
  649. _fGText = new TextFeld();
  650. _fGText->setStyle( TextFeld::Style::Sichtbar );
  651. _fGText->setText( "Gesamtfortschritt:" );
  652. _fGText->setSchriftZ( schriftNormal->getThis() );
  653. _fGText->setSchriftFarbe( 0xFFFFFFFF );
  654. _fGText->setSize( 200, 15 );
  655. _fGText->setPosition( 140, 295 );
  656. HFscreen->addMember( _fGText );
  657. _fGesamtSchritt = new FBalken();
  658. _fGesamtSchritt->setStyle( FBalken::Style::Sichtbar | FBalken::Style::Prozent | FBalken::Style::Rahmen | FBalken::Style::Hintergrund | FBalken::Style::FFarbe | FBalken::Style::L_R );
  659. _fGesamtSchritt->setRahmenFarbe( 0xFFFFFFFF );
  660. _fGesamtSchritt->setHintergrundFarbe( 0xFF005000 );
  661. _fGesamtSchritt->setFBgFarbe( 0xFF00FF00 );
  662. _fGesamtSchritt->setAktionAnzahl( 100 );
  663. _fGesamtSchritt->setSchriftZ( schriftNormal->getThis() );
  664. _fGesamtSchritt->setSFarbe( 0xFFFFFFFF );
  665. _fGesamtSchritt->setSSize( 12 );
  666. _fGesamtSchritt->setSize( 200, 20 );
  667. _fGesamtSchritt->setPosition( 140, 310 );
  668. HFscreen->addMember( _fGesamtSchritt );
  669. _vorschau = new BildZ();
  670. _vorschau->setStyle( BildZ::Style::normal | BildZ::Style::Alpha );
  671. _vorschau->setRahmenFarbe( 0xFFFFFFFF );
  672. _vorschau->setRahmenBreite( 2 );
  673. _vorschau->setSize( 340, 290 );
  674. _vorschau->setPosition( 350, 50 );
  675. _vorschau->setMausEreignis( _ret1ME );
  676. HFscreen->addMember( _vorschau );
  677. _datei2 = new LTDBDatei();
  678. _pfad2 = new TextFeld();
  679. _pfad2->setSchriftZ( schriftNormal->getThis() );
  680. _pfad2->setText( "Dateipfad" );
  681. _pfad2->setSchriftFarbe( 0xFFFFFFFF );
  682. _pfad2->setSchriftSize( 12 );
  683. _pfad2->setAlphaFeldFarbe( 0x5500FF00 );
  684. _pfad2->setAlphaFeldStrength( -5 );
  685. _pfad2->setRahmenBreite( 1 );
  686. _pfad2->setRahmenFarbe( 0xFF00FF00 );
  687. _pfad2->setStyle( TextFeld::Style::Sichtbar | TextFeld::Style::Rahmen | TextFeld::Style::Buffered | TextFeld::Style::Center | TextFeld::Style::Erlaubt );
  688. _pfad2->setSize( 540, 20 );
  689. _pfad2->setPosition( 10, 355 );
  690. _pfad2->setTastaturEreignis( _pfad2TE );
  691. HFscreen->addMember( _pfad2 );
  692. _laden2 = new Knopf();
  693. _laden2->setSchriftZ( schriftNormal->getThis() );
  694. _laden2->setText( "Datei laden" );
  695. _laden2->setSchriftFarbe( 0xFFFFFFFF );
  696. _laden2->setSchriftSize( 12 );
  697. _laden2->setRahmenBreite( 2 );
  698. _laden2->setRahmenFarbe( 0xFF00FF00 );
  699. _laden2->setAlphaFeldFarbe( 0x5500FF00 );
  700. _laden2->setAlphaFeldStrength( -5 );
  701. _laden2->setKBFarbe( 0xFF000000 );
  702. _laden2->setKBStrength( 20 );
  703. _laden2->setMausEreignis( _laden2ME );
  704. _laden2->setTastaturEreignis( 0 );
  705. _laden2->setSize( 130, 30 );
  706. _laden2->setPosition( 560, 350 );
  707. _laden2->setStyle( Knopf::Style::Sichtbar | Knopf::Style::Erlaubt | Knopf::Style::Buffered | Knopf::Style::KlickBuffer | Knopf::Style::Rahmen );
  708. HFscreen->addMember( _laden2 );
  709. _bilder2 = new AuswahlListe();
  710. _bilder2->setStyle( AuswahlListe::Style::Sichtbar | AuswahlListe::Style::Rahmen | AuswahlListe::Style::Erlaubt | AuswahlListe::Style::AuswahlBuffer | AuswahlListe::Style::AuswahlRahmen | AuswahlListe::Style::VScroll );
  711. _bilder2->setAAFZ( new AlphaFeld() );
  712. _bilder2->zABuffer()->setFarbe( 0x7500FF00 );
  713. _bilder2->zABuffer()->setStrength( 8 );
  714. _bilder2->setRahmenFarbe( 0xFFFFFFFF );
  715. _bilder2->setRahmenBreite( 2 );
  716. _bilder2->setALRZ( new LRahmen() );
  717. _bilder2->zARahmen()->setFarbe( 0xFF00FF00 );
  718. _bilder2->setSize( 120, 300 );
  719. _bilder2->setPosition( 10, 390 );
  720. _bilder2->setVertikalKlickScroll( 5 );
  721. _bilder2->setMausEreignis( _bilder2ME );
  722. _bilder2->update();
  723. HFscreen->addMember( _bilder2 );
  724. _import_Pfad2 = new TextFeld();
  725. _import_Pfad2->setSchriftZ( schriftNormal->getThis() );
  726. _import_Pfad2->setText( "Import Pfad" );
  727. _import_Pfad2->setSchriftFarbe( 0xFFFFFFFF );
  728. _import_Pfad2->setSchriftSize( 12 );
  729. _import_Pfad2->setAlphaFeldFarbe( 0x5500FF00 );
  730. _import_Pfad2->setAlphaFeldStrength( -5 );
  731. _import_Pfad2->setRahmenBreite( 1 );
  732. _import_Pfad2->setRahmenFarbe( 0xFF00FF00 );
  733. _import_Pfad2->setStyle( TextFeld::Style::Sichtbar | TextFeld::Style::Rahmen | TextFeld::Style::Buffered | TextFeld::Style::Center | TextFeld::Style::Erlaubt );
  734. _import_Pfad2->setSize( 200, 20 );
  735. _import_Pfad2->setPosition( 140, 400 );
  736. _import_Pfad2->setTastaturEreignis( _import_Pfad2TE );
  737. HFscreen->addMember( _import_Pfad2 );
  738. _import2 = new Knopf();
  739. _import2->setSchriftZ( schriftNormal->getThis() );
  740. _import2->setText( "Importieren" );
  741. _import2->setSchriftFarbe( 0xFFFFFFFF );
  742. _import2->setSchriftSize( 12 );
  743. _import2->setRahmenBreite( 2 );
  744. _import2->setRahmenFarbe( 0xFF00FF00 );
  745. _import2->setAlphaFeldFarbe( 0x5500FF00 );
  746. _import2->setAlphaFeldStrength( -5 );
  747. _import2->setKBFarbe( 0xFF000000 );
  748. _import2->setKBStrength( 20 );
  749. _import2->setMausEreignis( _import2ME );
  750. _import2->setTastaturEreignis( 0 );
  751. _import2->setSize( 130, 30 );
  752. _import2->setPosition( 175, 430 );
  753. _import2->setStyle( Knopf::Style::Sichtbar | Knopf::Style::Erlaubt | Knopf::Style::Buffered | Knopf::Style::KlickBuffer | Knopf::Style::Rahmen );
  754. HFscreen->addMember( _import2 );
  755. _remove2 = new Knopf();
  756. _remove2->setSchriftZ( schriftNormal->getThis() );
  757. _remove2->setText( "Löschen" );
  758. _remove2->setSchriftFarbe( 0xFFFFFFFF );
  759. _remove2->setSchriftSize( 12 );
  760. _remove2->setRahmenBreite( 2 );
  761. _remove2->setRahmenFarbe( 0xFF00FF00 );
  762. _remove2->setAlphaFeldFarbe( 0x5500FF00 );
  763. _remove2->setAlphaFeldStrength( -5 );
  764. _remove2->setKBFarbe( 0xFF000000 );
  765. _remove2->setKBStrength( 20 );
  766. _remove2->setMausEreignis( _remove2ME );
  767. _remove2->setTastaturEreignis( 0 );
  768. _remove2->setSize( 130, 30 );
  769. _remove2->setPosition( 175, 470 );
  770. _remove2->setStyle( Knopf::Style::Sichtbar | Knopf::Style::Erlaubt | Knopf::Style::Buffered | Knopf::Style::KlickBuffer | Knopf::Style::Rahmen );
  771. HFscreen->addMember( _remove2 );
  772. _von_Oben = new Knopf();
  773. _von_Oben->setSchriftZ( schriftNormal->getThis() );
  774. _von_Oben->setText( "von Oben" );
  775. _von_Oben->setSchriftFarbe( 0xFFFFFFFF );
  776. _von_Oben->setSchriftSize( 12 );
  777. _von_Oben->setRahmenBreite( 2 );
  778. _von_Oben->setRahmenFarbe( 0xFF00FF00 );
  779. _von_Oben->setAlphaFeldFarbe( 0x5500FF00 );
  780. _von_Oben->setAlphaFeldStrength( -5 );
  781. _von_Oben->setKBFarbe( 0xFF000000 );
  782. _von_Oben->setKBStrength( 20 );
  783. _von_Oben->setMausEreignis( _von_ObenME );
  784. _von_Oben->setTastaturEreignis( 0 );
  785. _von_Oben->setSize( 130, 30 );
  786. _von_Oben->setPosition( 175, 510 );
  787. _von_Oben->setStyle( Knopf::Style::Sichtbar | Knopf::Style::Erlaubt | Knopf::Style::Buffered | Knopf::Style::KlickBuffer | Knopf::Style::Rahmen );
  788. HFscreen->addMember( _von_Oben );
  789. _fZText2 = new TextFeld();
  790. _fZText2->setStyle( TextFeld::Style::Sichtbar );
  791. _fZText2->setText( "Zwischenfortschritt:" );
  792. _fZText2->setSchriftZ( schriftNormal->getThis() );
  793. _fZText2->setSchriftFarbe( 0xFFFFFFFF );
  794. _fZText2->setSize( 200, 15 );
  795. _fZText2->setPosition( 140, 585 );
  796. HFscreen->addMember( _fZText2 );
  797. _fZwischenSchritt2 = new FBalken();
  798. _fZwischenSchritt2->setStyle( FBalken::Style::Sichtbar | FBalken::Style::Prozent | FBalken::Style::Rahmen | FBalken::Style::Hintergrund | FBalken::Style::FFarbe | FBalken::Style::L_R );
  799. _fZwischenSchritt2->setRahmenFarbe( 0xFFFFFFFF );
  800. _fZwischenSchritt2->setHintergrundFarbe( 0xFF005000 );
  801. _fZwischenSchritt2->setFBgFarbe( 0xFF00FF00 );
  802. _fZwischenSchritt2->setAktionAnzahl( 100 );
  803. _fZwischenSchritt2->setSchriftZ( schriftNormal->getThis() );
  804. _fZwischenSchritt2->setSFarbe( 0xFFFFFFFF );
  805. _fZwischenSchritt2->setSSize( 12 );
  806. _fZwischenSchritt2->setSize( 200, 20 );
  807. _fZwischenSchritt2->setPosition( 140, 600 );
  808. HFscreen->addMember( _fZwischenSchritt2 );
  809. _fGText2 = new TextFeld();
  810. _fGText2->setStyle( TextFeld::Style::Sichtbar );
  811. _fGText2->setText( "Gesamtfortschritt:" );
  812. _fGText2->setSchriftZ( schriftNormal->getThis() );
  813. _fGText2->setSchriftFarbe( 0xFFFFFFFF );
  814. _fGText2->setSize( 200, 15 );
  815. _fGText2->setPosition( 140, 645 );
  816. HFscreen->addMember( _fGText2 );
  817. _fGesamtSchritt2 = new FBalken();
  818. _fGesamtSchritt2->setStyle( FBalken::Style::Sichtbar | FBalken::Style::Prozent | FBalken::Style::Rahmen | FBalken::Style::Hintergrund | FBalken::Style::FFarbe | FBalken::Style::L_R );
  819. _fGesamtSchritt2->setRahmenFarbe( 0xFFFFFFFF );
  820. _fGesamtSchritt2->setHintergrundFarbe( 0xFF005000 );
  821. _fGesamtSchritt2->setFBgFarbe( 0xFF00FF00 );
  822. _fGesamtSchritt2->setAktionAnzahl( 100 );
  823. _fGesamtSchritt2->setSchriftZ( schriftNormal->getThis() );
  824. _fGesamtSchritt2->setSFarbe( 0xFFFFFFFF );
  825. _fGesamtSchritt2->setSSize( 12 );
  826. _fGesamtSchritt2->setSize( 200, 20 );
  827. _fGesamtSchritt2->setPosition( 140, 660 );
  828. HFscreen->addMember( _fGesamtSchritt2 );
  829. _vorschau2 = new BildZ();
  830. _vorschau2->setStyle( BildZ::Style::normal | BildZ::Style::Alpha );
  831. _vorschau2->setRahmenFarbe( 0xFFFFFFFF );
  832. _vorschau2->setRahmenBreite( 2 );
  833. _vorschau2->setSize( 340, 300 );
  834. _vorschau2->setPosition( 350, 390 );
  835. _vorschau2->setMausEreignis( _ret1ME );
  836. HFscreen->addMember( _vorschau2 );
  837. DWORD threadId;
  838. HANDLE tHandle = CreateThread( 0, 0, runThread, HFscreen, 0, &threadId );
  839. Framework::StartNachrichtenSchleife();
  840. Exit = 1;
  841. WaitForSingleObject( tHandle, INFINITE );
  842. _datei->release();
  843. _datei2->release();
  844. schriftNormal->release();
  845. HFscreen->release();
  846. HauptFenster->setBildschirm( 0 );
  847. HauptFenster->release();
  848. return 0;
  849. }