Developer forums (C::B DEVELOPMENT STRICTLY!) > Development

Modified & Improved wxWidgets Project Wizard

<< < (15/41) > >>

raph:

--- Quote from: Biplab on January 25, 2007, 10:52:07 am ---Despite the release of 6 revisions, I've received very few feedbacks. Thus I've decided to add a Poll in this thread. Please rate it if you have tested it. That would help us improving it further. Thanks in advance for your time.  :)

--- End quote ---
Hi Biplab,

you are doing a realy great job here  :D
I'm using your Wizard a lot.

Before my codeblocks time, I was using MsVisual C++ 6.0 which had a (in my opinion) pretty nice wizard.
Here are some ideas:
* I would add an option to customize wx's lib filenames and paths since mine (compiled using msys) are different to the default ones. So I have to accept the error message, change the library names and modify the directories. This can make starting with wx very hard for beginners.

* Being able to choose between different presets or even better, the wizard could try to autodetect the available configuration.

* More options how the default application should look like. Following features would be nice:

* Being able to choose from different application types e.g.:

* a completely empty project (so the wizard would just set up the project options)
* an empty project with just a wxApp derived class
* app with wxDialog
* app with wxFrame
* customize window:

* title
* menu
* toolbar
* statusbar
* style
* (optionally) add a default icon (cb-icon? :)), so user will just have to edit this icon. I remember all those apps out there, coming with the default blue Microsoft MFC-icon (sometimes even "professional" software) :lol:
* being able to customize the name of the created classes and filenames!!
Wow, that would boost the number of codeblocks and wxwidgets users 8)
Keep on the good work

best regards
raph

Biplab:

--- Quote from: raph on January 25, 2007, 02:06:02 pm ---Hi Biplab,

you are doing a realy great job here  :D
I'm using your Wizard a lot.
--- End quote ---

Thanks for your feedback.  :D

Regarding your suggestions, I would answer them one by one.


--- Quote from: raph on January 25, 2007, 02:06:02 pm ---I would add an option to customize wx's lib filenames and paths since mine (compiled using msys) are different to the default ones. So I have to accept the error message, change the library names and modify the directories. This can make starting with wx very hard for beginners.

--- End quote ---
I have never used MSYS and wxWidgets together. So I've to figure out this one. But can you give me an idea about any advantage of using MSYS in windows? I compile wx with GCC without using MSYS.


--- Quote from: raph on January 25, 2007, 02:06:02 pm ---Being able to choose between different presets or even better, the wizard could try to autodetect the available configuration.
--- End quote ---
Using presets is a Good Idea. But the sheer amount of combination can be confusing. Autodetection of config is difficult, but can be implemented somehow.


--- Quote from: raph on January 25, 2007, 02:06:02 pm ---Being able to choose from different application types e.g.:

* a completely empty project (so the wizard would just set up the project options)
* an empty project with just a wxApp derived class
* app with wxDialog
* app with wxFrame
--- End quote ---
Can be done. But honestly I need to know how to instruct wizard to copy the required set of files. :)


--- Quote from: raph on January 25, 2007, 02:06:02 pm ---customize window:

* title
* menu
* toolbar
* statusbar
* style
--- End quote ---
May not be possible. To do this with C::B, wizard has to set few additional preprocessor directives which would make your project clumsy.


--- Quote from: raph on January 25, 2007, 02:06:02 pm ---(optionally) add a default icon (cb-icon? :)), so user will just have to edit this icon. I remember all those apps out there, coming with the default blue Microsoft MFC-icon (sometimes even "professional" software) :lol:

--- End quote ---
Icons will work in Windows, but not in Linux. So they are excluded to avoid clashes in Linux.


--- Quote from: raph on January 25, 2007, 02:06:02 pm ---being able to customize the name of the created classes and filenames!!
--- End quote ---
Not possible at the moment.

In last 3 answers I've expressed that they are not possible or can't be implemented. C::B's scripting system does not parse the source files for tags using which you can control the output of wizard (You can do this in MSVC IDE). C::B basically copies the files. Thus the last 3 suggestions may not feasible now.

Regards,

Biplab

raph:
Hi,

I didn't know that the wizards are scripted. Squirrel? Never heard of it :shock:
I just had a quick look, but I think you are right, the possibilities currently are very limited  :?


--- Quote from: Biplab on January 25, 2007, 05:23:52 pm ---I have never used MSYS and wxWidgets together. So I've to figure out this one. But can you give me an idea about any advantage of using MSYS in windows? I compile wx with GCC without using MSYS.
--- End quote ---
You don't have to setup any paths  :D. Seriously, as people have the choice, they will always decide differently.


