12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- #include "VideoChat.h"
- #include <Rahmen.h>
- #include <MausEreignis.h>
- #include <TastaturEreignis.h>
- #include <Text.h>
- #include <Schrift.h>
- #include <Punkt.h>
- #include <Bild.h>
- // Inhalt der VideoChat Klasse aus VideoChat.h
- // Konstruktor
- VideoChat::VideoChat(UIInit& uiFactory)
- : ReferenceCounter()
- {
- verlauf = uiFactory.createTextFeld(uiFactory.initParam);
- verlauf->setStyle(TextFeld::Style::TextGebiet & ~TextFeld::Style::Erlaubt);
- verlauf->setRahmenFarbe(0xFF909090);
- verlauf->setText("");
- verlauf->setPosition(20, BildschirmGröße().y - 210);
- verlauf->setSize(450, 200);
- }
- // Destruktor
- VideoChat::~VideoChat()
- {
- verlauf->release();
- }
- // nicht constant
- void VideoChat::addNachricht(const char* nachricht)
- {
- verlauf->addZeile(nachricht, 0xFFFFFFFF);
- verlauf->updateVScroll();
- }
- void VideoChat::addNachricht(const char* nachricht, int farbe)
- {
- verlauf->addZeile(nachricht, farbe);
- verlauf->updateVScroll();
- }
- void VideoChat::removeNachricht(const char* nachricht)
- {
- Text* txt = new Text(nachricht);
- txt->append("\n");
- TextRenderer* textRd = verlauf->zTextRenderer();
- if (textRd)
- {
- textRd->setSchriftSize(12);
- textRd->textFormatieren(txt, verlauf->getBreite() - 15 - 2);
- }
- int n = txt->anzahlVon('\n');
- int n2 = verlauf->zText()->anzahlVon('\n');
- if (n2 > n)
- verlauf->zText()->remove(verlauf->zText()->positionVon('\n', n2 - n - 1) + 1);
- else
- verlauf->setText("");
- verlauf->updateVScroll();
- }
- void VideoChat::doPublicMausEreignis(MausEreignis& me)
- {
- bool vera = me.verarbeitet;
- verlauf->doPublicMausEreignis(me);
- if (!vera && me.verarbeitet)
- {
- verlauf->setRahmenFarbe(0xFFFFFFFF);
- verlauf->setVertikalScrollFarbe(0xFF808080, 0);
- }
- else
- {
- verlauf->setRahmenFarbe(0xFF909090);
- verlauf->setVertikalScrollFarbe(0xFF404040, 0);
- }
- }
- void VideoChat::tick(double z)
- {
- verlauf->tick(z);
- }
- void VideoChat::render(Bild& zRObj)
- {
- verlauf->render(zRObj);
- }
|