Im currently running a Linux From Scratch Based System I compiled and its running wx 2.6.3
and gcc 4.0.3
I was reading around about possible reasons for the image list stuff since I thought it erroring might of been the cause of the slow down.
In one of the post it said the UpdateUI needed cleaned up, so I commented out all the events in the src/src/main.cpp and slowly uncommented sections.
like I thought it only hit a massive slow down when the plugins events were added. so I figured it must be one of the plugins.
with all the events back on I went into the plugin manager and disabled a couple and when I got to the compiler which is right now 0.99
everything stopped lagging up. re-enabled all the other plugins and still no lag re-enabled compiler lag back dissabled lag gone..
from what I can tell is the compiler is the only one that adds its own tool bars and im guessing it has its own events that might lap over the main windows events or something like that.
and when one updates its self the other does and it keeps looping.
This is only a guess right now on the possible cause of the two reacting to each other. im going to dig deeper.
Edit: I found the source of the massive slow downs and cpu peeks.. not sure what to do with it right now though.
in file: src/plugins/compilergcc.cpp
the events that have to do with menu handling if any are added they add a little bit of slow down certain ones add more then others but if you have a good set of them on
you get the massive slow down.
Edit2:
EVT_UPDATE_UI(idMenuCompile, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuCompileTarget, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuCompileFromProjectManager, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuProjectCompilerOptions, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuTargetCompilerOptions, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuTargetCompilerOptionsSub, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuCompileFile, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuCompileFileFromProjectManager, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuRebuild, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuRebuildTarget, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuRebuildFromProjectManager, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuCompileAll, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuRebuildAll, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuClean, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuCleanAll, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuCleanTarget, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuCleanFromProjectManager, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuCompileAndRun, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuRun, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuKillProcess, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuSelectTarget, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuNextError, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuPreviousError, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuClearErrors, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuExportMakefile, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idMenuSettings, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idToolTarget, CompilerGCC::OnUpdateUI)
EVT_UPDATE_UI(idToolTargetLabel, CompilerGCC::OnUpdateUI)
as you will notice all of these point to CompilerGCC::OnUpdateUI
when i commented out all of this function except the skip event and turned back on all the events the system had no cpu spikes.. so this is most likely where
the trimming needs done.. or some function that is used inside of this is using to many cycles like the project code or something.. will dig deeper.
Edit3: I found the exact line causing the problem now.
line: 3114
in file: src/plugins/compilergcc.cpp
3113 // Project menu
3114 mbar->Enable(idMenuProjectCompilerOptions, !running && prj);
if you comment this out the program has no real cpu spikes. since im running dual core system it only spikes up to 60% but if i had a single core it would be 100%
since im new to this code im not exactly sure why this one line causes the problem but I know it does. I would love if someone could tell me.
but if they cant I will look into it more.
btw if i didnt mention it yet the svn is 3780
on a side not if you actually click build options, i waited about two minutes and the dialog finally poped up. the about another 30 seconds and the option screen was finally showing.
in the current state the option screen is useless since you are not ever really able to select any options. or anything.
for testing i tryed both with the code as i pointed out being the problem commented and un commented and same results..
build options is broken at least if i have a project or not. side not the project was a empty type not sure if this matters.