Can anybody please help me out on this?? i am not finding any clue on web to have it compiled on android linux kernel.
On Tue, Aug 4, 2009 at 2:25 PM, Jack Wootton <[email protected]> wrote: > Sorry, i thought you meant a C class, not a class used with JSObjects. > > On Tue, Aug 4, 2009 at 3:42 AM, LG<[email protected]> wrote: > > Doesnt this create a class?? > > > > //create a class with a name > > JSStringRef calObjectName = JSStringCreateWithUTF8CString( > > "calendar"); > > > > //create a class definition > > JSClassDefinition calObjectDef; > > calObjectDef.version = 1; > > //calObjectDef.className = calObjectName > > > > > > //create a context > > //context = JSGlobalContextCreate(NULL); > > //assert(JSValueIsObject(context, globalObject)); > > > > //create the class > > JSClassRef globalObjectClass = JSClassCreate(&calObjectDef); > > > > > > > > On Mon, Aug 3, 2009 at 6:16 PM, Jack Wootton <[email protected]> > wrote: > >> > >> You say you'e created a class, but I can't see a class in your code. > >> > >> On Mon, Aug 3, 2009 at 1:36 PM, LG<[email protected]> wrote: > >> > But is the location to place the file and the source code looks fine?? > >> > > >> > On Mon, Aug 3, 2009 at 6:00 PM, Jack Wootton <[email protected]> > >> > wrote: > >> >> > >> >> I have only modified an old s60 branch of webkit so can't help you on > >> >> where to put the files and compile it, since this is done differently > >> >> on s60. I'm sure someone who knows more can help with this (I would > >> >> be interested too). However in the list of errors you get you don't > >> >> have JSObjectCallAsFunction or JSObjectSetProperty. Presumably these > >> >> are not undefined references? I had a similar problem on an old S60 > >> >> branch, I posted about it on Forum Nokia here > >> >> http://discussion.forum.nokia.com/forum/showthread.php?t=172429 but > >> >> received no help (but since you're using SquirrelFish I doubt it's > the > >> >> same issue). > >> >> > >> >> On Mon, Aug 3, 2009 at 12:56 PM, LG<[email protected]> wrote: > >> >> > Hi Jack, > >> >> > > >> >> > thanks for the info, > >> >> > > >> >> > the problem here is i tried this and didnot work > >> >> > i ll elaborate on what i have tried > >> >> > > >> >> > 1. i have created a class in JavascriptCore/API > >> >> > > >> >> > test.cpp > >> >> > > >> >> > #include "UnusedParam.h" > >> >> > #include <JavaScriptCore/JavaScript.h> > >> >> > #include <assert.h> > >> >> > #include <math.h> > >> >> > #include <setjmp.h> > >> >> > > >> >> > > >> >> > static JSGlobalContextRef context = 0; > >> >> > JSValueRef v; > >> >> > JSValueRef exception; > >> >> > JSStringRef functionBody; > >> >> > JSObjectRef function; > >> >> > > >> >> > int main() > >> >> > { > >> >> > > >> >> > //create a class with a name > >> >> > JSStringRef calObjectName = > >> >> > JSStringCreateWithUTF8CString("calendar"); > >> >> > > >> >> > //create a class definition > >> >> > JSClassDefinition calObjectDef; > >> >> > calObjectDef.version = 1; > >> >> > //calObjectDef.className = calObjectName > >> >> > > >> >> > > >> >> > //create a context > >> >> > //context = JSGlobalContextCreate(NULL); > >> >> > //assert(JSValueIsObject(context, globalObject)); > >> >> > > >> >> > //create the class > >> >> > JSClassRef globalObjectClass = JSClassCreate(&calObjectDef); > >> >> > > >> >> > //create a global context > >> >> > JSGlobalContextRef context = > >> >> > JSGlobalContextCreate(globalObjectClass); > >> >> > JSObjectRef globalObject = > JSContextGetGlobalObject(context); > >> >> > > >> >> > //make the object > >> >> > JSObjectRef calObject = JSObjectMake(context, > globalObjectClass, > >> >> > NULL); > >> >> > > >> >> > > >> >> > //set properties > >> >> > JSObjectSetProperty(context, globalObject, calObjectName, > >> >> > calObject, > >> >> > kJSPropertyAttributeNone, NULL); > >> >> > > >> >> > > >> >> > exception = NULL; > >> >> > v = NULL; > >> >> > > >> >> > JSStringRef getCal = > >> >> > JSStringCreateWithUTF8CString("getCalendars"); > >> >> > functionBody = JSStringCreateWithUTF8CString("return NULL;"); > >> >> > function = JSObjectMakeFunction(context, getCal,0, NULL, > >> >> > functionBody, > >> >> > NULL, 1, &exception); > >> >> > assert(function && !exception); > >> >> > JSValueRef arguments[] = { JSValueMakeNumber(context, 2) }; > >> >> > v = JSObjectCallAsFunction(context, function, NULL, 1, > arguments, > >> >> > &exception); > >> >> > JSStringRelease(getCal); > >> >> > JSStringRelease(functionBody); > >> >> > > >> >> > return 1; > >> >> > } > >> >> > > >> >> > > >> >> > 2. i added this to the make file and i get the following errors > >> >> > > >> >> > undefined reference to `JSStringCreateWithUTF8CString` > >> >> > undefined reference to `JSClassCreate` > >> >> > undefined reference to `JSGlobalContextCreate` > >> >> > > >> >> > etc > >> >> > > >> >> > i am not sure where to put the file and compile > >> >> > please guide me through the approach > >> >> > > >> >> > > >> >> > > >> >> > > >> >> > On Mon, Aug 3, 2009 at 2:29 PM, Jack Wootton < > [email protected]> > >> >> > wrote: > >> >> >> > >> >> >> Hello, > >> >> >> > >> >> >> If you mean add a new JavaScript object, then here is a reply I > >> >> >> wrote > >> >> >> some time ago (copied and pasted). > >> >> >> > >> >> >> Here is the API: > >> >> >> > >> >> >> > >> >> >> > >> >> >> > >> >> >> > http://gemma.apple.com/documentation/Carbon/Reference/WebKit_JavaScriptCore_Ref/index.html#//apple_ref/doc/framework/javascriptcore_fw > >> >> >> > >> >> >> If this is what you wish to do, then the following is a rough > guide > >> >> >> of > >> >> >> what you need to do: > >> >> >> > >> >> >> 1. Create an empty class definition, you can create an empty class > >> >> >> definition using kJSClassDefinitionEmpty. > >> >> >> 2. Use the class definition with the JSCoreAPI method > >> >> >> "JSClassCreate" > >> >> >> to create your class. > >> >> >> 3. Use your new class with JSObjectMake to create your new > JSObject > >> >> >> (this will be your widget object). > >> >> >> 4 Use JSObjectSetProperty to add your new JSObject as a property > of > >> >> >> the Window object. > >> >> >> > >> >> >> It maybe useful to look at the following files in the > >> >> >> JavaScriptCore (Although, personally I didn't find them > particularly > >> >> >> easy to understand.) > >> >> >> > >> >> >> JavaScriptCore\API\testapi.c > >> >> >> testapi.js > >> >> >> > >> >> >> > >> >> >> There are also some example programs that do what you want to do, > >> >> >> only > >> >> >> with different objects. > >> >> >> > >> >> >> JSPong: http://developer.apple.com/SampleCode/JSPong/index.html > >> >> >> > >> >> >> JSInterpreter: > >> >> >> http://developer.apple.com/samplecode/JSInterpreter/index.html > >> >> >> > >> >> >> More programs can be found here: > >> >> >> > >> >> >> > http://developer.apple.com/SampleCode/Cocoa/idxInternetWeb-date.html > >> >> >> > >> >> >> On Mon, Aug 3, 2009 at 5:34 AM, LG<[email protected]> wrote: > >> >> >> > Hi all, > >> >> >> > > >> >> >> > i am new to webkit and i need to add an new object/api to > >> >> >> > javascript > >> >> >> > core > >> >> >> > can someone share and example and tell me how to compile it in > >> >> >> > webkit > >> >> >> > > >> >> >> > anyhelp would be useful > >> >> >> > thanks a lot > >> >> >> > > >> >> >> > > >> >> >> > -- > >> >> >> > Ganesh > >> >> >> > > >> >> >> > _______________________________________________ > >> >> >> > webkit-help mailing list > >> >> >> > [email protected] > >> >> >> > http://lists.webkit.org/mailman/listinfo.cgi/webkit-help > >> >> >> > > >> >> >> > > >> >> >> > >> >> >> > >> >> >> > >> >> >> -- > >> >> >> Regards > >> >> >> Jack > >> >> > > >> >> > > >> >> > > >> >> > -- > >> >> > LG > >> >> > > >> >> > >> >> > >> >> > >> >> -- > >> >> Regards > >> >> Jack > >> > > >> > > >> > > >> > -- > >> > LG > >> > > >> > >> > >> > >> -- > >> Regards > >> Jack > > > > > > > > -- > > LG > > > > > > -- > Regards > Jack > -- LG
_______________________________________________ webkit-help mailing list [email protected] http://lists.webkit.org/mailman/listinfo.cgi/webkit-help
