IRC Log Viewer » #firebreath » 2012-01-05

IRC Nick Time (GMT-7) Message
csl 02:01 hello, anyone there?
linearray 02:01 yes
csl 02:01 thank god ! can you help me ?
linearray 02:01 I don't know
csl 02:01 i have a problem, i want to get the IOleClientSite interface
but i don't konw where i can get it
linearray 02:01 neither do I
csl 02:01 thank you all the same!
Anyone else know?
linearray 02:01 maybe #winapi can help
csl 02:01 can you tell me in detial?
i find that class ActiveXBrowserHost has member of IOleClientSite
but its propity is protected
linearray 02:01 aha!
csl 02:01 and it has no interface to get the IOleClientSite member
are you there?
linearray 03:01 yes, but I'm afraid I can't help you... you have to wait for someone else or post to the forums
shayan 04:01 hi, is it possible to use "var x= new ActiveXObject('blah') " to create a firebreath object in JScript?
Jake__ 05:01 help...... can't seem to get the boost module for the latest Firebreath version.... i tried the git submodule update and so on....... it returned a fatal error... any idea how to deal with this?
FireBreathBot 05:01 Jake__: 04 Jan 16:07Z <taxilian> tell Jake__ you need to run git submodule update from within the firebreath directory
Jake__ 05:01 I did run git submodule update from within the firebreath directory.... but the error said "unable to find current revision in submodule path"
linearray 05:01 well, I can't help you with git, but you can install firebreath-boost manually
http://www.firebreath.org/display/documentation/Download
at the bottom
Jake__ 05:01 alright.. thanks...
but i was thinking ... is the boost module version dependent???
linearray 05:01 hm?
Jake__ 05:01 haha... to answer my question... i think it is... i tried the version used by the vid tutorial... boost was downloaded..
linearray 05:01 I have no idea what you're saying, but I'm happy for you if it works.
Haq_ 07:01 Hello .. I am using firebreath 1.6 , cmake 2.8.7 with Visual C++ 2010 Express, and I cant run the prep2010.cmd propely as its not able to find the C compiler ..
The caommand that failed is C:\PROGRA~2\MICROS~2.0\Common7\IDE\devenv.com CMAKE_TRY_COMPILE.sln /build Debug /project cmTryCompileExec
Anyone has some idea about how I can tell cmake about my compiler ?
now there is no devenv.com on my machine as far as I can tell .. I think cmake is mistaken and using the wrong command perhaps
Jake__ 07:01 need help.. i followed the video tutorial on creating a new plugin project... but why did i have different files generated???? wew
reichi 07:01 hi
is there any chance one can influence which plugin is to be chosen by the browser if there are several for the same mime-type?
Jake__ 08:01 excuse me guys.... can someone please help me??? how come that I followed the video tutorial for creating a new plugin project in windows but generated different files???? i can't find the files the tutor is discussing about
reichi 08:01 am i correct with the assumption that if i want define what is being returned by calling object[something] i do have to override GetProperty ??
taxilian 09:01 reichi: overriding GetProperty is the most powerful, most flexible, and by far the most convoluted way of doing that; really, though, I have seen very few cases where it makes any sense to do so. what you probably want to do is define a property or set an attribute, and there are instructions for both on the web page
Jake__: what are you getting, what are you expecting?
reichi 09:01 taxilian: mmh i don't get it sorry :/
taxilian 09:01 reichi: as to influencing which plugin is to be chosen by the browser…. no, no there isn't
reichi: what are you trying to accomplish?
reichi 09:01 what a basically have is an JSAPIAuto Object
which holds itself an std::vector<someotherjsapiobjectptr>
taxilian 09:01 Haq_: do you have visual studio installed?
reichi 09:01 and on object[1]
i need the the vector->at(1)
taxilian 09:01 FireBreathBot: tell shayan yes you can use var x = new ActiveXObject to create a firebreath object if you're in IE
FireBreathBot 09:01 taxilian: I'll pass that on when shayan is around.
Jake__ 09:01 i'm just really confused... because i did all what was done in the tutorial but i generated different files... how did this happen???
taxilian 09:01 Jake__: since I have no idea what files you're talkign about, that's really hard for me to speculate about. details, man, details =]
reichi: still not sure I understand what you're trying to do. do you actually need to use a specific vector or just set a bunch of specific things so that you can access them from javascript?
reichi 09:01 hmm
let me try to explain it more clear
i do have JSAPIAutoObjectA
which is bascially a "Collection" Object
hmm wait better names ;)
JSAPIAutoObjectACollection
which basically contains a length property
taxilian 09:01 are you trying to emulate an array?
reichi 09:01 i am impleting stuff that's pre-defined...
taxilian 09:01 you're not answering the question
are you trying to emulate an array? from javascript, pretend that your object is an array?
reichi 09:01 basically yes
but i need an "item(int index) function
exactly
in addition to the item(int index) ....
taxilian 09:01 okay; now, are these fixed values? is this *actually* an array, or do you just need it to look like one?
Jake__ 09:01 there are excess files for me and missing files too if i compare it from the generated by the tutorial... for example... after having downloaded the FireBreath source code.. i have gitattribute file which is not found from the tutorial's generated files
reichi 09:01 is contains only a std::vector<JSAPIAutoObjectA>
which are the values it needs to return on item(i)/[i]
and a length attribute...
taxilian 09:01 okay; next question, then. Is there a reason not to just actually use a javascript array?
reichi 09:01 yes
afaik it doesn't support item(index)
and i am bound to the specifications my implementation is based on
taxilian 09:01 a javascript array? var something = [1,2,3,4,5]?
reichi 09:01 yes
something.item(i)
taxilian 09:01 ...
okay...
reichi 09:01 suxx, i know
don't ask how someone got specify something like that
because i REALLY don't understand...
taxilian 09:01 well, again there are a couple ways you could deal with it. If you were to stick with javascript, you could just add the .item method using javascript
reichi 09:01 but is find that is a little bit of a hack, isn't it?
taxilian 09:01 for that matter, window.array.prototype.item = function(idx) { return this[idx]; }
sure; and so is anything else you're going to use to solve this issue
reichi 09:01 well
there are other cases
where i need even more additional Methods...
taxilian 09:01 okay; well, an actual array would work in more cases is the main reason I suggest it. you can do what you want using a JSAPI object
!find FakeArray
FireBreathBot 09:01 Could not find any tags matching FakeArray
taxilian 09:01 !findfile FakeArray
reichi 09:01 haha
FireBreathBot 09:01 Found 2 matching file(s) in the master branch. First 2 are:
src/ScriptingCore/Util/JSFakeArray.cpp http://goo.gl/V0jrG
src/ScriptingCore/Util/JSFakeArray.h http://goo.gl/8wDk5
reichi 09:01 oh
that looks promising
(or sounds)
taxilian 09:01 that's probably as good an example of what you want to do as you will find
you could either extend that or copy it and make your own
reichi 09:01 hmmm
taxilian 09:01 and yes, you'll need to override GetProperty
to support object[idx]
and add a method for .item(idx)
reichi 09:01 well
i gues i'll make myself something out of the JSFakeArraxy
thx a lot for your time :)
taxilian 09:01 good luck
Jake__: what did you try, what was the output? what directory were you in when you ran git submodule update? did you check FireBreath out of git initially?
because something you're doing is completely off, based on what you're tellingme
Jake__ 09:01 i was in the firebreath directory
Haq_ 09:01 @tailian .. yes I do have Visual Studio 2010 Express Installed .. I tested the VS installation by making a hello world which worked fine.
taxilian 09:01 Jake__: why don't you try being more specific; where is the firebreath directory (full path) and what is the full path where you were?
Jake__ 09:01 C:\code\sc
taxilian 09:01 Haq_: Anything unusual about your vs2010 express install? did you install it to a weird place? sometimes if you install it to an unusual place cmake can't find it
Jake__: that doesn't look like the firebreath directory to me
that looks like a directory that might contain the firebreath directory, though
Jake__ 09:01 yep... but i executed the git submodule inside the C:\code\sc\firebreath
taxilian 09:01 how did you download FireBreath?
mkoch 09:01 hello!
Jake__ 09:01 and I noticed when i downloaded FirebBreath source code it had larger file size than the tutorial had
taxilian 09:01 mkoch: good morning
Jake__ 09:01 i downloaded it through cmd
Haq_ 09:01 The only thing wierd I can imagine is that VS 2010 Professional was intalled previously and expired ... so I had to get the VS 2010 Express ... During installation of this I accepted the defaults so the dir it is installed is default dir.
taxilian 09:01 Jake__: the tutorial was done about a year ago, things have changed
Jake__ 09:01 oh
Haq_ 09:01 VS 2010 Professional was installed before I installed Express
taxilian 09:01 Haq_: did you uninstall the old version before installing?
Jake__: so you did a git clone to get the source?
Jake__ 09:01 yep
taxilian 09:01 is there a .git directory in your firebreath root?
Jake__ 09:01 yep
taxilian 09:01 .pb
FireBreathBot 09:01 When you need to share code, logs, or anything else longer than a couple of lines, use a pastebin. http://fpaste.org, https://pzt.me/, and https://gist.github.com are all good options
mkoch 09:01 I'm still working on my plugin, and it starts actually doing things on all 3 platforms. now I'm on Mac and usually I use Safari to test, but from time to time do a check on both FF and Chrome. it used to work well on both (the plugin uses CA/InvalidationCA + Cocoa)
taxilian 09:01 pastebin me the output from the git submodule update --init --recursive command
mkoch 09:01 today I had a bad surprise tho, on FF the plugin works fine but on Chrome ti says "No plugin available to display this content"
I tried to restart Chrome couple times but no success
any idea what's wrong with it?
ch 09:01 do you ship custom dylibs?
taxilian 09:01 mkoch: most people who have that issue it turns out that they're only building the 64 bit version
ch: sure don't
mkoch 09:01 taxilian: that must be the problem...
ch 09:01 ah, that would also explain what I'm seeing
Chrome/Mac is using 32bit plugins?
taxilian 09:01 only 32 bit, yes
just like all versions of FireFox < 4
Haq_ 09:01 @taxilian btw .. I have tried both 64 bit and regular prep command .. neither works
mkoch 09:01 unfortunately I use a static lib in my plugin which is compiled for x86_64
taxilian 09:01 well, guess you won't be supporting Chrome, then =]
Haq_: I'm not surprised. you really don't want 64 bit on windows, though, unless you absolutely know what you're doing
Haq_: did you completely uninstall visual studio pro before you installed express?
Haq_ 09:01 I only tried the 64 bit after the prep for the 32 bit failed .. just to see if I that helps
mkoch 09:01 btw I also had a trouble with the xcode project made by the gen scripts. by default the architecture
Haq_ 09:01 yes - but there was no reboot in between uninstall -- install
taxilian 09:01 mkoch: makes sense. by default the architecture supports both 32 and 64 bit (universal binary)
mkoch 09:01 i386 64 bit is selected and build fails until I change it to Intel 64
Haq_ 09:01 nor was it asked by the uninstaller
however since the installation .. theer has been one reboot .. if that matters .. and that has not helped
mkoch 09:01 taxilian: if I make a 32 bit version of the external lib too, is it possible to keep th plugin universal? how should I link it then?
taxilian 09:01 Haq_: My only guess would be that vs pro left artifacts and so cmake isn't finding it. I really don't know :-/
ch 09:01 I'd try building a universal lib and do a normal link
taxilian 09:01 mkoch: sure. if your external lib is universal it should build just fine
mkoch 09:01 okay, thanks a lot for the info!
taxilian 09:01 but if you need to pick just one, you probably want 32 bit
not 64
unless you know you need 64 bit for some reason, 32 bit is the best way to go because all of the browsers can support it
Haq_ 09:01 so whats the compiler executable that cmake shoudl be running .. do you have an idea .. and if there is a way to tell cmake about that exe
taxilian 09:01 I don't remember; I know that a clean install of windows and then visual studio express works, but I don't use express so I only check it now and again to make sure it's still working
Haq_: this is really a cmake question rather than a FireBreath question, I'm afraid :-/
and I just don't know
Jake__ 09:01 taxilian: what was i supposed to pastebin to you again?
taxilian 09:01 Jake__: the output of the things you're trying so I can see what is actually happening
because what you're describing doesn't make any sense
and I think you're missing something
Haq_ 09:01 np - taxilian .. you are still awsome . handling three queries at a time .. I will try to read cmake doc now so that I can fool it :)
Jake__ 09:01 if i list out all the projects in the FireBreath.sln... would that help?
taxilian 09:01 Haq_: good luck. Cmake can be a scary beast when it isn't happy. My guess is that you'll need to uninstall/reinstall visual studio or something like that to make it work
Jake__: sure wouldn't. however, if the prep script completed then you have everything you need boost-wise
Haq_ 09:01 ok .. I will try that first ....
taxilian 09:01 Jake__: so you're saying it actually generated a FireBreath.sln file?
Jake__ 09:01 yep
taxilian 09:01 the prep script completed and didn't report any errors?
Jake__ 09:01 it did...
taxilian 09:01 then you're fine
what are you worried about?
Jake__ 09:01 I can't find the necessary files to play with
taxilian 09:01 what files?
I'm really confused. What are you looking for that you can't find?
Jake__ 09:01 hmmmmmmm...... how can i explain this thoroughly??
hmmmmmmmmmmmmmmmmmmmm
taxilian 09:01 how about trying something like "I'm looking for a file/project called ______, and I can't find it"
I don't need a thorough explanation, I need a simple and straightforward one
Jake__ 09:01 ok
the files and projects generated by the sln file from the tutorial is different from mine.... how's that???
almost all of it
taxilian 09:01 which files specifically?
FireBreath.sln is really the only one you care about...
Jake__ 09:01 except for the newly created project
taxilian 09:01 the rest may have changed with time
I don't update the tutorial every time I change anything in FireBreath
the tutorial shows you concepts and steps. dont' expect everything to look exactly 100% the same
though the fundamental pieces haven't changed
Jake__ 09:01 the projects generated with the prefix on them.... i can't find them.. is that normal?
taxilian 09:01 look in the "FireBreath Generated" group
there is only one now
PREFIX_PluginAuto
Jake__ 09:01 how about the .cpp file and .h file that should be generated inside the plugin project.. in the Win directory... together with the projectDef.cmake... i can't find them too
taxilian 09:01 where are you looking?
Jake__ 09:01 in the plugin project
i mean... the newly created one
inside the Win directory... i was expecting that there will be a .cpp and a .h generated there
taxilian 09:01 full path
Jake__ 10:01 PluginTest(this is the plugin name)/Win
taxilian 10:01 wait; why would there be a PluginTest.cpp file in /Win?
it's in the root of your project directory
Jake__ 10:01 know what i mean is that ... in the root of your project directory... there is a Win directory right?
the dllmain.cpp and the np_winmain.cpp are those files that i am talking about... i'm sorry.. i just have very poor internet connection
where can i find these???
taxilian 10:01 you don't need them anymore
those are used from PluginAuto
Jake__ 10:01 oh while i'm at it.. can i consult something to you??
taxilian 10:01 not sure I understand the question. you may ask me about something, yes
Jake__ 10:01 the reason i'm doing this stuff is because I am tasked to create a Google Chrome Extension for a requirement in school...
This extension should store and retrieve user-specific bookmark and browser settings
to elaborate.. the user logs in the extension.. and will load his and only his bookmarks and browser settings....
so my question is..... am i on the right track in choosing this(Firebreath) technology?
taxilian 10:01 FireBreath can be used to help with an extension, but you can't make an extension with FireBreath
nothing you've said so far seems to require a plugin
Jake__ 10:01 oh... yeah... i forgot
the storage of those bookmarks should be in the local disk of the computer
taxilian 10:01 I think you can still do that without a plugin using an extension
Jake__ 10:01 how so?
taxilian 10:01 lots of extensions save things locally; there are already extensions that do what you're describing, in fact
Jake__ 10:01 can you suggest or recommend me something??? i'm just so frustrated with this.. and no one is helping me because i can't find a consultant who had guts to help me with this
taxilian 10:01 and none of them use plugins that I know of
the problem is that what you're trying to do isn't something that is widely understood
and if you'll excuse me for saying so, you don't understand the core technologies very well to start out wtih
Jake__ 10:01 yeah.... I understand what you're saying... it's just that I have a lot on the line....
:(
can you suggest or recommend how can i do this?
*how to do this rather...
taxilian 10:01 I'm a plugin expert, not an extensions expert
so honestly? no, I really can't
but it sounds like you need to learn to make a Chrome extension
Jake__ 10:01 It's as easy as making an mini webpage
*a mini webpage
what I don't know is how to store bookmarks or browser settings locally....
cause from what i've researched ... javascript used in Google Chrome cannot write stuff locally
taxilian 10:01 probably you just need to use localstorage
linearray 10:01 google has a really good page for extension developers
taxilian 10:01 if the html5 storage APIs won't work, you can do it with FireBreath; you can make an NPAPI plugin and package it with, make it a private plugin
but it'll make the job a lot harder
Jake__ 10:01 why will it make the job harder?
taxilian 10:01 because writing a plugin -- even with FireBreath -- is a lot harder than writing a web page
and requires C++, in which evern with FireBreath it's easy to mess things up
whereas localstorage is a simple key/value store that you can use with javascript
and requires no plugin experience
no C++
etc
Jake__ 10:01 i
i've had experience with C++
taxilian 10:01 so have I… and if I didn't need a plugin, I woudln't use one
Jake__ 10:01 what i just need the plugin to do is to write it and retrieve something from the local storage
taxilian 10:01 never use a plugin for something you can reasonably solve without
localstorage can be used from javascript
Jake__ 10:01 yeah.. but it is key-based
taxilian 10:01 and?
so is a filesystem
the key in that case being a filename
Jake__ 10:01 and what sucks is that... all data will be gone if you delete the history... because local storage are just cookies
taxilian 10:01 local storage are not the same as cookies
and deleting history doesn't erase my preferences for other google chrome extensions, so I would postulate that there is indeed a method for storing settings using a chrome extension
woudln't you think?
"Extensions can save data using the HTML5 http://dev.w3.org/html5/webstorage/ (such as localStorage) or by making server requests that result in saving data."
sounds like that's the approved method
and I don't see anything indicating that clearing history would delete that data
Jake__ 10:01 yeah but i tried this once... and it did..
:(
taxilian 10:01 well, your call. I need to get back to work now
good luck, whichever you decide
Jake__ 10:01 ok.. tnx man.. you're awesome and kind...
taxilian 10:01 well, yes, but I try not to let it go to my head ;-)
linearray 15:01 taxilian: do you drink caffeinated sodas?
taxilian 15:01 not usually
that one is a little bit of a gray area; some mormons do, some don't
caffine doesn't seem to affect me any direction
linearray 15:01 I'm thinking about quitting and I thought if there is someone, who can work on a computer all day long without caffeine, it must be you :D
taxilian 15:01 lol
well, I have been known to drink beverages with caffine in them… but really just things like coke when that's all that was in the machine
and never at home
so yes, I work ridiculously long hours ,and I don't use caffine to do it
linearray 15:01 I might pick up light exercise again to keep me going
taxilian 15:01 not a bad idea
I'm so used to functioning on sleep deprivation that even days like today (when I've gotten ~2-4 hours of sleep for the last week and a half 'cause I've been sick) I still keep going and medicines that normally knock people out don't affect me much
which is too bad, since last night I took prescription cough syrup that should have helped me sleep…. =]
linearray 15:01 ouch, still so sick?
taxilian 15:01 I'm mostly over it now
linearray 15:01 you know, there might be a causal connection
taxilian 15:01 but I still have a cough that's keeping me awake
linearray 15:01 try working less than 16 hours a day and you might get well earlier :)