coderespawn / dock-spawn

Dock Spawn is a web based dock layout engine that aids in creating flexible user interfaces by enabling panels to be docked on the screen similar to Visual Studio IDE
http://dockspawn.com
MIT License
255 stars 76 forks source link

Dart M4 #5

Closed filmackay closed 11 years ago

filmackay commented 11 years ago

What is the status of this project with the new M4 release - I'm seeing a few bugs?

coderespawn commented 11 years ago

Hi filmackay, I've fixed the M4 breaking changes. Will upload shortly

filmackay commented 11 years ago

Great stuff, thanks.

Out of interest, do you use Dart Editor to develop this?

coderespawn commented 11 years ago

yep

filmackay commented 11 years ago

thanks for this - simple fix!

one question I've had on usability - is there a way for the user to flip the tabs to be at the top or the bottom of the panel?

coderespawn commented 11 years ago

you can set it through code. Right now, there is no way for the user to flip it from the UI

you can set the tab strip direction on the FillDockContainer FillDockContainer(this.dockManager, [int tabStripDirection = TabHost.DIRECTION_BOTTOM])

An example is the Document Manager (the central area of where the code editors are docked in the IDE demo) the tab strip is displayed on the top. every other "fill" dock container has tab strips in the bottom. (e.g. solution explorer / outline etc)

Thanks for using dock spawn

filmackay commented 11 years ago

Thanks - what about submitting this to pub? There is only a 1.0 version there, would make it a lot easier to use..

filmackay commented 11 years ago

last question :) have you considered integrating it into web-ui?

coderespawn commented 11 years ago

Ah you are right. Uploaded to pub with version 1.0.2

I wanted to use web-ui but it was a moving target back then. I might work on it in a few days when I get time.

filmackay commented 11 years ago

Great. I am having problems with the complexity of Dart-JS integration, you haven't got a AngularJS/JS port of this do you? :)

filmackay commented 11 years ago

I have a pure-JS port of this working. Should I "fork" this project and contribute it to that - or create an entirely new project (DockJS)?

coderespawn commented 11 years ago

Hi flimackay, that's awesome!

I'm working on a web_ui port of dock spawn and was thinking of having a sub-directory for each platform (pure dart, dart web_ui, angular js, pure js etc).

It would be better if you could fork it so we can integrate it back in the ports directory

Thanks!

filmackay commented 11 years ago

Sounds good. So I fork then create a new platform directory for js - I'd love to look at AngularJS as well.

Perhaps you could do some testing for me - I've got a couple of issues that I'm ironing out then I'll push.

So which directory exactly do you want to use as root for the js port?

coderespawn commented 11 years ago

Thanks for your support. Please go ahead with the angular JS port as well.

I've refactored the directory layout on master. you can place the ports in js and angular_js directories

Also filed Issue #6 for tracking

Please be sure to update the AUTHORS file as well

Thanks

filmackay commented 11 years ago

cool - doing that now. it was actually pretty hard to port, not knowing the code base - and with js being a bit unforgiving at times. would be interested in your thoughts on the structure/packaging. have one more bug to fix, before I'm not aware of any :)

I've gone with the 'namespace' name of "dockspawn".

coderespawn commented 11 years ago

Thanks for your support filmackay. Do you need any help with the bugs? I might be free later today

filmackay commented 11 years ago

I'm not blocked on any yet - but no doubt you will find one or more. Understand the library a lot better now, but not enough to make major changes just yet. Got a few things I want to add.

What "component" model is there - ie. an interface that modules can support to be embedded within a window? They could be notified on resize, ask to be closed, informed of being closed etc. This is actually a mirror of an implementation I did of a desktop for a financial trading app 10 yrs ago - except it was implemented in C++/ATL.

filmackay commented 11 years ago

OK, it's checked in with one (known) bug remaining: you'll see it on the opening demo window. Let me know how close I got, feel free to push changes in.

filmackay commented 11 years ago

codespawn, if you could look at the long horizontal splitter bar on the demo page - I'd sure appreciate it. Not sure I can nail this one. Problem seems to be adding the toolbox (dockRight) - that screws up the splitter under the main editor window. Hoping to get some components installed into this thing tomorrow.

filmackay commented 11 years ago

got a hint on this issue: looks like the content in the window above is just oversized (height). I'll start looking at this in another 10 hrs if you don't get to it before..

coderespawn commented 11 years ago

Hi, I tried your port and it looks great. I created a visualizer for the dock tree which will help us debug the dock layout issues. I cannot submit a pull request to your fork for you to try out the update. Can you first submit a pull request from your end?

Thanks

devfxplayer commented 8 years ago

where is the angular port?

abhargav7 commented 7 years ago

Filmackay........have a pure-JS port of this working. Should I "fork" this project and contribute it to that - or create an entirely new project (DockJS...... Where is this one i can't find this.can u help