Code::Blocks
July 29, 2010, 05:49:11 pm *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News: New release 10.05 is ready. Grab it while it's hot!!!
 
   Home   Help Search Login Register  :: WebsiteWiki  
Pages: [1]
  Send this topic  |  Print  
Author Topic: When exec CodeSnippets.exe, it's auto change Window type  (Read 3155 times)
Loaden
Regular
***
Posts: 464



« on: May 25, 2009, 02:43:16 pm »

When exec CodeSnippets.exe, it's auto change Window type: From Docked to External.
I reset Window type to Docked, and it's ok!
But when i exec CodeSnippets.exe, it's auto change too.
XPSP3.
Logged

Arch & XP -|- GCC & VC  -|- Code::Blocks SVN Latest
------------------------------------------
Index for my patches
Pecan
Plugin developer
Lives here!
****
Posts: 1789


« Reply #1 on: May 25, 2009, 05:08:59 pm »

When exec CodeSnippets.exe, it's auto change Window type: From Docked to External.
I reset Window type to Docked, and it's ok!
But when i exec CodeSnippets.exe, it's auto change too.
XPSP3.


Please give us the "exact" steps to re-create your problem.
Logged
Loaden
Regular
***
Posts: 464



« Reply #2 on: May 26, 2009, 12:19:15 am »

Please give us the "exact" steps to re-create your problem.
1. Run codeblocks.exe (is portable: default.conf with the same folder)
2. View - Code snappets, now, Opened the Code Snappets main UI.
3. CodeSnappets: Settings - Options -> Set Window Type to Docked and OK.
4. Quit Codeblocks.exe
5. run codesnippets.exe
6. quit codesnippets.exe (default.conf.cbTemp still exists!)
7. run codeblocks.exe
8. View - Code snappets
Now, CodeSnippets change Window Type to External
Logged

Arch & XP -|- GCC & VC  -|- Code::Blocks SVN Latest
------------------------------------------
Index for my patches
Pecan
Plugin developer
Lives here!
****
Posts: 1789


« Reply #3 on: May 26, 2009, 08:48:44 pm »

...default.conf.cbTemp still exists!...


Fixed SVN 5611
Logged
Pecan
Plugin developer
Lives here!
****
Posts: 1789


« Reply #4 on: May 26, 2009, 08:56:28 pm »

Please give us the "exact" steps to re-create your problem.
1. Run codeblocks.exe (is portable: default.conf with the same folder)
2. View - Code snappets, now, Opened the Code Snappets main UI.
3. CodeSnappets: Settings - Options -> Set Window Type to Docked and OK.
4. Quit Codeblocks.exe
5. run codesnippets.exe
6. quit codesnippets.exe (default.conf.cbTemp still exists!)
7. run codeblocks.exe
8. View - Code snappets
Now, CodeSnippets change Window Type to External


Since you've moved both CodeBlocks.exe, CodeSnippets.exe, and CodeSnippets.ini into a single folder, both exe's will use the single copy of CodeSnippets.ini .

Usually, CodeSnippets.exe uses a *copy* of CodeSnippets.ini. You've forced them to use the same file.

Right now, I can think of no solution to this.

So, when running in portable mode, either use the CodeBlocks plugin version of CodeSnippets *or* use the standalone external version. But not both.
Logged
Loaden
Regular
***
Posts: 464



« Reply #5 on: May 27, 2009, 04:01:31 am »

So, when running in portable mode, either use the CodeBlocks plugin version of CodeSnippets *or* use the standalone external version. But not both.
Oh. Have any way to made both use?
example: When run codesnippets.exe, it's not modify codesnippets.ini anything, but only read the codesnippets.xml ?
Logged

Arch & XP -|- GCC & VC  -|- Code::Blocks SVN Latest
------------------------------------------
Index for my patches
Pecan
Plugin developer
Lives here!
****
Posts: 1789


« Reply #6 on: May 27, 2009, 01:20:15 pm »

So, when running in portable mode, either use the CodeBlocks plugin version of CodeSnippets *or* use the standalone external version. But not both.
Oh. Have any way to made both use?
example: When run codesnippets.exe, it's not modify codesnippets.ini anything, but only read the codesnippets.xml ?


No, it doesn't fit the design or intent of the program. However, you have access to the source and can change it as you like.
« Last Edit: May 27, 2009, 01:50:21 pm by Pecan » Logged
ollydbg
Lives here!
****
Posts: 1484


Interests on OpenCV and Robotics


WWW
« Reply #7 on: June 21, 2009, 07:26:14 am »

