Developer forums (C::B DEVELOPMENT STRICTLY!) > Plugins development
wxSmithAui plugin: wxAui support for wxSmith
Ganbito:
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 :).
MortenMacFly:
--- Quote from: Ganbito on January 22, 2009, 07:05:32 pm ---I've created a plugin wich adds wxAui items to wxSmith.
--- End quote ---
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!!!
Grom:
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.
byo:
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.
Ganbito:
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 ?
--- End quote ---
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. ;)
--- End quote ---
Navigation
[0] Message Index
[#] Next page
Go to full version