ui_extension:ui_extension
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
ui_extension:ui_extension [2005/03/23 14:55] – (old revision restored) 127.0.0.1 | ui_extension:ui_extension [Unknown date] (current) – external edit (Unknown date) 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== UI Extensions ====== | ====== UI Extensions ====== | ||
+ | **Warning: This page is terribly out-dated** | ||
+ | |||
===== Introduction ===== | ===== Introduction ===== | ||
A UI Extension generally refers to a component that implements the ui_extension API. They are also commonly refered to as panels. | A UI Extension generally refers to a component that implements the ui_extension API. They are also commonly refered to as panels. | ||
Line 10: | Line 12: | ||
The foobar200 SDK can be downloaded from the [[http:// | The foobar200 SDK can be downloaded from the [[http:// | ||
=== The UI Extension SDK === | === The UI Extension SDK === | ||
- | The UI Extension SDK can be downloaded from its [[http:// | + | The UI Extension SDK can be downloaded from its [[http:// |
=== Microsoft Visual C++ === | === Microsoft Visual C++ === | ||
Information on Visual C++ can be found from its [[http:// | Information on Visual C++ can be found from its [[http:// | ||
- | The optimising | + | Microsoft Visual C++ 2003 and 6.0 will both currently |
- | The Microsoft Visual C++ 2003 compiler is freely available in the [[http:// | ||
=== Platform SDK === | === Platform SDK === | ||
- | Not usually required, but highly | + | Not usually required, but recommended is the current [[http:// |
==== Developing UI Extension aware components ==== | ==== Developing UI Extension aware components ==== | ||
Line 25: | Line 26: | ||
You should extract the UI Extension archive to the foobar2000\ui_extension sub-directory of your SDK root folder. You should then proceed to insert the ui_extension project into your workspace, and add it as a dependency of your project. | You should extract the UI Extension archive to the foobar2000\ui_extension sub-directory of your SDK root folder. You should then proceed to insert the ui_extension project into your workspace, and add it as a dependency of your project. | ||
- | You should include the header "../ui_extension_with_helpers.h" as appropriate in your code. | + | You should include the header "../ui_extension.h" as appropriate in your code. |
- | UI Extension hosts must implement the [[http:// | + | UI Extension hosts must implement the [[http:// |
- | [[http:// | + | [[http:// |
Some example components you can look at are:\\ | Some example components you can look at are:\\ | ||
- | [[http:// | + | [[http:// |
- | [[http:// | + | [[http:// |
- | [[http:// | + | |
- | [[http:// | + | |
[[http:// | [[http:// | ||
- | [[http:// | + | [[http:// |
- | [[http:// | + | [[http:// |
==== Known shortcomings in UI Extension API version 5 ==== | ==== Known shortcomings in UI Extension API version 5 ==== | ||
* ui_extension_host:: | * ui_extension_host:: | ||
Line 44: | Line 43: | ||
* A method to create a configuration dialog for a ui_extension instance may be useful. | * A method to create a configuration dialog for a ui_extension instance may be useful. | ||
- | ==== Plans for UI Extension 6 ==== | + | ==== Changes |
- | * Rename TYPE_LAYOUT to TYPE_SPLITTER | + | |
* Add a subclass for splitter panels | * Add a subclass for splitter panels | ||
* Add methods for displaying a configuration dialog for UI Extensions | * Add methods for displaying a configuration dialog for UI Extensions | ||
Line 51: | Line 49: | ||
* Implement methods in ui_extension_factory to retrieve whether extension is single or multiple instance | * Implement methods in ui_extension_factory to retrieve whether extension is single or multiple instance | ||
* Add HWND parameters to ui_extension_host:: | * Add HWND parameters to ui_extension_host:: | ||
- | + | * Changed way adding items to host menu works | |
- | > What will become of the tabbed panel stack which currently uses the TYPE_LAYOUT flag IIRC? The name " | + | * Added APIs for embedding standard Columns UI spectrum analyser |
- | >> Hmm I just thought it fitted | + | * Added APIs for new customisable buttons toolbar (including default bitmaps, pushed state, and drop-downs) |
+ | * Rename TYPE_LAYOUT | ||
+ | * More.. |
ui_extension/ui_extension.txt · Last modified: 2008/05/21 22:09 by musicmusic