RI_NOTHING,
RI_ROOM,
RI_CURRUSER,
- RI_SERVPROPS
+ RI_SERVPROPS,
+ RI_ZAPPED
};
wxTreeItemId prev;
int i, pos, floornum, where;
int mailfloor;
+ int zapfloor;
unsigned int roomflags;
prev = null_item;
-1,
new RoomItem(citsock->curr_user, FALSE, RI_CURRUSER)
);
+
+
+
sendcmd = "LFLR";
// Bail out silently if we can't retrieve the floor list
if (citsock->serv_trans(sendcmd, recvcmd, transbuf) != 1) return;
);
}
+
+ zapfloor = AppendItem(
+ GetRootItem(),
+ "Zapped Rooms",
+ 1,
+ -1,
+ new RoomItem("Zapped Rooms", TRUE, RI_ZAPPED)
+ );
+
+ sendcmd = "LZRM";
+
+ if (citsock->serv_trans(sendcmd, recvcmd, transbuf) != 1) return;
+ while (pos = transbuf.Find('\n', FALSE), (pos >= 0)) {
+ buf = transbuf.Left(pos);
+ transbuf = transbuf.Mid(pos+1);
+ extract(roomname, buf, 0);
+ roomflags = extract_int(buf, 1);
+ floornum = extract_int(buf, 2);
+ where = zapfloor;
+ AppendItem(
+ where,
+ roomname,
+ 4,
+ -1,
+ new RoomItem(roomname, FALSE, RI_ROOM)
+ );
+ }
+
+
+
wxTreeItemId sp = AppendItem(
GetRootItem(),
"Global settings",
new RoomView(citsock, citMyMDI, r->RoomName);
break;
+ case RI_ZAPPED:
+ new RoomView(citsock, citMyMDI, r->RoomName);
+ DeleteAllItems();
+ LoadRoomList();
+ break;
+
+
case RI_SERVPROPS:
if (CurrServProps == NULL) {
CurrServProps = new ServProps(
BUTTON_CLOSE,
BUTTON_READNEW,
BUTTON_READALL,
- BUTTON_ENTER
+ BUTTON_ENTER,
+ BUTTON_ZAP
};
EVT_BUTTON( BUTTON_READNEW, RoomView::OnButtonPressed)
EVT_BUTTON( BUTTON_READALL, RoomView::OnButtonPressed)
EVT_BUTTON( BUTTON_ENTER, RoomView::OnButtonPressed)
+ EVT_BUTTON( BUTTON_ZAP, RoomView::OnButtonPressed)
END_EVENT_TABLE()
c4->right.LeftOf(readall_button, 5);
enter_button->SetConstraints(c4);
+ wxButton *zap_button = new wxButton(
+ this,
+ BUTTON_ZAP,
+ " Zap ",
+ wxDefaultPosition);
+ wxLayoutConstraints *c5 = new wxLayoutConstraints;
+ c5->top.SameAs(enter_button, wxTop);
+ c5->bottom.SameAs(readall_button, wxBottom);
+ c5->width.AsIs();
+ c5->right.LeftOf(readall_button, 5);
+ zap_button->SetConstraints(c5);
+
Layout();
wxYield();
citsock->serv_trans(sendcmd, recvcmd, xferbuf, ThisRoom);
new RoomView(citsock, citMyMDI, RoomList->GetNextRoom());
delete this;
+ } else if (whichbutton.GetId() == BUTTON_ZAP) {
+ sendcmd = "FORG"; //Zap (forget) room
+ citsock->serv_trans(sendcmd, recvcmd, xferbuf, ThisRoom);
+ new RoomView(citsock, citMyMDI, RoomList->GetNextRoom());
+ delete this;
+ RoomList->DeleteAllItems();
+ RoomList->LoadRoomList();
}
}