Code::Blocks Forums

User forums => Help => Topic started by: MortenMacFly on October 24, 2005, 10:00:15 am

Title: Multiple windows next to each other
Post by: MortenMacFly on October 24, 2005, 10:00:15 am
Dear community,

sometimes it is helpful (e.g. for comparision) to have 2 code windows next to each other. I don't mean tabs, I really mean to have 2 code windows visible. I currently do it by simply opening another Code::Blocks with the second file and let Windows do the ordering. This is perfectly OK, however: I wonder whether this is possible within Code::Blocks itself. Say: Something like a MDI environment...?!

With regards,

Morten.
Title: Re: Multiple windows next to each other
Post by: mandrav on October 24, 2005, 10:08:09 am
Just a note:
C::B started as MDI but for various reasons the design was changed to SDI (and it's not going back! :)).
Title: Re: Multiple windows next to each other
Post by: MortenMacFly on October 24, 2005, 10:36:09 am
C::B started as MDI but for various reasons the design was changed to SDI [...].
That's interesting! A collegue of mine is thinking of porting a SDI application into MDI (which I believe is quite hard). I would be interested if there are serious drawbacks he might not consider... What were the reason for dropping MDI support? ...wxWidgets related?

Morten.

Ps.: Sorry for asking an off-topic question. If I could change the priority of this thread I would do so to "very low".
Title: Re: Multiple windows next to each other
Post by: squizzz on October 24, 2005, 11:10:13 am
sometimes it is helpful (e.g. for comparision)

For source comparision I suggest software like KDiff3 (http://kdiff3.sourceforge.net/). It's much better for this purpose, because it also visually shows differences.
Title: Re: Multiple windows next to each other
Post by: mandrav on October 24, 2005, 11:17:09 am
What were the reason for dropping MDI support? ...wxWidgets related?

First and foremost, MDI is a windows-only thing. C::B being cross-platform is required not only to work the same across platforms but also to look the same.
Besides that and without going into details, when we were evaluating the change to wx2.6, the MDI windows didn't behave correctly as was the case with wx2.4.
Title: Re: Multiple windows next to each other
Post by: takeshimiya on October 24, 2005, 04:44:58 pm
I was thinking that tabs are good for using in linux and windows. But on Mac OS X its a different thing.
Most OS X applications are windows floating, like Gimp, and most users are used to that.
The tabbing interface isn't well suited for big resolutions (ie. more than 1600x1200).

Is there a way to add an option in wx to choose between tabbed interface or floating interface?
Title: Re: Multiple windows next to each other
Post by: takeshimiya on October 24, 2005, 04:50:02 pm
Too bad, this fact alone is an important reason of why there are *nix programmers that refuse to use an IDE (tabbed interface):

(http://www.rasterman.com/e17/s002.jpg)
Title: Re: Multiple windows next to each other
Post by: MortenMacFly on October 24, 2005, 05:51:19 pm
Too bad, this fact alone is an important reason of why there are *nix programmers that refuse to use an IDE (tabbed interface):
...which I don't understand. What does the picture tell me exactly?!

(Sorry for maybe being stupid.)

Morten.
Title: Re: Multiple windows next to each other
Post by: takeshimiya on October 24, 2005, 06:28:55 pm
:D
Viewing multiple source files at the same time (ie. 8 files), isn't possible in a tabbed interface, but possible in a floating interface, or at least in a 'each file haves a separated window' like the MS Word XP/2003.

That screenshot isn't uncommon between linux programmers with big monitors.

I like the tabbed interface, but sometimes isn't the best option, and other times (ie. Mac OS X) is not an option.
Title: Re: Multiple windows next to each other
Post by: Vampyre_Dark on October 25, 2005, 07:26:56 am
When I need to look at 2, I just drag the .cpp file into notepad. It takes 2 seconds. I have a notepad button programemed on my keyboard, or just hit the winkey + r and type notepad, and there you go.  takeshimiya, what is with the funny window titlebar names? :lol: What gui is your os running too?

Title: Re: Multiple windows next to each other
Post by: MortenMacFly on October 25, 2005, 07:50:17 am
Now I got the point.

I like the drag-and-drop idea of Vampyre_Dark. Hence - how do you do drag-and-drop? It seems not possible in my version of Code::Blocks...?!

However - I "found out" another quite simple way to open another window: The tools menu. I've just added notepad and wordpad (for *nix files) to it and used ${ACTIVE_EDITOR_FILENAME} as parameter. This way I don't even need drag-and-drop.

And another nice feature came into my mind: To extend the right-mouse-click menu on a file with an "open with..." command. There the entries from the tools menu should apear and something like "choose..." which opens a file explorer and lets you select a tool to open this specific file with. I am going to post this on SourceForge, maybe you like the idea as well.

With regards,

Morten.
Title: Re: Multiple windows next to each other
Post by: Vampyre_Dark on October 25, 2005, 07:59:23 am
I said I drag and drop into notepad!

If you want to frag a file into C::B you need to drag it into the code window ouptut at the bottom (messages I think it's called).


edit - frag a file? :lol:
Title: Re: Multiple windows next to each other
Post by: MortenMacFly on October 25, 2005, 08:03:17 am
I said I drag and drop into notepad!
Yes, I understood. But from where within Code::Blocks do you drag? It doesn't work for me at least from the project explorer and/or the opened file tabs...?!  :(
Title: Re: Multiple windows next to each other
Post by: Vampyre_Dark on October 25, 2005, 08:07:28 am
I said I drag and drop into notepad!
Yes, I understood. But from where within Code::Blocks do you drag? It doesn't work for me at least from the project explorer and/or the opened file tabs...?!  :(
Oops. I meant I drag the icon of the file itself from my code folder. Sorry. :lol:
Title: Re: Multiple windows next to each other
Post by: takeshimiya on October 25, 2005, 08:10:19 am
takeshimiya, what is with the funny window titlebar names? :lol: What gui is your os running too?

Ah, those, :D it's a screenshot of the desktop of a developer of enlightment DR17 (http://www.enlightenment.org/Enlightenment/DR17/index.html), the best window manager and desktop shell for linux (IMHO).
It's the future of window managers, only rivaled by Mac OS X.

If anyone wants to try it, there is a distro that haves an excellent selection of software and everything configured to use DR17. Its called e-live cd (http://www.elivecd.org/).

Everyone that have tried e-live has been surprised, it's amazing, I have no doubts it's the future!

(http://enlightenment.org/Enlightenment/Screenshots/DR17_Screenshots/_images/e17-28_jpg_preview.jpeg)

(http://enlightenment.org/Enlightenment/Screenshots/DR17_User_Screenshots/_images/vandango_e17_screen_png_preview.jpeg)
Title: Re: Multiple windows next to each other
Post by: Vampyre_Dark on October 25, 2005, 08:14:47 am
I always liked the look of KDE. I had a mandrake installation once and I fool around with knoppix at times. Too bad there is no good software (for me) in linux land. Does that distro really fit on 1 CD, or do I need a DVD burner?
Title: Re: Multiple windows next to each other
Post by: takeshimiya on October 25, 2005, 08:17:47 am
It's only 1 CD. KDE looks like an old windows 95 when compared to E17. :P

It's based on debian, and it's a live cd, so you can start to say good-bye to knoppix, no joke.


We got a little off-topic here, but oh well.
I only wanted to remember that the tabbed interface isn't always the best solution (like MDI in the past wasn't always the best solution).

But I think this should come from wxWidgets itself, right?
Title: Re: Multiple windows next to each other
Post by: thomas on October 25, 2005, 09:07:27 am
The tabbing interface isn't well suited for big resolutions (ie. more than 1600x1200).
Well, at 2560x1024, tabbed interface is quite usable. I do that every day. :lol:

Like everything, tabbed interface is a matter of getting used to it. When I first saw a tabbed interface in Firefox, I did not like it. I was used to have 15 browser windows on the screen, and the tabs seemed to be the most unnecessary thing in the world. Today, I use programs that have tabbed interface in preference to others, in particular because to this feature. It is such an awful lot easier to use, and keeps everything neatly arranged.
True, you can only view one source at a time, and this can be disturbing in some occasions, but well... like it's been said - one can always launch another editor :)
Title: Re: Multiple windows next to each other
Post by: MortenMacFly on October 25, 2005, 09:46:39 am
True, you can only view one source at a time, and this can be disturbing in some occasions, but well... like it's been said - one can always launch another editor :)
I fully agree. What is very helpful as well is switching between the tabs using the shortcuts [CTRL]+[TAB] (forwards) and [CTRL]+[SHIFT]+[TAB] (backwards). This is possible in Code::Blocks as well... Great!  :P
Title: Re: Multiple windows next to each other
Post by: takeshimiya on October 25, 2005, 10:14:15 am
True, you can only view one source at a time, and this can be disturbing in some occasions, but well... like it's been said - one can always launch another editor :)

Yes, I like tabs also, but there are occasions of where tabs aren't appropiated, for example what if you want to see 5 files at the same time inside C::B (ie. 2 source code, 1 xml and 2 wxSmith resource windows). With tabbed interface it can't be done -at the same time-.

But regarding this, it's not THAT important in windows/linux, because any application do whatever they want. But on OS X the floating windows are the standard, and the users of that OS are used to that. Like they are used that a Maximize button doesn't exist. The entire concept maximizing doesn't exist, you can't maximize a window.

The functionality (and options to choose from tabbed, mdi, or floating) should come from the docking library or from wxWidgets.