Chris S.
(MM club member)
2002-08-29 09:33 PM
BBChecker II Update

Jooel,

I hope you don't mind, but I redid your slider form so it wouldn't steal the focus from my current application anymore.

It uses a MSN Messenger-like popup window that slides up and down like your slider, but the focus stays on my current app. No more losing keystrokes while I'm working on something else.

It requires the latest version of KiXforms to work. Just replace the slider.kix file in the bbChecker folder.

code:
; New slider.kix for bbChecker

$Popup = CreateObject("Kixtart.Form")

$h = 120
$w = 300

$Popup.BorderStyle = 0
$Popup.ScaleHeight = 0
$Popup.ScaleWidth = $w
$Popup.ShowInTaskbar = False ; Not ready yet !
$Popup.TopMost = True

$popLabel = $Popup.Label(@crlf+@crlf+@crlf+@crlf+$sc,,,$w,$h)
$popLabel.BACKCOLOR = $Popup.RGB(255,255,255)
$popLabel.BorderStyle = 4
$popLabel.Alignment = 2

$Timer = $Popup.Timer(10)
$Timer.OnTimer = "Timer_Timer()"

$Popup.Top = $Popup.screen.height - (($b-3)+$Popup.Height)
$Popup.Left = $Popup.Screen.Width - ($w+15)
$Popup.Show
$DirectionIsUp = 1

While $Popup.Visible
$=Execute($Popup.DoEvents)
Loop

Exit(0)

Function Timer_Timer()
$Timer.Interval = 10
If $DirectionIsUp
$Popup.Height = $Popup.Height + 3
$Popup.Top = $Popup.Top - 3
If $Popup.Height => $h
$Popup.Height = $h
$Timer.Interval = 5000
$DirectionIsUp = 0
play "256t1d500f"
EndIf
Else
$Popup.Height = $Popup.Height -3
$Popup.Top = $Popup.Top + 3
If $Popup.Top >= ($Popup.Screen.Height-$b)
$Timer.Enabled = 0
$Popup.Hide
EndIf
EndIf
EndFunction



[ 03. September 2002, 19:41: Message edited by: Chris S. ]


LonkeroAdministrator
(KiX Master Guru)
2002-08-29 09:36 PM
Re: BBChecker II Update

chris, does it show up when you have full sized app on top?

if not, the purpose why I did is lost...


Chris S.
(MM club member)
2002-08-29 09:38 PM
Re: BBChecker II Update

Yes, sir. It uses the .topmost property to accomplish this feat.

Chris S.
(MM club member)
2002-08-29 09:41 PM
Re: BBChecker II Update

I just replaced the slide function in the main script (bbCheckerII.kix) to test it out. It might work better this way and eliminate the call to slider.kix altogether.

LonkeroAdministrator
(KiX Master Guru)
2002-08-29 09:55 PM
Re: BBChecker II Update

heh...

the only reason to put it in separate file was the lack of support on behalf of forms.

you know, when it was in the main script, I hanged the main script totally and as such useless...

if that is not happening with forms2 I should look at that too.

I'm taken some days of beginning tomorrow and will have some time to look at the script.

maybe I'll even get it updated [Big Grin]


Chris S.
(MM club member)
2002-08-29 09:58 PM
Re: BBChecker II Update

Yeah, it doesn't seem to be working when I include it with the main script.

Kdyer
(KiX Supporter)
2002-08-29 10:00 PM
Re: BBChecker II Update

Chris,

I am trying your rev of Lonk's Code.. Problem is that I am getting a DOS Box that pops up and then goes away..

Hmm...

Kent


Chris S.
(MM club member)
2002-08-29 10:02 PM
Re: BBChecker II Update

Kent, that is interesting becuase the script is called using WKiX.

Hmm, indeed.


Kdyer
(KiX Supporter)
2002-08-29 10:04 PM
Re: BBChecker II Update

I am using Lonkero's install program.. Using Kixtart 4.10.. Lemme go and grab 4.11.

Kent


LonkeroAdministrator
(KiX Master Guru)
2002-08-29 10:05 PM
Re: BBChecker II Update

my install has 4.11 beta 1 in it and it call's for that.

it still seems to mess up if you have elsewhere on your path the executable...


Chris S.
(MM club member)
2002-08-29 10:05 PM
Re: BBChecker II Update

I think Jooel's install registers the KiXforms DLL. I had to re-register the 2.0.2 version after I installed it today.

Kdyer
(KiX Supporter)
2002-08-29 10:16 PM
Re: BBChecker II Update

Jooel,

Is there a new version of BBChecker? Just went to your site and it is dated 7 August 2002.

Thanks!

Kent


LonkeroAdministrator
(KiX Master Guru)
2002-08-29 10:19 PM
Re: BBChecker II Update

it re-registers it if the version number in the registry is lower.

kent, no. there is no later package.
I've been thinking of the update all the time, but somehow haven't done it.


Chris S.
(MM club member)
2002-08-29 10:22 PM
Re: BBChecker II Update

Kent, I had to re-copy and re-register the KiXforms dll and it worked. The DOS screen is probably because of the .Topmost property call.

Chris S.
(MM club member)
2002-08-30 02:28 PM
Re: BBChecker II Update

Edit on code. I commented out the 'cls' command (I was using it while running it under the KiX.exe). The 'cls' was causing a console window to pop up when the script was called.

Chris S.
(MM club member)
2002-09-03 07:43 PM
Re: BBChecker II Update

Tweak to the code. Slider now 'slides' up and down from the top of the taskbar.

ShawnAdministrator
(KiX Supporter)
2002-09-04 12:30 AM
Re: BBChecker II Update

Chris,

Were is all of your new code ? Would be nice if we could get to the bottom of this "no-slider-in-main-script" thingy ...


LonkeroAdministrator
(KiX Master Guru)
2002-09-05 11:41 PM
Re: BBChecker II Update

shawn is back?

I quess it's the same stuff that was causing problem at my beta code...


LonkeroAdministrator
(KiX Master Guru)
2002-09-06 12:06 AM
Re: BBChecker II Update

hence the topic,

if there is anyone wanting support for win9x there is one problematic part I can't test nor research.
the taskbar. I know what bits to change in w2k and nt but have no clue how to make it work in win9x.

there is nothing more to it but just all the positioning is done by the taskbar height.

 


MightyR1
(MM club member)
2002-09-06 12:20 AM
Re: BBChecker II Update

Jooel,

Why rely on the taskbar height?
You could also let the slide bar start from the bottom of the screen and "overwrite" the taskbar. Changing the background color to yellow for example makes it easy to read the text...

Tomorrow (or today actually) I'll try the taskbar() function on Win9x for you...

