#include "VideoChat.h" #include #include #include #include #include #include #include // 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); }