Hi, I find a strange problem.
I use the portable CB see:
http://forums.codeblocks.org/index.php/topic,10360.0.html

My codeblocks.exe was located in "F:\cb_svn\src\output"

But the "codesnippets.ini" was located in "F:\"

Is there something wrong?
Or this pulgin can't use the APPDATA related information to store its configuration?

Thanks
Logged

If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.
Pecan
Plugin developer
Lives here!
****
Posts: 1789


« Reply #8 on: June 21, 2009, 02:14:52 pm »

Hi, I find a strange problem.
I use the portable CB see:
http://forums.codeblocks.org/index.php/topic,10360.0.html

My codeblocks.exe was located in "F:\cb_svn\src\output"

But the "codesnippets.ini" was located in "F:\"

Is there something wrong?
Or this pulgin can't use the APPDATA related information to store its configuration?

Thanks


CodeSnippets first looks for its .ini file in the executable folder.

If it doesn't find the .ini file in the executable folder, it uses the location reported by the Configuration Manager.

It knows nothing about APPDATA.
« Last Edit: June 21, 2009, 02:40:06 pm by Pecan » Logged
ollydbg
Lives here!
****
Posts: 1484


Interests on OpenCV and Robotics


WWW
« Reply #9 on: June 21, 2009, 03:05:50 pm »

Hi, here is the steps to reproduce this problem.

1, unzip a nightly build or build the CB from SVN source. ( a clean CB, with out APPDATA folder)

2, copy CbLauncher.exe to the folder where codeblocks.exe locates. (suppose in "F:\cb_svn\src\output")

3, run CbLauncher.exe

4, then a "codesnippets.ini" will appeared in "F:\"

Any comments? Very Happy, I will report to Biplab.

Logged

If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.
Pecan
Plugin developer
Lives here!
****
Posts: 1789


« Reply #10 on: June 22, 2009, 12:08:49 am »

On its first run, CodeBlocks is returning an empty string as the config folder location in OnAttach() for plugins.

CodeSnippets will have to look for the APPDATA envar.

I'll work up a fix for CodeSnippets.


« Last Edit: June 22, 2009, 12:12:20 am by Pecan » Logged
kennedyusa058
Newcomer
*
Posts: 1


« Reply #11 on: June 23, 2009, 08:54:46 am »

I am not so knowledgeable about this matter. So i have to learn it. Thanks for the post. Razz

pret auto
Logged
ollydbg
Lives here!
****
Posts: 1484


Interests on OpenCV and Robotics


WWW
« Reply #12 on: June 23, 2009, 11:21:36 am »

On its first run, CodeBlocks is returning an empty string as the config folder location in OnAttach() for plugins.

CodeSnippets will have to look for the APPDATA envar.

I'll work up a fix for CodeSnippets.




Thanks, I have see the fix in trunk.

By the way, I read the code below
Code:
wxString ConfigManager::LocateDataFile(const wxString& filename, int search_dirs)
{
    wxPathList searchPaths;

    // user dirs have precedence
    if (search_dirs & sdPluginsUser)
        searchPaths.Add(GetPluginsFolder(false));
    if (search_dirs & sdScriptsUser)
        searchPaths.Add(GetScriptsFolder(false));
    if (search_dirs & sdDataUser)
        searchPaths.Add(GetDataFolder(false));

    // then we have global dirs
    if (search_dirs & sdPluginsGlobal)
        searchPaths.Add(GetPluginsFolder(true));
    if (search_dirs & sdScriptsGlobal)
        searchPaths.Add(GetScriptsFolder(true));
    if (search_dirs & sdDataGlobal)
        searchPaths.Add(GetDataFolder(true));

    // rest of the dirs
    if (search_dirs & sdCurrent)
        searchPaths.Add(::wxGetCwd());
    if (search_dirs & sdConfig)
        searchPaths.Add(GetConfigFolder());
    if (search_dirs & sdHome)
        searchPaths.Add(GetHomeFolder());
    if (search_dirs & sdBase)
        searchPaths.Add(GetExecutableFolder());
    if (search_dirs & sdTemp)
        searchPaths.Add(GetTempFolder());

    // PATH env. var
    if (search_dirs & sdPath)
        searchPaths.AddEnvList(_T("PATH"));

    return searchPaths.FindValidPath(filename);
}

when CB fails to find the *.conf file at first running, it will return an empty string  Very Happy
Logged

If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.
Pages: [1]
  Send this topic  |  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.11 | SMF © 2006-2009, Simple Machines LLC Valid XHTML 1.0! Valid CSS!