/********************************************************************** Audacity: A Digital Audio Editor Registrar.cpp James Crook Audacity is free software. This file is licensed under the wxWidgets license, see License.txt ********************************************************************//** \class TrackPanel2 \brief TrackPanel2 is the start of the new TrackPanel. *//********************************************************************/ #include #include "ShuttleGui.h" #include "widgets/LinkingHtmlWindow.h" #include "SkewedRuler.h" #include "Registrar.h" #include "TrackPanel2.h" TrackPanel * TrackPanel2Factory(wxWindow * parent, wxWindowID id, const wxPoint & pos, const wxSize & size, TrackList * tracks, ViewInfo * viewInfo, TrackPanelListener * listener, AdornedRulerPanel * ruler) { return new TrackPanel2( parent, id, pos, size, tracks, viewInfo, listener, ruler); } void ShowExtraDialog() { int k=42; wxDialog Dlg(NULL, wxID_ANY, wxString(wxT("Experimental Extra Dialog"))); ShuttleGui S(&Dlg, eIsCreating); S.StartNotebook(); { S.StartNotebookPage( _("Panel 1") ); S.StartVerticalLay(1); { HtmlWindow *html = new LinkingHtmlWindow(S.GetParent(), -1, wxDefaultPosition, wxSize(600, 359), wxHW_SCROLLBAR_AUTO | wxSUNKEN_BORDER); html->SetFocus(); html->SetPage(wxT("

An Html Window

Replace with whatever you like.")); S.Prop(1).AddWindow( html, wxEXPAND ); } S.EndVerticalLay(); S.EndNotebookPage(); S.StartNotebookPage( _("Diagnostics") ); S.StartVerticalLay(1); { HtmlWindow *html = new LinkingHtmlWindow(S.GetParent(), -1, wxDefaultPosition, wxSize(600, 359), wxHW_SCROLLBAR_AUTO | wxSUNKEN_BORDER); html->SetFocus(); html->SetPage(wxT("

Diagnostics

This is an html diagnostics page")); S.Prop(1).AddWindow( html, wxEXPAND ); } S.EndVerticalLay(); S.EndNotebookPage(); } S.EndNotebook(); wxButton *ok = new wxButton(S.GetParent(), wxID_OK, _("OK... Audacious!")); ok->SetDefault(); S.Prop(0).AddWindow( ok ); Dlg.Fit(); Dlg.ShowModal(); } int TrackPanel2Dispatch( Registrar & R, t_RegistrarDispatchType Type ) { switch( Type ) { case RegResource: R.pShowFn = ShowExtraDialog; break; case RegArtist: break; case RegDataType: break; case RegCommand: break; case RegMenuItem: break; default: break; } return 1; } TrackPanel2::TrackPanel2( wxWindow * parent, wxWindowID id, const wxPoint & pos, const wxSize & size, TrackList * tracks, ViewInfo * viewInfo, TrackPanelListener * listener, AdornedRulerPanel * ruler) : TrackPanel( parent, id, pos, size, tracks, viewInfo, listener, ruler) { } // Here is a sample function that shows that TrackPanel2 is being invoked. void TrackPanel2::OnPaint(wxPaintEvent & event) { // Hmm... Log debug will only show if you open the log window. // wxLogDebug( wxT("Paint TrackPanel2 requested") ); TrackPanel::OnPaint( event ); }