--- Quote from: Biplab on January 25, 2007, 05:23:52 pm ---Using presets is a Good Idea. But the sheer amount of combination can be confusing. Auto detection of config is difficult, but can be implemented somehow.

--- End quote ---
Maybe add some presets like (wxPack, mingw32-make, msys). Auto detection will require some work.


--- Quote from: Biplab on January 25, 2007, 05:23:52 pm ---Can be done. But honestly I need to know how to instruct wizard to copy the required set of files. :)

--- End quote ---
After a quick look on your script, I think GetFilesDir() returns the directories containing the files.
So you would have to add a directory for every possibility. I hate redundant data :?


--- Quote from: Biplab on January 25, 2007, 05:23:52 pm ---May not be possible. To do this with C::B, wizard has to set few additional preprocessor directives which would make your project clumsy.

--- End quote ---
Solving this with preprocessor directives surely is the wrong way. What we would need is the possibility of modifying the generated sourcefiles. Creating a temp directory, copying the files there, modifying them, let codeblocks copy them to the project dir and deleting the temp dir would be a alternative, but implementing this cross-platform is very hard.
The easiest and cleanest way would be codeblocks providing something like a callback function with the source filename and content as parameter allowing the wizard developers to modify them with string manipulation.


--- Quote from: Biplab on January 25, 2007, 05:23:52 pm ---Icons will work in Windows, but not in Linux. So they are excluded to avoid clashes in Linux.

--- End quote ---
Then make it a Windows feature only. I think there are enough win developers out there that the "wow, that was easy" effect would be pay off :D


--- Quote from: Biplab on January 25, 2007, 05:23:52 pm ---
--- Quote from: raph on January 25, 2007, 02:06:02 pm ---being able to customize the name of the created classes and filenames!!
--- End quote ---
Not possible at the moment.

--- End quote ---
Would be possible with the callback function (see above).

I haven't ever looked at cb's source, but I think implementing this callback feature would be just a few lines.
This would greatly enhance the wizards possibilities, wouldn't it?

Waiting for your opinions
raph

mandrav:

--- Quote from: raph on January 26, 2007, 03:13:18 pm ---I didn't know that the wizards are scripted. Squirrel? Never heard of it :shock:
I just had a quick look, but I think you are right, the possibilities currently are very limited  :?

--- End quote ---

Until now you didn't even know that wizards are script-driven and now you already think they 're too limited.
Let me tell you something: you don't even know what a script is capable of. And until you do, please refrain from criticizing other people's work.

I love it when someone who has no clue on how something works, has already an opinion on it...

Biplab:
Hi raph,

Thanks for your post.  :)


--- Quote from: raph on January 26, 2007, 03:13:18 pm ---You don't have to setup any paths  :D. Seriously, as people have the choice, they will always decide differently.
--- End quote ---
I understand your point. But to support MSYS, the code overhead will be high. I've noticed that the naming convention of resulting wx libraries and directories are different from what is being used for other compilers in Windows or when you are using makefile to compile wx libs using GCC. Another point to remember that the automatic path setup depends upon a shell script which is not independent to execute.


--- Quote from: raph on January 26, 2007, 03:13:18 pm ---Maybe add some presets like (wxPack, mingw32-make, msys). Auto detection will require some work.
--- End quote ---
wxPack comes with a lot of combinations. Which one should be made the Default One? IMHO, Putting 4 Checkboxes (Debug/Release; Static/Dynamic; ANSI/Unicode; Multi-lib/Monolithic) will be helpful to users rather than putting 16 options in a combo.


--- Quote from: raph on January 26, 2007, 03:13:18 pm ---After a quick look on your script, I think GetFilesDir() returns the directories containing the files.
So you would have to add a directory for every possibility. I hate redundant data :?
--- End quote ---
Thanks for pointing this. I'll play with it.  :)


--- Quote from: raph on January 26, 2007, 03:13:18 pm ---Solving this with preprocessor directives surely is the wrong way. What we would need is the possibility of modifying the generated sourcefiles. Creating a temp directory, copying the files there, modifying them, let codeblocks copy them to the project dir and deleting the temp dir would be a alternative, but implementing this cross-platform is very hard.
The easiest and cleanest way would be codeblocks providing something like a callback function with the source filename and content as parameter allowing the wizard developers to modify them with string manipulation.
--- End quote ---
I think you should put a feature request, expressing your idea on how to do that. C::B devs will surely listen to you.


--- Quote from: raph on January 26, 2007, 03:13:18 pm ---Then make it a Windows feature only. I think there are enough win developers out there that the "wow, that was easy" effect would be pay off :D

--- End quote ---
I've added it in my to-do list. Will try to come up with it.  :)

Regards,

Biplab

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version