Author Topic: File Explorer and Shell Extension Plugin  (Read 8914 times)

Offline lexis

  • Multiple posting newcomer
  • *
  • Posts: 36
File Explorer and Shell Extension Plugin
« on: March 10, 2008, 12:18:40 am »
I just have downloaded and tried to use CB. It looks very well and performant.
I read out about subj but I can't find it in 8.02 distribution and in latest nightly build...
I found a ShellExtensions-0.2.0.cbplugin file but plugin manager failed to install the plugin :(
I need the functionality it provides since I have deep source tree and directory based build system. And I use tortoise SVN under WinXP too...

Is the right way to try to recompile CB and link it with the ShellExtensions plugin? Should this work?

Thanks o lot for a help!

Offline dmoore

  • Developer
  • Lives here!
  • *****
  • Posts: 1576
Re: File Explorer and Shell Extension Plugin
« Reply #1 on: March 10, 2008, 04:56:12 am »
sorry - I haven't updated the binaries in a while so that might explain why it doesn't work.

if you can't wait for me to update the binaries (probably a week or two) you can try building the Shell Extensions plugin binaries yourself by downloading the source from svn (from the Interpreted Languages project page in my sig). you don't necessarily need to rebuild cb, but you will need an up to date cb sdk (for relevant headers) then modify the "Shell Extensions" project to link against the CB 8.02 dlls.
« Last Edit: March 10, 2008, 04:58:11 am by dmoore »

Offline lexis

  • Multiple posting newcomer
  • *
  • Posts: 36
Re: File Explorer and Shell Extension Plugin
« Reply #2 on: March 10, 2008, 11:16:22 pm »
I have tried to build svn version of CB (I know that it is not needed for cb sdk just bcause interesting to get actual latest version :-) )
and got the next link error:
cannot find -lwxmsw28u

I have the next wx libs built:

libwx_base-2.8.dll.a      libwx_msw_aui-2.8.dll.a   libwx_msw_richtext-2.8.dll.a  libwxpng-2.8.a
libwx_base_net-2.8.dll.a  libwx_msw_core-2.8.dll.a  libwx_msw_xrc-2.8.dll.a       libwxregex-2.8.a
libwx_base_xml-2.8.dll.a  libwx_msw_html-2.8.dll.a  libwxexpat-2.8.a              libwxtiff-2.8.a
libwx_msw_adv-2.8.dll.a   libwx_msw_qa-2.8.dll.a    libwxjpeg-2.8.a               libwxzlib-2.8.a

No one looks like missed name... What libs I should use as replacement for the missed libwxmsw28u.a?

Thank you for a help.

Offline lexis

  • Multiple posting newcomer
  • *
  • Posts: 36
Re: File Explorer and Shell Extension Plugin
« Reply #3 on: March 10, 2008, 11:17:53 pm »
I forgot to say that I use minGW environment with gcc v3.4.2

Offline dje

  • Lives here!
  • ****
  • Posts: 683
Re: File Explorer and Shell Extension Plugin
« Reply #4 on: March 10, 2008, 11:20:50 pm »
Hi !

You have to compile wxWidgets at least with MONOLITHIC=1

Dje

Offline lexis

  • Multiple posting newcomer
  • *
  • Posts: 36
Re: File Explorer and Shell Extension Plugin
« Reply #5 on: March 15, 2008, 10:31:28 pm »
Ok. I have built all CB, contributed plugins and shell extension plugin successfully :-)

