mirror of
https://codeberg.org/unspeaker/tek.git
synced 2025-12-06 19:56:42 +01:00
remove extra trait methods
This commit is contained in:
parent
f5b1f495ad
commit
f1f3a7de10
3 changed files with 15 additions and 29 deletions
|
|
@ -184,13 +184,15 @@ impl<T: PhrasesControl> Command<T> for PhraseLengthCommand {
|
||||||
},
|
},
|
||||||
_ => unreachable!()
|
_ => unreachable!()
|
||||||
}
|
}
|
||||||
Ok(None)
|
|
||||||
} else if self == Begin {
|
} else if self == Begin {
|
||||||
state.phrase_length_begin();
|
let length = state.phrases()[state.phrase_index()].read().unwrap().length;
|
||||||
Ok(None)
|
*state.phrases_mode_mut() = Some(
|
||||||
|
PhrasesMode::Length(state.phrase_index(), length, PhraseLengthFocus::Bar)
|
||||||
|
);
|
||||||
} else {
|
} else {
|
||||||
unreachable!()
|
unreachable!()
|
||||||
}
|
}
|
||||||
|
Ok(None)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -227,13 +229,15 @@ where
|
||||||
},
|
},
|
||||||
_ => unreachable!()
|
_ => unreachable!()
|
||||||
};
|
};
|
||||||
Ok(None)
|
|
||||||
} else if self == Begin {
|
} else if self == Begin {
|
||||||
state.phrase_rename_begin();
|
let name = state.phrases()[state.phrase_index()].read().unwrap().name.clone();
|
||||||
Ok(None)
|
*state.phrases_mode_mut() = Some(
|
||||||
|
PhrasesMode::Rename(state.phrase_index(), name)
|
||||||
|
);
|
||||||
} else {
|
} else {
|
||||||
unreachable!()
|
unreachable!()
|
||||||
}
|
}
|
||||||
|
Ok(None)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -105,31 +105,12 @@ pub trait PhrasesControl: HasPhrases {
|
||||||
fn set_phrase_index (&self, index: usize);
|
fn set_phrase_index (&self, index: usize);
|
||||||
fn phrases_mode (&self) -> &Option<PhrasesMode>;
|
fn phrases_mode (&self) -> &Option<PhrasesMode>;
|
||||||
fn phrases_mode_mut (&mut self) -> &mut Option<PhrasesMode>;
|
fn phrases_mode_mut (&mut self) -> &mut Option<PhrasesMode>;
|
||||||
fn phrase_rename_begin (&mut self) {
|
|
||||||
let name = self.phrases()[self.phrase_index()].read().unwrap().name.clone();
|
|
||||||
*self.phrases_mode_mut() = Some(
|
|
||||||
PhrasesMode::Rename(self.phrase_index(), name)
|
|
||||||
)
|
|
||||||
}
|
|
||||||
fn phrase_length_begin (&mut self) {
|
|
||||||
let length = self.phrases()[self.phrase_index()].read().unwrap().length;
|
|
||||||
*self.phrases_mode_mut() = Some(
|
|
||||||
PhrasesMode::Length(self.phrase_index(), length, PhraseLengthFocus::Bar)
|
|
||||||
)
|
|
||||||
}
|
|
||||||
fn index_of (&self, phrase: &Phrase) -> Option<usize> {
|
fn index_of (&self, phrase: &Phrase) -> Option<usize> {
|
||||||
for i in 0..self.phrases().len() {
|
for i in 0..self.phrases().len() {
|
||||||
if *self.phrases()[i].read().unwrap() == *phrase { return Some(i) }
|
if *self.phrases()[i].read().unwrap() == *phrase { return Some(i) }
|
||||||
}
|
}
|
||||||
return None
|
return None
|
||||||
}
|
}
|
||||||
fn insert_dup (&mut self) {
|
|
||||||
let mut phrase = self.phrases()[self.phrase_index()].read().unwrap().duplicate();
|
|
||||||
phrase.color = ItemColorTriplet::random_near(phrase.color, 0.25);
|
|
||||||
let index = self.phrase_index() + 1;
|
|
||||||
self.phrases_mut().insert(index, Arc::new(RwLock::new(phrase)));
|
|
||||||
self.set_phrase_index(index);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pub trait PhraseEditorControl: HasFocus {
|
pub trait PhraseEditorControl: HasFocus {
|
||||||
|
|
|
||||||
|
|
@ -290,10 +290,11 @@ impl<T: PhrasesControl> InputToCommand<Tui, T> for PhrasesCommand {
|
||||||
String::from("(new)"), true, 4 * PPQ, None, Some(ItemColorTriplet::random())
|
String::from("(new)"), true, 4 * PPQ, None, Some(ItemColorTriplet::random())
|
||||||
)
|
)
|
||||||
)),
|
)),
|
||||||
key!(Char('d')) => Self::Phrase(Pool::Add(
|
key!(Char('d')) => {
|
||||||
index + 1,
|
let mut phrase = state.phrases()[index].read().unwrap().duplicate();
|
||||||
state.phrases()[index].read().unwrap().duplicate()
|
phrase.color = ItemColorTriplet::random_near(phrase.color, 0.25);
|
||||||
)),
|
Self::Phrase(Pool::Add(index + 1, phrase))
|
||||||
|
},
|
||||||
key!(Char('c')) => Self::Phrase(Pool::SetColor(
|
key!(Char('c')) => Self::Phrase(Pool::SetColor(
|
||||||
index,
|
index,
|
||||||
ItemColor::random()
|
ItemColor::random()
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue