void TranscriptionToolBar::OnEndOff(wxCommandEvent & WXUNUSED(event)) { //If IO is busy, abort immediately if (gAudioIO->IsBusy()){ SetButton(false,mButtons[TTB_EndOff]); return; } mVk->AdjustThreshold(GetSensitivity()); AudacityProject *p = GetActiveProject(); auto t = *p->GetTracks()->Any< const WaveTrack >().begin(); if(t) { auto wt = static_cast<const WaveTrack*>(t); sampleCount start, len; GetSamples(wt, &start, &len); //Adjust length to end if selection is null if(len == 0) { len = start; start = 0; } auto newEnd = mVk->OffBackward(*wt, start + len, len); double newpos = newEnd.as_double() / wt->GetRate(); p->SetSel1(newpos); p->RedrawProject(); SetButton(false, mButtons[TTB_EndOff]); } }
void TranscriptionToolBar::OnStartOff(wxCommandEvent & WXUNUSED(event)) { //If IO is busy, abort immediately if (gAudioIO->IsBusy()){ SetButton(false,mButtons[TTB_StartOff]); return; } mVk->AdjustThreshold(GetSensitivity()); AudacityProject *p = GetActiveProject(); TrackList *tl = p->GetTracks(); TrackListOfKindIterator iter(Track::Wave, tl); SetButton(false, mButtons[TTB_StartOff]); Track *t = iter.First(); //Make a track if(t) { auto wt = static_cast<const WaveTrack*>(t); sampleCount start, len; GetSamples(wt, &start, &len); //Adjust length to end if selection is null //if(len == 0) //len = wt->GetSequence()->GetNumSamples()-start; auto newstart = mVk->OffForward(*wt, start, len); double newpos = newstart.as_double() / wt->GetRate(); p->SetSel0(newpos); p->RedrawProject(); SetButton(false, mButtons[TTB_StartOn]); } }
short ShioHtsClick(DialogPtr dialog, short itemNum, long lParam, VOIDPTR data) { switch (itemNum) { case SHIOHTSCANCEL: return SHIOHTSCANCEL; case SHIOHTSOK: sDialogStandingWave = GetButton (dialog, SHIOHTSSTANDINGWAVE); sDialogScaleFactor = EditText2Float(dialog, SHIOHTSSCALEFACTOR); return itemNum; case SHIOHTSSTANDINGWAVE: // ToggleButton(dialog, itemNum); // ToggleButton(dialog, SHIOHTSPROGRESSIVEWAVE); //CheckNumberTextItem(dialog, itemNum, FALSE); // break; case SHIOHTSPROGRESSIVEWAVE: SetButton(dialog, SHIOHTSSTANDINGWAVE, itemNum == SHIOHTSSTANDINGWAVE); SetButton(dialog, SHIOHTSPROGRESSIVEWAVE, itemNum == SHIOHTSPROGRESSIVEWAVE); //ToggleButton(dialog, itemNum); // ToggleButton(dialog, SHIOHTSSTANDINGWAVE); //CheckNumberTextItem(dialog, itemNum, FALSE); break; case SHIOHTSSCALEFACTOR: CheckNumberTextItem(dialog, itemNum, TRUE); break; } return 0; }
void TranscriptionToolBar::OnStartOff(wxCommandEvent & WXUNUSED(event)) { //If IO is busy, abort immediately if (gAudioIO->IsBusy()){ SetButton(false,mButtons[TTB_StartOff]); return; } mVk->AdjustThreshold(GetSensitivity()); AudacityProject *p = GetActiveProject(); SetButton(false, mButtons[TTB_StartOff]); auto t = *p->GetTracks()->Any< const WaveTrack >().begin(); if(t) { auto wt = static_cast<const WaveTrack*>(t); sampleCount start, len; GetSamples(wt, &start, &len); //Adjust length to end if selection is null //if(len == 0) //len = wt->GetSequence()->GetNumSamples()-start; auto newstart = mVk->OffForward(*wt, start, len); double newpos = newstart.as_double() / wt->GetRate(); auto &selectedRegion = p->GetViewInfo().selectedRegion; selectedRegion.setT0( newpos ); p->RedrawProject(); SetButton(false, mButtons[TTB_StartOn]); } }
void TranscriptionToolBar::OnEndOff(wxCommandEvent & WXUNUSED(event)) { //If IO is busy, abort immediately if (gAudioIO->IsBusy()){ SetButton(false,mButtons[TTB_EndOff]); return; } mVk->AdjustThreshold(GetSensitivity()); AudacityProject *p = GetActiveProject(); TrackList *tl = p->GetTracks(); TrackListOfKindIterator iter(Track::Wave, tl); Track *t = iter.First(); //Make a track if(t) { sampleCount start,len; GetSamples((WaveTrack*)t, &start,&len); //Adjust length to end if selection is null if(len == 0) { len = start; start = 0; } sampleCount newEnd = mVk->OffBackward(*(WaveTrack*)t,start+ len,len); double newpos = newEnd / ((WaveTrack*)t)->GetRate(); p->SetSel1(newpos); p->RedrawProject(); SetButton(false, mButtons[TTB_EndOff]); } }
void TwoFieldDatePickerDialog::Init( /* [in] */ IContext* context, /* [in] */ Int32 theme, /* [in] */ OnValueSetListener* callBack, /* [in] */ Int32 year, /* [in] */ Int32 positionInYear, /* [in] */ Double minValue, /* [in] */ Double maxValue) { AlertDialog::constructor(context, theme); mCallBack = callBack; AutoPtr<ICharSequence> setText; context->GetText( R::string::date_picker_dialog_set, (ICharSequence**)&setText); SetButton(BUTTON_POSITIVE, setText, this); AutoPtr<ICharSequence> cancelText; context->GetText(Elastos::Droid::R::string::cancel, (ICharSequence**)&cancelText); SetButton(BUTTON_NEGATIVE, cancelText, (IDialogInterfaceOnClickListener*) NULL); SetIcon(0); mPicker = CreatePicker(context, minValue, maxValue); SetView(IView::Probe(mPicker)); mPicker->Init(year, positionInYear, this); }
int *IPDialog(char message[80],char *text,void (*option)()) { int i; char letter[2]; hud.numbuttons = 14; hud.buttonfocus = 0; hud.subwindow = 1; hud.subwindowinfo = strlen(text); hud.readyreturn = -1; hud.optionrun[0] = option; hud.editstring = text; strncpy(hud.windowheader,message,80); for(i = 0;i < 10;i++) { sprintf(letter,"%c",'0' + i); SetButton(&hud.buttons[i],BI_Letter + i,(SDLK_0 + i),letter,NULL,NULL,NULL,NULL,48 + (24 *(i % 6)),56 + (24 *(i / 6)),16,16,1,0); } i = 10; SetButton(&hud.buttons[i],BI_Letter + i,SDLK_PERIOD,".",NULL,NULL,NULL,NULL,48 + (24 *(i % 6)),56 + (24 *(i / 6)),16,16,1,0); SetButton(&hud.buttons[11],BI_OK,SDLK_RETURN,"Done",NULL,NULL,NULL,NULL,122,240,74,64,1,0); SetButton(&hud.buttons[12],BI_Prev,SDLK_BACKSPACE," ",buttonarrows[0],buttonarrows[0], buttonarrows[1], buttonarrows[2],100,194,16,16,1,1); SetButton(&hud.buttons[13],BI_Next,SDLK_SPACE," ",buttonarrows[0],buttonarrows[0], buttonarrows[1], buttonarrows[2],124,194,16,16,1,3); hud.windowdraw = DrawTextWindow; hud.windowupdate = UpdateIPWindow; return &hud.readyreturn; }
void HintBox::SetHintStrength(void) { SetButton(IDC_RADIO_NONE, mStrength == HINT_NONE); SetButton(IDC_RADIO_EMPTY, mStrength == HINT_EMPTY); SetButton(IDC_RADIO_CONNECTED, mStrength == HINT_CONNECTED); SetButton(IDC_RADIO_USABLE_ANY, mStrength == HINT_USABLE_ANY); SetButton(IDC_RADIO_USABLE_SELECTED, mStrength == HINT_USABLE_SELECTED); }
void SetupMainMenu() { hud.numbuttons = 3; hud.buttonfocus = 0; SetButton(&hud.buttons[0],BI_NewGame,-1,"New",buttonsprites[2],buttonsprites[0],buttonsprites[1], buttonsprites[2],4,152,74,64,1,0); SetButton(&hud.buttons[1],BI_LoadGame,-1,"Load",buttonsprites[0],buttonsprites[0],buttonsprites[1], buttonsprites[2],82,152,74,64,1,0); SetButton(&hud.buttons[2],BI_Quit,-1,"Quit",buttonsprites[0],buttonsprites[0],buttonsprites[1], buttonsprites[2],160,152,74,64,1,0); }
BOOL CToolbarHelper::SetDropButton(UINT nBtnCmdID, UINT nMenuID, int nSubMenu, UINT nDefCmdID, char cHotkey) { THButton dm = { 0 }; if (m_mapTHButtons.Lookup(nBtnCmdID, dm)) return SetButton(nBtnCmdID, nMenuID, nSubMenu, nDefCmdID, cHotkey, dm.szTip); else return SetButton(nBtnCmdID, nMenuID, nSubMenu, nDefCmdID, cHotkey, _T("")); }
BOOL CToolbarHelper::SetTooltip(UINT nBtnCmdID, LPCTSTR szTip) { THButton dm = { 0 }; if (m_mapTHButtons.Lookup(nBtnCmdID, dm)) return SetButton(nBtnCmdID, dm.nMenuID, dm.nSubMenu, dm.nDefCmdID, dm.cHotKey, szTip); else return SetButton(nBtnCmdID, 0, 0, 0, 0, szTip); }
void SetupElementWindow(int startwin) { hud.numbuttons = 3; hud.buttonfocus = 2; hud.subwindow = 1; hud.subwindowinfo = startwin; SetButton(&hud.buttons[0],BI_CloseWin,-1," ",buttonarrows[0],buttonarrows[0], buttonarrows[1], buttonarrows[2],172,38,16,16,1,5); SetButton(&hud.buttons[1],BI_Prev,-1," ",buttonarrows[0],buttonarrows[0], buttonarrows[1], buttonarrows[2],38,130,16,16,1,1); SetButton(&hud.buttons[2],BI_Next,-1," ",buttonarrows[2],buttonarrows[0], buttonarrows[1], buttonarrows[2],186,130,16,16,1,3); hud.windowdraw = DrawElementWindow; hud.windowupdate = UpdateElementWindow; }
OSErr ShioHtsInit(DialogPtr dialog, VOIDPTR data) { #pragma unused(data) SetButton (dialog, SHIOHTSSTANDINGWAVE, sDialogStandingWave); SetButton (dialog, SHIOHTSPROGRESSIVEWAVE, !sDialogStandingWave); Float2EditText (dialog, SHIOHTSSCALEFACTOR, sDialogScaleFactor, 0); ShowHideDialogItem(dialog, SHIOHTSSCALEFACTOR, false ); ShowHideDialogItem(dialog, SHIOHTSSCALEFACTORLABEL, false); return 0; }
int *YesNo(char message[80],void (*option1)(),void (*option2)()) { hud.numbuttons = 2; hud.buttonfocus = 0; hud.subwindow = 1; hud.readyreturn = -1; hud.optionrun[0] = option1; hud.optionrun[1] = option2; strncpy(hud.windowheader,message,80); SetButton(&hud.buttons[0],BI_Yes, -1,"Yes",buttonsprites[2],buttonsprites[0],buttonsprites[1], buttonsprites[2],44,90,74,64,1,0); SetButton(&hud.buttons[1],BI_No, -1,"No",buttonsprites[2],buttonsprites[0],buttonsprites[1], buttonsprites[2],122,90,74,64,1,0); hud.windowdraw = DrawYesNoWindow; hud.windowupdate = UpdateYesNoWindow; return &hud.readyreturn; }
bool ChartXY::MouseButtonReleaseEvent(const vtkContextMouseEvent & mouse) { // single selection, equivalent with picking events in RenderViewStrategy subclasses bool singleSelectionEvent = !m_mouseMoved && (mouse.GetButton() == vtkContextMouseEvent::LEFT_BUTTON); if (!singleSelectionEvent) { return vtkChartXY::MouseButtonReleaseEvent(mouse); } // clear previous selection first (as for RenderViewStrategy) for (vtkIdType i = 0; i < this->GetNumberOfPlots(); ++i) { this->GetPlot(i)->SetSelection(nullptr); } auto staticClick = mouse; staticClick.SetButton(this->Actions.Select()); auto retVal = vtkChartXY::MouseButtonReleaseEvent(staticClick); this->InvokeEvent(PlotSelectedEvent, reinterpret_cast<void *>(selectedPlot())); return retVal; }
int Window_( lua_State* L ) { UIWindow* window = new UIWindow; SetName(L, window); SetTopLeftWidthHeight(L, window); SetTooltip(L, window); SetAnim(L, window, UIPanel::NORMAL_ANIM_, "normalAnim"); SetAnim(L, window, UIPanel::DISABLED_ANIM_, "disabledAnim"); SetTextUserData(L, window); AddWidget(L, window); // 配置关闭按钮 if (util::HasField(L, "closeBtn")) { lua_pushstring(L, "closeBtn"); lua_gettable(L, -2); if (lua_istable(L, -1)) SetButton(L, window->GetCloseButton()); lua_pop(L, 1); } SetAlpha(L, window); lua_pushlightuserdata(L, window); return 1; }
void __fastcall TSmallTypeForm::FormShow(TObject *Sender) { SetDefault(); ListView1->Items->Clear(); if (rights==0) SetButton(0,0,0,0,0,0,1,1); Screen->Cursor= crHourGlass; if (!prtform) { try { prtform= new TTypePrtForm(Application); } catch(...) { prtform=NULL; } } Screen->Cursor=crDefault; smtype = new TStringList; strsql =AnsiString("select * from dicmiddletype order by mt_code "); if (DoQuery(dm1->Query1,strsql)) { if (!dm1->Query1->IsEmpty()) { cbmtype->Items->Clear(); while (!dm1->Query1->Eof) { smtype->Add(dm1->Query1->FieldByName("mt_code")->AsString); cbmtype->Items->Add(dm1->Query1->FieldByName("mt_name")->AsString); dm1->Query1->Next(); } } } }
void _XWindow_Rebirth::SetCastleBattleState(BOOL battle) { #ifdef ALL_RB_REBIRTHWINDOW_RENEWAL_071109_KUKURI m_bCastleBattle = battle; SetButton(); #else if(m_ShowWindow) { if(!battle) { m_TownButton->EnableWindow(TRUE); m_FieldButton->EnableWindow(TRUE); m_SavePointButton->EnableWindow(TRUE); m_UseItemButton->EnableWindow(TRUE); } else { if(m_ShowWindow) { m_TownButton->EnableWindow(FALSE); m_FieldButton->EnableWindow(FALSE); m_SavePointButton->EnableWindow(FALSE); } } } m_bCastleBattle = battle; #endif }
int *TwoOptions(char message[80],char op1[80],char op2[80],void (*option1)(),void (*option2)()) { hud.numbuttons = 3; hud.buttonfocus = 0; hud.subwindow = 1; hud.readyreturn = -1; hud.optionrun[0] = option1; hud.optionrun[1] = option2; strncpy(hud.windowheader,message,80); SetButton(&hud.buttons[0],BI_Yes, -1,op1,buttonsprites[2],buttonsprites[0],buttonsprites[1], buttonsprites[2],44,90,74,64,1,0); SetButton(&hud.buttons[1],BI_No, -1,op2,buttonsprites[2],buttonsprites[0],buttonsprites[1], buttonsprites[2],122,90,74,64,1,0); SetButton(&hud.buttons[2],BI_CloseWin, -1," ",buttonarrows[0],buttonarrows[0], buttonarrows[1], buttonarrows[2],182,68,16,16,1,5); hud.windowdraw = DrawYesNoWindow; hud.windowupdate = UpdateYesNoWindow; return &hud.readyreturn; }
void TicTacToe::Reset() { QPushButton *b; b = ui->TopLeft_Button; SetButton(&b,""); ui->TopLeft_Button = b; b = ui->TopMiddle_Button; SetButton(&b,""); ui->TopMiddle_Button = b; b = ui->TopRight_Button; SetButton(&b,""); ui->TopRight_Button = b; b = ui->MiddleLeft_Button; SetButton(&b,""); ui->MiddleLeft_Button = b; b = ui->MiddleMiddle_Button; SetButton(&b,""); ui->MiddleMiddle_Button = b; b = ui->MiddleRight_Button; SetButton(&b,""); ui->MiddleRight_Button = b; b = ui->BottomLeft_Button; SetButton(&b,""); ui->BottomLeft_Button = b; b = ui->BottomMiddle_Button; SetButton(&b,""); ui->BottomMiddle_Button = b; b = ui->BottomRight_Button; SetButton(&b,""); ui->BottomRight_Button = b; connect(ui->TopLeft_Button, SIGNAL(pressed()),this,SLOT(PressTopLeft())); connect(ui->TopMiddle_Button, SIGNAL(pressed()),this,SLOT(PressTopMiddle())); connect(ui->TopRight_Button, SIGNAL(pressed()),this,SLOT(PressTopRight())); connect(ui->MiddleLeft_Button,SIGNAL(pressed()),this,SLOT(PressMiddleLeft())); connect(ui->MiddleMiddle_Button,SIGNAL(pressed()),this,SLOT(PressMiddleMiddle())); connect(ui->MiddleRight_Button,SIGNAL(pressed()),this,SLOT(PressMiddleRight())); connect(ui->BottomLeft_Button,SIGNAL(pressed()),this,SLOT(PressBottomLeft())); connect(ui->BottomMiddle_Button,SIGNAL(pressed()),this,SLOT(PressBottomMiddle())); connect(ui->BottomRight_Button,SIGNAL(pressed()),this,SLOT(PressBottomRight())); is_X = true; winner = 0; }
void TranscriptionToolBar::OnCalibrate(wxCommandEvent & WXUNUSED(event)) { //If IO is busy, abort immediately if (gAudioIO->IsBusy()){ SetButton(false,mButtons[TTB_Calibrate]); return; } AudacityProject *p = GetActiveProject(); TrackList *tl = p->GetTracks(); TrackListOfKindIterator iter(Track::Wave, tl); Track *t = iter.First(); //Get a track if(t) { auto wt = static_cast<const WaveTrack*>(t); sampleCount start, len; GetSamples(wt, &start, &len); mVk->CalibrateNoise(*wt, start, len); mVk->AdjustThreshold(3); mButtons[TTB_StartOn]->Enable(); mButtons[TTB_StartOff]->Enable(); mButtons[TTB_EndOn]->Enable(); mButtons[TTB_EndOff]->Enable(); //mThresholdSensitivity->Set(3); SetButton(false,mButtons[TTB_Calibrate]); } mButtons[TTB_StartOn]->Enable(); mButtons[TTB_StartOff]->Enable(); mButtons[TTB_EndOn]->Enable(); mButtons[TTB_EndOff]->Enable(); mButtons[TTB_SelectSound]->Enable(); mButtons[TTB_SelectSilence]->Enable(); mButtons[TTB_AutomateSelection]->Enable(); //Make the sensititivy slider set the sensitivity by processing an event. wxCommandEvent dummy; OnSensitivitySlider(dummy); }
void EditToolBar::OnButton(wxCommandEvent &event) { AudacityProject *p = GetActiveProject(); if (!p) return; bool busy = gAudioIO->IsBusy(); int id = event.GetId(); switch (id) { case ETBCutID: if (!busy) p->OnCut(); break; case ETBCopyID: if (!busy) p->OnCopy(); break; case ETBPasteID: if (!busy) p->OnPaste(); break; case ETBTrimID: if (!busy) p->OnTrim(); break; case ETBSilenceID: if (!busy) p->OnSilence(); break; case ETBUndoID: if (!busy) p->OnUndo(); break; case ETBRedoID: if (!busy) p->OnRedo(); break; #ifdef EXPERIMENTAL_LINKING case ETBLinkID: if (!busy) p->OnStickyLabel(); return;//avoiding the call to SetButton() #endif case ETBZoomInID: p->OnZoomIn(); break; case ETBZoomOutID: p->OnZoomOut(); break; #if 0 // Disabled for version 1.2.0 since it doesn't work quite right... case ETBZoomToggleID: p->OnZoomToggle(); break; #endif case ETBZoomSelID: p->OnZoomSel(); break; case ETBZoomFitID: p->OnZoomFit(); break; } SetButton(false, mButtons[id]); }
/** * @brief Gets the cache value of the trigger (button 1) of a joystick. * @param joy_id Which joystick to retrieve the trigger status for. * @param reset Whether to reset the button's value after being called. * @return The last read current value */ bool Proxy166::GetTrigger(int joy_id, bool reset) { wpi_assert(joy_id < NUMBER_OF_JOYSTICKS && joy_id >= 0); bool bid = GetButton(joy_id,1); // reset the button so actions are triggered only once if (reset) { SetButton(joy_id, 1, 0); } return bid; }
static void LoseSelection(Widget w, Atom *selection) { if (options.value) { XFree( options.value ); options.value = NULL; } SetButton(&state, False); }
OSErr GridWindInit(DialogPtr dialog, VOIDPTR data) { RegisterPopTable (GridWindMoverPopTable, sizeof (GridWindMoverPopTable) / sizeof (PopInfoRec)); RegisterPopUpDialog(M18b, dialog); SetDialogItemHandle(dialog, M18HILITEDEFAULT, (Handle)FrameDefault); //mysetitext(dialog, M18bFILENAME, sharedWMover->fFileName); // use short file name for now mysetitext(dialog, M18bFILENAME, sharedWMover->timeGrid->fVar.userName); // use short file name for now SetButton(dialog, M18ACTIVE, sharedWMover->bActive); SetPopSelection (dialog, M18ANGLEUNITSPOPUP, 1); if (sharedWMover->timeGrid->fTimeShift == 0) SetPopSelection (dialog, M18bTIMEZONEPOPUP, 1); else SetPopSelection (dialog, M18bTIMEZONEPOPUP, 2); //Long2EditText(dialog, M33TIMESHIFT, (long) (-1.*sNetCDFDialogMover->fTimeShift/3600.)); Float2EditText(dialog, M18bTIMESHIFT, (float)(sharedWMover->timeGrid->fTimeShift)/3600.,1); SetButton(dialog, M18bSHOWARROWS, sharedWMover->bShowArrows); Float2EditText(dialog, M18bARROWSCALE, sharedWMover->fArrowScale, 6); Float2EditText(dialog, M18SPEEDSCALE, sharedWMover->fSpeedScale, 4); Float2EditText(dialog, M18ANGLESCALE, sharedWMover->fAngleScale, 4); Float2EditText(dialog, M18DURATION, sharedWMover->fDuration / 3600.0, 2); Float2EditText(dialog, M18UNCERTAINSTARTTIME, sharedWMover->fUncertainStartTime / 3600.0, 2); MySelectDialogItemText(dialog, M18SPEEDSCALE, 0, 255); //ShowHideDialogItem(dialog,M18ANGLEUNITSPOPUP,false); // for now don't allow the units option here //SetButton(dialog, M18bEXTRAPOLATECHECKBOX, sharedWMover->fAllowExtrapolationInTime); SetButton(dialog, M18bEXTRAPOLATECHECKBOX, sharedWMover->timeGrid->fAllowExtrapolationInTime); ShowGridWindMoverDialogItems(dialog); //if (sharedWMover->fTimeShift == 0) MySelectDialogItemText(dialog, M33ALONG, 0, 100); //else MySelectDialogItemText(dialog, M18bTIMESHIFT, 0, 100); if (sharedWMover->timeGrid->fTimeShift != 0) MySelectDialogItemText(dialog, M18bTIMESHIFT, 0, 100); //SetDialogItemHandle(dialog,M18SETTINGSFRAME,(Handle)FrameEmbossed); SetDialogItemHandle(dialog,M18UNCERTAINFRAME,(Handle)FrameEmbossed); return 0; }
// for WIDGET_CONTROL void SetButtonWidget( bool onOff) { if( wxWidget != NULL) { switch( buttonType) { case RADIO: { SetButton( onOff); wxRadioButton* radioButton = static_cast<wxRadioButton*>(wxWidget); radioButton->SetValue(onOff); break; } case CHECKBOX: { SetButton( onOff); wxCheckBox* checkBox = static_cast<wxCheckBox*>(wxWidget); checkBox->SetValue(onOff); break; } } } }
// Come here from button clicks, or commands void TranscriptionToolBar::PlayAtSpeed(bool looped, bool cutPreview) { // Can't do anything without an active project AudacityProject * p = GetActiveProject(); if (!p) { return; } // Create a TimeTrack if we haven't done so already if (!mTimeTrack) { mTimeTrack = p->GetTrackFactory()->NewTimeTrack(); if (!mTimeTrack) { return; } } // Pop up the button SetButton(false, mButtons[TTB_PlaySpeed]); // If IO is busy, abort immediately if (gAudioIO->IsBusy()) { p->GetControlToolBar()->StopPlaying(); } // Set the speed range //mTimeTrack->SetRangeUpper((double)mPlaySpeed / 100.0); //mTimeTrack->SetRangeLower((double)mPlaySpeed / 100.0); mTimeTrack->GetEnvelope()->Flatten((double)mPlaySpeed / 100.0); // Get the current play region double playRegionStart, playRegionEnd; p->GetPlayRegion(&playRegionStart, &playRegionEnd); // Start playing if (playRegionStart >= 0) { // playRegionEnd = playRegionStart + (playRegionEnd-playRegionStart)* 100.0/mPlaySpeed; #ifdef EXPERIMENTAL_MIDI_OUT gAudioIO->SetMidiPlaySpeed(mPlaySpeed); #endif AudioIOStartStreamOptions options(p->GetDefaultPlayOptions()); options.playLooped = looped; options.timeTrack = mTimeTrack.get(); ControlToolBar::PlayAppearance appearance = cutPreview ? ControlToolBar::PlayAppearance::CutPreview : looped ? ControlToolBar::PlayAppearance::Looped : ControlToolBar::PlayAppearance::Straight; p->GetControlToolBar()->PlayPlayRegion (SelectedRegion(playRegionStart, playRegionEnd), options, PlayMode::normalPlay, appearance); } }
void TranscriptionToolBar::OnSelectSound(wxCommandEvent & WXUNUSED(event)) { //If IO is busy, abort immediately if (gAudioIO->IsBusy()){ SetButton(false,mButtons[TTB_SelectSound]); return; } mVk->AdjustThreshold(GetSensitivity()); AudacityProject *p = GetActiveProject(); TrackList *tl = p->GetTracks(); TrackListIterator iter(tl); Track *t = iter.First(); //Make a track if(t) { sampleCount start,len; GetSamples((WaveTrack*)t, &start,&len); //Adjust length to end if selection is null //if(len == 0) //len = (WaveTrack*)t->GetSequence()->GetNumSamples()-start; double rate = ((WaveTrack*)t)->GetRate(); sampleCount newstart = mVk->OffBackward(*(WaveTrack*)t,start,start); sampleCount newend = mVk->OffForward(*(WaveTrack*)t,start+len,(int)(tl->GetEndTime()*rate)); //reset the selection bounds. p->SetSel0(newstart / rate); p->SetSel1(newend / rate); p->RedrawProject(); } SetButton(false,mButtons[TTB_SelectSound]); }
/* ARGSUSED */ static void GetBuffer(Widget w, XtPointer closure, XtPointer callData) { if (options.value) XFree( options.value ); options.value = XFetchBuffer(XtDisplay(w), &options.length, options.buffer); if (options.value != NULL) { if (XtOwnSelection(w, options.selection, XtLastTimestampProcessed(XtDisplay(w)), ConvertSelection, LoseSelection, NULL)) SetButton((ButtonState*)closure, True); } }
void InfoWindow(char title[80],Sprite *image,int frame,char description[120]) { hud.numbuttons = 1; hud.buttonfocus = 0; hud.subwindow = 1; hud.subwindowinfo = frame; hud.image = image; strncpy(hud.windowheader,title,80); strncpy(hud.description,description,80); SetButton(&hud.buttons[0],BI_CloseWin, -1," ",buttonarrows[0],buttonarrows[0], buttonarrows[1], buttonarrows[2],182,18,16,16,1,5); hud.windowdraw = DrawInfoWin; hud.windowupdate = CloseWin; }