flutter: enumが素敵だけれども、constantにはならないんだなぁ、、

こう書いておくと

enum enumVisitStatus {
  all,
  fin,
  unfin,
  noChkSaseki,
  noChkKeiri,
}

    // 抽出条件の初期化
    ref.read(scheduleListCondProvider.state).update(
        (state) => state.copyWith(
        syokuinCode: loginState.syokuinCode,
        isSaseki: loginState.isSaseki,
        dateFrom: DateTime.now(),
        dateTo: DateTime.now(),
        visitStatus: enumVisitStatus.all.name,  // 'all'が代入される。。 すげー
        selectType: enumSelectType.helper.name, 
        selectTypeCode: loginState.syokuinCode
    ));

   // 文字列から列挙値を求める(DBから値を持ってくる場合)
 debugPrint( enumVisitStatus.values.byName('all'));

  final List<DropdownMenuItem<String>> _visitStatusItems = const [
    DropdownMenuItem(
       value: enumVisitStatus.all.name, child: Text('全て')), // エラーになる。。
    DropdownMenuItem(value: 'complete', child: Text('終了')),
    DropdownMenuItem(value: 'incomplete', child: Text('未終了')),
    DropdownMenuItem(value: 'is_sc_check', child: Text('担当未確認')),
    DropdownMenuItem(value: 'is_ac_check', child: Text('経理未確認')),
  ];

んじゃMAPからリストを作りましょうか、、

  final Map<String, String> _visitStatusItems = {
    enumVisitStatus.all.name: '全て',
    enumVisitStatus.complete.name: '終了',
    enumVisitStatus.incomplete.name: '未終了',
    enumVisitStatus.noChkSaseki.name: '担当未確認',
    enumVisitStatus.noChkKeiri.name: '経理未確認',
  };
  //マップから選択項目を作成する。
  List<DropdownMenuItem<String>> getMap2SelItems(Map<String, String> selItemMap) {
    return selItemMap.entries.map((entry) {
      return DropdownMenuItem(
        child: Text(entry.value),
        value: entry.key,
      );
    }).toList();

昔、Javaenumを拡張してこんなの作った記憶がある。。15年以上前、、

/* -----codeの行番号----- */