I've created a plugin wich adds wxAui items to wxSmith.
Current version: 0.8.1 (Mar 9, 2009)
* Succesfully tested on Ubuntu 8.04.1 and Windows Vista, both 64bit versions. I think that it can be released as stable version now.
* Unlikely other codeblocks plugins, and codeblocks itself, I didn't make different project for Windows and Linux, just one project with two targets.
Current status:
* wxAuiNotebook support:
* Based on wxNotebook for wxSmith written by byo, with little adaptation changes.
* Complete support for wxAuiNotebook styles and events.
* Page creation, administration and preview similar (or even equal) to byo's wxNotebook.
* Icon per tab.
* wxAuiManager support:
* Originally based on Sizers for wxSmith, it creates a parent wxPanel were AuiPanes are put. When no panes in the wxAuiManager, it draws a green line in the border or the parent wxPanel.
* wxAuiPaneInfo is not a separated widget for wxSmith, it is implemented as properties of the child panes.
* Implemented pane features (most of them accesible from quick properties panel):
* Pane name. Destroy on close or not.
* Standard pane positions (default, center and toolbar) support.
* Docking and dockable positions. Dock fixed or resizable.
* Layer, row and position.
* Docked or floating. Floating preview is not available inside Code::Blocks. Only clicking the preview button.
* BestSize, MinSize and MaxSize. Fixed or resizable.
* Floating size and position.
* Caption and caption buttons. Visible or not. A check box for minimize button is available, and it creates the proper function, but it don't work because it not implemented in wxWidgets yet.
* Pane visibility. It is alwais shown in preview inside Code::Blocks.
* Gripper visibility and position.
* Pane border visibility.
* By now, these properties are put at the top of the widget properties in the property explorer, but that will probably be changed.
* wxAuiToolBar support with real preview inside Code::Blocks.
* Any wxControl derived class can be added to wxAuiToolBar, except itself (I see this have no sense, but it can be added in the future, specially if someone claims for it).
* wxAuiToolBarItems that can be added separately:
* Item: wxITEM_NORMAL and wxITEM_CHECK. There is only one event supported by these at this moment: wxEVT_COMMAND_TOOL_CLICKED. More can arrive in future releases. These are separated for the other, because the other don't need most properties and I see that it is more easy and intuitive to work with these various items.
* Separator: wxITEM_SEPARATOR.
* Label: wxITEM_LABEL. Default width can be chosen, but don't work so good, at least in linux, so you have to specify the width manually or use an wxStaticText instead.
* Spacer: wxITEM_SPACER. Size can be select as width (in pixels) or proportional, but proportional result in a zero-sized spacer right now.
I attach the source code of the plugin. If you download and test it, please report any impression/bug/suggestion that you may see.
By the way, I want to submit this plugin to the contrib section, if dev's allow me to do that. ;)
For a very good IDE,
Ganbito.
Edit: If you want to download the source code of this plugin, just check out codeblocks svn and go to the contrib section :).
Quote from: Ganbito on January 22, 2009, 07:05:32 PM
I've created a plugin wich adds wxAui items to wxSmith.
Looks awesome. Guess what: I am still using the "plain" wxNotebook in a project of mine due to the lack of wxAui support in wxSmith. I think these days are gone. I played around with this a little - very nice!!!
Cooool we need in a full set of wx controls in wxSmith. Say the trues Code::Clocks is not enough successfull due to it dosn't have a wide paletter of controls and good export to makefiles. All other problems are minor.
Full set of Data Base controls, with interactivity similar to Borland's will bring lot of users, especialy students. Just whatch on to the borland, what they are doing. They made only one mistake they don't have strong support of cossplatform development.
Wow, great contribution. I wanted to do such stuff myself but it looks like it's not necessary now :)
Maybe tomorrow if I'll have some time I'll take a look into it. I must confess hat I'd like to see this feature in the trunk code - Ganbito what do you think about that ?
Regards
BYO
PS. Grom: Please don't spam. Write extensions yourself or keep quiet. You don't have to repeat yourself over and over again. No, Code::Blocks is great even right now. It doesn't have to compete with anything nor rapidly expand. If you don't understand this you don't understand free software.
Thank you for your comments. I make this plugin because I'm working with wxAui classes in a project of mine but I don't want to manage them with code only.
wxAuiToolBar seems a bit difficult to integrate, but I'm sure that it can be done.
Quote from: byo on January 23, 2009, 08:13:12 PM
I must confess hat I'd like to see this feature in the trunk code - Ganbito what do you think about that ?
Yes, this post is a the first step of making the plugin available to codeblocks users, what I really want is to submit it to the trunk. If you review my first post:
Quote from: Ganbito on January 22, 2009, 07:05:32 PM
By the way, I want to submit this plugin to the contrib section, if dev's allow me to do that. ;)
Quote from: Ganbito on January 23, 2009, 10:04:17 PM
Yes, this post is a the first step of making the plugin available to codeblocks users, what I really want is to submit it to the trunk. If you review my first post:
I thought rather about integrating the code into wxSmith plugin - in such case anybody havinf wxSmith plugin will also have wxAUI enabled.
But when thought about this a little bit maybe the plugin is not so god idea - it may be easier to maintain it for you.
Regards
BYO
Quote from: byo on January 24, 2009, 11:30:06 AM
I thought rather about integrating the code into wxSmith plugin - in such case anybody havinf wxSmith plugin will also have wxAUI enabled.
But when thought about this a little bit maybe the plugin is not so god idea - it may be easier to maintain it for you.
Well, I thought about it when I start the plugin and I also think that wxAui support will be best inside wxSmith plugin. But you also catch the problem: I want to maintain the code by myself, not with patchs posted in this forum, especially since the plugin is not yet complete.
Edit: Obviously, if dev's don't allow me to submit the plugin to the svn server, integrating it into wxSmith will be the best solution.
First I want to say that this plugin (or whatever it'll be) is very nice!
I played arround a little and found it very usefull!
Sadly i too found some bugs (or it's just my incompetency?)
Generally: When i undock a pane i can't dock them on again
Edit: i've now realized that in the Option 'Aui Dockable' the Option 'Dockable(All)'
isn't working, instead i must select all componets seperate!
Could it be that in wxAuiManager\wxsAuiPaneInfoProperty.cpp line: 44 it should be
"PGC1.Add(_("Dockable (All)"), DockableAll);" instead of
"PGC1.Add(_("Dockable (All)"), Dockable);"
wxAuiNotebook: 1) I can't select the wxAuiNotebook in the Editor
2) I can't change to another page by clicking on the tab
3) If i turn on the option 'AUI Resizable' i can't
change anymore the size of the wxAuiNotebook in
the editor!
Greets GeO
PS: Sorry for my bad english, if you found any mistake
pls correct them, so i can learn from my mistakes!
Quote from: GeO on January 24, 2009, 05:30:46 PM
Generally: When i undock a pane i can't dock them on again
That is because you don't select any "Dockable" option. By now, "Dock direction" and "Dockable" options are independent, I will make that when you choose a "Dock direction", the right "Dockable" option gets checked automatically. For "Center", it will be "Dockable (All)".
Quote from: GeO on January 24, 2009, 05:30:46 PM
Edit: i've now realized that in the Option 'Aui Dockable' the Option 'Dockable(All)'
isn't working, instead i must select all componets seperate!
Could it be that in wxAuiManager\wxsAuiPaneInfoProperty.cpp line: 44 it should be
"PGC1.Add(_("Dockable (All)"), DockableAll);" instead of
"PGC1.Add(_("Dockable (All)"), Dockable);"
I've have tested this a lot of times, and it work well for me.
I've also tried that change you suggest but, as the wxPGChoices work, the result is not the desired. Try it and you will see that I mean.
Code for make it working is in "PGRead" and "PGWrite" methods in the same file.
Quote from: GeO on January 24, 2009, 05:30:46 PM
wxAuiNotebook: 1) I can't select the wxAuiNotebook in the Editor
2) I can't change to another page by clicking on the tab
I'll try to fix them.
Quote from: GeO on January 24, 2009, 05:30:46 PM
3) If i turn on the option 'AUI Resizable' i can't
change anymore the size of the wxAuiNotebook in
the editor!
It is not really a bug of wxSmithAui, it is just how wxAuiManager works.
I have tested using widget's size properties as paneinfo size properties, and I decided to separate them. But, if it is preferred by codeblocks users, I can join them in this way:
Widget --> wxAuiPaneInfo
Size --> BestSize
MinSize --> MinSize
MaxSize --> MaxSize
What do you think?
Quote from: Ganbito on January 24, 2009, 06:47:08 PM
Quote from: GeO on January 24, 2009, 05:30:46 PM
Generally: When i undock a pane i can't dock them on again
That is because you don't select any "Dockable" option. By now, "Dock direction" and "Dockable" options are independent, I will make that when you choose a "Dock direction", the right "Dockable" option gets checked automatically. For "Center", it will be "Dockable (All)".
I understand this, but i can't see any difference in the code if I check "Dockable (All)" or if I let unchecked all options!
Quote from: Ganbito on January 24, 2009, 06:47:08 PM
It is not really a bug of wxSmithAui, it is just how wxAuiManager works.
I have tested using widget's size properties as paneinfo size properties, and I decided to separate them. But, if it is preferred by codeblocks users, I can join them in this way:
Widget --> wxAuiPaneInfo
Size --> BestSize
MinSize --> MinSize
MaxSize --> MaxSize
What do you think?
I think it would be better to join them, because the separation of them brings alot of confusion.
Greets GeO
Updated to version 0.6.1 beta. Mainly a bug fix release. More to come.
ADDED: Standard pane type support. When you change the standard pane type, it change the needed properties to match the standard pane type you selected. If you change any other property later, standard pane type don't change, but you get the change on the result.
Quote from: GeO on January 24, 2009, 05:30:46 PM
Generally: When i undock a pane i can't dock them on again
FIXED: I misunderstood you because it works if not all were checked.
Quote from: GeO on January 24, 2009, 05:30:46 PM
wxAuiNotebook: 1) I can't select the wxAuiNotebook in the Editor
2) I can't change to another page by clicking on the tab
FIXED: Problem was the HitTest method on wxAuiNotebook, that don't work ok. I've reimplemented that method.
Quote from: GeO on January 24, 2009, 05:30:46 PM
3) If i turn on the option 'AUI Resizable' i can't
change anymore the size of the wxAuiNotebook in
the editor!
FIXED.
I would love to try this plugin, it exactly duplicates what I want to do create a wxaui application in codeblocks. Unfortunately I'm new to codeblocks and am having trouble finding instructions on how to install a plugin from source. So far I've tried opening wxSmithAui.cbp I was asked to define the following vars (I have no idea what the correct values should be or if I'm going down the right path) wxsmith, wxpropgrid.
A little guidance would be helpful.
Quote from: Ganbito on February 01, 2009, 06:35:50 PM
Updated to version 0.6.1 beta. Mainly a bug fix release. More to come.
Taking the risk of repeating myself: That is a
very nice contribution, really!
Quote from: lifeofgary on February 01, 2009, 07:41:08 PM
I was asked to define the following vars (I have no idea what the correct values should be or if I'm going down the right path) wxsmith, wxpropgrid.
Just make two new global variables one for wxsmith with the path to wxsmith
("Path\to\the\c::b\source"\src\plugins\contrib\wxSmith)
and another one for wxpropgrid ("Path\to\the\c::b\source"\src\plugins\contrib\wxSmith\propgrid\contrib)
GeO
Thank you Geo! I will try this.
Updated to version: 0.6.2 beta.
FIXED: Non standard properties generation when a standard pane type is selected.
To download the plugin: go to the first post on this topic.
Is there still a bug in this plugin, because it should call the UnInit() method of wxAuiManager before destroying it, in code and preview generation.
I've searched a lot for it, but I didn't see how to make it with the functions that wxSmith provide me.
Are these implemented and I missed them (please guide me to the methods/classes where I can find it) or it is necessary to modify something in wxSmith to allow this "todo before destroy"?
P.S.: wxAuiToolBar works well with all type of controls in my working copy, now I going to implement wxAuiToolBarItems.
Quote from: Ganbito on February 06, 2009, 01:20:57 AM
Is there still a bug in this plugin, because it should call the UnInit() method of wxAuiManager before destroying it, in code and preview generation.
I've searched a lot for it, but I didn't see how to make it with the functions that wxSmith provide me.
Are these implemented and I missed them (please guide me to the methods/classes where I can find it) or it is necessary to modify something in wxSmith to allow this "todo before destroy"?
P.S.: wxAuiToolBar works well with all type of controls in my working copy, now I going to implement wxAuiToolBarItems.
Right now there's no such functionality. You can try to workaround this by connection to EVT_CLOSE event but I don't know whether it will work.
Regards
BYO
I'm having problems with AuiToolBarItems. These items shouldn't have a variable declaration, so I'm not sending flVariable to the Constructor.
For example, this is the code of the constructor of an separator (which have no styles, no events and no properties):
namespace
{
#include "../images/wxsAuiToolBarSeparator16.xpm"
#include "../images/wxsAuiToolBarSeparator32.xpm"
wxsRegisterItem<wxsAuiToolBarSeparator> Reg(
_T("wxAuiToolBarSeparator"), // Class name
wxsTWidget, // Item type
_T("wxWindows"), // License
_T("Benjamin I. Williams"), // Author
_T(""), // Author's email
_T(""), // Item's homepage
_T("Aui"), // Category in palette
10, // Priority in palette
_T("AuiToolBarSeparator"), // Base part of names for new items
wxsCPP, // List of coding languages supported by this item
2, 8, // Version
wxBitmap(wxsAuiToolBarSeparator32_xpm), // 32x32 bitmap
wxBitmap(wxsAuiToolBarSeparator16_xpm), // 16x16 bitmap
false);
long flAuiToolBarSeparator = flVariable;
}
wxsAuiToolBarSeparator::wxsAuiToolBarSeparator(wxsItemResData* Data):
wxsItem(Data,&Reg.Info,0,0,0)
{}
With this, I get no properties in the property editor, but this code is created in the declaration section:
wxAuiToolBarSeparator* ;
I'm watching wxSmith code, specially wxsToolBarItem's code and I can't see what I'm doing wrong. Any idea?
By now, wxsAuiToolBar and wxsAuiToolBarItems are not derived from wxsTool. I'm deriving wxsAuiToolBar from wxsContainer. Should I swith to wxsTool? Can it help with this?
This looks like it might be a problem with wxSmith not handling flVariable properly (BYO?); but there is an easy work-around. Override the declarations code with your own version of OnBuildDeclarationsCode, and make the declarations in there that you want (you might just want it to be empty).
Ringo
Thanks, rcoll, that was what I need.
I hope to upload an update in the next days.
Quote from: byo on February 07, 2009, 01:21:29 AM
Right now there's no such functionality. You can try to workaround this by connection to EVT_CLOSE event but I don't know whether it will work.
I've tried this, but only works with Exact preview, inside C::B don't. :?
Quote from: Ganbito on February 13, 2009, 09:57:05 PM
Quote from: byo on February 07, 2009, 01:21:29 AM
Right now there's no such functionality. You can try to workaround this by connection to EVT_CLOSE event but I don't know whether it will work.
I've tried this, but only works with Exact preview, inside C::B don't. :?
Here are another "workarounds" which came into my mind, unfortunately I haven't tested them yet. All are based by subclassing the wxAuiManager into new class and:
* Can try to overwrite Destroy() function, it's virtual and used to destroy the window. But from my test projects it's not always called
* Can try to call Uninit in descructor of the class
If this won't work, I'll try to add such feature into wxSmith.
Regards
BYO
Sorry, I get the solution using EVT_DESTROY but I forget posting it.
But I still don't know how to generate the code in the destruction section, so I'll wait for this feature... when you can add it.
I'm not happy to write this :(, but i found another bug:
if i click on a wxAuiNotebook that haven't any pages Cb crashs
greetings GeO
Quote from: GeO on February 21, 2009, 02:03:22 PM
I'm not happy to write this :(, but i found another bug:
if i click on a wxAuiNotebook that haven't any pages Cb crashs
greetings GeO
Confirmed. I'll solve it for the next release (0.8.0) wich is coming soon (this weekend or at the beginning of the next week). With this release will come wxAuiToolBar support (with real preview) wich is almost implemented.
Updated to version 0.8.0 beta. Sorry for the delay, I was really busy this week.
FIXED: Code::Blocks crash when click on wxAuiNotebook preview and it has no pages. (Thans GeO for your reports).
ADDED: wxAuiToolBar support with real preview inside Code::Blocks.
* Any wxControl derived class can be added to wxAuiToolBar, except itself (I see this have no sense, but it can be added in the future, specially if someone claims for it).
* wxAuiToolBarItems that can be added separately:
* Item: wxITEM_NORMAL and wxITEM_CHECK. There is only one event supported by these at this moment: wxEVT_COMMAND_TOOL_CLICKED. More can arrive in future releases. These are separated for the other, because the other don't need most properties and I see that it is more easy and intuitive to work with these various items.
* Separator: wxITEM_SEPARATOR.
* Label: wxITEM_LABEL. Default width can be chosen, but don't work so good, at least in linux, so you have to specify the width manually or use an wxStaticText instead.
* Spacer: wxITEM_SPACER. Size can be select as width (in pixels) or proportional, but proportional result in a zero-sized spacer right now.
Pictures for the added items are basically taken from wxSmith and little modified.
Basic wxAui features are implemented. By the way, I have other projects that need my attention, so this will be the last release for a long time with the exception of bug-fix releases.
Byo: As the primary developement stage has ended, I think that this can now be added to wxSmith, because following updates can be easily submitted as patches. I can try to do this, but I need you solve me a pair of questions:
* It is a problem for you that I use CamelCase instead of the smallcase wich all wxSmith is written?
* It is acceptable to put the wxSmithAui with its actual directory layout inside wxSmith (.../wxSmith/wxwidgets/defitems/wxAui/[wxSmithAui source] and .../wxSmith/wxwidgets/icons/wxAui/[wxSmithAui icons])?
If the answer to both is "yes", I can try to fix the #includes and attach the result so you can add it to trunk.
To download the plugin: go to the first post on this topic.
i can't compile it :(
........
/home/psyhlo/Desktop/downloads/wxSmithAui/wxAuiManager/wxsAuiManager.cpp||In member function ‘virtual wxObject* wxsAuiManager::OnBuildPreview(wxWindow*, long int)’:|
/home/psyhlo/Desktop/downloads/wxSmithAui/wxAuiManager/wxsAuiManager.cpp|564|error: ‘wxAuiToolBar’ was not declared in this scope|
/home/psyhlo/Desktop/downloads/wxSmithAui/wxAuiManager/wxsAuiManager.cpp|564|error: ‘ChildAsToolBar’ was not declared in this scope|
/home/psyhlo/Desktop/downloads/wxSmithAui/wxAuiManager/wxsAuiManager.cpp|564|error: expected primary-expression before ‘)’ token|
/home/psyhlo/Desktop/downloads/wxSmithAui/wxAuiManager/wxsAuiManager.cpp|564|error: expected `)' before ‘wxCheckDynamicCast’|
/home/psyhlo/Desktop/downloads/wxSmithAui/wxAuiManager/wxsAuiManager.cpp||In member function ‘virtual void wxsAuiManager::OnAddChildQPP(wxsItem*, wxsAdvQPP*)’:|
/home/psyhlo/Desktop/downloads/wxSmithAui/wxAuiManager/wxsAuiManager.cpp|669|error: ‘wxAuiToolBar’ was not declared in this scope|
/home/psyhlo/Desktop/downloads/wxSmithAui/wxAuiManager/wxsAuiManager.cpp|669|error: expected primary-expression before ‘)’ token|
/home/psyhlo/Desktop/downloads/wxSmithAui/wxAuiManager/wxsAuiManager.cpp|669|error: expected `)' before ‘wxCheckDynamicCast’|
/home/psyhlo/Desktop/downloads/wxSmithAui/wxAuiManager/wxsAuiManager.cpp|684|error: expected `)' before ‘}’ token|
/home/psyhlo/Desktop/downloads/wxSmithAui/wxAuiManager/wxsAuiManager.cpp|684|error: expected primary-expression before ‘}’ token|
/home/psyhlo/Desktop/downloads/wxSmithAui/wxAuiManager/wxsAuiManager.cpp|684|error: expected `;' before ‘}’ token|
||=== Build finished: 10 errors, 58 warnings ===|
and after some tweaking :) this
........
/home/psyhlo/Desktop/downloads/wxSmithAui/wxAuiManager/wxsAuiManager.cpp||In member function ‘virtual wxObject* wxsAuiManager::OnBuildPreview(wxWindow*, long int)’:|
/home/psyhlo/Desktop/downloads/wxSmithAui/wxAuiManager/wxsAuiManager.cpp|564|error: invalid static_cast from type ‘wxWindow*’ to type ‘const wxsAuiToolBar*’|
/home/psyhlo/Desktop/downloads/wxSmithAui/wxAuiManager/wxsAuiManager.cpp|564|error: ‘ms_classInfo’ is not a member of ‘wxsAuiToolBar’|
/home/psyhlo/Desktop/downloads/wxSmithAui/wxAuiManager/wxsAuiManager.cpp||In member function ‘virtual void wxsAuiManager::OnAddChildQPP(wxsItem*, wxsAdvQPP*)’:|
/home/psyhlo/Desktop/downloads/wxSmithAui/wxAuiManager/wxsAuiManager.cpp|669|error: invalid static_cast from type ‘wxObject*’ to type ‘const wxsAuiToolBar*’|
/home/psyhlo/Desktop/downloads/wxSmithAui/wxAuiManager/wxsAuiManager.cpp|669|error: ‘ms_classInfo’ is not a member of ‘wxsAuiToolBar’|
||=== Build finished: 4 errors, 58 warnings ===|
ubuntu 8.10
I'm developing the plugin on Ubuntu 8.04.1 64bits and it compiles with no error, only a few warnings derived from .xpm images generated by the gimp.
What version of wxWidgets are you using?
You can't change "wxAuiToolBar" to "wxsAuiToolBar", are completely different classes, in fact, wxsAuiToolBar is not derived from wxAuiToolBar or any other wxWindow class.
It seems that compiler can't found wxAuiToolBar, but the #include files are correct in the attached version. You can try to include <wx/aui/aui.h> or <wx/aui/auibar.h> in wxAuiManager.cpp. Then report what happen.
same thing
wxwidgets version is 2.8.8.0
#include <wx/aui/auibar.h> - gave me that there is no such file
my wx library is from ubuntu repository
edit
after update to 2.8.9.2 it nearly works
/home/psyhlo/Desktop/downloads/wxSmithAui/wxAuiManager/wxsAuiManager.cpp|566|error: ‘class wxAuiToolBar’ has no member named ‘m_GripperSize’|
It is possible that wxAuiToolBar was not implemented until wxWidgets 2.8.9. I'm running 2.8.9 and 2.9svn so I didn't care previous version. I should treat this as a bug to solve.
It seems that when you try to unmake the changes, you went so far. That wxAuiToolBar has to be an wxsAuiToolBar, wich is the one who has the member named m_GripperSize.
but now i'm with 2.8.9.2 from wxwidget repo
Please re-read my last post:
Quote from: Ganbito on March 05, 2009, 07:13:25 PM
It seems that when you try to unmake the changes, you went so far. That wxAuiToolBar has to be an wxsAuiToolBar, wich is the one who has the member named m_GripperSize.
Change in line 566 wxAuiToolBar to wxsAuiToolBar.
I just tested it the first time (works out of the box).
Great work !!
You are right wxAuToolbar exists since wx2.8.9 .
To get rid of the (xpm-)warnings you only have to change "static char*" to "static const char*" inside the xpm-files.
Quote from: jens on March 05, 2009, 11:27:43 PM
To get rid of the (xpm-)warnings you only have to change "static char*" to "static const char*" inside the xpm-files.
Thanks. I will try it, and then configuring the Gimp to export them in that way if it is possible.
funny i have reverted my changes
everything was alright after i extract the source one more time and it compile
sorry for my complaining :oops:
the plugin is great
great this needs to be added to the codeblocks repo soon :D
Don't worry, PsYhLo. And thanks.
JGM, I've asked devs to add this plugin to the svn trunk, but I have no answer yet. Really, byo suggested to add this to his plugin, what I possibly make at last, but I don't know when.
Quote from: Ganbito on March 06, 2009, 12:18:18 PM
Really, byo suggested to add this to his plugin, what I possibly make at last, but I don't know when.
I have no objections at all - but you would need an account which can only be setup by Yiannis. His time is limited atm... If it is of help I (or Byo) could add the plugin in the meantime. Hence you would have read-only rights only.
An alternative is that you create an own project at BerliOS as some other plugin projects do, too. But: As it integrates with wxSmith I would prefer the main SVN.
What about the support of upcoming wxWidget 3.0?
MortenMacFly, I have no plans to create my own project at BerliOS, mainly because this is a plugin over a plugin and I also prefer to use the main SVN.
The unique question is to upload it as a standalone plugin or integrate it with wxSmith. If I integrate it with wxSmith I thought that I won't have write rights on the SVN, so I'll pass the plugin and patches to byo, who will upload them. But this have two problems: updating can be difficult and it would provide byo an extra work.
Quote from: MortenMacFly on March 06, 2009, 01:10:11 PM
If it is of help I (or Byo) could add the plugin in the meantime. Hence you would have read-only rights only.
That is a good possibility, but I just discovered two new widgets (MDI Parent and Child) that I'll plan to support soon, so I think it is preferable to wait for that release before sending the plugin to the SVN.
Grom:
I'm using wxWidgets 2.9svn in my own project (currently paused) and I see that the code of wxAui wasn't changed too much, so it should work out of the box (at least code generation), althouth it can been improved.
Soon I will continue working in my project using this plugin so, if I find any mistake, I'll solve it and submit a patch or the new version.
Anyway you can try it and report if it works or what not work.
Quote from: Ganbito on March 07, 2009, 12:54:09 AM
[...] but I just discovered two new widgets (MDI Parent and Child) that I'll plan to support soon, so I think it is preferable to wait for that release before sending the plugin to the SVN.
No problem. Just drop me (or Byo) a note once you think it's time to release. Your work is highly appreciated.
Besides: Yiannis can setup access to certain folders IIRC. So keeping it out of wxSmith would enable you to have SVN access. In addition it's a nice tech-demo for other plugin-devs.
Updated to version: 0.8.1
ADDED: wxAuiNotebook icon per tab.
I've just tested Aui based MDI and I didn't found it interesting, at least for my own projects, so I won't implement that widgets soon, sorry. As I say before, I stop active developement of this plugin for an indefinite period, but I will solve bugs you may report or I can find. I also accept improvement suggestions, but I don't know when I'll apply them.
MortenMacFly (or Byo), please upload the plugin to SVN, thanks.
To download the plugin: go to the fist post of this thread.
Hi,
Could you please tell me if it's possible to install it with the 8.02 windows binary?
Because as you described it, we need to set some variable like wxsmith and wxpropgrid. But if you download only windows binary, you don't have the "src" directory in the "path\to\c::b\".
Is this plugin only available for Linux, or do you wait for a stable release (1.0) to provide it as a contrib plugin?
Thanks,
Basile
P.S: Quotes from first page.
QuoteJust make two new global variables one for wxsmith with the path to wxsmith
("Path\to\the\c::b\source"\src\plugins\contrib\wxSmith)
and another one for wxpropgrid ("Path\to\the\c::b\source"\src\plugins\contrib\wxSmith\propgrid\contrib)
Quote from: basile on April 03, 2009, 11:00:51 AM
Could you please tell me if it's possible to install it with the 8.02 windows binary?
Because as you described it, we need to set some variable like wxsmith and wxpropgrid. But if you download only windows binary, you don't have the "src" directory in the "path\to\c::b\".
You need the source code of codeblocks to build the plugin. If you re-read the quote, I didn't write "path\to\c::b\", but "path\to\c::b\source". It may (should) work with 8.02 but I have tested it only with the latest nightlies. At least on linux, build the plugin with 8.02 require some tweaks.
Quote from: basile on April 03, 2009, 11:00:51 AM
Is this plugin only available for Linux, or do you wait for a stable release (1.0) to provide it as a contrib plugin?
QuoteJust make two new global variables one for wxsmith with the path to wxsmith
("Path\to\the\c::b\source"\src\plugins\contrib\wxSmith)
and another one for wxpropgrid ("Path\to\the\c::b\source"\src\plugins\contrib\wxSmith\propgrid\contrib)
The plugin is available for windows and linux. It could also be built for mac, but I don't have a mac to test it. I've marked last version as stable, but not fully featured. That's the reason because it is not 1.0.
Integrating the plugin on the contrib section is not as easy as uploading it to the server. It has to be integrated with the codeblocks build system and it may require some test wich have to be done by codeblocks devs. MortenMacFly is currently working on it. I don't know when he will can upload the plugin to svn. Just be patient.
Hi and thanks for your answer.
I don't want put pressure on MortenMacFly! :wink: I'll be patient for your work. As you said, I will try to build it from the src.
Keep on mov', devs!
Big thanks!
Hello!
I'm trying to build the Windows version of this plugin. It compiles without any warnings, but when linking begins, I get the following error:
Compiling: wxSmithAui.cpp
Linking dynamic library: wxSmithAui.dll
d000114.o:(.idata$5+0x0): multiple definition of `__imp___ZTV9TiXmlText'
d000015.o:(.idata$5+0x0): first defined here
d000114.o:(.idata$6+0x0): multiple definition of `__nm___ZTV9TiXmlText'
d000015.o:(.idata$6+0x0): first defined here
collect2: ld returned 1 exit status
What can I do? Thanks!
Quote from: igorashu on April 27, 2009, 04:26:45 PM
What can I do?
Either...
...you post the full build log (see my sig) for analysis
...or...
...you try the wxfnb_to_wxaui test branch (in SVN) which has this plugin integrated (for testing).
Thanks for the swift reply :)
Here's the build log:
-------------- Build: Windows in wxSmith - Aui ---------------
mingw32-g++.exe -g -pipe -mthreads -fmessage-length=0 -fexceptions -Winvalid-pch -DBUILDING_PLUGIN -DHAVE_W32API_H -D__WXMSW__ -DWXUSINGDLL -DcbDEBUG -DCB_PRECOMP -DWX_PRECOMP -DwxUSE_UNICODE -DWXMAKINGLIB_PROPGRID -DwxPG_USE_WXMODULE=0 -DTIXML_USE_STL -IC:\Progra~1\CodeBlocks\src\include -IC:\Progra~1\CodeBlocks\src\include\wxscintilla\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\lib\gcc_dll\mswu -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\propgrid\contrib\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith -c "C:\Documents and Settings\Ionut\Desktop\wxSmithAui\wxAuiManager\wxsAuiManager.cpp" -o .objs\wxAuiManager\wxsAuiManager.o
mingw32-g++.exe -g -pipe -mthreads -fmessage-length=0 -fexceptions -Winvalid-pch -DBUILDING_PLUGIN -DHAVE_W32API_H -D__WXMSW__ -DWXUSINGDLL -DcbDEBUG -DCB_PRECOMP -DWX_PRECOMP -DwxUSE_UNICODE -DWXMAKINGLIB_PROPGRID -DwxPG_USE_WXMODULE=0 -DTIXML_USE_STL -IC:\Progra~1\CodeBlocks\src\include -IC:\Progra~1\CodeBlocks\src\include\wxscintilla\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\lib\gcc_dll\mswu -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\propgrid\contrib\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith -c "C:\Documents and Settings\Ionut\Desktop\wxSmithAui\wxAuiManager\wxsAuiManagerParentQP.cpp" -o .objs\wxAuiManager\wxsAuiManagerParentQP.o
mingw32-g++.exe -g -pipe -mthreads -fmessage-length=0 -fexceptions -Winvalid-pch -DBUILDING_PLUGIN -DHAVE_W32API_H -D__WXMSW__ -DWXUSINGDLL -DcbDEBUG -DCB_PRECOMP -DWX_PRECOMP -DwxUSE_UNICODE -DWXMAKINGLIB_PROPGRID -DwxPG_USE_WXMODULE=0 -DTIXML_USE_STL -IC:\Progra~1\CodeBlocks\src\include -IC:\Progra~1\CodeBlocks\src\include\wxscintilla\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\lib\gcc_dll\mswu -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\propgrid\contrib\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith -c "C:\Documents and Settings\Ionut\Desktop\wxSmithAui\wxAuiManager\wxsAuiPaneInfoProperty.cpp" -o .objs\wxAuiManager\wxsAuiPaneInfoProperty.o
mingw32-g++.exe -g -pipe -mthreads -fmessage-length=0 -fexceptions -Winvalid-pch -DBUILDING_PLUGIN -DHAVE_W32API_H -D__WXMSW__ -DWXUSINGDLL -DcbDEBUG -DCB_PRECOMP -DWX_PRECOMP -DwxUSE_UNICODE -DWXMAKINGLIB_PROPGRID -DwxPG_USE_WXMODULE=0 -DTIXML_USE_STL -IC:\Progra~1\CodeBlocks\src\include -IC:\Progra~1\CodeBlocks\src\include\wxscintilla\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\lib\gcc_dll\mswu -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\propgrid\contrib\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith -c "C:\Documents and Settings\Ionut\Desktop\wxSmithAui\wxAuiNotebook\wxSmithAuiNotebook.cpp" -o .objs\wxAuiNotebook\wxSmithAuiNotebook.o
mingw32-g++.exe -g -pipe -mthreads -fmessage-length=0 -fexceptions -Winvalid-pch -DBUILDING_PLUGIN -DHAVE_W32API_H -D__WXMSW__ -DWXUSINGDLL -DcbDEBUG -DCB_PRECOMP -DWX_PRECOMP -DwxUSE_UNICODE -DWXMAKINGLIB_PROPGRID -DwxPG_USE_WXMODULE=0 -DTIXML_USE_STL -IC:\Progra~1\CodeBlocks\src\include -IC:\Progra~1\CodeBlocks\src\include\wxscintilla\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\lib\gcc_dll\mswu -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\propgrid\contrib\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith -c "C:\Documents and Settings\Ionut\Desktop\wxSmithAui\wxAuiNotebook\wxsAuiNotebook.cpp" -o .objs\wxAuiNotebook\wxsAuiNotebook.o
mingw32-g++.exe -g -pipe -mthreads -fmessage-length=0 -fexceptions -Winvalid-pch -DBUILDING_PLUGIN -DHAVE_W32API_H -D__WXMSW__ -DWXUSINGDLL -DcbDEBUG -DCB_PRECOMP -DWX_PRECOMP -DwxUSE_UNICODE -DWXMAKINGLIB_PROPGRID -DwxPG_USE_WXMODULE=0 -DTIXML_USE_STL -IC:\Progra~1\CodeBlocks\src\include -IC:\Progra~1\CodeBlocks\src\include\wxscintilla\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\lib\gcc_dll\mswu -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\propgrid\contrib\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith -c "C:\Documents and Settings\Ionut\Desktop\wxSmithAui\wxAuiToolBar\wxSmithAuiToolBar.cpp" -o .objs\wxAuiToolBar\wxSmithAuiToolBar.o
mingw32-g++.exe -g -pipe -mthreads -fmessage-length=0 -fexceptions -Winvalid-pch -DBUILDING_PLUGIN -DHAVE_W32API_H -D__WXMSW__ -DWXUSINGDLL -DcbDEBUG -DCB_PRECOMP -DWX_PRECOMP -DwxUSE_UNICODE -DWXMAKINGLIB_PROPGRID -DwxPG_USE_WXMODULE=0 -DTIXML_USE_STL -IC:\Progra~1\CodeBlocks\src\include -IC:\Progra~1\CodeBlocks\src\include\wxscintilla\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\lib\gcc_dll\mswu -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\propgrid\contrib\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith -c "C:\Documents and Settings\Ionut\Desktop\wxSmithAui\wxAuiToolBar\wxsAuiToolBar.cpp" -o .objs\wxAuiToolBar\wxsAuiToolBar.o
mingw32-g++.exe -g -pipe -mthreads -fmessage-length=0 -fexceptions -Winvalid-pch -DBUILDING_PLUGIN -DHAVE_W32API_H -D__WXMSW__ -DWXUSINGDLL -DcbDEBUG -DCB_PRECOMP -DWX_PRECOMP -DwxUSE_UNICODE -DWXMAKINGLIB_PROPGRID -DwxPG_USE_WXMODULE=0 -DTIXML_USE_STL -IC:\Progra~1\CodeBlocks\src\include -IC:\Progra~1\CodeBlocks\src\include\wxscintilla\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\lib\gcc_dll\mswu -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\propgrid\contrib\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith -c "C:\Documents and Settings\Ionut\Desktop\wxSmithAui\wxAuiToolBar\wxsAuiToolBarItem.cpp" -o .objs\wxAuiToolBar\wxsAuiToolBarItem.o
mingw32-g++.exe -g -pipe -mthreads -fmessage-length=0 -fexceptions -Winvalid-pch -DBUILDING_PLUGIN -DHAVE_W32API_H -D__WXMSW__ -DWXUSINGDLL -DcbDEBUG -DCB_PRECOMP -DWX_PRECOMP -DwxUSE_UNICODE -DWXMAKINGLIB_PROPGRID -DwxPG_USE_WXMODULE=0 -DTIXML_USE_STL -IC:\Progra~1\CodeBlocks\src\include -IC:\Progra~1\CodeBlocks\src\include\wxscintilla\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\lib\gcc_dll\mswu -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\propgrid\contrib\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith -c "C:\Documents and Settings\Ionut\Desktop\wxSmithAui\wxAuiToolBar\wxsAuiToolBarItemBase.cpp" -o .objs\wxAuiToolBar\wxsAuiToolBarItemBase.o
mingw32-g++.exe -g -pipe -mthreads -fmessage-length=0 -fexceptions -Winvalid-pch -DBUILDING_PLUGIN -DHAVE_W32API_H -D__WXMSW__ -DWXUSINGDLL -DcbDEBUG -DCB_PRECOMP -DWX_PRECOMP -DwxUSE_UNICODE -DWXMAKINGLIB_PROPGRID -DwxPG_USE_WXMODULE=0 -DTIXML_USE_STL -IC:\Progra~1\CodeBlocks\src\include -IC:\Progra~1\CodeBlocks\src\include\wxscintilla\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\lib\gcc_dll\mswu -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\propgrid\contrib\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith -c "C:\Documents and Settings\Ionut\Desktop\wxSmithAui\wxAuiToolBar\wxsAuiToolBarLabel.cpp" -o .objs\wxAuiToolBar\wxsAuiToolBarLabel.o
mingw32-g++.exe -g -pipe -mthreads -fmessage-length=0 -fexceptions -Winvalid-pch -DBUILDING_PLUGIN -DHAVE_W32API_H -D__WXMSW__ -DWXUSINGDLL -DcbDEBUG -DCB_PRECOMP -DWX_PRECOMP -DwxUSE_UNICODE -DWXMAKINGLIB_PROPGRID -DwxPG_USE_WXMODULE=0 -DTIXML_USE_STL -IC:\Progra~1\CodeBlocks\src\include -IC:\Progra~1\CodeBlocks\src\include\wxscintilla\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\lib\gcc_dll\mswu -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\propgrid\contrib\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith -c "C:\Documents and Settings\Ionut\Desktop\wxSmithAui\wxAuiToolBar\wxsAuiToolBarSeparator.cpp" -o .objs\wxAuiToolBar\wxsAuiToolBarSeparator.o
mingw32-g++.exe -g -pipe -mthreads -fmessage-length=0 -fexceptions -Winvalid-pch -DBUILDING_PLUGIN -DHAVE_W32API_H -D__WXMSW__ -DWXUSINGDLL -DcbDEBUG -DCB_PRECOMP -DWX_PRECOMP -DwxUSE_UNICODE -DWXMAKINGLIB_PROPGRID -DwxPG_USE_WXMODULE=0 -DTIXML_USE_STL -IC:\Progra~1\CodeBlocks\src\include -IC:\Progra~1\CodeBlocks\src\include\wxscintilla\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\lib\gcc_dll\mswu -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\propgrid\contrib\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith -c "C:\Documents and Settings\Ionut\Desktop\wxSmithAui\wxAuiToolBar\wxsAuiToolBarSpacer.cpp" -o .objs\wxAuiToolBar\wxsAuiToolBarSpacer.o
mingw32-g++.exe -g -pipe -mthreads -fmessage-length=0 -fexceptions -Winvalid-pch -DBUILDING_PLUGIN -DHAVE_W32API_H -D__WXMSW__ -DWXUSINGDLL -DcbDEBUG -DCB_PRECOMP -DWX_PRECOMP -DwxUSE_UNICODE -DWXMAKINGLIB_PROPGRID -DwxPG_USE_WXMODULE=0 -DTIXML_USE_STL -IC:\Progra~1\CodeBlocks\src\include -IC:\Progra~1\CodeBlocks\src\include\wxscintilla\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\include -IC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\lib\gcc_dll\mswu -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith\propgrid\contrib\include -IC:\Progra~1\CodeBlocks\src\plugins\contrib\wxSmith -c "C:\Documents and Settings\Ionut\Desktop\wxSmithAui\wxSmithAui.cpp" -o .objs\wxSmithAui.o
mingw32-g++.exe -shared -Wl,--dll -LC:\Progra~1\CodeBlocks\src\devel -LC:\Progra~1\CodeBlocks\wxWidgets-2.8.10\lib\gcc_dll -L..\..\..\..\Progra~1\CodeBlocks .objs\wxAuiManager\wxsAuiManager.o .objs\wxAuiManager\wxsAuiManagerParentQP.o .objs\wxAuiManager\wxsAuiPaneInfoProperty.o .objs\wxAuiNotebook\wxSmithAuiNotebook.o .objs\wxAuiNotebook\wxsAuiNotebook.o .objs\wxAuiToolBar\wxSmithAuiToolBar.o .objs\wxAuiToolBar\wxsAuiToolBar.o .objs\wxAuiToolBar\wxsAuiToolBarItem.o .objs\wxAuiToolBar\wxsAuiToolBarItemBase.o .objs\wxAuiToolBar\wxsAuiToolBarLabel.o .objs\wxAuiToolBar\wxsAuiToolBarSeparator.o .objs\wxAuiToolBar\wxsAuiToolBarSpacer.o .objs\wxSmithAui.o -o wxSmithAui.dll -Wl,--enable-auto-image-base -Wl,--export-all-symbols -Wl,--add-stdcall-alias -Wl,--enable-auto-import -lwxmsw28u -lcodeblocks -lwxsmithlib
d000119.o:(.idata$5+0x0): multiple definition of `__imp___ZTV9TiXmlText'
d000101.o:(.idata$5+0x0): first defined here
d000119.o:(.idata$6+0x0): multiple definition of `__nm___ZTV9TiXmlText'
d000101.o:(.idata$6+0x0): first defined here
collect2: ld returned 1 exit status
Process terminated with status 1 (0 minutes, 48 seconds)
0 errors, 0 warnings
In the meantime, I'll give wxfnb_to_wxaui a try.
I remember "__imp__..." errors, but I don't remember how I solve them. Sorry.
MortenMacFly, great to read that, I will try that branch. :D
Quote from: igorashu on April 27, 2009, 05:11:22 PM
Here's the build log:
-Wl,--enable-auto-import
Can you try to remove that option? Alternatively try to just use the project (CBP) file from SVN. I remember that I did some modifications but don't recall the difference to the one posted in this thread. Anyways - the SVN version compiles just fine.
Quote from: MortenMacFly on April 28, 2009, 12:40:08 PM
I remember that I did some modifications but don't recall the difference to the one posted in this thread. Anyways - the SVN version compiles just fine.
Well, the CBP I've submitted work fine for me, only a few warnings from .xpm images, that I see they have been fixed in SVN. Anyway, any fix/enhancement you (you, jens, any cb developer...) may do is welcome. :D
Quote from: MortenMacFly on April 28, 2009, 12:40:08 PM
-Wl,--enable-auto-import
Can you try to remove that option? Alternatively try to just use the project (CBP) file from SVN. I remember that I did some modifications but don't recall the difference to the one posted in this thread. Anyways - the SVN version compiles just fine.
Thanks for your help. I tried recompiling without that option and this is the output:
Info: resolving vtable for wxsBoolPropertyby linking to __imp___ZTV15wxsBoolProperty (auto-import)
Info: resolving vtable for wxsEnumPropertyby linking to __imp___ZTV15wxsEnumProperty (auto-import)
Info: resolving vtable for wxsPositionSizePropertyby linking to __imp___ZTV23wxsPositionSizeProperty (auto-import)
Info: resolving vtable for wxsLongPropertyby linking to __imp___ZTV15wxsLongProperty (auto-import)
Info: resolving vtable for wxsStringPropertyby linking to __imp___ZTV17wxsStringProperty (auto-import)
Info: resolving vtable for TiXmlTextby linking to __imp___ZTV9TiXmlText (auto-import)
Info: resolving vtable for wxsContainerby linking to __imp___ZTV12wxsContainer (auto-import)
Info: resolving vtable for wxsBitmapIconPropertyby linking to __imp___ZTV21wxsBitmapIconProperty (auto-import)
Info: resolving vtable for wxsCustomEditorPropertyby linking to __imp___ZTV23wxsCustomEditorProperty (auto-import)
d000119.o:(.idata$5+0x0): multiple definition of `__imp___ZTV9TiXmlText'
d000101.o:(.idata$5+0x0): first defined here
d000119.o:(.idata$6+0x0): multiple definition of `__nm___ZTV9TiXmlText'
d000101.o:(.idata$6+0x0): first defined here
C:\Program Files\CodeBlocks\MinGW\bin\ld.exe: warning: auto-importing has been activated without --enable-auto-import specified on the command line.
This should work unless it involves constant data structures referencing symbols from auto-imported DLLs.collect2: ld returned 1 exit status
I'll download the SVN version and compare the two projects. Thanks :)
I've tried the wxfnb_to_wxaui branch. Same thing all over again.
Guess I'll try compiling the Linux version of Code::Blocks and its plugins.
Can I hope that this plugin will be included in the next binary release for Windows?
Thanks.
Quote from: Ganbito on January 22, 2009, 07:05:32 PM
I've created a plugin wich adds wxAui items to wxSmith.
Current version: 0.8.1 (Mar 9, 2009)
* Succesfully tested on Ubuntu 8.04.1 and Windows Vista, both 64bit versions. I think that it can be released as stable version now.
* Unlikely other codeblocks plugins, and codeblocks itself, I didn't make different project for Windows and Linux, just one project with two targets.
When I Compiled this plugin and installed in c::b, I cannot exit C::B normally, I have to kill the process codeblocks.exe in the taskmgr! I am in 32bit system(windows xp)!
Quote from: x3y1 on April 30, 2009, 06:42:14 AM
When I Compiled this plugin and installed in c::b, I cannot exit C::B normally, I have to kill the process codeblocks.exe in the taskmgr! I am in 32bit system(windows xp)!
I've experienced this on my developing linux system. Then I've reinstalled and thought that it has gone. Now I have updated to the last Ubuntu (64bit) and I can confirm that this bug already exists.
It happens when you use wxAuiManager. If you just use wxAuiNotebook, codeblocks exits normally.
I'm sure the reason of this bug is that the method UnInit() of any wxAuiManager has to be called before destroy them, but wxSmith don't have support for such type of calls right now, so I've tried to solve it within my plugin, but I can't solve the bug. Probably, to fix this bug, modify (add a feature to) wxSmith will be needed.
I don't know when I can fix this bug. Sorry.
Quote from: Ganbito on May 01, 2009, 12:49:02 AM
I'm sure the reason of this bug is that the method UnInit() of any wxAuiManager has to be called before destroy them, but wxSmith don't have support for such type of calls right now, so I've tried to solve it within my plugin, but I can't solve the bug. Probably, to fix this bug, modify (add a feature to) wxSmith will be needed.
I don't know when I can fix this bug. Sorry.
3x!
wxSmithAui just came to trunk!
Code::Blocks devs have merged recently wxAui branch (where wxSmithAui integration have been tested) with trunk, so now you can download wxSmithAui directly from there with the main distribution. By the way, download links on the first post of this topic were deleted by admin, but now they aren't needed.
For more information about the merge see this topic: wxAuiNotebook introduction in TRUNK (http://forums.next.codeblocks.org/index.php/topic,10810.0.html).
Thanks to all Code::Blocks devs but specially to MortenMacFly for the integration in svn.