/// <summary> /// パレットツールを実行します /// </summary> /// <param name="id">実行するパレットツールのID</param> /// <param name="track">編集対象のトラック番号</param> /// <param name="vsq_event_intrenal_ids">編集対象のInternalIDのリスト</param> /// <param name="button">パレットツールが押し下げられた時のマウスボタンの種類</param> /// <returns>パレットツールによって編集が加えられた場合true。そうでなければfalse(パレットツールがエラーを起こした場合も含む)。</returns> public static boolean invokePaletteTool( String id, int track, int[] vsq_event_intrenal_ids, MouseButtons button ) { if ( loadedTools.containsKey( id ) ) { VsqFileEx vsq = AppManager.getVsqFile(); VsqTrack item = (VsqTrack)vsq.Track.get( track ).clone(); Object objPal = loadedTools.get( id ); if ( objPal == null ) { return false; } if ( !(objPal is IPaletteTool) ) { return false; } IPaletteTool pal = (IPaletteTool)objPal; boolean edited = false; try { edited = pal.edit( item, vsq_event_intrenal_ids, button ); } catch ( Exception ex ) { AppManager.showMessageBox( PortUtil.formatMessage( _( "Palette tool '{0}' reported an error.\nPlease copy the exception text and report it to developper." ), id ), "Error", cadencii.windows.forms.Utility.MSGBOX_DEFAULT_OPTION, cadencii.windows.forms.Utility.MSGBOX_ERROR_MESSAGE ); serr.println( typeof( PaletteToolServer ) + ".invokePaletteTool; ex=" + ex ); edited = false; } if ( edited ) { CadenciiCommand run = VsqFileEx.generateCommandTrackReplace( track, item, vsq.AttachedCurves.get( track - 1 ) ); AppManager.editHistory.register( vsq.executeCommand( run ) ); } return edited; } else { return false; } }
public void btnFlip_Click(Object sender, EventArgs e) { m_credit_mode = !m_credit_mode; if (m_credit_mode) { try { btnFlip.Text = PortUtil.formatMessage(_("About {0}"), m_app_name); } catch (Exception ex) { btnFlip.Text = "About " + m_app_name; } m_scroll_started = PortUtil.getCurrentTime(); m_last_speed = 0f; m_last_t = 0f; m_shift = 0f; pictVstLogo.Visible = false; lblVstLogo.Visible = false; chkTwitterID.Visible = true; timer.Start(); } else { timer.Stop(); btnFlip.Text = _("Credit"); pictVstLogo.Visible = true; lblVstLogo.Visible = true; chkTwitterID.Visible = false; } this.Refresh(); }
public void applyLanguage() { string about = PortUtil.formatMessage(_("About {0}"), m_app_name); string credit = _("Credit"); Dimension size1 = Util.measureString(about, btnFlip.Font); Dimension size2 = Util.measureString(credit, btnFlip.Font); m_button_width_about = Math.Max(75, (int)(size1.width * 1.3)); m_button_width_credit = Math.Max(75, (int)(size2.width * 1.3)); if (m_credit_mode) { btnFlip.Size = new System.Drawing.Size(m_button_width_about, btnFlip.Height); btnFlip.Text = about; } else { btnFlip.Size = new System.Drawing.Size(m_button_width_credit, btnFlip.Height); btnFlip.Text = credit; } this.Text = about; }