Ana içeriğe atla

YesNoTask

YesNoTask, “Evet” ve “Hayır” arasında seçim yapmak için arayüz sağlar.

Görev Oluşturma

task := ziva.NewYesNoTask("Başlık", "Kullanıcıya soru?")

Ana Metodlar

// Ayarlarla oluşturma
task := ziva.NewYesNoTask("Onay", "Kuruluma devam et?").
    WithDefaultItem("Evet").                         // varsayılan değer
    WithTimeout(10*time.Second, "Hayır").            // zaman aşımı ile fallback
    WithCustomLabels("Devam Et", "İptal Et")         // özel etiketler

// Sonuç alma
selected := task.GetSelectedOption() // ziva.YesNoOption
isYes := task.IsYes()                // bool
isNo := task.IsNo()                  // bool

Özel Etiketler

// Varsayılan "Evet/Hayır" yerine özel etiketler
task.WithCustomLabels("Devam Et", "İptal Et")
task.WithCustomLabels("Kabul Et", "Reddet")
task.WithCustomLabels("Aç", "Kapat")
task.WithCustomLabels("✓ Evet", "✗ Hayır")

Sonuç Satırının Gösterimi

Görev tamamlandığında seçilen yanıt ayrı bir satırda gösterilir. Daha kompakt çıktı için bu satırı gizleyebilirsiniz:
task.WithoutResultLine() // Evet/Hayır satırını gizle

“Hayır” Cevabını Başarı Sayma

Varsayılan olarak “Hayır” cevabı özet istatistiklerde hata olarak görünür. Bunu başarı olarak değerlendirmek için yardımcı metodu çağırın:
task.WithNoAsError() // "Hayır" artık hata olarak sayılmaz

if task.IsNo() {
    // kullanıcı reddetti ama görev yine de başarılı sayılıyor
}

Kullanım Örneği

func confirmAction() bool {
    task := ziva.NewYesNoTask(
        "Onay",
        "Dosyayı silmek istediğinizden emin misiniz?",
    )

    queue := ziva.NewQueue("Dosya Silme")
    queue.AddTasks(task)
    queue.Run()

    return task.IsYes()
}
I