private static void updateColor(IEditControl c, QCheckBox cb) { updateColor(c, cb.Checked); if (c is IWatermarkable) { (c as IWatermarkable).WatermarkEnabled = !cb.Checked; c.ForeColor = cb.Checked ? Color.Black : Styles.Watermark; } }
public QCheckedMessageBox(IWin32Window Owner, string Text, string Title, QMessageBoxButtons Buttons, QMessageBoxIcon Icon, QMessageBoxButton DefaultButton, string CheckboxText, bool Checked) : base(Text, Title, Buttons, Icon, DefaultButton) { chkCheckbox = new QCheckBox(CheckboxText, this.BackColor); chkCheckbox.Location = new Point(MARGIN, btnOK.Bottom + SPACING); chkCheckbox.Checked = Checked; this.Controls.Add(chkCheckbox); this.ClientSize = new Size(Math.Max(this.ClientRectangle.Width, chkCheckbox.Right + MARGIN), chkCheckbox.Bottom + MARGIN); this.ShowDialog(Owner); }
public frmLock(QLock Lock) : base(Localization.Get(UI_Key.Lock_Title), ButtonCreateType.OKAndCancel) { this.ClientSize = new Size(400, 300); lblInstructions = new QLabel(Localization.Get(UI_Key.Lock_Instructions, Application.ProductName)); lblInstructions.Location = new Point(SPACING, SPACING); lblInstructions.SetWidth(this.ClientRectangle.Width - 2 * SPACING); this.Controls.Add(lblInstructions); chkMain = new QCheckBox(Localization.Get(UI_Key.Lock_Checkbox), this.BackColor); chkMain.Checked = Lock != null && Lock.Locked; chkMain.Location = new Point(2 * SPACING, lblInstructions.Bottom + SPACING); chkMain.CheckedChanged += new EventHandler(chkMainCheckedChanged); this.Controls.Add(chkMain); chkCode = new QCheckBox(Localization.Get(UI_Key.Lock_Code), this.BackColor); chkCode.Checked = (Lock != null) && (Lock.Code.Length > 0); chkCode.Location = new Point(3 * SPACING, chkMain.Bottom + SPACING); chkCode.CheckedChanged += (s, e) => { txtCode.Enabled = chkCode.Checked; }; this.Controls.Add(chkCode); txtCode = new QTextBox(); txtCode.Text = (Lock != null) ? Lock.Code : String.Empty; txtCode.MaxLength = QLock.MAX_CODE_LENGTH; txtCode.Location = new Point(chkCode.Right + SPACING, chkCode.Top + chkCode.Height / 2 - txtCode.Height / 2 + 2); txtCode.Enabled = chkCode.Checked; this.Controls.Add(txtCode); chkGamepadLock = new QCheckBox(Localization.Get(UI_Key.Lock_Gamepad), this.BackColor); chkGamepadLock.Checked = (Lock != null) && Lock.GamepadLock; chkGamepadLock.Location = new Point(3 * SPACING, chkCode.Bottom + SPACING); this.Controls.Add(chkGamepadLock); //btnCancel.Location = new Point(this.ClientRectangle.Width - btnCancel.Width - SPACING, chkGamepadLock.Bottom + SPACING); //btnOK.Location = new Point(btnCancel.Left - btnOK.Width - SPACING, btnCancel.Top); PlaceButtons(this.ClientRectangle.Width, chkGamepadLock.Bottom + SPACING); this.ClientSize = new Size(this.ClientRectangle.Width, btnOK.Bottom + SPACING); this.chkMainCheckedChanged(this, EventArgs.Empty); int tabIndex = 0; chkMain.TabIndex = tabIndex++; chkCode.TabIndex = tabIndex++; txtCode.TabIndex = tabIndex++; chkGamepadLock.TabIndex = tabIndex++; btnOK.TabIndex = tabIndex++; btnCancel.TabIndex = tabIndex++; }
private void updateColor(object sender, EventArgs e) { if (isMultiple) { IEditControl c = checkboxes.First(kvp => kvp.Value.Equals(sender)).Key; QCheckBox cb = sender as QCheckBox; updateColor(c, cb); } else { IEditControl it = sender as IEditControl; it.Highlighted = it.Changed; } }
private void setupArtwork() { if (art == null) { art = new Artwork(); art.BlankMessage = Localization.Get(UI_Key.Edit_Tags_Artwork_Blank_Message); art.DragEnter += artDragEnter; art.DragDrop += artDragDrop; art.MouseDown += artDoDrag; art.AllowDrop = true; art.OverlayInfo = true; this.Controls.Add(art); //if (isMultiple) { chkArt = new QCheckBox(String.Empty, this.BackColor); chkArt.CheckedChanged += (s, e) => { ImageDirty = chkArt.Checked; Dirty |= chkArt.Checked; }; this.Controls.Add(chkArt); } btnLoadArt = new QButton(Localization.Get(UI_Key.Edit_Tags_Load), false, true); btnLoadArt.ButtonPressed += (s) => { loadArt(); }; this.Controls.Add(btnLoadArt); btnClearArt = new QButton(Localization.Get(UI_Key.Edit_Tags_Clear), false, true); btnClearArt.ButtonPressed += (s) => { clearArt(); }; this.Controls.Add(btnClearArt); btnCopyArt = new QButton(Localization.Get(UI_Key.Edit_Tags_Copy), false, true); btnCopyArt.ButtonPressed += (s) => { copyArt(); }; this.Controls.Add(btnCopyArt); btnPasteArt = new QButton(Localization.Get(UI_Key.Edit_Tags_Paste), false, true); btnPasteArt.ButtonPressed += (s) => { pasteArt(); }; this.Controls.Add(btnPasteArt); } Image = null; art.CurrentTrack = tracks[0]; }
public frmSleep(Controller Controller) : base(Localization.Get(UI_Key.Sleep_Title), ButtonCreateType.OKAndCancel) { this.controller = Controller; this.SuspendLayout(); lblInstructions = new QLabel(Localization.Get(UI_Key.Sleep_Instructions, Application.ProductName)); lblInstructions.AutoSize = false; this.Controls.Add(lblInstructions); txtTime = new QSpin(true, true, Localization.Get(UI_Key.Sleep_Play_For_Another), Localization.Get(UI_Key.Sleep_Minutes), 1, 24 * 60, 60, 5, this.BackColor); txtTime.CheckedChanged += new EventHandler(txtTime_CheckedChanged); txtTime.ValueChanged += new EventHandler(txtTime_ValueChanged); this.Controls.Add(txtTime); lblAndThen = new QLabel(Localization.Get(UI_Key.Sleep_And_Then)); this.Controls.Add(lblAndThen); cboAction = new QComboBox(false); cboAction.Items.Add(SHUTDOWN_TEXT); cboAction.Items.Add(STANDBY_TEXT); cboAction.Items.Add(HIBERNATE_TEXT); cboAction.Items.Add(EXIT_TEXT); cboAction.SelectedIndexChanged += new EventHandler(cboAction_SelectedIndexChanged); cboAction.Width = TextRenderer.MeasureText(SHUTDOWN_TEXT, this.Font).Width + 40; this.Controls.Add(cboAction); txtFadeTime = new QSpin(true, true, Localization.Get(UI_Key.Sleep_Gradually_Reduce_Volume_After), Localization.Get(UI_Key.Sleep_Minutes), 0, 24 * 60, 0, 5, this.BackColor); txtFadeTime.ValueChanged += new EventHandler(txtFadeTime_ValueChanged); this.Controls.Add(txtFadeTime); chkForce = new QCheckBox(Localization.Get(UI_Key.Sleep_Force_Shutdown), this.BackColor); chkForce.EnabledChanged += (s, e) => { this.Invalidate(); }; this.Controls.Add(chkForce); Sleep = new Sleep(controller); txtFadeTime_ValueChanged(this, EventArgs.Empty); txtTime_ValueChanged(this, EventArgs.Empty); setupControls(); this.ResumeLayout(false); }
public frmTwitter() : base(Localization.Get(UI_Key.Twitter_Title), ButtonCreateType.OKAndCancel) { this.ClientSize = new Size(420, 200); lblInstructions = new QLabel(Localization.Get(UI_Key.Twitter_Instructions, Application.ProductName)); lblInstructions.Location = new Point(MARGIN, MARGIN); lblInstructions.SetWidth(this.ClientRectangle.Width - MARGIN - MARGIN); this.Controls.Add(lblInstructions); chkEnable = new QCheckBox(Localization.Get(UI_Key.Twitter_Enable), this.BackColor); chkEnable.Location = new Point(MARGIN, lblInstructions.Bottom + MARGIN + MARGIN); chkEnable.CheckedChanged += new EventHandler(enableCheckChanged); this.Controls.Add(chkEnable); lblUserName = new QLabel(Localization.Get(UI_Key.Twitter_User_Name)); lblPassword = new QLabel(Localization.Get(UI_Key.Twitter_Password)); txtUserName = new QTextBox(); txtUserName.Text = Twitter.UserName; txtUserName.MaxLength = 64; txtUserName.TextChanged += new EventHandler(textChanged); txtPassword = new QTextBox(); txtPassword.Text = Twitter.Password; txtPassword.MaxLength = 64; txtPassword.TextChanged += new EventHandler(textChanged); txtPassword.PasswordChar = '*'; lblUserName.Location = new Point(2 * MARGIN, chkEnable.Bottom + MARGIN + MARGIN + (txtUserName.Height - lblUserName.Height) / 2); lblPassword.Location = new Point(2 * MARGIN, lblUserName.Top + MARGIN + txtUserName.Height); this.Controls.Add(lblUserName); this.Controls.Add(lblPassword); int x = Math.Max(lblUserName.Right, lblPassword.Right) + MARGIN; txtUserName.Location = new Point(x, lblUserName.Top + (lblUserName.Height - txtUserName.Height) / 2); txtPassword.Location = new Point(x, lblPassword.Top + (lblPassword.Height - txtPassword.Height) / 2); this.Controls.Add(txtUserName); this.Controls.Add(txtPassword); lblMode = new QLabel("Post A Tweet With Each:"); this.Controls.Add(lblMode); lblMode.Location = new Point(4 * MARGIN, txtPassword.Bottom + MARGIN); cboMode = new QComboBox(false); cboMode.Items.Add(Localization.Get(UI_Key.Twitter_Mode_Song)); cboMode.Items.Add(Localization.Get(UI_Key.Twitter_Mode_Album)); this.Controls.Add(cboMode); cboMode.Location = new Point(lblMode.Right + MARGIN, lblMode.Top + (lblMode.Height - cboMode.Height) / 2); switch (Twitter.TwitterMode) { case Twitter.Mode.Album: cboMode.SelectedIndex = cboMode.FindStringExact(Localization.Get(UI_Key.Twitter_Mode_Album)); break; default: cboMode.SelectedIndex = cboMode.FindStringExact(Localization.Get(UI_Key.Twitter_Mode_Song)); break; } btnTest = new QButton(Localization.Get(UI_Key.Twitter_Test), false, false); AddButton(btnTest, test); btnViewOnWeb = new QButton(Localization.Get(UI_Key.Twitter_View_On_Web), false, false); AddButton(btnViewOnWeb, viewOnWeb); PlaceButtons(this.ClientRectangle.Width, cboMode.Bottom + MARGIN + MARGIN, btnCancel, btnOK, btnTest, btnViewOnWeb); this.ClientSize = new Size(this.ClientRectangle.Width, btnCancel.Bottom + MARGIN); int tabIndex = 0; chkEnable.TabIndex = tabIndex++; txtUserName.TabIndex = tabIndex++; txtPassword.TabIndex = tabIndex++; btnViewOnWeb.TabIndex = tabIndex++; btnTest.TabIndex = tabIndex++; btnOK.TabIndex = tabIndex++; btnCancel.TabIndex = tabIndex++; chkEnable.Checked = Twitter.On; enableControls(); }
public QSpin(bool CheckBox, bool Checked, string PrefixText, string PostfixText, int Min, int Max, int Default, int Increment, Color BackColor) { restoring = true; this.Min = Min; this.Max = Max; this.BackColor = BackColor; upHover = false; downHover = false; this.Increment = Increment; if (CheckBox) { chkMain = new QCheckBox(PrefixText, this.BackColor); chkMain.AutoSize = false; chkMain.Checked = Checked; chkMain.CheckedChanged += new EventHandler(chkMain_CheckedChanged); chkMain.MouseEnter += (s, e) => { this.Hovering = true; this.Invalidate(); }; chkMain.MouseLeave += (s, e) => { this.Hovering = false; this.Invalidate(); }; this.Controls.Add(chkMain); } else { chkMain = null; } prefixText = PrefixText; postfixText = PostfixText; txtMain = new QTextBox(); txtMain.Font = Styles.Font; txtMain.Width = 30; txtMain.TextAlign = HorizontalAlignment.Right; txtMain.BorderStyle = BorderStyle.None; txtMain.TextChanged += new EventHandler(txtMain_TextChanged); txtMain.Leave += (s, e) => { if (txtMain.Text.Length == 0) { txtMain.Text = this.Min.ToString(); } }; txtMain.KeyUp += (s, e) => { switch (e.KeyCode) { case Keys.Up: setValWithIncrement(this.Value + Increment); e.Handled = true; break; case Keys.Down: setValWithIncrement(this.value - Increment); e.Handled = true; break; } }; //this.Size = txtMain.Size; this.Controls.Add(txtMain); setValue(Math.Min(this.Max, Math.Max(this.Min, Default))); OffEquivalent = -1; updateControls(); restoring = false; this.TabStop = false; }
public frmOptions() : base(Localization.Get(UI_Key.Options_Title, Application.ProductName), ButtonCreateType.OKAndCancel) { this.SPACING = 4; tabs = new Dictionary <QButton, List <Control> >(); InitializeComponent(); QButton button = new QButton("Primary Options", true, false); List <Control> controls = new List <Control>(); tabs.Add(button, controls); button.Value = true; button.ButtonPressed += clickTab; topMargin = PADDING + button.Height + SPACING + SPACING; lblSound = new QLabel(Localization.Get(UI_Key.Options_Label_Sound), Styles.FontBold); controls.Add(lblSound); chkAutoClippingControl = new QCheckBox(Localization.Get(UI_Key.Options_Auto_Clipping_Control), this.BackColor); controls.Add(chkAutoClippingControl); lblSoundDevice = new QLabel("Specify a sound output device:"); controls.Add(lblSoundDevice); cboSoundDevice = new QComboBox(false); cboSoundDevice.Items.AddRange(OutputDX.GetDeviceNames()); cboSoundDevice.SelectedIndexChanged += new EventHandler(cboSoundDevice_SelectedIndexChanged); asioDevices = OutputASIO.GetDeviceNames().ToArray(); cboSoundDevice.Items.AddRange(asioDevices); chkVolumeControlsWindowsVolume = new QCheckBox(Localization.Get(UI_Key.Options_Volume_Controls_Windows_Volume, Application.ProductName), this.BackColor); if (!Lib.IsVistaOrLater) { controls.Add(chkVolumeControlsWindowsVolume); } else { chkVolumeControlsWindowsVolume.Visible = false; } if (cboSoundDevice.Items.Count > 0) { cboSoundDevice.SelectedIndex = 0; cboSoundDevice.AutoSetWidth(); } controls.Add(cboSoundDevice); lblDisplay = new QLabel(Localization.Get(UI_Key.Options_Label_Display), Styles.FontBold); controls.Add(lblDisplay); chkIncludeTagCloud = new QCheckBox(Localization.Get(UI_Key.Options_Include_Tag_Cloud), this.BackColor); controls.Add(chkIncludeTagCloud); chkDisableScreensavers = new QCheckBox(Localization.Get(UI_Key.Options_Disable_Screensaver), this.BackColor); controls.Add(chkDisableScreensavers); chkDisableScreensaversOnlyWhenPlaying = new QCheckBox("Only When Playing", this.BackColor); controls.Add(chkDisableScreensaversOnlyWhenPlaying); chkShowGridOnSpectrum = new QCheckBox(Localization.Get(UI_Key.Options_Spectrum_Show_Grid), this.BackColor); controls.Add(chkShowGridOnSpectrum); button = new QButton("Secondary Options", true, false); button.Value = false; button.ButtonPressed += clickTab; controls = new List <Control>(); tabs.Add(button, controls); lblInternet = new QLabel(Localization.Get(UI_Key.Options_Label_Internet), Styles.FontBold); controls.Add(lblInternet); chkAutoCheckUpdates = new QCheckBox(Localization.Get(UI_Key.Options_Auto_Check_Updates), this.BackColor); controls.Add(chkAutoCheckUpdates); chkDownloadCoverArt = new QCheckBox(Localization.Get(UI_Key.Options_Download_Cover_Art), this.BackColor); controls.Add(chkDownloadCoverArt); lblArtSave = new QLabel(Localization.Get(UI_Key.Options_Save_Art_Caption)); lblArtSave.Enabled = false; controls.Add(lblArtSave); cboArtSave = new QComboBox(false); cboArtSave.Items.Add(Localization.Get(UI_Key.Options_Save_Art_Folder_JPG)); cboArtSave.Items.Add(Localization.Get(UI_Key.Options_Save_Art_Artist_Album)); cboArtSave.Items.Add(Localization.Get(UI_Key.Options_Save_Art_None)); cboArtSave.AutoSetWidth(); cboArtSave.Enabled = false; controls.Add(cboArtSave); lblMisc = new QLabel(Localization.Get(UI_Key.Options_Label_Other), Styles.FontBold); controls.Add(lblMisc); chkUseGlobalHotkeys = new QCheckBox(Localization.Get(UI_Key.Options_Use_Global_Hotkeys), this.BackColor); controls.Add(chkUseGlobalHotkeys); spnShortTracks = new QSpin(true, true, Localization.Get(UI_Key.Options_Dont_Load_Shorter_Than), Localization.Get(UI_Key.Options_Dont_Load_Seconds), 1, 60, 10, 5, this.BackColor); spnShortTracks.OffEquivalent = 0; controls.Add(spnShortTracks); chkDownloadCoverArt.CheckedChanged += (s, e) => { lblArtSave.Enabled = chkDownloadCoverArt.Checked; cboArtSave.Enabled = chkDownloadCoverArt.Checked; }; chkStopClearsNowPlaying = new QCheckBox("Stop clears Now Playing", this.BackColor); controls.Add(chkStopClearsNowPlaying); chkSaveNowPlayingOnExit = new QCheckBox("Save Now Playing on exit", this.BackColor); controls.Add(chkSaveNowPlayingOnExit); bool isFirst = true; int tabIndex = 0; foreach (KeyValuePair <QButton, List <Control> > kvp in tabs) { this.Controls.Add(kvp.Key); kvp.Key.TabIndex = tabIndex++; foreach (Control c in kvp.Value) { c.Visible = isFirst; this.Controls.Add(c); } isFirst = false; } cboSoundDevice.TabIndex = tabIndex++; if (!Lib.IsVistaOrLater) { chkVolumeControlsWindowsVolume.TabIndex = tabIndex++; } chkAutoClippingControl.TabIndex = tabIndex++; chkIncludeTagCloud.TabIndex = tabIndex++; chkDisableScreensavers.TabIndex = tabIndex++; chkDisableScreensaversOnlyWhenPlaying.TabIndex = tabIndex++; chkShowGridOnSpectrum.TabIndex = tabIndex++; chkAutoCheckUpdates.TabIndex = tabIndex++; chkDownloadCoverArt.TabIndex = tabIndex++; cboArtSave.TabIndex = tabIndex++; chkUseGlobalHotkeys.TabIndex = tabIndex++; chkStopClearsNowPlaying.TabIndex = tabIndex++; chkSaveNowPlayingOnExit.TabIndex = tabIndex++; spnShortTracks.TabIndex = tabIndex++; btnOK.TabIndex = tabIndex++; btnCancel.TabIndex = tabIndex++; arrangeLayout(); }
public frmFileAssociations() : base(Localization.Get(UI_Key.File_Associations_Title), ButtonCreateType.OKAndCancel) { this.Size = new System.Drawing.Size(430, this.Size.Height); lblInstructions = new QLabel(Localization.Get(UI_Key.File_Associations_Instructions)); this.Controls.Add(lblInstructions); lblInstructions.Location = new System.Drawing.Point(MARGIN, MARGIN); lblInstructions.SetWidth(this.Width - MARGIN - MARGIN); int x = MARGIN * 3; lblAudioFiles = new QLabel("Audio Files", Styles.FontBold); this.Controls.Add(lblAudioFiles); lblAudioFiles.Location = new System.Drawing.Point(MARGIN, lblInstructions.Bottom + MARGIN + MARGIN); chkMP3 = new QCheckBox(Localization.Get(UI_Key.File_Associations_MP3), this.BackColor); this.Controls.Add(chkMP3); chkMP3.Location = new System.Drawing.Point(x, lblAudioFiles.Bottom + MARGIN); chkWMA = new QCheckBox(Localization.Get(UI_Key.File_Associations_WMA), this.BackColor); this.Controls.Add(chkWMA); chkWMA.Location = new System.Drawing.Point(x, chkMP3.Bottom + MARGIN); chkOGG = new QCheckBox(Localization.Get(UI_Key.File_Associations_OGG), this.BackColor); this.Controls.Add(chkOGG); chkOGG.Location = new System.Drawing.Point(x, chkWMA.Bottom + MARGIN); chkFLAC = new QCheckBox(Localization.Get(UI_Key.File_Associations_FLAC), this.BackColor); this.Controls.Add(chkFLAC); chkFLAC.Location = new System.Drawing.Point(x, chkOGG.Bottom + MARGIN); chkM4A = new QCheckBox(Localization.Get(UI_Key.File_Associations_iTunes), this.BackColor); this.Controls.Add(chkM4A); chkM4A.Location = new System.Drawing.Point(x, chkFLAC.Bottom + MARGIN); chkWV = new QCheckBox(Localization.Get(UI_Key.File_Associations_WV), this.BackColor); this.Controls.Add(chkWV); chkWV.Location = new System.Drawing.Point(x, chkM4A.Bottom + MARGIN); chkAPE = new QCheckBox(Localization.Get(UI_Key.File_Associations_APE), this.BackColor); this.Controls.Add(chkAPE); chkAPE.Location = new System.Drawing.Point(x, chkWV.Bottom + MARGIN); lblPlaylistFiles = new QLabel("Playlist Files", Styles.FontBold); this.Controls.Add(lblPlaylistFiles); lblPlaylistFiles.Location = new System.Drawing.Point(MARGIN, chkAPE.Bottom + MARGIN + MARGIN); x = this.Width / 2; chkWAV = new QCheckBox(Localization.Get(UI_Key.File_Associations_WAV), this.BackColor); this.Controls.Add(chkWAV); chkWAV.Location = new System.Drawing.Point(x, chkMP3.Top); chkAC3 = new QCheckBox(Localization.Get(UI_Key.File_Associations_AC3), this.BackColor); this.Controls.Add(chkAC3); chkAC3.Location = new System.Drawing.Point(x, chkWAV.Bottom + MARGIN); chkMPC = new QCheckBox(Localization.Get(UI_Key.File_Associations_MPC), this.BackColor); this.Controls.Add(chkMPC); chkMPC.Location = new System.Drawing.Point(x, chkAC3.Bottom + MARGIN); chkALAC = new QCheckBox(Localization.Get(UI_Key.File_Associations_ALAC), this.BackColor); this.Controls.Add(chkALAC); chkALAC.Location = new System.Drawing.Point(x, chkMPC.Bottom + MARGIN); chkAIFF = new QCheckBox(Localization.Get(UI_Key.File_Associations_AIFF), this.BackColor); this.Controls.Add(chkAIFF); chkAIFF.Location = new System.Drawing.Point(x, chkALAC.Bottom + MARGIN); chkPLS = new QCheckBox(Localization.Get(UI_Key.File_Associations_PLS), this.BackColor); this.Controls.Add(chkPLS); chkPLS.Location = new System.Drawing.Point(chkWV.Left, lblPlaylistFiles.Bottom + MARGIN); chkM3U = new QCheckBox("M3U Files", this.BackColor); this.Controls.Add(chkM3U); chkM3U.Location = new System.Drawing.Point(chkAIFF.Left, chkPLS.Top); btnNone = new QButton(Localization.Get(UI_Key.File_Associations_Check_None), false, false); AddButton(btnNone, none); btnAll = new QButton(Localization.Get(UI_Key.File_Associations_Check_All), false, false); AddButton(btnAll, all); PlaceButtons(this.ClientRectangle.Width, chkPLS.Bottom + MARGIN, btnCancel, btnOK, btnNone, btnAll); this.ClientSize = new System.Drawing.Size(this.ClientRectangle.Width, btnCancel.Bottom + MARGIN); int tabIndex = 0; chkMP3.TabIndex = tabIndex++; chkWMA.TabIndex = tabIndex++; chkOGG.TabIndex = tabIndex++; chkFLAC.TabIndex = tabIndex++; chkM4A.TabIndex = tabIndex++; chkWV.TabIndex = tabIndex++; chkWAV.TabIndex = tabIndex++; chkAC3.TabIndex = tabIndex++; chkMPC.TabIndex = tabIndex++; chkALAC.TabIndex = tabIndex++; chkAIFF.TabIndex = tabIndex++; chkAPE.TabIndex = tabIndex++; chkPLS.TabIndex = tabIndex++; chkM3U.TabIndex = tabIndex++; btnAll.TabIndex = tabIndex++; btnNone.TabIndex = tabIndex++; btnOK.TabIndex = tabIndex++; btnCancel.TabIndex = tabIndex++; updateCheckboxes(); }
public QInputBox(IWin32Window Owner, string Text, string Caption, string DefaultValue, string CheckboxText, bool CheckboxVal, int MaxLength, int MinLength) : base(Caption, ButtonCreateType.OKAndCancel) { this.SPACING = 8; this.DialogResult = System.Windows.Forms.DialogResult.Cancel; this.ClientSize = new Size(275, 300); lblMain = new QLabel(Text); lblMain.ShowAccellerator(); this.Controls.Add(lblMain); lblMain.Location = new Point(SPACING, 2 * SPACING); lblMain.SetWidth(this.ClientRectangle.Width - SPACING - SPACING); txtMain = new QTextBox(); txtMain.Text = DefaultValue; txtMain.KeyDown += (s, e) => { /* if (e.KeyCode == Keys.Enter) * { * e.Handled = true; * ok(); * } * else */if (e.KeyCode == Keys.Escape) { e.Handled = true; cancel(); } }; txtMain.MaxLength = MaxLength; minLength = MinLength; txtMain.Bounds = new System.Drawing.Rectangle(SPACING, lblMain.Bottom + 2 * SPACING, this.ClientRectangle.Width - 2 * SPACING, txtMain.Height); this.Controls.Add(txtMain); if (CheckboxText.Length > 0) { chkCheckbox = new QCheckBox(CheckboxText, this.BackColor); chkCheckbox.Checked = CheckboxVal; chkCheckbox.Location = new Point(SPACING, txtMain.Bottom + SPACING); chkCheckbox.Enabled = false; this.Controls.Add(chkCheckbox); } PlaceButtons(this.ClientRectangle.Width, ((chkCheckbox != null) ? chkCheckbox.Bottom : txtMain.Bottom) + 2 * SPACING); btnOK.Enabled = false; this.ClientSize = new Size(this.ClientSize.Width, btnOK.Bottom + SPACING); int tabIndex = 0; lblMain.TabIndex = tabIndex++; txtMain.TabIndex = tabIndex++; if (chkCheckbox != null) { chkCheckbox.TabIndex = tabIndex++; } btnOK.TabIndex = tabIndex++; btnCancel.TabIndex = tabIndex++; txtMain.TextChanged += (s, e) => { btnOK.Enabled = txtMain.Text.Length >= minLength; if (chkCheckbox != null) { chkCheckbox.Enabled = btnOK.Enabled; } }; this.ShowDialog(Owner); }
private void setupControl(IEditControl Control, string Caption, bool MakeCheckbox) { QLabel label = new QLabel(Caption, Styles.FontSmaller); this.Controls.Add(label); labels.Add(Control, label); label.ShowAccellerator(); if (MakeCheckbox) { QCheckBox cb = new QCheckBox(String.Empty, this.BackColor); cb.CheckedChanged += (s, e) => { updateColor(s, e); Dirty = true; }; this.Controls.Add(cb); checkboxes.Add(Control, cb); Control.ForeColor = Styles.Watermark; } this.Controls.Add(Control as Control); if (Control is QTextBox) { Control.TextChanged += textChanged; QTextBox tb = Control as QTextBox; tb.GotFocus += (s, e) => { Clock.DoOnMainThread(tb.SelectAll, 30); }; if (tb.Text == VARIES_TOKEN) { tb.EnableWatermark(this, MULTIPLE_VALUES, String.Empty); tb.Text = String.Empty; } editControls.Add(tb); } else if (Control is QComboBox) { QComboBox cb = Control as QComboBox; // need both, depends on editable vs. uneditable cb.TextChanged += textChanged; cb.SelectedIndexChanged += textChanged; if (cb.Text == VARIES_TOKEN) { cb.EnableWatermark(this, MULTIPLE_VALUES, String.Empty); cb.Text = String.Empty; } cb.DropDown += (s, e) => { if (isMultiple) { cb.ForeColor = Color.Black; } }; cb.DropDownClosed += (s, e) => { if (isMultiple) { updateColor(cb, checkboxes[cb]); } else { updateColor(cb, EventArgs.Empty); } }; editControls.Add(cb); } }
public frmLastFM(bool Enabled, string UserName, string Password) : base(Localization.Get(UI_Key.LastFM_Title), ButtonCreateType.OKAndCancel) { this.ClientSize = new Size(370, 200); lblInstructions = new QLabel(Localization.Get(UI_Key.LastFM_Instructions, Application.ProductName)); lblInstructions.Location = new Point(MARGIN, MARGIN); lblInstructions.SetWidth(this.ClientRectangle.Width - MARGIN - MARGIN); this.Controls.Add(lblInstructions); chkEnable = new QCheckBox(Localization.Get(UI_Key.LastFM_Enable), this.BackColor); chkEnable.Checked = Enabled; chkEnable.Location = new Point(MARGIN, lblInstructions.Bottom + MARGIN + MARGIN); chkEnable.CheckedChanged += new EventHandler(chkEnableChanged); this.Controls.Add(chkEnable); lblUserName = new QLabel(Localization.Get(UI_Key.LastFM_User_Name)); lblPassword = new QLabel(Localization.Get(UI_Key.LastFM_Password)); lblUserName.Enabled = Enabled; lblPassword.Enabled = Enabled; txtUserName = new QTextBox(); txtUserName.Text = UserName; txtUserName.MaxLength = 64; txtUserName.Enabled = Enabled; txtUserName.TextChanged += new EventHandler(textChanged); txtPassword = new QTextBox(); txtPassword.Text = Password; txtPassword.MaxLength = 64; txtPassword.Enabled = Enabled; txtPassword.TextChanged += new EventHandler(textChanged); txtPassword.PasswordChar = '*'; lblUserName.Location = new Point(2 * MARGIN, chkEnable.Bottom + MARGIN + MARGIN + (txtUserName.Height - lblUserName.Height) / 2); lblPassword.Location = new Point(2 * MARGIN, lblUserName.Top + MARGIN + txtUserName.Height); this.Controls.Add(lblUserName); this.Controls.Add(lblPassword); int x = Math.Max(lblUserName.Right, lblPassword.Right) + MARGIN; txtUserName.Location = new Point(x, lblUserName.Top + (lblUserName.Height - txtUserName.Height) / 2); txtPassword.Location = new Point(x, lblPassword.Top + (lblPassword.Height - txtPassword.Height) / 2); this.Controls.Add(txtUserName); this.Controls.Add(txtPassword); //btnCancel.Location = new Point(this.ClientRectangle.Width - MARGIN - btnCancel.Width, txtPassword.Bottom + MARGIN + MARGIN); //btnOK.Location = new Point(btnCancel.Left - btnOK.Width - MARGIN, btnCancel.Top); btnGoToAcccount = new QButton(Localization.Get(UI_Key.LastFM_Go_To_Account), false, false); AddButton(btnGoToAcccount, gotoAccount); //btnGoToAcccount.Location = new Point(btnOK.Left - btnGoToAcccount.Width - MARGIN, btnCancel.Top); PlaceButtons(this.ClientRectangle.Width, txtPassword.Bottom + MARGIN + MARGIN, btnCancel, btnOK, btnGoToAcccount); this.ClientSize = new Size(this.ClientRectangle.Width, btnCancel.Bottom + MARGIN); int tabIndex = 0; chkEnable.TabIndex = tabIndex++; txtUserName.TabIndex = tabIndex++; txtPassword.TabIndex = tabIndex++; btnGoToAcccount.TabIndex = tabIndex++; btnOK.TabIndex = tabIndex++; btnCancel.TabIndex = tabIndex++; enableControls(); }
public Organizer(Callback DoneCallback) : base() { TrackWriter.Stop(); done = DoneCallback; invalidPath = Localization.Get(UI_Key.Organize_Invalid_Path); sample = Localization.Get(UI_Key.Organize_Sample); tokenMyMusic = Localization.Get(UI_Key.Organize_Token_My_Music); tokenMyDocuments = Localization.Get(UI_Key.Organize_Token_My_Documents); tokenDesktop = Localization.Get(UI_Key.Organize_Token_Desktop); font = Styles.FontSmaller; boldFont = new Font(font, FontStyle.Bold); btnOK = new QButton(Localization.OK, false, true); btnCancel = new QButton(Localization.CANCEL, false, true); btnHelp = new QButton(Localization.Get(UI_Key.Organize_Help), false, true); AddButton(btnHelp, help); lblTitle = new QLabel(Localization.Get(UI_Key.Organize_Title), font); this.Controls.Add(lblTitle); lblTitle.Location = new System.Drawing.Point(MARGIN, MARGIN); lblDirectory = new QLabel(Localization.Get(UI_Key.Organize_Top_Folder), font); lblDirectory.ShowAccellerator(); this.Controls.Add(lblDirectory); txtDirectory = new QTextBox(); txtDirectory.Font = font; this.Controls.Add(txtDirectory); if (Setting.TopLevelDirectory.Length == 0) { Setting.TopLevelDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyMusic); } oldRoot = Setting.TopLevelDirectory; txtDirectory.Text = simplify(oldRoot); btnBrowse = new QButton(Localization.Get(UI_Key.Organize_Browse), false, false); btnBrowse.ShowAccellerator(Keys.B); AddButton(btnBrowse, browse); lblSubdirectory = new QLabel(Localization.Get(UI_Key.Organize_Folder_Structure), font); lblSubdirectory.ShowAccellerator(); this.Controls.Add(lblSubdirectory); cboSubdirectory = new QComboBox(false); cboSubdirectory.Font = font; cboSubdirectory.Items.AddRange(TrackWriter.GetDirFormats().ToArray()); string sub = TrackWriter.GetDirFormat(Setting.DefaultDirectoryFormat); if (cboSubdirectory.Items.Contains(sub)) { cboSubdirectory.SelectedIndex = cboSubdirectory.FindStringExact(sub); } else { cboSubdirectory.SelectedIndex = 0; } this.Controls.Add(cboSubdirectory); cboSubdirectory.AutoSetWidth(); lblRename = new QLabel(Localization.Get(UI_Key.Organize_Rename), font); lblRename.ShowAccellerator(); this.Controls.Add(lblRename); cboRename = new QComboBox(false); cboRename.Font = font; string[] renames = TrackWriter.GetRenames().ToArray(); renames[0] = Localization.Get(UI_Key.Organize_Dont_Change); cboRename.Items.AddRange(renames); string ren = TrackWriter.GetRenameFormat(Setting.DefaultRenameFormat); if (cboRename.Items.Contains(ren)) { cboRename.SelectedIndex = cboRename.FindStringExact(ren); } else { cboRename.SelectedIndex = 0; } this.Controls.Add(cboRename); cboRename.AutoSetWidth(); chkKeepOrganized = new QCheckBox(Localization.Get(UI_Key.Organize_Keep_Organized), this.BackColor); chkKeepOrganized.ShowAccellerator(); chkKeepOrganized.Font = font; chkKeepOrganized.Checked = Setting.KeepOrganized; this.Controls.Add(chkKeepOrganized); chkMoveIntoTopFolder = new QCheckBox(Localization.Get(UI_Key.Organize_Move_Into_Top_Folder), this.BackColor); chkMoveIntoTopFolder.Font = font; chkMoveIntoTopFolder.Checked = Setting.MoveNewFilesIntoMain; this.Controls.Add(chkMoveIntoTopFolder); btnOK.Text = Localization.Get(UI_Key.Organize_Organize); btnCancel.Text = Localization.Get(UI_Key.Organize_Dont_Organize); btnOK.ShowAccellerator(Keys.O); btnCancel.ShowAccellerator(Keys.D); AddButton(btnOK, ok); AddButton(btnCancel, cancel); sampleTrack = new Track(-1, Localization.Get(UI_Key.Organize_Sample_Track_Path), Track.FileType.MP3, Localization.Get(UI_Key.Organize_Sample_Track_Title), Localization.Get(UI_Key.Organize_Sample_Track_Album), Localization.Get(UI_Key.Organize_Sample_Track_Artist), String.Empty, String.Empty, Localization.Get(UI_Key.Organize_Sample_Track_Grouping), Localization.Get(UI_Key.Organize_Sample_Track_Genre), (6 * 60 + 24) * 1000, 5, 0, 1973, 0, 5, 320000, 0, false, DateTime.Today, DateTime.Today, DateTime.Today, String.Empty, 2, 44100, ChangeType.None, null, float.MinValue, float.MinValue); resize(); this.Height = chkKeepOrganized.Bottom + MARGIN; cboSubdirectory.SelectedIndexChanged += (s, e) => { updateSample(); }; cboRename.SelectedIndexChanged += (s, e) => { updateSample(); }; txtDirectory.TextChanged += (s, e) => { updateSample(); }; updateSample(); int tabIndex = 0; lblDirectory.TabIndex = tabIndex++; txtDirectory.TabIndex = tabIndex++; btnBrowse.TabIndex = tabIndex++; lblSubdirectory.TabIndex = tabIndex++; cboSubdirectory.TabIndex = tabIndex++; lblRename.TabIndex = tabIndex++; cboRename.TabIndex = tabIndex++; chkKeepOrganized.TabIndex = tabIndex++; chkMoveIntoTopFolder.TabIndex = tabIndex++; btnHelp.TabIndex = tabIndex++; btnCancel.TabIndex = tabIndex++; btnOK.TabIndex = tabIndex++; setWrapAroundTabControl(tabIndex, txtDirectory, null); initialized = true; }