Changeset 1281

Show
Ignore:
Timestamp:
10/11/07 22:28:39 (11 months ago)
Author:
calvin
Message:

shift-enter consistently opens current parameter view - shift-8 now plays current row in pattern editor, machine view selection border width is 2px, change how views are updated after a plugin records to the wavetable

Location:
trunk/src/buzelib
Files:
13 modified

Legend:

Unmodified
Added
Removed
  • trunk/src/buzelib/Document.cpp

    r1273 r1281  
    5353        zzub::pluginloader* streamloader = player->getMachineLoader("@zzub.org/streamplayer;1"); 
    5454        if (streamloader) { 
    55                 streamplayer = player->createMachine(0, 0, "_$$streamplayer", streamloader); 
     55                streamplayer = player->createMachine(0, 0, "_PreviewPlugin", streamloader); 
    5656                streamplayer->initialize(0, 0, 0, 0, 0); 
    5757                player->master->addAudioInput(streamplayer, 0x4000, 0x4000); 
  • trunk/src/buzelib/MachineParameterView.cpp

    r1280 r1281  
    4444        ,sliderView(mainFrm) 
    4545{ 
    46         assert(mainFrm->document->getSelectedMachines()>0); 
     46        assert(createParameterViewPlugin); 
    4747 
    4848        mainFrame = mainFrm; 
    49         machine = mainFrm->document->getSelectedMachine(0); 
     49        machine = mainFrm->createMachineParameterViewPlugin; 
    5050        player = mainFrm->player; 
    5151        selectedSlider = 0; 
  • trunk/src/buzelib/MachineView.cpp

    r1280 r1281  
    13031303                dc.SetTextColor(0); 
    13041304                dc.DrawFocusRect(&fRect); 
     1305                InflateRect(&fRect, 1, 1); 
     1306                dc.DrawFocusRect(&fRect); 
    13051307        } 
    13061308 
     
    15491551        return 0; 
    15501552} 
     1553 
     1554LRESULT CMachineView::OnMachineParameters(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/) { 
     1555        // BUG BUG!! only one selected machine at a time is possible!!! 
     1556        for (int i=0; i<document->getSelectedMachines(); i++) { 
     1557                mainFrame->showMachineParameters(document->getSelectedMachine(i)); 
     1558        } 
     1559        return 0; 
     1560} 
     1561 
  • trunk/src/buzelib/MachineView.h

    r1280 r1281  
    113113                COMMAND_ID_HANDLER(ID_EDIT_CLEARSELECTION, OnClearSelection) 
    114114                COMMAND_ID_HANDLER(ID_VIEW_PROPERTIES, OnViewProperties) 
     115                COMMAND_ID_HANDLER(ID_MACHINE_PARAMETERS, OnMachineParameters) 
    115116        END_MSG_MAP() 
    116117 
     
    146147        LRESULT OnClearSelection(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/); 
    147148        LRESULT OnViewProperties(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/); 
     149        LRESULT OnMachineParameters(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/); 
    148150        void OnUpdate(CView* pSender, LPARAM lHint, LPVOID pHint); 
    149151 
  • trunk/src/buzelib/MainFrm.cpp

    r1280 r1281  
    259259        isStandalone = true; 
    260260        document = 0; 
     261        createMachineParameterViewPlugin = 0; 
    261262} 
    262263 
     
    18591860        } 
    18601861 
     1862        createMachineParameterViewPlugin = m; 
    18611863        ClientView* cv = machineParameters.createClientWindow(m_hWnd, label); 
    18621864        machineParameters.insertClient(cv, rcCreate, place, side); 
     
    23392341                return true; 
    23402342        } 
     2343 
     2344        if (data.type == event_type_wave_allocated) { 
     2345                document->updateAllViews(0, UpdateImportWave, 0); 
     2346                return true; 
     2347        } 
    23412348        return false; 
    23422349} 
     
    24132420        document->removePatternTrack(document->getSelectedMachine(0)); 
    24142421        SetFocus();     // this line is here because utrk changes focus in buze only 
    2415         return 0; 
    2416 } 
    2417  
    2418  
    2419 LRESULT CMainFrame::OnMachineParameters(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/) { 
    2420         // BUG BUG!! only one selected machine at a time is possible!!! 
    2421         for (int i=0; i<document->getSelectedMachines(); i++) { 
    2422                 showMachineParameters(document->getSelectedMachine(i)); 
    2423         } 
    24242422        return 0; 
    24252423} 
  • trunk/src/buzelib/MainFrm.h

    r1275 r1281  
    192192        CMenu themeMenu; 
    193193        bool isStandalone; 
     194 
     195        zzub::metaplugin* createMachineParameterViewPlugin; 
    194196 
    195197        CMainFrame(); 
     
    329331                COMMAND_ID_HANDLER(ID_PATTERN_CLONE, OnClonePattern) 
    330332                COMMAND_ID_HANDLER(ID_MACHINE_CENTERPAN, OnMachineCenterPan) 
    331                 COMMAND_ID_HANDLER(ID_MACHINE_PARAMETERS, OnMachineParameters) 
    332333                COMMAND_ID_HANDLER(ID_CONNECTION_RIGHTPAN, OnConnectionRightPan) 
    333334                COMMAND_ID_HANDLER(ID_CONNECTION_LEFTPAN, OnConnectionLeftPan) 
     
    408409        LRESULT OnClosePane(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/); 
    409410        LRESULT OnMachineCenterPan(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/); 
    410         LRESULT OnMachineParameters(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/); 
    411411        LRESULT OnConnectionLeftPan(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/); 
    412412        LRESULT OnConnectionRightPan(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/); 
  • trunk/src/buzelib/PatternView.cpp

    r1279 r1281  
    10641064                machinePatternPanel.SelectString(1, -1, pattern->getName().c_str()); 
    10651065        machinePatternPanel.SetRedraw(); 
     1066        machinePatternPanel.Invalidate(FALSE); 
    10661067 
    10671068} 
     
    18071808        patternEditor.editor.Invalidate(FALSE); 
    18081809} 
     1810 
     1811LRESULT CPatternView::OnMachineParameters(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/) { 
     1812        if (!machine) return 0; 
     1813        mainFrame->showMachineParameters(machine); 
     1814        return 0; 
     1815} 
  • trunk/src/buzelib/PatternView.h

    r1279 r1281  
    9797                COMMAND_ID_HANDLER(ID_MACHINE_ADDTRACK, OnMachineAddTrack) 
    9898                COMMAND_ID_HANDLER(ID_MACHINE_REMOVETRACK, OnMachineRemoveTrack) 
     99                COMMAND_ID_HANDLER(ID_MACHINE_PARAMETERS, OnMachineParameters) 
    99100                COMMAND_ID_HANDLER(ID_PATTERN_PLAY, OnPatternPlay) 
    100101                COMMAND_ID_HANDLER(ID_PATTERN_PLAYFROMCURSOR, OnPatternPlayFromCursor) 
     
    305306        LRESULT OnNextWave(WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL& bHandled); 
    306307        LRESULT OnPrevWave(WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL& bHandled); 
     308        LRESULT OnMachineParameters(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/); 
    307309         
    308310        LRESULT OnScrolled(WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL& bHandled); 
  • trunk/src/buzelib/SequenceView.cpp

    r1276 r1281  
    753753        return 0; 
    754754} 
     755 
     756LRESULT CSequenceView::OnMachineParameters(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/) { 
     757        zzub::metaplugin* plugin = editor.getMachine(); 
     758        if (!plugin) return 0; 
     759 
     760        mainFrame->showMachineParameters(plugin); 
     761        return 0; 
     762} 
  • trunk/src/buzelib/SequenceView.h

    r1276 r1281  
    107107                COMMAND_ID_HANDLER(ID_SEQUENCEVIEW_DROPDOWNSCALE, OnDropdownScale) 
    108108                COMMAND_ID_HANDLER(ID_SEQUENCEVIEW_DROPDOWNSTEP, OnDropdownStep) 
     109                COMMAND_ID_HANDLER(ID_SEQUENCEVIEW_CREATEANDINSERTPATTERN, OnPatternCreate) 
    109110 
    110111                COMMAND_ID_HANDLER(ID_PATTERN_CLONE, OnPatternClone) 
    111                 COMMAND_ID_HANDLER(ID_SEQUENCEVIEW_CREATEANDINSERTPATTERN, OnPatternCreate) 
     112                COMMAND_ID_HANDLER(ID_MACHINE_PARAMETERS, OnMachineParameters) 
    112113 
    113114        END_MSG_MAP() 
     
    184185         
    185186        LRESULT OnPatternCreate(WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL& bHandled); 
     187        LRESULT OnMachineParameters(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/); 
    186188 
    187189        virtual BOOL OnIdle(); 
  • trunk/src/buzelib/WaveTableView.cpp

    r1273 r1281  
    264264        mainFrame->addAccelerator(m_hWnd, AtlLoadAccelerators(IDR_WAVETABLE)); 
    265265 
    266         document->player->master->addEventHandler(this); 
    267266        return 0; 
    268267} 
     
    270269LRESULT CWaveTableView::OnClose(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/) { 
    271270        // denne fixet crash når vi lukker hele clienten 
    272         document->player->master->removeEventHandler(this); 
    273271        document->removeView(this); 
    274272        mainFrame->removeTabableView(m_hWnd); 
     
    717715} 
    718716 
    719 bool CWaveTableView::invoke(zzub_event_data_t& data) { 
    720         if (data.type == event_type_wave_allocated) { 
    721                 updateFromWaveTable(); 
    722                 return true; 
    723         } 
    724         return false; 
    725 } 
    726  
    727  
    728717LRESULT CWaveTableView::OnHelp(WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL& bHandled) { 
    729718        mainFrame->showHelpView(ID_HELP_WAVETABLEVIEW); 
  • trunk/src/buzelib/WaveTableView.h

    r1273 r1281  
    6363 
    6464class CWaveTableView  
    65     : public CViewImpl<CMainFrame, CDocument, CWaveTableView> 
    66     , public CToolbarWindow<CWaveTableView>  
    67     , public CIdleHandler 
    68         , public zzub::event_handler 
     65        : public CViewImpl<CMainFrame, CDocument, CWaveTableView> 
     66        , public CToolbarWindow<CWaveTableView>  
     67        , public CIdleHandler 
    6968{ 
    7069        ClientViewListener* clientViewListener; 
     
    9190        CWaveTableRecordTabView recordTab; 
    9291 
    93     CMainFrame* mainFrame; 
     92        CMainFrame* mainFrame; 
    9493 
    9594        DECLARE_WND_SUPERCLASS("WaveTableView", CToolbarWindow<CWaveTableView>::GetWndClassName() ) 
     
    130129                COMMAND_ID_HANDLER(ID_VIEW_PROPERTIES, OnViewProperties) 
    131130 
    132         COMMAND_ID_HANDLER(ID_WAVE_ZOOM_SAMPLES, OnZoomSamples) 
    133         COMMAND_ID_HANDLER(ID_WAVE_ZOOM_SECONDS, OnZoomSeconds) 
    134         COMMAND_ID_HANDLER(ID_WAVE_ZOOM_TICKS, OnZoomTicks) 
    135         COMMAND_ID_HANDLER(ID_WAVE_ZOOM_IN, OnZoomIn) 
    136         COMMAND_ID_HANDLER(ID_WAVE_ZOOM_OUT, OnZoomOut) 
    137         COMMAND_ID_HANDLER(ID_WAVE_ZOOM_SELECTION, OnZoomSelection) 
    138         COMMAND_ID_HANDLER(ID_WAVE_ZOOM_ALL, OnZoomAll) 
     131                COMMAND_ID_HANDLER(ID_WAVE_ZOOM_SAMPLES, OnZoomSamples) 
     132                COMMAND_ID_HANDLER(ID_WAVE_ZOOM_SECONDS, OnZoomSeconds) 
     133                COMMAND_ID_HANDLER(ID_WAVE_ZOOM_TICKS, OnZoomTicks) 
     134                COMMAND_ID_HANDLER(ID_WAVE_ZOOM_IN, OnZoomIn) 
     135                COMMAND_ID_HANDLER(ID_WAVE_ZOOM_OUT, OnZoomOut) 
     136                COMMAND_ID_HANDLER(ID_WAVE_ZOOM_SELECTION, OnZoomSelection) 
     137                COMMAND_ID_HANDLER(ID_WAVE_ZOOM_ALL, OnZoomAll) 
    139138 
    140139                NOTIFY_HANDLER(IDC_WAVETABS, TCN_SELCHANGE, OnTcnSelchangeWavetab) 
     
    184183 
    185184        virtual BOOL OnIdle(); 
    186     void OnUpdate(CView* pSender, LPARAM lHint, LPVOID pHint); 
    187     bool invoke(zzub_event_data_t& data); 
     185        void OnUpdate(CView* pSender, LPARAM lHint, LPVOID pHint); 
    188186 
    189187        zzub::wave_info_ex* getSelectedWave(); 
    190188        int getSelectedWaveLevel(); 
    191     int getSelectedWaveIndex(); 
     189        int getSelectedWaveIndex(); 
    192190        void setEnvelope(int numPoints, int sustainIndex, long* points); 
    193191        void setLoopingPoints(bool enabled, int beginSample, int endSample); 
     
    196194        void updateSelection(); 
    197195        void updateEntry(); 
    198     void updateToolbar(); 
     196        void updateToolbar(); 
    199197        bool isCtrlDown(); 
    200198        bool isShiftDown(); 
  • trunk/src/buzelib/buze.rc

    r1279 r1281  
    811811                                                    SHIFT, CONTROL, NOINVERT 
    812812    VK_OEM_PERIOD,  ID_PATTERNVIEW_CLEARENTRY, VIRTKEY, NOINVERT 
    813     VK_RETURN,      ID_PATTERNVIEW_PLAYROW, VIRTKEY, SHIFT, NOINVERT 
     813    "8",            ID_PATTERNVIEW_PLAYROW, VIRTKEY, SHIFT, NOINVERT 
    814814    VK_F5,          ID_PATTERN_PLAY,        VIRTKEY, SHIFT, NOINVERT 
    815815    VK_F6,          ID_PATTERN_PLAYFROMCURSOR, VIRTKEY, SHIFT, NOINVERT