44
55ChatPanel* ChatPanel::create () {
66 auto ret = new ChatPanel;
7- if (ret->initAnchored ( 350 . f , 280 . f )) {
7+ if (ret->init ( )) {
88 ret->autorelease ();
99 return ret;
1010 }
@@ -14,18 +14,22 @@ ChatPanel* ChatPanel::create() {
1414
1515void ChatPanel::initialize () {
1616 // initialize the listeners n' stuff if they havent already
17- if (!ChatPanel:: hasInitialized) {
17+ if (!hasInitialized) {
1818 auto & nm = NetworkManager::get ();
19- nm.on <MessageSentPacket>([](MessageSentPacket* packet) {
20- ChatPanel:: messages.push_back (packet-> message );
21- ChatPanel:: messagesQueue.push_back (packet-> message );
19+ nm.on <MessageSentPacket>([](MessageSentPacket packet) {
20+ messages.push_back (packet. message );
21+ messagesQueue.push_back (std::move ( packet. message ) );
2222 });
2323
24- ChatPanel:: hasInitialized = true ;
24+ hasInitialized = true ;
2525 }
2626}
2727
28- bool ChatPanel::setup () {
28+ bool ChatPanel::init () {
29+ if (!Popup::init (350 .f , 280 .f )) {
30+ return false ;
31+ }
32+
2933 this ->setTitle (" Chat" );
3034
3135 ChatPanel::initialize ();
@@ -93,7 +97,7 @@ bool ChatPanel::setup() {
9397 return true ;
9498}
9599
96- void ChatPanel::renderMessage (Message message) {
100+ void ChatPanel::renderMessage (Message const & message) {
97101 auto msgNode = CCNode::create ();
98102 auto msgText = TextArea::create (
99103 fmt::format (" <cy>{}</c>: {}" , message.author .name , message.message ),
@@ -117,18 +121,18 @@ void ChatPanel::renderMessage(Message message) {
117121}
118122
119123void ChatPanel::updateMessages (float dt) {
120- for (auto message : ChatPanel:: messagesQueue) {
124+ for (auto const & message : messagesQueue) {
121125 renderMessage (message);
122126 }
123- ChatPanel:: messagesQueue.clear ();
127+ messagesQueue.clear ();
124128}
125129
126130void ChatPanel::clearMessages () {
127- ChatPanel:: messages.clear ();
131+ messages.clear ();
128132
129133 auto & nm = NetworkManager::get ();
130134 nm.unbind <MessageSentPacket>();
131- ChatPanel:: hasInitialized = false ;
135+ hasInitialized = false ;
132136}
133137
134138void ChatPanel::sendMessage () {
@@ -142,11 +146,11 @@ void ChatPanel::sendMessage() {
142146 messageInput->setString (" " );
143147}
144148
145- void ChatPanel::keyDown (cocos2d::enumKeyCodes keycode) {
149+ void ChatPanel::keyDown (cocos2d::enumKeyCodes keycode, double timestamp ) {
146150 if (keycode == cocos2d::KEY_Enter && CCIMEDispatcher::sharedDispatcher ()->hasDelegate ()) {
147151 log::debug (" sending via keybind" );
148152 sendMessage ();
149153 } else {
150- geode:: Popup<> ::keyDown (keycode);
154+ Popup::keyDown (keycode, timestamp );
151155 }
152156}
0 commit comments