\f
-FÖRDELNING
+Diverse
-Einar: Moosique(4), MooNote(4)
-Micke: MooGUI(4), MooTrackTitle(2), MooNoteElement(6), MooNoteProp(4)
-Björn: MooMenu(8), MooToolbar(3), MooViewCounter(1)
-Rolle: MooTrackView(16)
-
-\f
-VIKTIGT! Implementera playfunktionens beteende.
- När låten är slut återställes play-knappen.
- Göra detta som en tråd?!?
-
-\f
-x Scrollningen?!? Horisontell behövs på både MooView och MooTrackView, men vertikal bara på MooView. Hur göra?
-x Får Moosique vara statisk? Fult?
x Spara konfiguration?
Arbetskatalog
Fem senast öppnade filerna
Valda MIDI-enheter
-\f
-MIDI Messages
-
-FF 58 Time signature: [0] / [1], [2] MIDI clocks per metronome tick, [3] / 32 per 24 MIDI clocks
-FF 51 Tempo
-FF 03 Track Name String name = new String(getData());
-C0 Program change int pc = getData1();
-
+x Integrera MooViewCounter i MooTrackView genom att istället variera de horisontella streckens gråa nyanser?!?
+ (Omöjligt att följa strecken till högra änden av skärmen.)
-Sequence
- private ShortMessage timeSignature, tempo;
-Track
- private ShortMessage trackName, programChange;
+x Ändra längden på MooNoteElement (JPanel).
+ Känn av klick på panelens gräns, MouseMotionListener känner av när ny ruta nås.
+ void mouseDragged(MouseEvent)
+ Called in response to the user moving the mouse while holding a mouse button down.
+ This event is fired by the component that fired the most recent mouse-pressed event,
+ even if the cursor is no longer over that component.
-\f
-MooMenu
-
-x Kom ihåg sökväg vid Open
+x Fixa InstrumentList.
+x Fixa så att toolbarens rutor sitter fast!
+x Räkna ut tempo och taktart. Skicka (på nåt sätt) tempovektorn till MooToolbar.
+x Gör en ruta för tempot i MooToolbar.
+x Gör en ruta för taktarten i MooViews övre vänstra hörn.
+x Implementera klart menyn, med alla dialoger.
+x Lägg till en tom panel i MooGUI för att fylla ut skärmen. Använd setBounds()
- Musikrelaterade menyer i Midisoft Recording Session:
-
- Track Insert New... Har vi
- Delete... Har vi
- Move... Har vi
- Copy... Har vi
- Combine... Onödig
- Rechannel... Kanske
- Split by Pitch... Onödig
-
- Music Insert Measure... Lagt till
- Delete Measure... Lagt till
- Clef... Onödig
- Time Signature... Lagt till
- Key Signature... Onödig
- Tempo... Lagt till
- Scale Velocity... Lagt till
- Transpose... Lagt till
- Quantize... Onödig
-
- Kanske också: Reset Solo / Mute
-
-\f
-MooNote / MootrackView / MooNoteElement
-
- * Hur lägga till MooNote och NoteOff?
- Internt vid skapandet - Då behövs track
- Externt new MooNote(...);
- ...add(MooNote);
- ...add(MooNote.getNoteOffEvent());
-
- * set/getDuration verkar inte fungera.
-\f
-MooTrackTitle
-
- * Kanalinställning
- Hämta från det första Event i ett spår.
-
- * Funktioner för att sätta (och läsa?) channel? mute? solo?
- För mute och solo gäller följande metoder (ligger utklistrade i Methods of Key Classes.txt):
-
- boolean getTrackMute(int track) Obtains the current mute state for a track.
- boolean getTrackSolo(int track) Obtains the current solo state for a track.
- void setTrackMute(int track, boolean mute) Sets the mute state for a track.
- void setTrackSolo(int track, boolean solo) Sets the solo state for a track.
-
- När det gäller kanalerna velar jag lite. Antingen gör jag en mappningsmatris i Moosique som
- man får läsa och skriva ifrån (vilket blir FULT!), eller så tar man allt direkt genom
- MooNote. Metoden getChannel ska då leta upp den första MooNoten i det aktuella spåret och
- ta getChannel på den. setChannel ska loopa igenom alla MooNotes (egentligen alla Events)
- och ta setChannel på dem. Kan vara bra att fråga först eftersom det kan ta nån sekund.
-
-\f
-MooGUI
-
- * Global KeyListener
- Görs uppenbarligen så här:
-
- JFrame someFrame = new JFrame();
-
- JComponent rootPane = someFrame.getRootPane();
- ActionMap am = rootPane.getActionMap();
-
- Action helpAction = new AbstractAction() {
- public void actionPerformed(ActionEvent ae) {
- showHelpWindow();
- }};
- am.put("help", helpAction);
-
- InputMap im = rootPane.getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
- KeyStroke helpKey = KeyStroke.getKeyStroke(KeyEvent.VK_F1, 0);
- im.put(helpKey, "help");
-
-
- * Globala kommandon
-
- * Oktavförändring i MooKeyboard
- Mappa F9-F12 till MooKeyboard.setOctave(n) där n = {2, 4, 6, 8}
-
- * Play / Stop
- Mappa till blanksteg. <-- Detta fungerar inte.. blanksteget
- används av vår toolbar.
-
-\f
-Moosique
-
- * getPosition och setPosition - kvar?
-
-\f
-Skräp
-
- // Prints the number of notes in each track
- int count;
- Track[] tracks = seq.getTracks();
- for (int k = 0; k < tracks.length; k++) {
- count = 0;
- for (int j = 0; j < tracks[k].size(); j++) {
- if (tracks[k].get(j) instanceof MooNote) count++;
- }
- System.out.println("Track " + k + ": " + count + " notes.");
- }
+x Highlighta noter som spelas? (Enligt kravspec.)
\f
MooNoteProp
- * textfält som gör att man bara kan skriva in siffror?
+ * Textfält som gör att man bara kan skriva in siffror?
+
+\f
\ No newline at end of file