Now I see Files tab at Management panel.
But unfortunately I have no access to TortoiseSVN commands integrated to windows shell from the tab :-( And I see no TortoiseSVN decoration icons :-(

Do I forget to do something?

Thank you

Offline mariocup

  • Developer
  • Lives here!
  • *****
  • Posts: 587
Re: File Explorer and Shell Extension Plugin
« Reply #6 on: March 16, 2008, 01:25:46 am »
Hi lexis,

the file explorer supports SVN decorators. Select the context menu View->SVN decorators. If you want to use a graphical interface for SVN like TortoiseSVN oder gsvn (Linux) you just have to add some shell extensions for doing that. In the manual http://www.codeblocks.org/user-manual you will find all information how to integrate TortoiseSVN commands in the section "File Explorer and Shell Extension Plugin".

Bye,

Mario

Offline lexis

  • Multiple posting newcomer
  • *
  • Posts: 36
Re: File Explorer and Shell Extension Plugin
« Reply #7 on: March 16, 2008, 08:49:59 pm »
thank you for the link to manual. It is useful but it has no way to change behavior of the menu according to real context. I thinked before that there is a possibility to handle a real shell menu which is apperred in MS Explorer... Unfortunately I understand that it is not implemented :-(

And I had tried to use the context menu "View->SVN decorators" but it doesn't affect anything in Files tab :-(

Offline dmoore

  • Developer
  • Lives here!
  • *****
  • Posts: 1576
Re: File Explorer and Shell Extension Plugin
« Reply #8 on: March 16, 2008, 08:59:44 pm »
the svn command has to be in your path. the implementation of the file explorer was a hasty bit of hacking on my part and still needs lots of enhancements. as you say, I haven't tried to implement the windows explorer shell menu as that will require windows specific code, which is a low priority for me (not to say I won't ever do it)

EDIT: I should ask - what are you trying to do that you need full windows explorer functionality within codeblocks? Personally, I find the inability to control the context menu of windows explorer a frustration, which is why I designed the plugin the way I did.
« Last Edit: March 16, 2008, 09:04:11 pm by dmoore »

Offline lexis

  • Multiple posting newcomer
  • *
  • Posts: 36
Re: File Explorer and Shell Extension Plugin
« Reply #9 on: March 16, 2008, 09:20:08 pm »
There is no a special need to handle an explorer menu. It is only a way to get a different menu behavior for a different file context.
For an example different menu items for checked out files and for common files as in the explorer menu.

Really your plugin already has resolved most of my needs.
« Last Edit: March 16, 2008, 10:07:58 pm by lexis »

Offline acinfo64

  • Single posting newcomer
  • *
  • Posts: 7
Re: File Explorer and Shell Extension Plugin
« Reply #10 on: April 16, 2008, 10:12:56 am »

Dear All,

Can you give me more details on how you solved your problem? I have downloaded the ShellExtensions-0.2.0.cbplugin but it fails to install.

I have compiled c::b, although it is not what I prefer (now I need a wxmsw28u_gcc_yyyy.dll with yyyy a 'dummy' project name of me), but I cannot find the source of the ShellExtensions plugin. What has this extension to do with the 'IL Plugins' (I don't know what IL PLugins are)?

Did you compile the newest version of c::b (v8.02) or an much older version?


Offline lexis

  • Multiple posting newcomer
  • *
  • Posts: 36
Re: File Explorer and Shell Extension Plugin
« Reply #11 on: April 16, 2008, 09:17:15 pm »
As for me, I compiled a CB nightly build with all plugins including subject one.
As I understand it's not needed to build overall CB, only plugin using appropriate version of plugins API.

Then you can add every svn command as separate menu item one by one to the File Extension plugin.

Offline dmoore

  • Developer
  • Lives here!
  • *****
  • Posts: 1576
Re: File Explorer and Shell Extension Plugin
« Reply #12 on: April 16, 2008, 10:42:34 pm »
I have downloaded the ShellExtensions-0.2.0.cbplugin but it fails to install.

sorry, that one is out of date (the C::B plugin API changed since I made that plugin binary). I'm downloading the source for the 8.02 API now and will recompile the plugin and post it in the next 24 hours. If you can't wait, you should be able to compile from source without difficulty by checking out the trunk from the cbilplugin subversion repository (follow the link in my sig).


As for why the project has the name it does: IL = Interpreted Languages. The purpose of the project is to host plugins that are useful to people who want to use C::B with Interpreted Languages. The Shell Extensions plugin falls into that category (even though it is useful even for people who don't use ILs)

Offline dmoore

  • Developer
  • Lives here!
  • *****
  • Posts: 1576
Re: File Explorer and Shell Extension Plugin
« Reply #13 on: April 17, 2008, 04:27:31 am »
« Last Edit: April 17, 2008, 04:30:36 am by dmoore »

Offline acinfo64

  • Single posting newcomer
  • *
  • Posts: 7
Re: File Explorer and Shell Extension Plugin
« Reply #14 on: April 17, 2008, 09:27:00 am »
Thank you for your help. The binary (v0.2.1) works perfectly. I also found the code and I was able to compile everything.

The plugin works and so I assume that the IL part is automatically distributed with the compiled C::B v8.02.

Now I have to figure out how the SVN pluging works exactly. As I understood is that every SVN command has to be added in the file extension plugin and now I'm going to figure out how this has to be done.

« Last Edit: April 17, 2008, 09:28:47 am by acinfo64 »