The Sash Window thing is coming along nicely,
the code is MUCH cleaner this way, as opposed to using sizers.
I am going to get started on plugins soon, so lets start hashing out what a plugin should look like, and what a potential plugin writer should know.
I have some questions first, so I will post them here to marinate for a few days:
1. What will a plugin accomplish that a DrScript does not?
2. The main menu is getting kind of crowded. Any suggestions for cleaning things up?
3. Where should I place the plugins menu? On the main menu, or off of something else?
(Eg, Should Plugins, Shell Commands, and DrScript all be submenus for some other menu, eg "Custom Stuff"?)
4. Should plugins be:
a. installed
b. loaded on demand
or what?
I imagine there will be some mechanism for menu access, pop up access, toolbar access, and keyboard shortcut access for each plugin.
However really bring attention to question #1. Is there anything you can do through plugins you cannot do through DrScript?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
If you have interesting in my project NewEdit, you can visit it in cosoft.org.cn website in China. And you can get the lastest source code via cvs. The module name is newedit.
cvs -d:pserver:anonymous@cvs.cosoft.org.cn:/sfroot/cvs/flyedit login
cvs -z3 -d:pserver:anonymous@cvs.cosoft.org.cn:/sfroot/cvs/flyedit co newedit
This project is an testing project, and it only has an skeleton. But there are mixin and plugin implementation in it which I designed. Maybe you can get some referrence from it. But I have not a document about my design yet, so the code may be illegibly.
I also used sashwindow in my project, it's an coincidence.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I'v move my project to newedit.tigris.org.
You can get the source code by cvs.
In this project I used a lot of mixins and plugins. The mixins can be added to class, and they will expand the member of the class, just like variable or function. And plugins are some execute points, indicate some other code could run from here. So in my project, the menu, toolbar, popup menu, fucntions, and some other things all can be expanded thought mixins and plugins.
I think drscript could only be used to process the document text, and plugins(or mixins) could be combined into drpython. So , if you set some plugin was loaded when startup, the menu, toolbar, and others defined in plugin will be set the proper position.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
The Sash Window thing is coming along nicely,
the code is MUCH cleaner this way, as opposed to using sizers.
I am going to get started on plugins soon, so lets start hashing out what a plugin should look like, and what a potential plugin writer should know.
I have some questions first, so I will post them here to marinate for a few days:
1. What will a plugin accomplish that a DrScript does not?
2. The main menu is getting kind of crowded. Any suggestions for cleaning things up?
3. Where should I place the plugins menu? On the main menu, or off of something else?
(Eg, Should Plugins, Shell Commands, and DrScript all be submenus for some other menu, eg "Custom Stuff"?)
4. Should plugins be:
a. installed
b. loaded on demand
or what?
I imagine there will be some mechanism for menu access, pop up access, toolbar access, and keyboard shortcut access for each plugin.
However really bring attention to question #1. Is there anything you can do through plugins you cannot do through DrScript?
If you have interesting in my project NewEdit, you can visit it in cosoft.org.cn website in China. And you can get the lastest source code via cvs. The module name is newedit.
cvs -d:pserver:anonymous@cvs.cosoft.org.cn:/sfroot/cvs/flyedit login
cvs -z3 -d:pserver:anonymous@cvs.cosoft.org.cn:/sfroot/cvs/flyedit co newedit
This project is an testing project, and it only has an skeleton. But there are mixin and plugin implementation in it which I designed. Maybe you can get some referrence from it. But I have not a document about my design yet, so the code may be illegibly.
I also used sashwindow in my project, it's an coincidence.
I seem to have trouble logging in.
I'v move my project to newedit.tigris.org.
You can get the source code by cvs.
In this project I used a lot of mixins and plugins. The mixins can be added to class, and they will expand the member of the class, just like variable or function. And plugins are some execute points, indicate some other code could run from here. So in my project, the menu, toolbar, popup menu, fucntions, and some other things all can be expanded thought mixins and plugins.
I think drscript could only be used to process the document text, and plugins(or mixins) could be combined into drpython. So , if you set some plugin was loaded when startup, the menu, toolbar, and others defined in plugin will be set the proper position.