How to use smart docking advanced

There will be a advanced sample project line here.

If you want to have some advance features, such as: save/open window config, decide where to put your widgets. It's still an easy thing to do.

  • Set title, pixmap, mini toolbar of your content.
content: SD_CONTENT
  • Save/Open window issues.

In SD_DOCKING_MANAGER there's two features:

save_config (a_file_name: STRING)
open_config (a_file_name: STRING)

All you need to do is provide a file's name and it's directory, then the docking manager will save/open current windows' configs (such as: your widget's position, if your widget current hide or if your widget current floating).

  • You can save/open tools type content or editors type content zones seperately.

This is useful for Eiffel Studio, so it can save tools config per Eiffel Studio, but save editors layout config per Eiffel porject.And we start/stop debug application in Eiffel Studio, it can only save/open tools layout config, leave editors layout not changed.

In SD_DOCKING_MANAGER there's features:

save_tools_config (a_file_name: STRING)
open_tools_config (a_file_name: STRING)
save_editors_config (a_file_name: STRING)
open_editors_config (a_file_name: STRING)
  • Control your widgets position.

Please see the SD_CONTENT Wiki page "Set Position commands" part.

  • Set drop actions to blank tab area.

In SD_DOCKING_MANAGER there is function:

tab_drop_actions: SD_PND_ACTION_SEQUENCE
  • Set background color of main docking area (editor area).

In SD_DOCKING_MANAGER there is function:

set_main_area_background_color (a_color: EV_COLOR)
  • Use more than one docking manager in one application:

You can use more than one docking manager in one application, different docking manager will work seperately which means docking zones can only work within the docking manager they belong to.

  • You can try the sample application Docking Control which use advanced features of Smart Docking library.