diff options
| -rw-r--r-- | muse/NEWS | 1 | ||||
| -rw-r--r-- | muse/README | 11 | ||||
| -rw-r--r-- | muse/doc/man/de/projekte.tex | 47 | ||||
| -rwxr-xr-x | muse/gen | 4 | ||||
| -rw-r--r-- | muse/muse/muse.cpp | 30 | ||||
| -rw-r--r-- | muse/muse/projectdialog.cpp | 2 | ||||
| -rw-r--r-- | muse/muse/templatedialog.cpp | 2 | 
7 files changed, 63 insertions, 34 deletions
@@ -1,5 +1,6 @@  MusE 1.0:        New features: +      - new "project" paradigma        - "auto fill" parts        - DSSI support        - controller automation in arranger diff --git a/muse/README b/muse/README index 49801b64..a42f52ea 100644 --- a/muse/README +++ b/muse/README @@ -1,5 +1,5 @@  ==================================================================== -      MusE  ---  Linux (Midi) Music Editor +      MusE  ---  Linux Music Editor  ====================================================================  Welcome to MusE, the open source MIDI/Audio sequencer. @@ -20,6 +20,9 @@ details.        Requirements    ============================= +      - CMake 2.4  +        http:/www.cmake.org/HTML/Download.html +        - QT: Qt 4.1.0 or above          ftp://ftp.trolltech.com/qt/source          MusE does _not_ compile with older versions @@ -39,7 +42,6 @@ details.        - fluidsynth-1.0.3 (formerly known as iiwusynth) from          http://savannah.nongnu.org/download/fluid -      - (if you compile from cvs:) automake 1.7 and autoconf 2.54    =============================        Compiling: @@ -54,10 +56,9 @@ details.              tar xvofj muse-x.x.x.tar.bz2        - enter dirctory muse-x.x.x: -            run "ccmake" or "cmake ." to create Makefiles -            run "make all" +            run "gen" script -      - as root run: +      - enter the just build "build" directory and as root run:              make install          to install MusE diff --git a/muse/doc/man/de/projekte.tex b/muse/doc/man/de/projekte.tex index 85a7f2ce..c9870cd8 100644 --- a/muse/doc/man/de/projekte.tex +++ b/muse/doc/man/de/projekte.tex @@ -1,20 +1,19 @@  \chapter{Projekte} -  \section{Was ist ein Projekt?} +  \section{Projekte} -      Ein \M\ Projekt \index{Projekt} ist ein Unterverzeichnis,  -      welches alle  +      Ein \M\ Projekt \index{Projekt} ist ein Ordner, der alle         Dateien des Projekts enthält. Dies sind im wesentlichen die         aufgenommenen Wavedateien und die Projektdatei \index{Projektdatei}.        Die Projektdatei enthält alle        Informationen über das Projekt sowie alle Midi Daten soweit        vorhanden. -      Beispiel einer Projekt Verzeichnisstruktur: +      Beispiel einer Projekt Ordnerstruktur:        \starttyping -      ~/muse -            songs +      ~/MusE +            projects                    song1                                       song1.med                          rec1.wav @@ -26,16 +25,16 @@                            .                     \stoptyping -      Im oberen Beispiel ist {\tt song1} das Projektverzeichnis  -      \index{Projektverzeichnis} und +      Im oberen Beispiel ist {\tt song1} der Projektordner +      \index{Projektordner} und        {\tt song1.med} die Projektdatei. Die {\tt *.wav} Dateien sind        Audio Aufzeichnungen und die zugehörigen {\tt *.wca} Dateien         enthalten vorberechnete Daten zum schnellen Zeichnen der         Wellenformdarstellung auf den Bildschirm. -      Das Standard-Projektverzeichnis \index{Standard-Projektverzeichnis} -      {\tt ~/muse/songs} kann im -      ''Präferenzen'' Menü eingestellt werden. +      Der Standard-Projektordner \index{Standard-Projektordners} +      {\tt ~/MusE/projects} kann im ''Präferenzen'' Menü eingestellt  +      werden.     \section{Projekt auswählen} @@ -47,19 +46,33 @@        einstellen, ob beim Start ein Standardprojekt \index{Standardprojekt}        geladen oder immer zunächst nach einen Projekt gefragt werden soll. -           +   \section{Templates} + +      Wird bei der Projektauswahl ein neues Projekt ausgewählt, dann +      wird im nächsten Schritt ein Dialog gezeigt, in dem ein Template +      aus einer Liste von verfügbaren Templates ausgewählt werden kann. +      Ein Template bestimmt die Grundeinstellungen für ein neues +      Projekt. Ein Template kann ein ein komplettes Projekt sein welches +      jedoch keine Audiodaten enthalten kann und welches in der Regel +      auch keine Midi Daten enthält. + +      \M\ sucht Templates an zwei Orten: +      im globalen \M\ Installationspfad (Factory Presets) sowie im  +      \M\ Verzeichnis relativ zum {\tt HOME} Verzeichnis des +      Anwenders (User Presets) +     \section{Projekt sichern (Backup)}        Es gibt keine in \M\ eingebaute Funktion zum Sichern von Projekten. -      Da sich aber alle Projektdaten in einem Unterverzeichnis befinden, -      können Standard-Tools zum sichern verwendet werden. +      Da sich aber alle Projektdaten in einem Ordner befinden, +      können Standard-Tools zum Sichern verwendet werden.        Projekte sind immer in sich komplett und enthalten keine Verweise -      auf Dateien außerhalb des Projektverzeichnisses. Dies gilt nicht +      auf Dateien außerhalb des Projektordners. Dies gilt nicht        für Soundfonts \index{Soundfonts}, die z.B. vom Fluid-Synthesizer         Plugin verwendet -      werden. Es wird empfohlen, diese Soundfonts auch als Kopie im -      Projektverzeichnis abzulegen. +      werden. Es wird empfohlen, diese Soundfonts\index{Soundfonts}  +      auch als Kopie im Projektordner abzulegen.        Projekte können auf der Platte ohne Probleme verschoben werden,        da sie keine absoluten Pfade enthalten. @@ -14,12 +14,10 @@ if test ! -d build;        echo "+calling cmake"        cmake ..     else +      echo "+entering build directory"        cd build     fi -# ahem... hack -cp ../all.h . -  echo "+start top level make..."  # diff --git a/muse/muse/muse.cpp b/muse/muse/muse.cpp index 9e67f104..ad197e1b 100644 --- a/muse/muse/muse.cpp +++ b/muse/muse/muse.cpp @@ -1067,10 +1067,6 @@ void MusE::loadProject1(const QString& path)        {        QString header(tr("MusE: new project")); -      if (mixer1) -            mixer1->clear(); -      if (mixer2) -            mixer2->clear();        if (song->dirty) {              int n = 0;              n = QMessageBox::warning(this, header, @@ -1091,6 +1087,10 @@ void MusE::loadProject1(const QString& path)                          printf("InternalError: gibt %d\n", n);                    }              } +      if (mixer1) +            mixer1->clear(); +      if (mixer2) +            mixer2->clear();        QString name = path.split("/").last();        QDir pd(QDir::homePath() + "/" + config.projectPath + "/" + path); @@ -1126,7 +1126,8 @@ void MusE::loadProject1(const QString& path)        song->setProjectPath(path);        song->clear(false); -      QString s = pd.absoluteFilePath(path + "/" + name + ".med"); +      QString s = pd.absoluteFilePath(name + ".med"); +        QFile f(s);        bool rv = true; @@ -1162,6 +1163,11 @@ void MusE::loadProject1(const QString& path)        showBigtime(config.bigTimeVisible);        showMixer1(config.mixer1Visible);        showMixer2(config.mixer2Visible); +      if (mixer1 && config.mixer1Visible) +            mixer1->setUpdateMixer(); +      if (mixer2 && config.mixer2Visible) +            mixer2->setUpdateMixer(); +        resize(config.geometryMain.size());        move(config.geometryMain.topLeft()); @@ -2888,7 +2894,7 @@ int main(int argc, char* argv[])        //  load project        //--------------------------------------------------- -      // check if there is a project directory: +      // check for project directory:        QDir pd(QDir::homePath() + "/" + config.projectPath);        if (!pd.exists()) { @@ -2917,7 +2923,7 @@ int main(int argc, char* argv[])                    }              } -      // check if there is a template directory: +      // check for template directory:        pd.setPath(QDir::homePath() + "/" + config.templatePath);        if (!pd.exists()) { @@ -2955,6 +2961,16 @@ int main(int argc, char* argv[])        else if (config.startMode == START_START_PROJECT)              path = config.startProject; +      QString name = path.split("/").last(); +      if (!path.isEmpty()) { +            QFile f(QDir::homePath() +"/"+config.projectPath+"/"+path+"/"+name+".med"); +            if (!f.exists()) { +                  QString s(song->tr("Cannot find project <%1>")); +                  QString header(song->tr("MusE: load Project")); +                  QMessageBox::critical(0, header, s.arg(f.fileName())); +                  path = ""; +                  } +            }        if (path.isEmpty()) {              //              // ask user for a project diff --git a/muse/muse/projectdialog.cpp b/muse/muse/projectdialog.cpp index ffd039f2..ebfcacc2 100644 --- a/muse/muse/projectdialog.cpp +++ b/muse/muse/projectdialog.cpp @@ -3,7 +3,7 @@  //  Linux Music Editor  //  $Id:$  // -//  Copyright (C) 2002-2006 by Werner Schweer and others +//  Copyright (C) 2006 by Werner Schweer and others  //  //  This program is free software; you can redistribute it and/or modify  //  it under the terms of the GNU General Public License version 2. diff --git a/muse/muse/templatedialog.cpp b/muse/muse/templatedialog.cpp index 3e72fdf8..dc5efce5 100644 --- a/muse/muse/templatedialog.cpp +++ b/muse/muse/templatedialog.cpp @@ -3,7 +3,7 @@  //  Linux Music Editor  //  $Id:$  // -//  Copyright (C) 2002-2006 by Werner Schweer and others +//  Copyright (C) 2006 by Werner Schweer and others  //  //  This program is free software; you can redistribute it and/or modify  //  it under the terms of the GNU General Public License version 2.  | 