(I've adjusted the code so it comes up in the middle of my screen)


Chris S.
(MM club member)
2002-09-06 12:29 AM
Re: BBChecker II Update

Shawn, I'm sorry, I missed your question. I've just been updating the code up at the top of the post.

My first crack at including the 'slider' in with the main script was to basically cut and paste the script inside the slider() function. Obviously, that didn't work because of the object residing inside the function.

I haven't looked at it too much since, but I'm thinking that creating the form outside of the function and just doing a 'show' and 'hide' inside the slider() function might do the trick. Especially since you've added the timer in kixforms.


LonkeroAdministrator
(KiX Master Guru)
2002-09-06 12:31 AM
Re: BBChecker II Update

pat...
well, the slider is not the only part taking the position from taskbar.

the whole checker is standing on above it.

anyway, thanks for checking on that. maybe I could even get my udf updated with supporting parts...


Chris S.
(MM club member)
2002-09-06 12:31 AM
Re: BBChecker II Update

BTW, I have been running my version of the slider since I posted this. It works great. No more stealing the focus when I'm typing in some other application.

ShawnAdministrator
(KiX Supporter)
2002-09-06 12:42 AM
Re: BBChecker II Update

Show me the money ...

[edit]

Maybe Vig's "SoftWhere?" application will tell me where I can get this script ? [Wink]

[edit]

Im an idiot ... your revised slider is in the first post ... so you didn't make any mods to the main script, eh ? Just plug-and-play the slider ?

[ 06. September 2002, 00:58: Message edited by: Shawn ]


LonkeroAdministrator
(KiX Master Guru)
2002-09-06 01:02 AM
Re: BBChecker II Update

is that modular scripting or what?

 


Chris S.
(MM club member)
2002-09-06 01:04 AM
Re: BBChecker II Update

{Editors note: I'm talking about integrating the slider into the main script here. Not running the slider as a separate script as Jooel had originally scripted it.}

Well, I did modifiy the main script some. I had to to get it to work. As far as I know, you can't have functions within a function. [Wink]

The problem was the createform from within the function, though. As Vig experienced with his software form script, you just can't do that w/o mucking things up. [Wink]

I started to go through the main script some, but didn't have enough time to get a handle on all of the functions. I was playing around with this with my 'spare-time' at work, after all. [Wink]

[ 06. September 2002, 01:08: Message edited by: Chris S. ]


Howard Bullock
(KiX Supporter)
2002-09-06 01:04 AM
Re: BBChecker II Update

Lonkero, thanks for a great tool. Chris, thanks for the improved slider.

[ 06. September 2002, 01:05: Message edited by: Howard Bullock ]


Chris S.
(MM club member)
2002-09-06 01:06 AM
Re: BBChecker II Update

Oh, the question was: did I have to modify the main script to update the slider? No. I used all of Jooel's variables in my script. I just renamed his slider and put mine in the folder in it's place. [Wink]

ShawnAdministrator
(KiX Supporter)
2002-09-06 01:20 AM
Re: BBChecker II Update

k - im due for a BBChecker upgrade anyways ... so this mucking-up problem ... explain what happens ... is it consistent, can you reproduce easily ... whats it "look like" ?

Chris S.
(MM club member)
2002-09-06 01:32 AM
Re: BBChecker II Update

What happened was that the form would never even show up. I didn't get any errors, just no form. I didn't change any of the values so it couldn't have been that the form was off the page.

I didn't spend a lot of time on it, however, and quickly reverted back to 'call'ing it from slider.kix.


ShawnAdministrator
(KiX Supporter)
2002-09-06 01:32 AM
Re: BBChecker II Update

Actually Chris ... if its not too much of a problem ... can you email me the code ... with the Slider integrated into the main script ... and maybe give me some thoughts as to what is happening ...

mailto:stassie@sympatico.ca

jooel:

Whats happening buddy ... you haven't been too active of late ...

[ 06. September 2002, 01:35: Message edited by: Shawn ]


Chris S.
(MM club member)
2002-09-06 01:51 AM
Re: BBChecker II Update

If I still have it. And if I do it's at work and I'm not. I'll see if I can find it tomorrow morning.

Heck, I might just play around with it tonight.

It's sad, I'm starting to code for recreational purposes. I think I need a 12-step program.

Anyway, here is the code I came up with. This works, but I had to comment out the timer.interval = 5000 line and replace it with a sleep 5.

code:
;
; BBChecker II - KiXtart Bulleting Board New Post Checker (RC-4)
;
; Dependencies (included in package):
; Wkix32 - KiXtart 4.11
; kixforms.dll - KiXForms (build 21)
; IE5 or higher
;
; -Lonkero
;
;todo's before release:
; parse takes the page as input.
; this way later update of var names is no problem.
;
; installation package
;
gosub "init"
while $form.visible parse()
if $show
$msg.caption = $show $hlurl.listindex=0 formlink($hlurl.text)
$form.caption = $show+" - BBChecker II"
if $beep play "256t1d500f" endif $tmp=3
if $focus=0 and $sslider $form.show(2) slide($msg.caption) $form.height=$tmp inline() endif
else $tmp=$looptime
endif
$time=@ticks+($tmp*1000)
do sleep 0.2 inline() until @error or ($time < @ticks)
loop
gosub "final"
exit 0

function inline() $=execute($form.doevents(1)) $=execute($form.doevents(1)) endfunction

function parse()
$httpObj.open("GET","http://kixtart.org/cgi-bin/ultimatebb.cgi?", not 1)
$httpObj.send() $data=$httpObj.Responsetext
if 1000<len($data)
inline()
$data=substr($data,instr($data,'ubb=get_profile')+10)
$bl.clear $bll.clear
if instr($data,'ubb=get_profile')<instr($data,'guest(s)')
$data=substr($data,instr($data,'ubb=get_profile'))
$users=substr($data,1,instr($data,' and'))
for each $user in split($users,'</a>, ')
$bll.additem(substr($user,instr($user,';u=')+3,instr($user,'">')-3-instr($user,';u=')),-1)
$bl.additem(substr($user,instr($user,'">')+2),-1)
next
$bl.removeitem($bl.listcount-1)
endif
for $c=0 to 6
$data=substr($data,instr($data,'&nbsp;<a href=')+15)
$y[$c]=substr($data,1,instr($data,'"')-1)
$data=substr($data,instr($data,'>')+1)
$x[$c]=substr($data,1,instr($data,'</a>') - 1)+" "
$x[$c]=join(split($x[$c],"&quot;"),'"')
$data=substr($data,instr($data,chr(10))+1)
if instr(substr($data,1,1),"<")
$users=substr($data,7,instr($data,chr(10))-7) else
$users=substr($data,1,instr($data,chr(10))-1) endif
$x[$c]=$x[$c]+$users
if $my and instr($users,$logon)
$dataold[$c]=$x[$c]
endif
next
$stamp=" "+left(@time,5)+" on @mdayno. of @month"
select
case "Loading elements..."==$msg.caption $show="" $fbb.enabled=1 $fbh.enabled=1 $msg.caption = ""
case $x[0]<>$dataold[0] $show=$x[0] $hl.additem($x[0]+$stamp+" {starters}",0) $hlurl.additem($y[0],0)
case $x[1]<>$dataold[1] $show=$x[1] $hl.additem($x[1]+$stamp+" {scripts}",0) $hlurl.additem($y[1],0)
case $x[2]<>$dataold[2] $show=$x[2] $hl.additem($x[2]+$stamp+" {COM}",0) $hlurl.additem($y[2],0)
case $x[3]<>$dataold[3] $show=$x[3] $hl.additem($x[3]+$stamp+" {UDF}",0) $hlurl.additem($y[3],0)
case $x[4]<>$dataold[4] $show=$x[4] $hl.additem($x[4]+$stamp+" {beta}",0) $hlurl.additem($y[4],0)
case $x[5]<>$dataold[5] $show=$x[5] $hl.additem($x[5]+$stamp+" {suggestions}",0) $hlurl.additem($y[5],0)
case $x[6]<>$dataold[6] $show=$x[6] $hl.additem($x[6]+$stamp+" {FAQ}",0) $hlurl.additem($y[6],0)
case 1 $show=0
endselect
endif
$dataold=$x
endfunction

function show($)
$form.height=$form.height+(100*$)
if $form.height=340
$hl.top=102
$hbh.top=275
$hbo.top=275
$hba.top=275
else
$hl.top=2
$hbh.top=175
$hbo.top=175
$hba.top=175
endif
if $=2
$hl.visible=1
$hbh.visible=1
$hbo.visible=1
$hba.visible=1
$fbh.enabled=0
else
$bl.visible=1
$blt.visible=1
$bbh.visible=1
$bbp.visible=1
$bbr.visible=1
$fbb.enabled=0
endif
$form.top=$screen-taskbar()+3-$form.height
$msg.top = $form.height-38
$fbe.top = $form.height-20
$fbh.top = $fbe.top
$fbb.top = $fbe.top
$fbs.top = $fbe.top
$form.show(1)
inline()
endfunction

function hide($)
$form.height=$form.height-(100*$)
if $=1
$bl.visible=0
$bbh.visible=0
$bbp.visible=0
$bbr.visible=0
$fbb.enabled=1
$blt.visible=0
else
$hl.visible=0
$hbh.visible=0
$hbo.visible=0
$hba.visible=0
$fbh.enabled=1
endif
$form.top=$screen - (taskbar() + $form.height - 3)
$msg.top = $form.height-38
$fbe.top = $form.height-20
$fbh.top = $fbe.top
$fbb.top = $fbe.top
$fbs.top = $fbe.top
$hl.top=2
$hbo.top=175
$hba.top=175
$hbh.top=175
$form.show(1)
inline()
endfunction

function formlink($in)
$form.onmousemove="$$msg.fontbold=0 $$msg.fontunderline=0"
$msg.onmousemove="$$msg.fontbold=1 $$msg.fontunderline=1"
$msg.onmouseup="$$form.show(2) run 'explorer "+chr(34)+$in+chr(34)+"'"
endfunction

Function TaskBar()
if @dos=="4.0" $_S="StuckRects" else $_S="StuckRects2" endif
$TaskBar=val("&"+substr(readvalue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\$_S","settings"),41,2))
endfunction

function slide($sc)
if instr($sc,'"') $sc=join(split($sc,'"'),"'") endif
;run '@scriptdir\wkix32 "@scriptdir\slider.kix" $$sc="$sc" $$b='+taskbar()

; Begin edit...Commented the above command. The rest of this function
; and the Timer_Timer() function below this one, is my
; modifications to the code.

$b=taskbar()
$h = 120
$w = 300
$DirectionIsUp = 1

$Popup = CreateObject("Kixtart.Form")
$Popup.BorderStyle = 0
$Popup.ScaleHeight = 0
$Popup.ScaleWidth = $w
$Popup.ShowInTaskbar = False ; Not ready yet !
$Popup.TopMost = True

$popLabel = $Popup.Label(@crlf+@crlf+@crlf+@crlf+$sc,,,$w,$h)
$popLabel.BACKCOLOR = $Popup.RGB(255,255,255)
$popLabel.BorderStyle = 4
$popLabel.Alignment = 2

$Popup.Top = $Popup.screen.height - (($b-4)+$Popup.Height)
$Popup.Left = $Popup.Screen.Width - ($w+15)
$Popup.Show

$Timer = $Popup.Timer(10)
$Timer.OnTimer = "Timer_Timer()"

While $Popup.Visible
$=Execute($Popup.DoEvents)
Loop

$Popup = ""
$Timer = ""
$popLabel = ""

endfunction

Function Timer_Timer()
$Timer.Interval = 10
If $DirectionIsUp
$Popup.Height = $Popup.Height + 3
$Popup.Top = $Popup.Top - 3
If $Popup.Height => $h
$Popup.Height = $h
;$Timer.Interval = 5000
sleep 5
$DirectionIsUp = 0
EndIf
Else
$Popup.Height = $Popup.Height -3
$Popup.Top = $Popup.Top + 3
If $Popup.Top >= ($Popup.Screen.Height-$b)
$Timer.Enabled = 0
$Popup.Hide
EndIf
EndIf
EndFunction

:init
$form = createobject("kixtart.form")
global $x[6] $dataold=$x $y=$x $screen=$form.screen.height
$form.caption = "BBChecker II"
$form.width = 430
$form.height = 40
$form.left = $form.screen.width - $form.width - 20
$form.borderstyle = 0
$form.fontsize = 8
$form.fontname = "helvetica"
$form.forecolor = 0
$form.fontbold = 0
$form.onlostfocus = "$$focus=0"
$form.ongotfocus = "$$focus=1"
$msg = $form.label("Loading elements...",15,2,410,12)
$msg.onmouseup="$$form.setfocus()"
$form.top = $screen - (taskbar() + $form.height - 3)
$fbe = $form.commandbutton("Exit",2,20,65,19)
$fbe.onclick = "$$form.visible = 0"
$fbs = $form.commandbutton("Miscellaneous",69,20,80,19)
$fbs.onmouseup = "inline() misc()"
$fbh = $form.commandbutton("History",$form.width - 68,20,65,19)
$fbh.enabled=0
$fbh.onclick = "show(2) $$form.setfocus()"
$fbb = $form.commandbutton("Buddyes",$fbh.left - 68,20,65,19)
$fbb.enabled=0
$fbb.onclick = "show(1) $$form.setfocus()"
$form.visible = 1
inline()
;history block
$hl = $form.listbox(0,2,2,426,170)
$hl.visible = 0
$hl.OnDblClick = "$$form.show(2) $$hlurl.listindex=$$hl.listindex run 'explorer "+chr(34)+"'+$$hlurl.text+'"+chr(34)+"'"
inline()
$hl.onclick="$$form.setfocus()"
$hbh = $form.commandbutton("Hide",$form.width - 80,175,75,20)
$hbh.visible = 0
inline()
$hbh.onclick = "hide(2) $$focus=1"
$hbo = $form.commandbutton("Show Topic",5,175,75,20)
$hbo.visible = 0
inline()
$hbo.onclick = "$$form.show(2) $$hlurl.listindex=$$hl.listindex run 'explorer "+chr(34)+"'+$$hlurl.text+'"+chr(34)+"'"
$hba = $form.commandbutton("Today's Active topics",150,175,130,20)
$hba.visible = 0
inline()
$hba.onclick = "$$form.show(2) run 'explorer "+chr(34)+"http://81.17.37.55/board/ultimatebb.php?ubb=get_daily"+chr(34)+"'"
$hlurl = $form.listbox(0,0,0,0,20)
$hlurl.visible = 0
;buddyes block
$bl = $form.listbox(0,2,15,200,80)
$bl.visible = 0
$bl.onclick="$$form.setfocus()"
inline()
$bll = $form.listbox(0,0,0,0,20)
$bll.visible = 0
$bll.ongotfocus="$$form.setfocus()"
inline()
$blt = $form.label("Logged on users:",5,2,150,12)
$blt.visible = 0
$blt.ongotfocus="$$form.setfocus()"
inline()
$bbh = $form.commandbutton("Hide",$form.width - 80,15,75,20)
$bbh.visible = 0
$bbh.onclick = "hide(1) $$focus=1"
inline()
$bbp = $form.commandbutton("Show Profile",210,15,75,20)
$bbp.visible = 0
$bbp.onclick = "$$form.show(2) $$bll.listindex=$$bl.listindex run 'explorer "+chr(34)+"http://81.17.37.55/cgi-bin/ultimatebb.cgi?ubb=get_profile;u='+$$bll.text+'"+chr(34)+"'"
inline()
$bbr = $form.commandbutton("Recent Posts",210,40,75,20)
$bbr.visible = 0
$bbr.onclick = "$$form.show(2) $$bll.listindex=$$bl.listindex run 'explorer "+chr(34)+"http://81.17.37.55/cgi-bin/ultimatebb.cgi?ubb=recent_user_posts;u='+$$bll.text+'"+chr(34)+"'"
inline()
global $focus $focus=1
;settings
$bk="HKEY_CURRENT_USER\Software\Jooel\bbChecker"
if not keyexist($bk) $=messagebox("bbChecker II installation corruption!@crlfThis propably is due to unclean installation@crlfRe-install needed","bbChecker II",16) exit 0 endif
$looptime=val(readvalue($bk,"looptime"))
$beep=val(readvalue($bk,"beep"))
$sslider=val(readvalue($bk,"slider"))
$my=val(readvalue($bk,"my"))
$logon=readvalue($bk,"logon")
;xmlhttp related func
$cache=readvalue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings","SyncMode5")
$=writevalue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings","SyncMode5","3","reg_dword")
$httpObj = createobject("microsoft.xmlhttp")
return

:final
$ = writevalue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings","SyncMode5",$cache,"reg_dword")
return

function misc()
$f = createobject("kixtart.form")
$f.caption = "bbChecker II - Miscellaneous"
$f.width = 250
$f.height = 250
$f.top = $screen/2
$f.left = $f.screen.width-720
$f.fontbold=1
$f.fontname = "Bookman Old Style"
$f.printxy(20,10,"bbChecker II")
$f.fontbold=0
$f.printxy(20,30,"Based on:")
$f.printxy(20,45,"Kixtart 4.11 (wkix32.exe)")
$f.printxy(20,60,"KixForms GUI (KixForms.exe)")
$f.fontname = "helvetica"
$fp = $f.checkbox("Don't show my posts",20,135,130,15)
$f.printxy(150,120,"Logonname:")
$fpt = $f.textbox($logon,150,135,65,17)
$lt = $f.textbox($looptime,150,158,25,17)
$f.printxy(20,160,"Post check interval (secs):")
$fo = $f.checkbox("Beep on post",20,180,110,15)
$fs = $f.checkbox("Show slider",20,200,90,15)
$fp.value = $my
if $fp.value $fpt.enabled=1 else $fpt.enabled=0 endif
$fo.value = $beep
$fs.value = $sslider
$fb = $f.commandbutton("OK",170,205,75,20)
$fb.onclick = 'if val($$lt.text)<10 $$lt.text="10" else $$f.visible=0 endif'
$f.show
while $f.visible $=execute($f.doevents(1))
if $fp.value $fpt.enabled=1 else $fpt.enabled=0 endif
if 99<val($lt.text) $lt.text="99" endif
loop
$looptime = val($lt.text)
$beep = $fo.value
$sslider = $fs.value
$my = $fp.value
$logon=$fpt.text
$=writevalue($bk,"looptime",""+$looptime,"reg_sz")
$=writevalue($bk,"beep",""+$beep,"reg_sz")
$=writevalue($bk,"slider",""+$sslider,"reg_sz")
$=writevalue($bk,"my",""+$my,"reg_sz")
$=writevalue($bk,"logon",""+$logon,"reg_sz")
endfunction



[ 06. September 2002, 14:14: Message edited by: Chris S. ]


ShawnAdministrator
(KiX Supporter)
2002-09-06 02:05 AM
Re: BBChecker II Update

cool ... i still think it has something to do with scoping and dimming ...

LonkeroAdministrator
(KiX Master Guru)
2002-09-06 10:10 AM
Re: BBChecker II Update

didn't you have one integrated version a while back?

I wonder, if it does not show the form at all...

in checker beta's when it still was inside the mainscript, it hanged the code totally...


MightyR1
(MM club member)
2002-09-06 10:44 AM
Re: BBChecker II Update

Jooel,

I've tested the integrated bbCheckerII script on a W95 box and.... it worked with minor adjustments.

Hmmm, minor adjustments I here you say. Well the only thing I adjusted was the way yhe IE browser was started. I've got W95 OSR2.5 Dutch with IE5.5 and the run 'explorer didn't work. After changing the explorer command to the start command, it worked fine.

I've also corrected the # of forums (8 not 7)

So the taskbar() works fine on W95 too.

How do we get rid of the annoying dos box???

W95_bbChecker.kix
code:
;
; BBChecker II - KiXtart Bulleting Board New Post Checker (RC-4)
;
; Dependencies (included in package):
; Wkix32 - KiXtart 4.11
; kixforms.dll - KiXForms (build 21)
; IE5 or higher
;
; -Lonkero
;
;todo's before release:
; parse takes the page as input.
; this way later update of var names is no problem.
;
; installation package
;
Break on
Gosub "init"

Play "1g256t1d600f1g256t1d600f1g256t1d600f1g256t4d400f"

While $form.visible parse()
If $show
$msg.caption = $show $hlurl.listindex=0 formlink($hlurl.text)
$form.caption = $show+" - BBChecker II"
If $Beep
Play "1g256t1d500f1g256t1d400f1g256t1d600f"
EndIf
$tmp=3
If $focus=0 AND $sslider
$form.show(2)
slide($msg.caption)
$form.height=$tmp
inline()
EndIf
Else
$tmp=$looptime
EndIf
$time=@ticks+($tmp*1000)
Do
Sleep 0.2
inline()
Until @error OR ($time < @ticks)
Loop

Gosub "final"

Exit 0


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function inline()

$=Execute($form.doevents(1))
$=Execute($form.doevents(1))

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function parse()

$httpObj.Open("GET","http://kixtart.org/cgi-bin/ultimatebb.cgi?", NOT 1)
$httpObj.send() $data=$httpObj.Responsetext

If 1000<Len($data)
inline()
$data=SubStr($data,InStr($data,'ubb=get_profile')+10)
$bl.clear $bll.clear

If InStr($data,'ubb=get_profile')<InStr($data,'guest(s)')
$data=SubStr($data,InStr($data,'ubb=get_profile'))
$users=SubStr($data,1,InStr($data,' and'))

For Each $user in Split($users,'</a>, ')
$bll.additem(SubStr($user,InStr($user,';u=')+3,InStr($user,'">')-3-InStr($user,';u=')),-1)
$bl.additem(SubStr($user,InStr($user,'">')+2),-1)
Next
$bl.removeitem($bl.listcount-1)
EndIf

For $c=0 to 7
$data=SubStr($data,InStr($data,'&nbsp;<a href=')+15)
$y[$c]=SubStr($data,1,InStr($data,'"')-1)
$data=SubStr($data,InStr($data,'>')+1)
$x[$c]=SubStr($data,1,InStr($data,'</a>') - 1)+" "
$x[$c]=join(Split($x[$c],"&quot;"),'"')
$data=SubStr($data,InStr($data,Chr(10))+1)

If InStr(SubStr($data,1,1),"<")
$users=SubStr($data,7,InStr($data,Chr(10))-7)
Else
$users=SubStr($data,1,InStr($data,Chr(10))-1)
EndIf

$x[$c]=$x[$c]+$users

If $my AND InStr($users,$logon)
$dataold[$c]=$x[$c]
EndIf
Next

$stamp=" "+Left(@time,5)+" on @mdayno. of @month"

Select
Case "Loading elements..."==$msg.caption $show="" $fbb.enabled=1 $fbh.enabled=1 $msg.caption = ""
Case $x[0]<>$dataold[0] $show=$x[0] $hl.additem($x[0]+$stamp+" {starters}",0) $hlurl.additem($y[0],0)
Case $x[1]<>$dataold[1] $show=$x[1] $hl.additem($x[1]+$stamp+" {scripts}",0) $hlurl.additem($y[1],0)
Case $x[2]<>$dataold[2] $show=$x[2] $hl.additem($x[2]+$stamp+" {discussions}",0) $hlurl.additem($y[2],0)
Case $x[3]<>$dataold[3] $show=$x[3] $hl.additem($x[3]+$stamp+" {COM}",0) $hlurl.additem($y[3],0)
Case $x[4]<>$dataold[4] $show=$x[4] $hl.additem($x[4]+$stamp+" {UDF}",0) $hlurl.additem($y[4],0)
Case $x[5]<>$dataold[5] $show=$x[5] $hl.additem($x[5]+$stamp+" {beta}",0) $hlurl.additem($y[5],0)
Case $x[6]<>$dataold[6] $show=$x[6] $hl.additem($x[6]+$stamp+" {suggestions}",0) $hlurl.additem($y[6],0)
Case $x[7]<>$dataold[7] $show=$x[7] $hl.additem($x[7]+$stamp+" {FAQ}",0) $hlurl.additem($y[7],0)
Case 1 $show=0
EndSelect
EndIf

$dataold=$x

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function show($)

$form.height=$form.height+(100*$)

If $form.height=340
$hl.top=102
$hbh.top=275
$hbo.top=275
$hba.top=275
Else
$hl.top=2
$hbh.top=175
$hbo.top=175
$hba.top=175
EndIf

If $=2
$hl.visible=1
$hbh.visible=1
$hbo.visible=1
$hba.visible=1
$fbh.enabled=0
Else
$bl.visible=1
$blt.visible=1
$bbh.visible=1
$bbp.visible=1
$bbr.visible=1
$fbb.enabled=0
EndIf

$form.top=$screen-taskbar()+3-$form.height
$msg.top = $form.height-38
$fbe.top = $form.height-20
$fbh.top = $fbe.top
$fbb.top = $fbe.top
$fbs.top = $fbe.top
$form.show(1)
inline()

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function hide($)

$form.height=$form.height-(100*$)

If $=1
$bl.visible=0
$bbh.visible=0
$bbp.visible=0
$bbr.visible=0
$fbb.enabled=1
$blt.visible=0
Else
$hl.visible=0
$hbh.visible=0
$hbo.visible=0
$hba.visible=0
$fbh.enabled=1
EndIf

$form.top=$screen - (taskbar() + $form.height - 3)
$msg.top = $form.height-38
$fbe.top = $form.height-20
$fbh.top = $fbe.top
$fbb.top = $fbe.top
$fbs.top = $fbe.top
$hl.top=2
$hbo.top=175
$hba.top=175
$hbh.top=175
$form.show(1)
inline()

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function formlink($in)

$form.onmousemove="$$msg.fontbold=0 $$msg.fontunderline=0"
$msg.onmousemove="$$msg.fontbold=1 $$msg.fontunderline=1"
$msg.onmouseup="$$form.show(2) run 'start "+Chr(34)+$in+Chr(34)+"'"

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function TaskBar()
If @dos=="4.0"
$_S="StuckRects"
Else
$_S="StuckRects2"
EndIf

$TaskBar=Val("&"+SubStr(ReadValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\$_S","settings"),41,2))

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function slide($sc)

If InStr($sc,'"')
$sc=join(Split($sc,'"'),"'")
EndIf

;run '@scriptdir\wkix32 "@scriptdir\slider.kix" $$sc="$sc" $$b='+taskbar()

; Begin edit...Commented the above command. The rest of this function
; and the Timer_Timer() function below this one, is my
; modifications to the code.

$b=taskbar()
$h1 = 23
$w = 300 ; Len($sc)*15+10 ; 300
$h = 0
$DirectionIsUp = 1

$Popup = CreateObject("Kixtart.Form")

$Popup.BorderStyle = 0
$Popup.Height = 0
$Popup.Width = $w
$Popup.fontsize = 10
$Popup.fontname = "helvetica"
$Popup.forecolor = 0
$Popup.fontbold = 1
; $Popup.Top = $Popup.screen.height - $b - $h - 2 - 500
; $Popup.Left = $Popup.Screen.Width - $w - 2 - 500
$Popup.Top = ($Popup.screen.height - $b) / 2
$Popup.Left = ($Popup.Screen.Width - $w) / 2

$Popup.ShowInTaskbar = False ; Not ready yet !
$Popup.TopMost = True

$popLabel = $Popup.Label($sc,0,0,$w,$h1)
$popLabel.BACKCOLOR = $Popup.RGB(255,255,0)
$popLabel.BorderStyle = 3 ; 4
$popLabel.Alignment = 2
$Timer = $Popup.Timer(10)
$Timer.OnTimer = "Timer_Timer()"

Sleep 0.5

$Popup.Show

While $Popup.Visible
$=Execute($Popup.DoEvents)
Loop

$Popup = ""
$Timer = ""
$popLabel = ""

EndFunction


Function Timer_Timer()
$Timer.Interval = 10
If $DirectionIsUp
$h = $h + 1
$popup.height = $h
$Popup.Top = $Popup.Top - 1
If $h >= $h1
$Timer.Interval = 2500
$DirectionIsUp = 0
;play "256t1d500f"
EndIf
Else
$h = $h - 1
$popup.height = $h
$Popup.Top = $Popup.Top + 1
If $h <= 0
$Timer.Enabled = 0
$Popup.Hide
EndIf
EndIf
EndFunction



;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
:init

$form = CreateObject("kixtart.form")
Global $x[7] $dataold=$x $y=$x
$screen=$form.screen.height

$form.caption = "BBChecker II"
$form.width = 430
$form.height = 40
$form.Left = $form.screen.width - $form.width - 20
$form.borderstyle = 0
$form.fontsize = 8
$form.fontname = "helvetica"
$form.forecolor = 0
$form.fontbold = 0
$form.onlostfocus = "$$focus=0"
$form.ongotfocus = "$$focus=1"

$msg = $form.label("Loading elements...",15,2,410,12)
$msg.onmouseup="$$form.setfocus()"

$form.top = $screen - (taskbar() + $form.height - 3)
$fbe = $form.commandbutton("Exit",2,20,65,19)
$fbe.onclick = "$$form.visible = 0"
$fbs = $form.commandbutton("Miscellaneous",69,20,80,19)
$fbs.onmouseup = "inline() misc()"
$fbh = $form.commandbutton("History",$form.width - 68,20,65,19)
$fbh.enabled=0
$fbh.onclick = "show(2) $$form.setfocus()"
$fbb = $form.commandbutton("Buddyes",$fbh.Left - 68,20,65,19)
$fbb.enabled=0
$fbb.onclick = "show(1) $$form.setfocus()"
$form.visible = 1

inline()

;history block
$hl = $form.listbox(0,2,2,426,170)
$hl.visible = 0
$hl.OnDblClick = "$$form.show(2) $$hlurl.listindex=$$hl.listindex run 'start "+Chr(34)+"'+$$hlurl.text+'"+Chr(34)+"'"

inline()

$hl.onclick="$$form.setfocus()"
$hbh = $form.commandbutton("Hide",$form.width - 80,175,75,20)
$hbh.visible = 0

inline()

$hbh.onclick = "hide(2) $$focus=1"
$hbo = $form.commandbutton("Show Topic",5,175,75,20)
$hbo.visible = 0

inline()

$hbo.onclick = "$$form.show(2) $$hlurl.listindex=$$hl.listindex run 'start "+Chr(34)+"'+$$hlurl.text+'"+Chr(34)+"'"
$hba = $form.commandbutton("Today's Active topics",150,175,130,20)
$hba.visible = 0

inline()

$hba.onclick = "$$form.show(2) run 'start "+Chr(34)+"http://81.17.37.55/board/ultimatebb.php?ubb=get_daily"+Chr(34)+"'"
$hlurl = $form.listbox(0,0,0,0,20)
$hlurl.visible = 0

;buddyes block
$bl = $form.listbox(0,2,15,200,80)
$bl.visible = 0
$bl.onclick="$$form.setfocus()"

inline()

$bll = $form.listbox(0,0,0,0,20)
$bll.visible = 0
$bll.ongotfocus="$$form.setfocus()"

inline()

$blt = $form.label("Logged on users:",5,2,150,12)
$blt.visible = 0
$blt.ongotfocus="$$form.setfocus()"

inline()

$bbh = $form.commandbutton("Hide",$form.width - 80,15,75,20)
$bbh.visible = 0
$bbh.onclick = "hide(1) $$focus=1"

inline()

$bbp = $form.commandbutton("Show Profile",210,15,75,20)
$bbp.visible = 0
$bbp.onclick = "$$form.show(2) $$bll.listindex=$$bl.listindex run 'start "+Chr(34)+"http://81.17.37.55/cgi-bin/ultimatebb.cgi?ubb=get_profile;u='+$$bll.text+'"+Chr(34)+"'"

inline()

$bbr = $form.commandbutton("Recent Posts",210,40,75,20)
$bbr.visible = 0
$bbr.onclick = "$$form.show(2) $$bll.listindex=$$bl.listindex run 'start "+Chr(34)+"http://81.17.37.55/cgi-bin/ultimatebb.cgi?ubb=recent_user_posts;u='+$$bll.text+'"+Chr(34)+"'"

inline()

Global $focus $focus=1

;settings
$bk="HKEY_CURRENT_USER\Software\Jooel\bbChecker"

If NOT KeyExist($bk)
$=MessageBox("bbChecker II installation corruption!@crlfThis propably is due to unclean installation@crlfRe-install needed","bbChecker II",16)
Exit 0
EndIf

$looptime=Val(ReadValue($bk,"looptime"))
$Beep=Val(ReadValue($bk,"beep"))
$sslider=Val(ReadValue($bk,"slider"))
$my=Val(ReadValue($bk,"my"))
$logon=ReadValue($bk,"logon")

;xmlhttp related func
$cache=ReadValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings","SyncMode5")
$=WriteValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings","SyncMode5","3","reg_dword")
$httpObj = CreateObject("microsoft.xmlhttp")

Return



;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
:final

$ = WriteValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings","SyncMode5",$cache,"reg_dword")

Return


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function misc()

$f = CreateObject("kixtart.form")
$f.caption = "bbChecker II - Miscellaneous"
$f.width = 250
$f.height = 250
$f.top = $screen/2
$f.Left = $f.screen.width-720
$f.fontbold=1
$f.fontname = "Bookman Old Style"
$f.printxy(20,10,"bbChecker II")
$f.fontbold=0
$f.printxy(20,30,"Based on:")
$f.printxy(20,45,"Kixtart 4.11 (wkix32.exe)")
$f.printxy(20,60,"KixForms GUI (KixForms.exe)")
$f.fontname = "helvetica"
$fp = $f.checkbox("Don't show my posts",20,135,130,15)
$f.printxy(150,120,"Logonname:")
$fpt = $f.textbox($logon,150,135,65,17)
$lt = $f.textbox($looptime,150,158,25,17)
$f.printxy(20,160,"Post check interval (secs):")
$fo = $f.checkbox("Beep on post",20,180,110,15)
$fs = $f.checkbox("Show slider",20,200,90,15)
$fp.value = $my

If $fp.value
$fpt.enabled=1
Else
$fpt.enabled=0
EndIf

$fo.value = $Beep
$fs.value = $sslider
$fb = $f.commandbutton("OK",170,205,75,20)
$fb.onclick = 'if val($$lt.text)<10 $$lt.text="10" else $$f.visible=0 endif'
$f.show
While $f.visible
$=Execute($f.doevents(1))
If $fp.value
$fpt.enabled=1
Else
$fpt.enabled=0
EndIf

If 99<Val($lt.text)
$lt.text="99"
EndIf
Loop

$looptime = Val($lt.text)
$Beep = $fo.value
$sslider = $fs.value
$my = $fp.value
$logon=$fpt.text
$=WriteValue($bk,"looptime",""+$looptime,"reg_sz")
$=WriteValue($bk,"beep",""+$Beep,"reg_sz")
$=WriteValue($bk,"slider",""+$sslider,"reg_sz")
$=WriteValue($bk,"my",""+$my,"reg_sz")
$=WriteValue($bk,"logon",""+$logon,"reg_sz")

EndFunction



LonkeroAdministrator
(KiX Master Guru)
2002-09-06 11:31 AM
Re: BBChecker II Update

pat, nice layout you got there.

man, I can't keep up with the changes as how to integrate the one's I've done during the week...

if you take the start command of, do you still get your dos box?

also, using iexplore instead of explorer should fix the problem for win9x in there.

also, do you mean that the forms are correctly shown on top of the taskbar as you said that you had only that one problem?


MightyR1
(MM club member)
2002-09-07 12:09 AM
Re: BBChecker II Update

Jooel,

now I've got one .Kix for both W95 and W2k. [Big Grin]

Take a look at the :init section. Depending on the OS I define the $runie variable.

On W95 the dos box disappears if I directly call iexplore [Wink]

The forms are displayed correctly. Also the slider doesn't interfere with normal work!!

code:
;
; BBChecker II - KiXtart Bulleting Board New Post Checker (RC-4)
;
; Dependencies (included in package):
; Wkix32 - KiXtart 4.11
; kixforms.dll - KiXForms (build 21)
; IE5 or higher
;
; -Lonkero
;
;todo's before release:
; parse takes the page as input.
; this way later update of var names is no problem.
;
; installation package
;
Break on
Gosub "init"

Play "1g256t1d600f1g256t1d600f1g256t1d600f1g256t4d400f"

While $form.visible parse()
If $show
$msg.caption = $show $hlurl.listindex=0 formlink($hlurl.text)
$form.caption = $show+" - BBChecker II"
If $Beep
Play "1g256t1d500f1g256t1d400f1g256t1d600f"
EndIf
$tmp=3
If $focus=0 AND $sslider
$form.show(2)
slide($msg.caption)
$form.height=$tmp
inline()
EndIf
Else
$tmp=$looptime
EndIf
$time=@ticks+($tmp*1000)
Do
Sleep 0.2
inline()
Until @error OR ($time < @ticks)
Loop

Gosub "final"

Exit 0


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function inline()

$=Execute($form.doevents(1))
$=Execute($form.doevents(1))

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function parse()

$httpObj.Open("GET","http://kixtart.org/cgi-bin/ultimatebb.cgi?", NOT 1)
$httpObj.send() $data=$httpObj.Responsetext

If 1000<Len($data)
inline()
$data=SubStr($data,InStr($data,'ubb=get_profile')+10)
$bl.clear $bll.clear

If InStr($data,'ubb=get_profile')<InStr($data,'guest(s)')
$data=SubStr($data,InStr($data,'ubb=get_profile'))
$users=SubStr($data,1,InStr($data,' and'))

For Each $user in Split($users,'</a>, ')
$bll.additem(SubStr($user,InStr($user,';u=')+3,InStr($user,'">')-3-InStr($user,';u=')),-1)
$bl.additem(SubStr($user,InStr($user,'">')+2),-1)
Next
$bl.removeitem($bl.listcount-1)
EndIf

For $c=0 to 7
$data=SubStr($data,InStr($data,'&nbsp;<a href=')+15)
$y[$c]=SubStr($data,1,InStr($data,'"')-1)
$data=SubStr($data,InStr($data,'>')+1)
$x[$c]=SubStr($data,1,InStr($data,'</a>') - 1)+" "
$x[$c]=join(Split($x[$c],"&quot;"),'"')
$data=SubStr($data,InStr($data,Chr(10))+1)

If InStr(SubStr($data,1,1),"<")
$users=SubStr($data,7,InStr($data,Chr(10))-7)
Else
$users=SubStr($data,1,InStr($data,Chr(10))-1)
EndIf

$x[$c]=$x[$c]+$users

If $my AND InStr($users,$logon)
$dataold[$c]=$x[$c]
EndIf
Next

$stamp=" "+Left(@time,5)+" on @mdayno. of @month"

Select
Case "Loading elements..."==$msg.caption $show="" $fbb.enabled=1 $fbh.enabled=1 $msg.caption = ""
Case $x[0]<>$dataold[0] $show=$x[0] $hl.additem($x[0]+$stamp+" {starters}",0) $hlurl.additem($y[0],0)
Case $x[1]<>$dataold[1] $show=$x[1] $hl.additem($x[1]+$stamp+" {scripts}",0) $hlurl.additem($y[1],0)
Case $x[2]<>$dataold[2] $show=$x[2] $hl.additem($x[2]+$stamp+" {discussions}",0) $hlurl.additem($y[2],0)
Case $x[3]<>$dataold[3] $show=$x[3] $hl.additem($x[3]+$stamp+" {COM}",0) $hlurl.additem($y[3],0)
Case $x[4]<>$dataold[4] $show=$x[4] $hl.additem($x[4]+$stamp+" {UDF}",0) $hlurl.additem($y[4],0)
Case $x[5]<>$dataold[5] $show=$x[5] $hl.additem($x[5]+$stamp+" {beta}",0) $hlurl.additem($y[5],0)
Case $x[6]<>$dataold[6] $show=$x[6] $hl.additem($x[6]+$stamp+" {suggestions}",0) $hlurl.additem($y[6],0)
Case $x[7]<>$dataold[7] $show=$x[7] $hl.additem($x[7]+$stamp+" {FAQ}",0) $hlurl.additem($y[7],0)
Case 1 $show=0
EndSelect
EndIf

$dataold=$x

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function show($)

$form.height=$form.height+(100*$)

If $form.height=340
$hl.top=102
$hbh.top=275
$hbo.top=275
$hba.top=275
Else
$hl.top=2
$hbh.top=175
$hbo.top=175
$hba.top=175
EndIf

If $=2
$hl.visible=1
$hbh.visible=1
$hbo.visible=1
$hba.visible=1
$fbh.enabled=0
Else
$bl.visible=1
$blt.visible=1
$bbh.visible=1
$bbp.visible=1
$bbr.visible=1
$fbb.enabled=0
EndIf

$form.top=$screen-taskbar()+3-$form.height
$msg.top = $form.height-38
$fbe.top = $form.height-20
$fbh.top = $fbe.top
$fbb.top = $fbe.top
$fbs.top = $fbe.top
$form.show(1)
inline()

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function hide($)

$form.height=$form.height-(100*$)

If $=1
$bl.visible=0
$bbh.visible=0
$bbp.visible=0
$bbr.visible=0
$fbb.enabled=1
$blt.visible=0
Else
$hl.visible=0
$hbh.visible=0
$hbo.visible=0
$hba.visible=0
$fbh.enabled=1
EndIf

$form.top=$screen - (taskbar() + $form.height - 3)
$msg.top = $form.height-38
$fbe.top = $form.height-20
$fbh.top = $fbe.top
$fbb.top = $fbe.top
$fbs.top = $fbe.top
$hl.top=2
$hbo.top=175
$hba.top=175
$hbh.top=175
$form.show(1)
inline()

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function formlink($in)

$form.onmousemove="$$msg.fontbold=0 $$msg.fontunderline=0"
$msg.onmousemove="$$msg.fontbold=1 $$msg.fontunderline=1"
$msg.onmouseup="$$form.show(2) $runie "+Chr(34)+$in+Chr(34)+"'"

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function TaskBar()
If @dos=="4.0"
$_S="StuckRects"
Else
$_S="StuckRects2"
EndIf

$TaskBar=Val("&"+SubStr(ReadValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\$_S","settings"),41,2))

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function slide($sc)

If InStr($sc,'"')
$sc=join(Split($sc,'"'),"'")
EndIf

;run '@scriptdir\wkix32 "@scriptdir\slider.kix" $$sc="$sc" $$b='+taskbar()

; Begin edit...Commented the above command. The rest of this function
; and the Timer_Timer() function below this one, is my
; modifications to the code.

$b=taskbar()
$h1 = 23
$w = 300 ; Len($sc)*15+10 ; 300
$h = 0
$DirectionIsUp = 1

$Popup = CreateObject("Kixtart.Form")

$Popup.BorderStyle = 0
$Popup.Height = 0
$Popup.Width = $w
$Popup.fontsize = 10
$Popup.fontname = "helvetica"
$Popup.forecolor = 0
$Popup.fontbold = 1
; $Popup.Top = $Popup.screen.height - $b - $h - 2 - 500
; $Popup.Left = $Popup.Screen.Width - $w - 2 - 500
$Popup.Top = ($Popup.screen.height - $b) / 2
$Popup.Left = ($Popup.Screen.Width - $w) / 2

$Popup.ShowInTaskbar = False ; Not ready yet !
$Popup.TopMost = True

$popLabel = $Popup.Label($sc,0,0,$w,$h1)
$popLabel.BACKCOLOR = $Popup.RGB(255,255,0)
$popLabel.BorderStyle = 3 ; 4
$popLabel.Alignment = 2
$Timer = $Popup.Timer(10)
$Timer.OnTimer = "Timer_Timer()"

Sleep 0.5

$Popup.Show

While $Popup.Visible
$=Execute($Popup.DoEvents)
Loop

$Popup = ""
$Timer = ""
$popLabel = ""

EndFunction


Function Timer_Timer()
$Timer.Interval = 10
If $DirectionIsUp
$h = $h + 1
$popup.height = $h
$Popup.Top = $Popup.Top - 1
If $h >= $h1
$Timer.Interval = 2500
$DirectionIsUp = 0
;play "256t1d500f"
EndIf
Else
$h = $h - 1
$popup.height = $h
$Popup.Top = $Popup.Top + 1
If $h <= 0
$Timer.Enabled = 0
$Popup.Hide
EndIf
EndIf
EndFunction



;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
:init

$form = CreateObject("kixtart.form")
Global $x[7] $dataold=$x $y=$x
$screen=$form.screen.height
Global $runie

If @inwin = 1
$runie = "run 'explorer "
Else
$runie = "run '"+readvalue("HKEY_CLASSES_ROOT\htmlfile\shell\open\command","")+" "
EndIf

$form.caption = "BBChecker II"
$form.width = 430
$form.height = 40
$form.Left = $form.screen.width - $form.width - 20
$form.borderstyle = 0
$form.fontsize = 8
$form.fontname = "helvetica"
$form.forecolor = 0
$form.fontbold = 0
$form.onlostfocus = "$$focus=0"
$form.ongotfocus = "$$focus=1"

$msg = $form.label("Loading elements...",15,2,410,12)
$msg.onmouseup="$$form.setfocus()"

$form.top = $screen - (taskbar() + $form.height - 3)
$fbe = $form.commandbutton("Exit",2,20,65,19)
$fbe.onclick = "$$form.visible = 0"
$fbs = $form.commandbutton("Miscellaneous",69,20,80,19)
$fbs.onmouseup = "inline() misc()"
$fbh = $form.commandbutton("History",$form.width - 68,20,65,19)
$fbh.enabled=0
$fbh.onclick = "show(2) $$form.setfocus()"
$fbb = $form.commandbutton("Buddyes",$fbh.Left - 68,20,65,19)
$fbb.enabled=0
$fbb.onclick = "show(1) $$form.setfocus()"
$form.visible = 1

inline()

;history block
$hl = $form.listbox(0,2,2,426,170)
$hl.visible = 0
$hl.OnDblClick = "$$form.show(2) $$hlurl.listindex=$$hl.listindex $runie "+Chr(34)+"'+$$hlurl.text+'"+Chr(34)+"'"

inline()

$hl.onclick="$$form.setfocus()"
$hbh = $form.commandbutton("Hide",$form.width - 80,175,75,20)
$hbh.visible = 0

inline()

$hbh.onclick = "hide(2) $$focus=1"
$hbo = $form.commandbutton("Show Topic",5,175,75,20)
$hbo.visible = 0

inline()

$hbo.onclick = "$$form.show(2) $$hlurl.listindex=$$hl.listindex $runie "+Chr(34)+"'+$$hlurl.text+'"+Chr(34)+"'"
$hba = $form.commandbutton("Today's Active topics",150,175,130,20)
$hba.visible = 0

inline()

$hba.onclick = "$$form.show(2) $runie "+Chr(34)+"http://81.17.37.55/board/ultimatebb.php?ubb=get_daily"+Chr(34)+"'"
$hlurl = $form.listbox(0,0,0,0,20)
$hlurl.visible = 0

;buddyes block
$bl = $form.listbox(0,2,15,200,80)
$bl.visible = 0
$bl.onclick="$$form.setfocus()"

inline()

$bll = $form.listbox(0,0,0,0,20)
$bll.visible = 0
$bll.ongotfocus="$$form.setfocus()"

inline()

$blt = $form.label("Logged on users:",5,2,150,12)
$blt.visible = 0
$blt.ongotfocus="$$form.setfocus()"

inline()

$bbh = $form.commandbutton("Hide",$form.width - 80,15,75,20)
$bbh.visible = 0
$bbh.onclick = "hide(1) $$focus=1"

inline()

$bbp = $form.commandbutton("Show Profile",210,15,75,20)
$bbp.visible = 0
$bbp.onclick = "$$form.show(2) $$bll.listindex=$$bl.listindex $runie "+Chr(34)+"http://81.17.37.55/cgi-bin/ultimatebb.cgi?ubb=get_profile;u='+$$bll.text+'"+Chr(34)+"'"

inline()

$bbr = $form.commandbutton("Recent Posts",210,40,75,20)
$bbr.visible = 0
$bbr.onclick = "$$form.show(2) $$bll.listindex=$$bl.listindex $runie "+Chr(34)+"http://81.17.37.55/cgi-bin/ultimatebb.cgi?ubb=recent_user_posts;u='+$$bll.text+'"+Chr(34)+"'"

inline()

Global $focus $focus=1

;settings
$bk="HKEY_CURRENT_USER\Software\Jooel\bbChecker"

If NOT KeyExist($bk)
$=MessageBox("bbChecker II installation corruption!@crlfThis propably is due to unclean installation@crlfRe-install needed","bbChecker II",16)
Exit 0
EndIf

$looptime=Val(ReadValue($bk,"looptime"))
$Beep=Val(ReadValue($bk,"beep"))
$sslider=Val(ReadValue($bk,"slider"))
$my=Val(ReadValue($bk,"my"))
$logon=ReadValue($bk,"logon")

;xmlhttp related func
$cache=ReadValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings","SyncMode5")
$=WriteValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings","SyncMode5","3","reg_dword")
$httpObj = CreateObject("microsoft.xmlhttp")

Return



;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
:final

$ = WriteValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings","SyncMode5",$cache,"reg_dword")

Return


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function misc()

$f = CreateObject("kixtart.form")
$f.caption = "bbChecker II - Miscellaneous"
$f.width = 250
$f.height = 250
$f.top = $screen/2
$f.Left = $f.screen.width-720
$f.fontbold=1
$f.fontname = "Bookman Old Style"
$f.printxy(20,10,"bbChecker II")
$f.fontbold=0
$f.printxy(20,30,"Based on:")
$f.printxy(20,45,"Kixtart 4.11 (wkix32.exe)")
$f.printxy(20,60,"KixForms GUI (KixForms.exe)")
$f.fontname = "helvetica"
$fp = $f.checkbox("Don't show my posts",20,135,130,15)
$f.printxy(150,120,"Logonname:")
$fpt = $f.textbox($logon,150,135,65,17)
$lt = $f.textbox($looptime,150,158,25,17)
$f.printxy(20,160,"Post check interval (secs):")
$fo = $f.checkbox("Beep on post",20,180,110,15)
$fs = $f.checkbox("Show slider",20,200,90,15)
$fp.value = $my

If $fp.value
$fpt.enabled=1
Else
$fpt.enabled=0
EndIf

$fo.value = $Beep
$fs.value = $sslider
$fb = $f.commandbutton("OK",170,205,75,20)
$fb.onclick = 'if val($$lt.text)<10 $$lt.text="10" else $$f.visible=0 endif'
$f.show
While $f.visible
$=Execute($f.doevents(1))
If $fp.value
$fpt.enabled=1
Else
$fpt.enabled=0
EndIf

If 99<Val($lt.text)
$lt.text="99"
EndIf
Loop

$looptime = Val($lt.text)
$Beep = $fo.value
$sslider = $fs.value
$my = $fp.value
$logon=$fpt.text
$=WriteValue($bk,"looptime",""+$looptime,"reg_sz")
$=WriteValue($bk,"beep",""+$Beep,"reg_sz")
$=WriteValue($bk,"slider",""+$sslider,"reg_sz")
$=WriteValue($bk,"my",""+$my,"reg_sz")
$=WriteValue($bk,"logon",""+$logon,"reg_sz")

EndFunction



[ 06. September 2002, 12:27: Message edited by: MightyR1 ]


LonkeroAdministrator
(KiX Master Guru)
2002-09-07 12:18 AM
Re: BBChecker II Update

pat, try changing the absolut path of win9x to:
readvalue("HKEY_CLASSES_ROOT\htmlfile\shell\open\command","")

 


MightyR1
(MM club member)
2002-09-07 12:26 AM
Re: BBChecker II Update

Jooel,

it did the job....

code:
	$runie = "run '"+readvalue("HKEY_CLASSES_ROOT\htmlfile\shell\open\command","")+" "



LonkeroAdministrator
(KiX Master Guru)
2002-09-06 01:13 PM
Re: BBChecker II Update

ok, will adapt your layouted script to desk and incorporate some changes and shorten the code a little...

also, as it gets working with 2.0 and win9x I have to change some codes from install...

I was also thinking about making the form little bit smaller...
remove the hide buttons (add them to the show buttons [code minimization])
try to implement somekind of show by forum (requires exchaustive usage of arrays)...
partial incorporating of codeparser behind button "show codes"...
make add-on (optional) for kixstrippin' the codes on the fly directly from webpage (behind button "syntax check on code")...

there is lot to do and lots of code to add and that's why it should be kept as "modular" as possible...
even making the all udf's their own file which are included at the start wouldn't make so bad implementation and would keep the script understandable and changeable by all...


MightyR1
(MM club member)
2002-09-06 01:59 PM
Re: BBChecker II Update

Looking forward to the new bbChecker.

I'm willing to test on W2k / Wxp pro / W95.

If I know some other features to add I'll let you know...


ShawnAdministrator
(KiX Supporter)
2002-09-06 09:56 PM
Re: BBChecker II Update

ping ... oh thats sweet.

[ 06. September 2002, 21:57: Message edited by: Shawn ]


Chris S.
(MM club member)
2002-09-06 10:20 PM
Re: BBChecker II Update

Hey, Shawn. Did you catch the timer issue? I had to comment out the $timer.interval = 5000 and replace with sleep 5. Any ideas?

ShawnAdministrator
(KiX Supporter)
2002-09-06 10:28 PM
Re: BBChecker II Update

I just download Patrick's version, for nt and
9x, cause I thought that it had all the
latestest and greatest mods ... can't find a
sleep 5 anywhere ... do you have a more recent
version ?


ShawnAdministrator
(KiX Supporter)
2002-09-06 10:31 PM
Re: BBChecker II Update

ping ... this bbchecker has done more for my post count than my usual ramblings have [Wink] ...

Chris S.
(MM club member)
2002-09-06 10:43 PM
Re: BBChecker II Update

Mine is at the top of the second page. Anyway, whilst testing I found that intermitantly the popup wouldn't pause in the "up" position. I changed it to sleep after trying a bunch of things to no avail.

I haven't tried Pat's version yet.


LonkeroAdministrator
(KiX Master Guru)
2002-09-06 10:46 PM
Re: BBChecker II Update

sure! that is why it's there...
i quess--->

anyway, I got work-call for tonight so can't be dealing with the next "official" update till the saturday evening...
version .1 will most likely be the one on bbs and some minor enchangements...

most of the work is to make it a working package.

 


Kdyer
(KiX Supporter)
2002-09-06 10:49 PM
Re: BBChecker II Update

Pat,

Trying the modified version..

Will let you know what comes of it.

Kent


Kdyer
(KiX Supporter)
2002-09-06 10:58 PM
Re: BBChecker II Update

Pat,

Schweet!

Like the new slider as I am able to keep on working on other things..

Also, like the fact that there is no longer a DOS Window that opens up either. [Smile]

Thanks,

Kent

[ 06. September 2002, 22:58: Message edited by: kdyer ]


Chris S.
(MM club member)
2002-09-07 12:13 AM
Re: BBChecker II Update

Think I'll stick with my mod. Not sure I like it popping up in the middle of the screen.

I like the new sounds, though.

BTW, Kent I fixed that DOS box thingy a while back. It was the "CLS" in the original script.


Kdyer
(KiX Supporter)
2002-09-07 12:21 AM
Re: BBChecker II Update

See how far out of the loop I am? I was on a 5-day holiday and I have been slammed with client system replacements..

Oh well.. Glad to see improvments with this app.

Kent


Chris S.
(MM club member)
2002-09-07 12:25 AM
Re: BBChecker II Update

One could hardly blame you for not catching everything in a 50+ posted thread. [Wink]

If anyone wants the version with Pat's sounds and my popup just e-mail me at cshilt@woh.rr.com.

[ 07. September 2002, 00:25: Message edited by: Chris S. ]


NTDOCAdministrator
(KiX Master)
2002-09-07 01:31 AM
Re: BBChecker II Update

Chris,

Thanks for the updated script. Works a charm.

VERY COOL Thanks Lonkero for taking the time to create this whole thing.


MightyR1
(MM club member)
2002-09-07 08:52 PM
Re: BBChecker II Update

Chris,

My version is actually your version with a few sounds and W9x compatibility...

The location of the slider can easily be changed by changing the following two lines:
code:
$Popup.Top = ($Popup.screen.height - $b) / 2
$Popup.Left = ($Popup.Screen.Width - $w) / 2

into:
code:
$Popup.Top = $Popup.screen.height - $b - $h - 1
$Popup.Left = $Popup.Screen.Width - $w - 1

BTW I myself changed it to the last two lines too [Wink]


NTDOCAdministrator
(KiX Master)
2002-09-08 11:05 AM
Re: BBChecker II Update

Is it possible to have the message in the POPUP be hot linkable so that when you click the popup it will go to the message?

LonkeroAdministrator
(KiX Master Guru)
2002-09-08 11:24 PM
Re: BBChecker II Update

sadly I couldn't make any time to work on this at this weekend... say, girls are not good for our programming skills...

anyway, what comes to message being linkable, it was in original slider... haven't looked at the new one yet...


MightyR1
(MM club member)
2002-09-08 11:52 PM
Re: BBChecker II Update

Think I've got it....

testing....


MightyR1
(MM club member)
2002-09-08 11:53 PM
Re: BBChecker II Update

Almost,

problem with .Topmost


MightyR1
(MM club member)
2002-09-08 11:55 PM
Re: BBChecker II Update

Can't get it working, need help

here's my code so far...

code:
;
;
; BBChecker II - KiXtart Bulleting Board New Post Checker (RC-4)
;
; Dependencies (included in package):
; Wkix32 - KiXtart 4.11
; kixforms.dll - KiXForms (build 21)
; IE5 or higher
;
; -Lonkero
;
;todo's before release:
; parse takes the page as input.
; this way later update of var names is no problem.
;
; installation package
;
Break on
Gosub "init"

Play "1g256t1d600f1g256t1d600f1g256t1d600f1g256t4d400f"

While $form.visible
parse()
If $show
$msg.caption = $show
$hlurl.listindex=0
formlink($hlurl.text)
$form.caption = $show+" - BBChecker II"
If $Beep
Play "1g256t1d500f1g256t1d400f1g256t1d600f"
EndIf
$tmp=3
If $focus=0 AND $sslider
$form.show(2)
slide($msg.caption,$hlurl.text)
$form.height=$tmp
inline()
EndIf
Else
$tmp=$looptime
EndIf
$time=@ticks+($tmp*1000)
Do
Sleep 0.2
inline()
Until @error OR ($time < @ticks)
Loop

Gosub "final"

Exit 0


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function inline()

$=Execute($form.doevents(1))
$=Execute($form.doevents(1))

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function parse()

$httpObj.Open("GET","http://kixtart.org/cgi-bin/ultimatebb.cgi?", NOT 1)
$httpObj.send() $data=$httpObj.Responsetext

If 1000<Len($data)
inline()
$data=SubStr($data,InStr($data,'ubb=get_profile')+10)
$bl.clear $bll.clear

If InStr($data,'ubb=get_profile')<InStr($data,'guest(s)')
$data=SubStr($data,InStr($data,'ubb=get_profile'))
$users=SubStr($data,1,InStr($data,' and'))

For Each $user in Split($users,'</a>, ')
$bll.additem(SubStr($user,InStr($user,';u=')+3,InStr($user,'">')-3-InStr($user,';u=')),-1)
$bl.additem(SubStr($user,InStr($user,'">')+2),-1)
Next
$bl.removeitem($bl.listcount-1)
EndIf

For $c=0 to 7
$data=SubStr($data,InStr($data,'&nbsp;<a href=')+15)
$y[$c]=SubStr($data,1,InStr($data,'"')-1)
$data=SubStr($data,InStr($data,'>')+1)
$x[$c]=SubStr($data,1,InStr($data,'</a>') - 1)+" "
$x[$c]=join(Split($x[$c],"&quot;"),'"')
$data=SubStr($data,InStr($data,Chr(10))+1)

If InStr(SubStr($data,1,1),"<")
$users=SubStr($data,7,InStr($data,Chr(10))-7)
Else
$users=SubStr($data,1,InStr($data,Chr(10))-1)
EndIf

$x[$c]=$x[$c]+$users

If $my AND InStr($users,$logon)
$dataold[$c]=$x[$c]
EndIf
Next

$stamp=" "+Left(@time,5)+" on @mdayno. of @month"

Select
Case "Loading elements..."==$msg.caption $show="" $fbb.enabled=1 $fbh.enabled=1 $msg.caption = ""
Case $x[0]<>$dataold[0] $show=$x[0] $hl.additem($x[0]+$stamp+" {starters}",0) $hlurl.additem($y[0],0)
Case $x[1]<>$dataold[1] $show=$x[1] $hl.additem($x[1]+$stamp+" {scripts}",0) $hlurl.additem($y[1],0)
Case $x[2]<>$dataold[2] $show=$x[2] $hl.additem($x[2]+$stamp+" {discussions}",0) $hlurl.additem($y[2],0)
Case $x[3]<>$dataold[3] $show=$x[3] $hl.additem($x[3]+$stamp+" {COM}",0) $hlurl.additem($y[3],0)
Case $x[4]<>$dataold[4] $show=$x[4] $hl.additem($x[4]+$stamp+" {UDF}",0) $hlurl.additem($y[4],0)
Case $x[5]<>$dataold[5] $show=$x[5] $hl.additem($x[5]+$stamp+" {beta}",0) $hlurl.additem($y[5],0)
Case $x[6]<>$dataold[6] $show=$x[6] $hl.additem($x[6]+$stamp+" {suggestions}",0) $hlurl.additem($y[6],0)
Case $x[7]<>$dataold[7] $show=$x[7] $hl.additem($x[7]+$stamp+" {FAQ}",0) $hlurl.additem($y[7],0)
Case 1 $show=0
EndSelect
EndIf

$dataold=$x

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function show($)

$form.height=$form.height+(100*$)

If $form.height=340
$hl.top=102
$hbh.top=275
$hbo.top=275
$hba.top=275
Else
$hl.top=2
$hbh.top=175
$hbo.top=175
$hba.top=175
EndIf

If $=2
$hl.visible=1
$hbh.visible=1
$hbo.visible=1
$hba.visible=1
$fbh.enabled=0
Else
$bl.visible=1
$blt.visible=1
$bbh.visible=1
$bbp.visible=1
$bbr.visible=1
$fbb.enabled=0
EndIf

$form.top=$screen-taskbar()+3-$form.height
$msg.top = $form.height-38
$fbe.top = $form.height-20
$fbh.top = $fbe.top
$fbb.top = $fbe.top
$fbs.top = $fbe.top
$form.show(1)
inline()

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function hide($)

$form.height=$form.height-(100*$)

If $=1
$bl.visible=0
$bbh.visible=0
$bbp.visible=0
$bbr.visible=0
$fbb.enabled=1
$blt.visible=0
Else
$hl.visible=0
$hbh.visible=0
$hbo.visible=0
$hba.visible=0
$fbh.enabled=1
EndIf

$form.top=$screen - (taskbar() + $form.height - 3)
$msg.top = $form.height-38
$fbe.top = $form.height-20
$fbh.top = $fbe.top
$fbb.top = $fbe.top
$fbs.top = $fbe.top
$hl.top=2
$hbo.top=175
$hba.top=175
$hbh.top=175
$form.show(1)
inline()

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function formlink($in)

$form.onmousemove="$$msg.fontbold=0 $$msg.fontunderline=0"
$msg.onmousemove="$$msg.fontbold=1 $$msg.fontunderline=1"
$msg.onmouseup="$$form.show(2) $runie "+Chr(34)+$in+Chr(34)+"'"

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function TaskBar()
If @dos=="4.0"
$_S="StuckRects"
Else
$_S="StuckRects2"
EndIf

$TaskBar=Val("&"+SubStr(ReadValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\$_S","settings"),41,2))

EndFunction


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function slide($sc,$url)

If InStr($sc,'"')
$sc=join(Split($sc,'"'),"'")
EndIf

;run '@scriptdir\wkix32 "@scriptdir\slider.kix" $$sc="$sc" $$b='+taskbar()

; Begin edit...Commented the above command. The rest of this function
; and the Timer_Timer() function below this one, is my
; modifications to the code.

$b=taskbar()
$h1 = 18
$w = 300
$h = 0
$DirectionIsUp = 1

$Popup = CreateObject("Kixtart.Form")

$Popup.BorderStyle = 0
$Popup.Height = $h
$Popup.Width = $w + 6
$Popup.fontsize = 10
$Popup.fontname = "helvetica"
$Popup.forecolor = 0
$Popup.fontbold = 1
$popup.BorderStyle = 1
$popup.backcolor = $Popup.RGB(255,255,0)
$Popup.Top = $Popup.screen.height - $b - $popup.height - 1
$Popup.Left = $Popup.Screen.Width - $popup.width - 1
; $Popup.Top = ($Popup.screen.height - $b) / 2
; $Popup.Left = ($Popup.Screen.Width - $w) / 2

$Popup.ShowInTaskbar = False ; Not ready yet !
; $Popup.TopMost = FALSE

$popLabel = $Popup.Label($sc,2,$h1,$w,$h1)
$popLabel.Backcolor = $Popup.RGB(255,255,0)
$popLabel.BorderStyle = 0
$popLabel.Alignment = 2

$popup.onmousemove="$$poplabel.fontbold=1 $$poplabel.fontunderline=0"
$poplabel.onmousemove="$$poplabel.fontbold=0 $$poplabel.fontunderline=1"
$poplabel.onmouseup="$runie "+Chr(34)+$url+Chr(34)+"' sleep 0.5 $$popup.visible=0 "

$Timer = $Popup.Timer(10)
$Timer.OnTimer = "Timer_Timer()"

Sleep 0.5

$Popup.Show

While $Popup.Visible
$=Execute($Popup.DoEvents())
Loop

$Popup = ""
$Timer = ""
$popLabel = ""

EndFunction


Function Timer_Timer()
$Timer.Interval = 10
If $DirectionIsUp
$h = $h + 1
$popup.height = $h
$Popup.Top = $Popup.Top - 1
If $h >= 3*$h1
$Timer.Interval = 5000
$DirectionIsUp = 0
;play "256t1d500f"
EndIf
Else
$h = $h - 1
$popup.height = $h
$Popup.Top = $Popup.Top + 1
If $h <= 0
$Timer.Enabled = 0
$Popup.Hide
EndIf
EndIf
EndFunction



;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
:init

$form = CreateObject("kixtart.form")
Global $x[7] $dataold=$x $y=$x
$screen=$form.screen.height
Global $runie

If @inwin = 1
$runie = "run 'explorer "
Else
$runie = "run '"+ReadValue("HKEY_CLASSES_ROOT\htmlfile\shell\open\command","")+" "
EndIf

$form.caption = "BBChecker II"
$form.width = 430
$form.height = 40
$form.Left = $form.screen.width - $form.width - 20
$form.borderstyle = 0
$form.fontsize = 8
$form.fontname = "helvetica"
$form.forecolor = 0
$form.fontbold = 0
$form.onlostfocus = "$$focus=0"
$form.ongotfocus = "$$focus=1"

$msg = $form.label("Loading elements...",15,2,410,12)
$msg.onmouseup="$$form.setfocus()"

$form.top = $screen - (taskbar() + $form.height - 3)
$fbe = $form.commandbutton("Exit",2,20,65,19)
$fbe.onclick = "$$form.visible = 0"
$fbs = $form.commandbutton("Miscellaneous",69,20,80,19)
$fbs.onmouseup = "inline() misc()"
$fbh = $form.commandbutton("History",$form.width - 68,20,65,19)
$fbh.enabled=0
$fbh.onclick = "show(2) $$form.setfocus()"
$fbb = $form.commandbutton("Buddyes",$fbh.Left - 68,20,65,19)
$fbb.enabled=0
$fbb.onclick = "show(1) $$form.setfocus()"
$form.visible = 1

inline()

;history block
$hl = $form.listbox(0,2,2,426,170)
$hl.visible = 0
$hl.OnDblClick = "$$form.show(2) $$hlurl.listindex=$$hl.listindex $runie "+Chr(34)+"'+$$hlurl.text+'"+Chr(34)+"'"

inline()

$hl.onclick="$$form.setfocus()"
$hbh = $form.commandbutton("Hide",$form.width - 80,175,75,20)
$hbh.visible = 0

inline()

$hbh.onclick = "hide(2) $$focus=1"
$hbo = $form.commandbutton("Show Topic",5,175,75,20)
$hbo.visible = 0

inline()

$hbo.onclick = "$$form.show(2) $$hlurl.listindex=$$hl.listindex $runie "+Chr(34)+"'+$$hlurl.text+'"+Chr(34)+"'"
$hba = $form.commandbutton("Today's Active topics",150,175,130,20)
$hba.visible = 0

inline()

$hba.onclick = "$$form.show(2) $runie "+Chr(34)+"http://81.17.37.55/board/ultimatebb.php?ubb=get_daily"+Chr(34)+"'"
$hlurl = $form.listbox(0,0,0,0,20)
$hlurl.visible = 0

;buddyes block
$bl = $form.listbox(0,2,15,200,80)
$bl.visible = 0
$bl.onclick="$$form.setfocus()"

inline()

$bll = $form.listbox(0,0,0,0,20)
$bll.visible = 0
$bll.ongotfocus="$$form.setfocus()"

inline()

$blt = $form.label("Logged on users:",5,2,150,12)
$blt.visible = 0
$blt.ongotfocus="$$form.setfocus()"

inline()

$bbh = $form.commandbutton("Hide",$form.width - 80,15,75,20)
$bbh.visible = 0
$bbh.onclick = "hide(1) $$focus=1"

inline()

$bbp = $form.commandbutton("Show Profile",210,15,75,20)
$bbp.visible = 0
$bbp.onclick = "$$form.show(2) $$bll.listindex=$$bl.listindex $runie "+Chr(34)+"http://81.17.37.55/cgi-bin/ultimatebb.cgi?ubb=get_profile;u='+$$bll.text+'"+Chr(34)+"'"

inline()

$bbr = $form.commandbutton("Recent Posts",210,40,75,20)
$bbr.visible = 0
$bbr.onclick = "$$form.show(2) $$bll.listindex=$$bl.listindex $runie "+Chr(34)+"http://81.17.37.55/cgi-bin/ultimatebb.cgi?ubb=recent_user_posts;u='+$$bll.text+'"+Chr(34)+"'"

inline()

Global $focus $focus=1

;settings
$bk="HKEY_CURRENT_USER\Software\Jooel\bbChecker"

If NOT KeyExist($bk)
$=MessageBox("bbChecker II installation corruption!@crlfThis propably is due to unclean installation@crlfRe-install needed","bbChecker II",16)
Exit 0
EndIf

$looptime=Val(ReadValue($bk,"looptime"))
$Beep=Val(ReadValue($bk,"beep"))
$sslider=Val(ReadValue($bk,"slider"))
$my=Val(ReadValue($bk,"my"))
$logon=ReadValue($bk,"logon")

;xmlhttp related func
$cache=ReadValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings","SyncMode5")
$=WriteValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings","SyncMode5","3","reg_dword")
$httpObj = CreateObject("microsoft.xmlhttp")

Return



;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
:final

$ = WriteValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings","SyncMode5",$cache,"reg_dword")

Return


;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Function misc()

$f = CreateObject("kixtart.form")
$f.caption = "bbChecker II - Miscellaneous"
$f.width = 250
$f.height = 250
$f.top = $screen/2
$f.Left = $f.screen.width-720
$f.fontbold=1
$f.fontname = "Bookman Old Style"
$f.printxy(20,10,"bbChecker II")
$f.fontbold=0
$f.printxy(20,30,"Based on:")
$f.printxy(20,45,"Kixtart 4.11 (wkix32.exe)")
$f.printxy(20,60,"KixForms GUI (KixForms.exe)")
$f.fontname = "helvetica"
$fp = $f.checkbox("Don't show my posts",20,135,130,15)
$f.printxy(150,120,"Logonname:")
$fpt = $f.textbox($logon,150,135,65,17)
$lt = $f.textbox($looptime,150,158,25,17)
$f.printxy(20,160,"Post check interval (secs):")
$fo = $f.checkbox("Beep on post",20,180,110,15)
$fs = $f.checkbox("Show slider",20,200,90,15)
$fp.value = $my

If $fp.value
$fpt.enabled=1
Else
$fpt.enabled=0
EndIf

$fo.value = $Beep
$fs.value = $sslider
$fb = $f.commandbutton("OK",170,205,75,20)
$fb.onclick = 'if val($$lt.text)<10 $$lt.text="10" else $$f.visible=0 endif'
$f.show
While $f.visible
$=Execute($f.doevents(1))
If $fp.value
$fpt.enabled=1
Else
$fpt.enabled=0
EndIf

If 99<Val($lt.text)
$lt.text="99"
EndIf
Loop

$looptime = Val($lt.text)
$Beep = $fo.value
$sslider = $fs.value
$my = $fp.value
$logon=$fpt.text
$=WriteValue($bk,"looptime",""+$looptime,"reg_sz")
$=WriteValue($bk,"beep",""+$Beep,"reg_sz")
$=WriteValue($bk,"slider",""+$sslider,"reg_sz")
$=WriteValue($bk,"my",""+$my,"reg_sz")
$=WriteValue($bk,"logon",""+$logon,"reg_sz")

EndFunction



[ 09. September 2002, 13:52: Message edited by: MightyR1 ]


LonkeroAdministrator
(KiX Master Guru)
2002-09-09 05:42 AM
Re: BBChecker II Update

misguided...
I'll check it and release working "source" immediately as possible (skipping even work today)...
 


LonkeroAdministrator
(KiX Master Guru)
2002-09-09 09:36 AM
Re: BBChecker II Update

I have to admit two things to myself:
1) I made good slider which worked
2) it even looked nicer

then, it stole focus. the only backfall...

the sleep on popup can't be used as then it does not "answer"

might just need to do one of those inline's again...

 


LonkeroAdministrator
(KiX Master Guru)
2002-09-09 01:50 PM
Re: BBChecker II Update

got the popup to show up and stay... now it just stays [Big Grin]

eh, it's pretty dangerous. killing the main form does not kill the process...


LonkeroAdministrator
(KiX Master Guru)
2002-09-09 02:13 PM
Re: BBChecker II Update

ok, slider works now just fine...
still not looking nice...
too long code too...

got new problem with removing my formlink code...
can't get the hyperlink to work.


LonkeroAdministrator
(KiX Master Guru)
2002-09-09 03:32 PM
Re: BBChecker II Update

ok, giving up for today.
the first alpha build is at:
http://www.gwspikval.com/jooel/scripts/bbChecker%20II/sources/2.1%20alpha/


MightyR1
(MM club member)
2002-09-09 09:36 PM
Re: BBChecker II Update

Jooel,

you got the same problem as I've got.

When using the .Topmost property, all elements are frozen...

Shawn,

Is this by design? Is there a way to prevent frozen elements and still get the form to be on top?


LonkeroAdministrator
(KiX Master Guru)
2002-09-09 09:45 PM
Re: BBChecker II Update

what you mean with "freezes"?

MightyR1
(MM club member)
2002-09-09 09:48 PM
Re: BBChecker II Update

Buttons can't be clicked, onmousup doesn't work, hyperlinks do not function etc.

LonkeroAdministrator
(KiX Master Guru)
2002-09-09 09:51 PM
Re: BBChecker II Update

yeah, but that shouldn't prevent initializing the hyperlink.
can't understand as the form gets created everytime and still it gives the hyperlink from the start values????

that can't happen or then there is flaw BY design...


MightyR1
(MM club member)
2002-09-09 09:58 PM
Re: BBChecker II Update

It must have something to do with .Topmost.

Try removing the .Topmost line and try again. You'll see your code works too...

If the problem can be solved I suggest you change the formlink function so it can be used in the slider too... (I copied the code from the formlink function and adjusted it a little bit; see previous post)


LonkeroAdministrator
(KiX Master Guru)
2002-09-09 10:11 PM
Re: BBChecker II Update

I totally removed the form link...
and I'm not willing to get it back anymore.

I will have to wait to see what shawn has to say to this (lots of "to")...

I can't test it now (on linux box) but surely will shoot at it.

anyway, I have some other things also to work out so, it does not bother if it will take week or two from shawn to get it fixed...


ShawnAdministrator
(KiX Supporter)
2002-09-09 10:26 PM
Re: BBChecker II Update

Hey guys, how do I repro this problem ? Wheres the latest and greatest code you guys are working from ?

[ 09. September 2002, 22:26: Message edited by: Shawn ]


LonkeroAdministrator
(KiX Master Guru)
2002-09-09 10:31 PM
Re: BBChecker II Update

well, pat's code is on this page and mine is at the download area (link above)

ShawnAdministrator
(KiX Supporter)
2002-09-09 10:39 PM
Re: BBChecker II Update

ping...

LonkeroAdministrator
(KiX Master Guru)
2002-09-09 10:41 PM
Re: BBChecker II Update

well, eh?

pong?
 


ShawnAdministrator
(KiX Supporter)
2002-09-09 10:45 PM
Re: BBChecker II Update

pa-ting (richocet...)

ShawnAdministrator
(KiX Supporter)
2002-09-09 10:48 PM
Re: BBChecker II Update

am i supposed to let this run for a while before the problem occurs ? is it consistent ?

LonkeroAdministrator
(KiX Master Guru)
2002-09-09 11:14 PM
Re: BBChecker II Update

from start to very end...

ShawnAdministrator
(KiX Supporter)
2002-09-10 12:25 AM
Re: BBChecker II Update

nit ... nit ...

NTDOCAdministrator
(KiX Master)
2002-09-10 12:41 AM
Re: BBChecker II Update

ping, ping back at you

ShawnAdministrator
(KiX Supporter)
2002-09-10 01:08 AM
Re: BBChecker II Update

Well, the first thing I've noticed is that at one point, the Height of the Form got set to 2 pixels high (saw a reference to 3 pixels in the script ... don't know where 2 pixels came from yet) ... anyways, the Form is so slim that you can't really see it ... its hiding just above the taskbar ...

[ 10. September 2002, 01:11: Message edited by: Shawn ]


ShawnAdministrator
(KiX Supporter)
2002-09-10 02:09 AM
Re: BBChecker II Update

Another thing I've seen, sometimes when one presses the "history" or "buddyes" button ... an "extra" click can make its way into the event queue ... depending on whether the form is expanding or contracting ... the form can actually go "double high" and "double shrunk" depending on the direction ... does this make sense ... might be wise to put some "guards" in the there ... to trap and avoid this ...

[ps] double-shrunk = not visible because its Height has gone into negative territory - could this be one of the problems ?

[ 10. September 2002, 02:19: Message edited by: Shawn ]


LonkeroAdministrator
(KiX Master Guru)
2002-09-10 09:22 AM
Re: BBChecker II Update

ok, I never did click those buttons twice [Big Grin]

huh...

how I "protect" buttons against clicking...


LonkeroAdministrator
(KiX Master Guru)
2002-09-10 10:33 AM
Re: BBChecker II Update

I would need to avoid somehow the clicking of twice.
and, it already sets itself to disabled but it seems not to get there in time.

shawn, how may I disable the doubleclick?

also, our problem is still there, somehow the hyperlink get's updated on the main form, but not on slider and not in the script...
do you follow?

I set the caption and show gives it correctly on the form but outputting to the console gives the:
"loading elements"

same happens with the slider. somehow it does not actually update the value...

{edit}
pat, I removed the topmost and did have no influence like I thought...

the flaw I'm fighting is in the hyperlink design and I can't seem to get over it...

[ 10. September 2002, 10:35: Message edited by: Lonkero ]


MightyR1
(MM club member)
2002-09-11 12:06 AM
Re: BBChecker II Update

Shawn,

here's what I do to test it withou waiting for a new post from yhe BB.

Add the following (in my version of the checker) after the call to :init

code:
Sleep 3
slide("KiX me","http://www.kixtart.org")
Exit 0

If .Topmost isn't used, you can click "KiX me" and www.kixtart.org will be shown in a browser. If .topmost is false OR true clicking on it won't work...


LonkeroAdministrator
(KiX Master Guru)
2002-09-11 12:07 AM
Re: BBChecker II Update

update, second alpha release updated in:
http://www.gwspikval.com/jooel/scripts/bbChecker%20II/sources/2.1%20alpha/bbCheckerII%202.1.kix

saw that setting to 3 pixels and have no clue what it did there. so commented it out.
my message on the slider shows up correctly now and I got rid of that timer udf.

did try to make some dynamic width stuff on the slider but have to look more into that as it does not work properly yet...

also, got the size successfully back under 10k (9,92k) and it has still the slider in it!


LonkeroAdministrator
(KiX Master Guru)
2002-09-11 12:10 AM
Re: BBChecker II Update

got some kinda failure in the history...

will have to see...


LonkeroAdministrator
(KiX Master Guru)
2002-09-10 01:05 PM
Re: BBChecker II Update

checked on that, and yes, it seems to work just as you said...
found that history and url-related problem.
updated source. current size 9,84k.

tried to fix that slider width too, but can't test it as no one posts...

{edit}
yep, the width has been fixed...

[ 10. September 2002, 13:06: Message edited by: Lonkero ]


LonkeroAdministrator
(KiX Master Guru)
2002-09-10 01:51 PM
Re: BBChecker II Update

shawn, just read your kixlist...

ondoubleclick is not even supported with button.
and if then in my script I set onclick to disable the button, how may doubleclick happen?


ShawnAdministrator
(KiX Supporter)
2002-09-10 01:55 PM
Re: BBChecker II Update

Im thinking its not a double click .. but two single clicks ... queued-up one after the other.

Patrick ... thats what I was looking for ... a way to repro this problem ... will have a lookie this morning ...


LonkeroAdministrator
(KiX Master Guru)
2002-09-10 02:04 PM
Re: BBChecker II Update

shawn, just can't understand how it gets trough as it's already disabled by the first click...

anyway, tried searching for "appearance" on com forum and got no matches. found myself one but not what I wanted.
can one set default properties for one type control, like buttons?
I want them all to be flat, but do I then have to write that in all?


LonkeroAdministrator
(KiX Master Guru)
2002-09-10 02:42 PM
Re: BBChecker II Update

found another bugfix which came almost by accident.
I knew, that if multiple new posts came on same sweep only one got it's way to history.
now, when replaced the select with loop to make the size smaller, also this got fixed.


LonkeroAdministrator
(KiX Master Guru)
2002-09-10 03:26 PM
Re: BBChecker II Update

I can't see the reason but the scripts response time has lowered significantly.
before the doubleclick occured (version 2.0) only when the doubleclick was really fast.
no, it's enough to just press slowly the button twice.

could this just be the adding of slider???

have to invest a little...

btw, shawn, how can I remove the calls to the inline? I can't make the form to respond at all without those...


LonkeroAdministrator
(KiX Master Guru)
2002-09-10 04:27 PM
Re: BBChecker II Update

updated sources and will be leaving home soon.
also, the actual download place is now:
http://www.gwspikval.com/jooel/scripts/bbChecker/sources/current/

fixed little bit the hierarchy.
old links mostly work though (for compability reasons) but they are just links to the new locations...


ShawnAdministrator
(KiX Supporter)
2002-09-10 04:31 PM
Re: BBChecker II Update

DON'T FORGET TO TAKE YOUR LAPTOP WITH YOU !!!

[Wink]


LonkeroAdministrator
(KiX Master Guru)
2002-09-10 04:35 PM
Re: BBChecker II Update

shawn, I've learned from this summer something, I'll keep all wintosh machines out of home so I can live my life on the evening uttleast for a while before the tv...

I know it is bad for my postcount, but keeps my somewhat alive.


ShawnAdministrator
(KiX Supporter)
2002-09-10 04:38 PM
Re: BBChecker II Update

lol - right on my brother.