Lol, don't get a wrong idea because I say something opposing every time you come up with something. :lol:
Dialogs should open on the same monitor as Code::Blocks is currently displayed on.
This is very much a matter of taste, and in my opinion not generally true.
It depends how you use your secondary monitor, and on the size of your monitors. I often send a program to the secondary screen when working with two apps (that may even be two instances of Code::Blocks), but I expect message boxes and dialogs to open on the primary screen.
This has a simple biological reason. The main screen is within the central 30° of my field of view, but the secondary screen in the peripheral field. Objects in the peripheral field are not seen as good as the ones in the central field, obviously, so you have to look aside or turn your head.