Code: Select all
Input$ = "PureBasic is a low cost programming language. In buying PureBasic you will ensure "
Input$ + "that development will go further and faster. For personal use (ie: not used by a commercial "
Input$ + "organization) the updates are unlimited, unlike most other software out there. This means than "
Input$ + "when you buy PureBasic you will get all future updates for free, on the web site. Better still, "
Input$ + "you get the three versions of PureBasic (Amiga, Linux and Windows) for the same price ! For "
Input$ + "ease of ordering, you can safely use our secure online method. Thanks a lot for your support !"
OpenWindow(0,0,0,420,360,"Say it H3X0R !",#WS_OVERLAPPEDWINDOW | 1)
AddKeyboardShortcut(0,#PB_Shortcut_Control | #PB_Shortcut_A,0)
CreateGadgetList(WindowID(0))
ButtonGadget(0,0,0,120,20,"CLEAR")
ButtonGadget(1,0,0,120,20,"CONVERT")
dwStyle = #WS_CHILD | #WS_VISIBLE | #ES_MULTILINE | #WS_VSCROLL
*hwndInput = CreateWindowEx_(#WS_EX_CLIENTEDGE,"EDIT",Input$,dwStyle,0,0,0,0,WindowID(0),2,0,0)
*hwndOutput = CreateWindowEx_(#WS_EX_CLIENTEDGE,"EDIT",0,dwStyle,0,0,0,0,WindowID(0),3,0,0)
LoadFont(0,"Arial",9)
SendMessage_(*hwndInput,#WM_SETFONT,FontID(0),0)
SendMessage_(*hwndOutput,#WM_SETFONT,FontID(0),0)
SetFocus_(*hwndInput)
Repeat
EventID = WaitWindowEvent()
If EventID = #PB_Event_Menu : SendMessage_(GetFocus_(),#EM_SETSEL,0,-1) : EndIf
If EventID = #PB_Event_Gadget And EventGadget() = 0
SendMessage_(*hwndInput,#WM_SETTEXT,0,0)
SendMessage_(*hwndOutput,#WM_SETTEXT,0,0)
EndIf
If EventID = #PB_Event_Gadget And EventGadget() = 1
Length = SendMessage_(*hwndInput,#WM_GETTEXTLENGTH,0,0)+1
lpBuffer = AllocateMemory(Length)
SendMessage_(*hwndInput,#WM_GETTEXT,Length,lpBuffer)
For i=0 To Length-2
CharIn = PeekB(lpBuffer+i)
CaseOffset = 32 * Random(1)
Select CharIn
; Characters: Lower Case
Case 'a' : CharOut = '4'
Case 'b' : CharOut = 'b' - CaseOffset
Case 'c' : CharOut = 'c' - CaseOffset
Case 'd' : CharOut = 'd' - CaseOffset
Case 'e' : CharOut = '3'
Case 'f' : CharOut = 'f' - CaseOffset
Case 'g' : CharOut = 'g' - CaseOffset
Case 'h' : CharOut = 'h' - CaseOffset
Case 'i' : CharOut = '!'
Case 'j' : CharOut = 'j' - CaseOffset
Case 'k' : CharOut = 'k' - CaseOffset
Case 'l' : CharOut = 'l' - CaseOffset
Case 'm' : CharOut = 'm' - CaseOffset
Case 'n' : CharOut = 'n' - CaseOffset
Case 'o' : CharOut = '0'
Case 'p' : CharOut = 'p' - CaseOffset
Case 'q' : CharOut = 'q' - CaseOffset
Case 'r' : CharOut = 'r' - CaseOffset
Case 's' : CharOut = '$'
Case 't' : CharOut = 't' - CaseOffset
Case 'u' : CharOut = 'u' - CaseOffset
Case 'v' : CharOut = 'v' - CaseOffset
Case 'w' : CharOut = 'w' - CaseOffset
Case 'x' : CharOut = 'x' - CaseOffset
Case 'y' : CharOut = 'y' - CaseOffset
Case 'z' : CharOut = 'z' - CaseOffset
; Characters: Upper Case
Case 'A' : CharOut = '@'
Case 'B' : CharOut = 'B' + CaseOffset
Case 'C' : CharOut = 'C' + CaseOffset
Case 'D' : CharOut = 'D' + CaseOffset
Case 'E' : CharOut = 'E' + CaseOffset
Case 'F' : CharOut = 'F' + CaseOffset
Case 'G' : CharOut = 'G' + CaseOffset
Case 'H' : CharOut = 'H' + CaseOffset
Case 'I' : CharOut = 'I' + CaseOffset
Case 'J' : CharOut = 'J' + CaseOffset
Case 'K' : CharOut = 'K' + CaseOffset
Case 'L' : CharOut = 'L' + CaseOffset
Case 'M' : CharOut = 'M' + CaseOffset
Case 'N' : CharOut = 'N' + CaseOffset
Case 'O' : CharOut = 'O' + CaseOffset
Case 'P' : CharOut = 'P' + CaseOffset
Case 'Q' : CharOut = 'Q' + CaseOffset
Case 'R' : CharOut = 'R' + CaseOffset
Case 'S' : CharOut = 'S' + CaseOffset
Case 'T' : CharOut = 'T' + CaseOffset
Case 'U' : CharOut = 'U' + CaseOffset
Case 'V' : CharOut = 'V' + CaseOffset
Case 'W' : CharOut = 'W' + CaseOffset
Case 'X' : CharOut = 'X' + CaseOffset
Case 'Y' : CharOut = 'Y' + CaseOffset
Case 'Z' : CharOut = 'Z' + CaseOffset
Default : CharOut = CharIn
EndSelect
PokeB(lpBuffer+i,CharOut)
Next
SendMessage_(*hwndOutput,#WM_SETTEXT,0,lpBuffer)
FreeMemory(lpBuffer)
EndIf
If EventID = #PB_Event_SizeWindow
MoveWindow_(*hwndInput,5,5,WindowWidth(0)-10,(WindowHeight(0)-45)/2,1)
MoveWindow_(*hwndOutput,5,(WindowHeight(0)-45)/2+10,WindowWidth(0)-10,(WindowHeight(0)-45)/2,1)
ResizeGadget(0,WindowWidth(0)-250,WindowHeight(0)-30,120,25)
ResizeGadget(1,WindowWidth(0)-125,WindowHeight(0)-30,120,25)
EndIf
Until EventID = 16
