Proposal for IrcII scripting extention -- New variable operator -> Which references properties functions when the variable is a string of format #objectclass_objectid where object class is an internal or external class of information, and ID is a unique ID generated by the object creation function. Log - otherways if var contains "#button_834782" ie just id I'll have to do $setbuttontext() I think adding -> is a nice idea <[NuKe]> yeah it is for example if var== window refnum then window commands may be accessed like <[NuKe]> nevermind.. that \ is internal? $window->logfile(status.log) $window->new()->setwindowpos(lalala)->font(lalala) nah its just to stop variable parsing <[NuKe]> that would be very useful after the dollar sign it should stop somewhere <[NuKe]> yeah I know but that is all done internally right... unknown to the scripter $varnamewhereitends basicly rule is when we paring $var ùíù SignOff _aw: #OpenChat (no windows left) if after the var instead of dot or [ or ( we have -> then we doing following <[NuKe]> right generating code to take value of var, <[NuKe]> I understand all that... it's the \'s you were refereing to that had me confused ;) and calling "object_property(value_of_var, rest of params) now value_of_var must be something like #objecttype_id #window_ #server_ <[NuKe]> right #channel_#channel_name #pluging_registered_type_" there should be a list of struct ObjectClass {Name, (*handler)()} we getting somewhere [NuKe] if imlemented this is gonna be a next thing since sliced bread <[NuKe]> shouldn't be hard to implement either should be a standard new operator <[NuKe]> except for a couple handlers /new Window.... /new classname or function @id = new(classname createparams) good thing id is just a string consisted of classname_class_generated_id class can just sequentially name created objects or if it mallocs objects <[NuKe]> maybe we'll need something like $registerclass() <[NuKe]> for scriptable class functions? <[NuKe]> or ùíù BitchX: Unknown command "registerclass" <[NuKe]> /registerclass "classname" { } <[NuKe]> ? <[NuKe]> er <[NuKe]> maybe <[NuKe]> /registerclass "classname" <[NuKe]> and then <[NuKe]> /registerfunction "classname" "functionname" { } <[NuKe]> then ð [NuKe] pokes mikg ð [NuKe] pokes mikh <[NuKe]> :) hmm yea why not class classname { <[NuKe]> blah alias setprop { } alias getprop {} } <[NuKe]> yeah class test { err why not make it simple <[NuKe]> ok skip class test part alias new.test { @class.test.id++ purge class.test[$class.test.id] @function_return = class.test.id } alias set_something.test { @class.test[$encode($0)][$1] = [$2-] } now if you do $test = new(test) if it can't find internal class it will try to call new. which will return 1 (id++ part) then err it supposed to return "#test_1" <[NuKe]> right then when you dp $test->set_something(bleah) it will call .setsomething.test with param "1 bleah" (from #test_1 and a param) <[NuKe]> right whoa this looks better and better ð mikh/#openchat pats himself on the head you are one smart fella alias server {@function_return = [#server_$0]} $server($lastserver())->nick(moo) heh can make shortcats in #classname_id for internal most used things like channels $C->send() <[NuKe]> hehe <[NuKe]> sweet :) err #channel will be indistingushable from #classname <[NuKe]> hm lets use "id" it will be returned by new() when we have $var->something() part before -> should expand to such string which we gonna parse to find needed handler I gonna do test thingy right after I do menus next week $window()->query($1) syntaxicly it rules... <[NuKe]> :) alias window if ([$*] == [] {return _$winnum()}{return _$*} actually even can write more complecated alias so $window(#channelname) is possible all is needed that it will return a string in format _window_ref <[NuKe]> yep $window(#openchat)->setwindowpos() beauty <[NuKe]> :) <[NuKe]> that is very nice