2 Begin VB.Form RoomPrompt
9 ForeColor = &H80000008&
18 ShowInTaskbar = 0 'False
21 Begin VB.CommandButton button_abandon
23 BackColor = &H80000005&
26 name = "MS Sans Serif"
32 strikethrough = 0 'False
41 Begin VB.ListBox OldRooms
43 BackColor = &H00C0C0C0&
52 Begin VB.ListBox NewRooms
54 BackColor = &H00C0C0C0&
63 Begin VB.CommandButton button_ungoto
65 BackColor = &H80000005&
69 name = "MS Sans Serif"
75 strikethrough = 0 'False
83 Begin VB.CommandButton button_page
85 BackColor = &H80000005&
86 Caption = "&Page a user"
88 name = "MS Sans Serif"
94 strikethrough = 0 'False
102 Begin VB.CommandButton button_dir
104 BackColor = &H80000005&
105 Caption = "Read &Directory"
108 name = "MS Sans Serif"
114 strikethrough = 0 'False
122 Begin VB.CommandButton button_chat
124 BackColor = &H80000005&
127 name = "MS Sans Serif"
133 strikethrough = 0 'False
141 Begin VB.CommandButton button_who
143 BackColor = &H80000005&
144 Caption = "&Who is online"
146 name = "MS Sans Serif"
152 strikethrough = 0 'False
160 Begin VB.CommandButton button_terminate
162 BackColor = &H80000005&
163 Caption = "&Terminate"
165 name = "MS Sans Serif"
171 strikethrough = 0 'False
180 Begin VB.CommandButton button_skip
182 BackColor = &H80000005&
185 name = "MS Sans Serif"
191 strikethrough = 0 'False
200 Begin VB.CommandButton button_zap
202 BackColor = &H80000005&
203 Caption = "&Zap (forget)"
205 name = "MS Sans Serif"
211 strikethrough = 0 'False
219 Begin VB.CommandButton button_forward
221 BackColor = &H80000005&
222 Caption = "Read &Forward"
224 name = "MS Sans Serif"
230 strikethrough = 0 'False
239 Begin VB.CommandButton button_old
241 BackColor = &H80000005&
242 Caption = "Read &Old"
244 name = "MS Sans Serif"
250 strikethrough = 0 'False
258 Begin VB.CommandButton button_new
260 BackColor = &H80000005&
261 Caption = "Read &New"
263 name = "MS Sans Serif"
269 strikethrough = 0 'False
277 Begin VB.CommandButton button_last5
279 BackColor = &H80000005&
280 Caption = "Read &Last 5"
282 name = "MS Sans Serif"
288 strikethrough = 0 'False
296 Begin VB.CommandButton button_goto
298 BackColor = &H80000005&
301 name = "MS Sans Serif"
307 strikethrough = 0 'False
316 Begin VB.CommandButton button_enter
318 BackColor = &H80000005&
319 Caption = "&Enter message"
321 name = "MS Sans Serif"
327 strikethrough = 0 'False
336 Begin Threed.SSFrame Frame3D1
346 Caption = "Current room:"
347 BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
348 name = "MS Sans Serif"
354 strikethrough = 0 'False
356 Begin VB.Label MsgsCount
357 Alignment = 2 'Center
359 BackColor = &H00808080&
360 BackStyle = 0 'Transparent
362 name = "MS Sans Serif"
368 strikethrough = 0 'False
370 ForeColor = &H80000008&
377 Begin VB.Label CurrRoom
378 Alignment = 2 'Center
381 BackColor = &H00808080&
382 BackStyle = 0 'Transparent
390 strikethrough = 0 'False
392 ForeColor = &H00000000&
400 Begin VB.Label Label2
403 BackColor = &H00C0C0C0&
404 Caption = "No unseen messages in:"
405 ForeColor = &H00800000&
412 Begin VB.Label Label1
415 BackColor = &H00C0C0C0&
416 Caption = "Rooms with unread messages:"
417 ForeColor = &H00800000&
424 Begin VB.Menu menu_enter
426 Begin VB.Menu menu_enter_conf
427 Caption = "&Configuration"
429 Begin VB.Menu menu_enter_file
430 Caption = "&File (upload)"
432 Begin VB.Menu menu_enter_regis
433 Caption = "Re&gistration Info"
435 Begin VB.Menu menu_enter_passwd
436 Caption = "Set &Password..."
438 Begin VB.Menu menu_enter_room
439 Caption = "Create New &Room..."
442 Begin VB.Menu menu_read
444 Begin VB.Menu menu_read_directory
445 Caption = "&Directory"
447 Begin VB.Menu menu_read_file
448 Caption = "&File (download)"
450 Begin VB.Menu menu_read_info
451 Caption = "Room &Info File"
453 Begin VB.Menu menu_read_userlist
454 Caption = "&User List"
457 Begin VB.Menu menu_term
458 Caption = "&Terminate"
459 Begin VB.Menu menu_term_quit
460 Caption = "Terminate and &Quit"
462 Begin VB.Menu menu_term_stay
463 Caption = "Terminate and &Stay Online"
466 Begin VB.Menu menu_aide
468 Begin VB.Menu menu_aide_edit
469 Caption = "&Edit Room..."
471 Begin VB.Menu menu_aide_file
472 Caption = "&File Commands..."
473 Begin VB.Menu menu_aide_file_delete
474 Caption = "&Delete File..."
476 Begin VB.Menu menu_aide_file_move
477 Caption = "&Move File..."
479 Begin VB.Menu menu_aide_file_send
480 Caption = "&Send File over Net..."
483 Begin VB.Menu menu_aide_info
484 Caption = "Edit &Info File"
486 Begin VB.Menu menu_aide_kill
487 Caption = "&Kill this Room"
489 Begin VB.Menu menu_aide_room
490 Caption = "&Room commands..."
491 Begin VB.Menu menu_aide_room_invite
492 Caption = "&Invite a user..."
494 Begin VB.Menu menu_aide_room_kick
495 Caption = "&Kick out a user..."
498 Begin VB.Menu menu_aide_useredit
499 Caption = "Edit a &User..."
501 Begin VB.Menu menu_aide_valid
502 Caption = "&Validate New Users..."
504 Begin VB.Menu menu_aide_whoknows
505 Caption = "&Who Knows Room"
509 Attribute VB_Name = "RoomPrompt"
510 Attribute VB_Creatable = False
511 Attribute VB_Exposed = False
514 Private Sub button_abandon_Click(Index As Integer)
516 If begin_trans() = True Then
517 serv_puts ("SLRP " + Str$(LastMessageRead&))
521 Call button_skip_click(0)
526 Private Sub button_chat_Click()
528 If begin_trans() = True Then
531 If Left$(a$, 1) = "8" Then
541 Private Sub button_dir_Click()
542 Call menu_read_directory_click
545 Private Sub button_enter_Click(Index As Integer)
550 If begin_trans() = True Then
553 If Left$(a$, 1) = "2" Then can_enter% = 1
554 If Left$(a$, 3) = "570" Then can_enter% = 2
558 If can_enter% = 0 Then
559 MsgBox Right$(a$, Len(a$) - 4)
561 If can_enter% = 1 Then
565 If can_enter% = 2 Then
572 Private Sub button_forward_Click(Index As Integer)
575 If begin_trans() = False Then GoTo skipfwd
576 serv_puts ("MSGS ALL")
579 If Left$(a$, 1) = "1" Then
582 If a$ = "000" Then Exit Do
583 msg_array&(max_msgs%) = CLng(Val(a$))
584 max_msgs% = max_msgs% + 1
590 If max_msgs% > 0 Then
594 MsgBox "This room is empty."
599 Private Sub button_goto_click(Index As Integer)
601 If begin_trans() = True Then
602 serv_puts ("SLRP HIGHEST")
605 If NewRooms.ListIndex >= 0 Then newmsgs% = 0
606 If OldRooms.ListIndex >= 0 Then newmsgs% = 1
607 Call button_skip_click(0)
613 Private Sub button_last5_Click()
615 If begin_trans() = False Then GoTo skiplast5
616 serv_puts ("MSGS LAST|5")
619 If Left$(a$, 1) = "1" Then
622 If a$ = "000" Then Exit Do
623 msg_array&(max_msgs%) = CLng(Val(a$))
624 max_msgs% = max_msgs% + 1
630 If max_msgs% > 0 Then
634 MsgBox "This room is empty."
641 Private Sub button_new_Click()
643 If begin_trans() = False Then GoTo skipnew
644 serv_puts ("MSGS NEW")
647 If Left$(a$, 1) = "1" Then
650 If a$ = "000" Then Exit Do
651 msg_array&(max_msgs%) = CLng(Val(a$))
652 max_msgs% = max_msgs% + 1
658 If max_msgs% > 0 Then
662 MsgBox "This room is empty."
668 Private Sub button_old_Click()
670 If begin_trans() = False Then GoTo skipold
671 serv_puts ("MSGS OLD")
674 If Left$(a$, 1) = "1" Then
677 If a$ = "000" Then Exit Do
678 msg_array&(max_msgs%) = CLng(Val(a$))
679 max_msgs% = max_msgs% + 1
685 If max_msgs% > 0 Then
689 MsgBox "This room is empty."
695 Private Sub button_page_Click()
702 Private Sub button_skip_click(Index As Integer)
707 a% = OldRooms.ListIndex
709 b$ = OldRooms.List(a%)
712 a% = NewRooms.ListIndex
714 b$ = NewRooms.List(a%)
719 OldRooms.AddItem (h$)
721 NewRooms.AddItem (h$)
726 Private Sub button_terminate_click(Index As Integer)
728 If begin_trans() = True Then
738 Private Sub button_who_Click()
743 Private Sub button_zap_Click()
744 q% = MsgBox("Are you sure you want to Zap (forget) '" + CurrRoomName$ + "'?", 33, CurrRoomName$)
748 If begin_trans() = True Then
755 If Left$(a$, 1) <> "2" Then
756 MsgBox Right$(a$, Len(a$) - 4), 16, "Error"
758 Call goto_room("_BASEROOM_")
764 Private Sub Form_Load()
765 NewRooms.Left = RoomPrompt.Left + 120
766 NewRooms.Width = RoomPrompt.Width - 240
768 OldRooms.Left = RoomPrompt.Left + 120
769 OldRooms.Width = RoomPrompt.Width - 240
772 RoomPrompt.WindowState = 2
774 If SaveOldCount = 0 And SaveNewCount = 0 Then
775 Call RefreshRoomLists
779 For a% = 1 To SaveNewCount
780 NewRooms.AddItem (SaveNewRooms$(a%))
782 For a% = 1 To SaveOldCount
783 OldRooms.AddItem (SaveOldRooms$(a%))
786 If CurrRoomName$ = "" Then CurrRoomName$ = "_BASEROOM_"
787 Call goto_room(CurrRoomName$)
789 If LastMessageRead& > 0 Then
790 button_abandon(0).Enabled = True
792 button_abandon(0).Enabled = False
799 Private Sub Form_Resize()
803 RoomPrompt.Width = MainWin.Width - 200
804 RoomPrompt.Height = MainWin.Height - 600
806 NewRooms.Left = RoomPrompt.Left + 60
807 NewRooms.Width = RoomPrompt.Width - 120
809 OldRooms.Left = RoomPrompt.Left + 60
810 OldRooms.Width = RoomPrompt.Width - 120
812 NewRooms.Top = Label1.Top + Label1.Height
813 NewRooms.Height = Abs(Int(((RoomPrompt.Height - Label1.Top) / 2) - 300))
815 Label2.Top = NewRooms.Top + NewRooms.Height + 20
816 OldRooms.Top = Label2.Top + Label2.Height
817 OldRooms.Height = Abs((RoomPrompt.Height - OldRooms.Top) - 300)
819 Frame3D1.Width = Abs((RoomPrompt.Width - Frame3D1.Left) - 120)
820 CurrRoom.Width = Abs(Frame3D1.Width - 150)
821 MsgsCount.Width = Abs(Frame3D1.Width - 150)
823 'CurrRoom.FontSize = Abs(Frame3D1.Width / 225)
827 Private Sub Form_Unload(Cancel As Integer)
829 ' Save the room lists
830 SaveNewCount = NewRooms.ListCount
831 For a% = 1 To SaveNewCount
832 SaveNewRooms$(a%) = NewRooms.List(a% - 1)
834 SaveOldCount = OldRooms.ListCount
835 For a% = 1 To SaveOldCount
836 SaveOldRooms$(a%) = OldRooms.List(a% - 1)
842 Private Sub goto_room(RoomName As String)
844 If begin_trans() = False Then GoTo skipgoto
845 If RoomName <> CurrRoomName$ Then LastMessageRead& = 0
846 serv_puts ("GOTO " + RoomName)
850 If (Left$(a$, 1) <> "2") Then
851 serv_puts ("GOTO" + "_BASEROOM_")
855 a$ = Right$(a$, Len(a$) - 4)
856 CurrRoomName$ = extract$(a$, 0)
857 CurrRoomFlags% = Val(extract$(a$, 4))
858 RoomPrompt.Caption = CurrRoomName$
859 button_abandon(0).Enabled = False
861 ' Enable file transfer commands only if we're in a directory room
862 If (CurrRoomFlags% And 32) = 32 Then
868 ' Enable some aide commands if user is the room aide
870 If Val(extract$(a$, 8)) > 0 Then IsRoomAide% = True
872 menu_read_directory.Enabled = b
873 button_dir.Enabled = b
874 menu_aide_file.Enabled = (b And IsRoomAide%)
875 menu_read_file.Enabled = b
876 menu_enter_file.Enabled = b
877 menu_aide_edit.Enabled = IsRoomAide%
878 menu_aide_info.Enabled = IsRoomAide%
879 menu_aide_kill.Enabled = IsRoomAide%
880 menu_aide_whoknows.Enabled = IsRoomAide%
882 If (axlevel >= 6) Or (IsRoomAide% = True) Then
883 menu_aide.Enabled = True
885 menu_aide.Enabled = False
888 CurrRoom.Caption = CurrRoomName$
889 newmsgs% = Val(extract$(a$, 1))
890 MsgsCount.Caption = extract$(a$, 2) + " messages" + Chr$(13) + Chr$(10) + extract(a$, 1) + " new"
892 If (NewRooms.ListCount >= 0) Then
893 For c% = 0 To NewRooms.ListCount - 1
894 If NewRooms.List(c%) = CurrRoomName$ Then NewRooms.RemoveItem (c%)
898 If (OldRooms.ListCount >= 0) Then
899 For c% = 0 To OldRooms.ListCount - 1
900 If OldRooms.List(c%) = CurrRoomName$ Then OldRooms.RemoveItem (c%)
904 If (OldRooms.ListIndex = (-1)) And (NewRooms.ListIndex = (-1)) And NewRooms.ListCount > 0 Then
905 NewRooms.ListIndex = 0
907 If (OldRooms.ListIndex = (-1)) And (NewRooms.ListIndex = (-1)) And OldRooms.ListCount > 0 Then
908 OldRooms.ListIndex = 0
912 If Val(extract$(a$, 3)) > 0 Then Call ReadRoomInfo(0)
918 Private Sub menu_aide_edit_Click()
925 Private Sub menu_aide_info_Click()
927 If begin_trans() = True Then
931 If Left$(a$, 1) = "2" Then
935 MsgBox Right$(a$, Len(a$) - 4), 16, "Error"
941 Private Sub menu_aide_kill_Click()
945 If begin_trans() = True Then
951 If Left$(a$, 1) = "2" Then
952 q% = MsgBox("Are you sure you want to delete '" + CurrRoomName$ + "'?", 33, CurrRoomName$)
954 MsgBox Right$(a$, Len(a$) - 4), 16, "Error"
959 If begin_trans() = True Then
966 If Left$(a$, 1) <> "2" Then
967 MsgBox Right$(a$, Len(a$) - 4), 16, "Error"
969 Call goto_room("_BASEROOM_")
975 Private Sub menu_aide_room_invite_Click()
982 Private Sub menu_aide_room_kick_Click()
989 Private Sub menu_aide_valid_Click()
996 Private Sub menu_aide_whoknows_Click()
1003 Private Sub menu_enter_conf_Click()
1005 Load EnterConfiguration
1008 Private Sub menu_enter_passwd_Click()
1013 Private Sub menu_enter_regis_Click()
1018 Private Sub menu_enter_room_Click()
1020 If begin_trans() = True Then
1021 serv_puts ("CRE8 0|0|0|0")
1024 If Left$(a$, 1) = "2" Then
1028 MsgBox Right$(a$, Len(a$) - 4), 16, "Error"
1034 Private Sub menu_help_about_Click()
1036 n$ = Chr$(13) + Chr$(10)
1038 a$ = "Citadel/UX Client for Windows" + n$
1039 a$ = a$ + "Copyright © 1995 by Art Cancro" + n$
1040 a$ = a$ + "WinSock code Copyright © 1994 by Brian Syme" + n$
1042 a$ = a$ + "The home of Citadel/UX is UNCENSORED! BBS at 914-244-3252." + n$
1044 a$ = a$ + "THIS IS A PRELIMINARY AND UNFINISHED DISTRIBUTION" + n$
1045 a$ = a$ + "FOR DEMONSTRATION PURPOSES ONLY."
1050 Private Sub menu_read_directory_click()
1058 Private Sub menu_read_file_Click()
1065 Private Sub menu_read_info_click()
1067 Call ReadRoomInfo(1)
1069 Private Sub ReadRoomInfo(deliberate As Integer)
1072 If begin_trans() = True Then
1075 If Left$(a$, 1) = "1" Then
1080 If a$ <> "000" Then i$ = i$ + a$ + Chr$(13) + Chr$(10)
1081 Loop While a$ <> "000"
1083 i$ = "No info file available for this room."
1086 If foundit = 1 Or deliberate = 1 Then
1087 MsgBox Cit_Format(i$), 64, CurrRoomName$
1093 Private Sub menu_read_userlist_Click()
1098 Private Sub menu_term_quit_Click()
1101 If begin_trans() = True Then
1113 Private Sub menu_term_stay_Click()
1114 Call button_terminate_click(0)
1117 Private Sub NewRooms_Click()
1119 a% = NewRooms.ListIndex
1120 OldRooms.ListIndex = (-1)
1121 NewRooms.ListIndex = a%
1125 Private Sub NewRooms_DblClick()
1127 If DoubleClickAction$ = "GOTO" Then Call button_goto_click(0)
1128 If DoubleClickAction$ = "SKIP" Then Call button_skip_click(0)
1129 If DoubleClickAction$ = "ABANDON" Then Call button_abandon_Click(0)
1134 Private Sub NewRooms_KeyPress(keyascii As Integer)
1136 If keyascii = 13 Or keyascii = 10 Then Call NewRooms_DblClick
1140 Private Sub OldRooms_Click()
1142 a% = OldRooms.ListIndex
1143 NewRooms.ListIndex = (-1)
1144 OldRooms.ListIndex = a%
1148 Private Sub OldRooms_DblClick()
1150 Call button_skip_click(0)
1154 Private Sub OldRooms_KeyPress(keyascii As Integer)
1156 If keyascii = 13 Or keyascii = 10 Then Call OldRooms_DblClick
1160 Private Sub RefreshRoomLists()
1162 ' First, clear out the saved rooms arrays...
1166 ' Then, clear out the windows if there's anything there...
1170 If begin_trans() = False Then GoTo skiproom
1173 If Left$(buf$, 1) = "1" Then
1176 If buf$ = "000" Then Exit Do
1177 NewRooms.AddItem (extract$(buf$, 0))
1183 If Left$(buf$, 1) = "1" Then
1186 If buf$ = "000" Then Exit Do
1187 OldRooms.AddItem (extract$(buf$, 0))