This list is closed, nobody may subscribe to it.
2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2012 |
Jan
|
Feb
|
Mar
(2) |
Apr
|
May
(2) |
Jun
|
Jul
|
Aug
(34) |
Sep
(63) |
Oct
(3) |
Nov
|
Dec
|
2013 |
Jan
|
Feb
|
Mar
|
Apr
(6) |
May
|
Jun
(3) |
Jul
(3) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2014 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(4) |
Dec
(8) |
2015 |
Jan
|
Feb
|
Mar
|
Apr
(36) |
May
|
Jun
|
Jul
|
Aug
(12) |
Sep
|
Oct
|
Nov
|
Dec
|
2016 |
Jan
|
Feb
|
Mar
|
Apr
(38) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2017 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(12) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2018 |
Jan
|
Feb
|
Mar
|
Apr
(4) |
May
(2) |
Jun
(48) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
2019 |
Jan
(7) |
Feb
|
Mar
|
Apr
(3) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <su...@us...> - 2017-05-19 19:09:49
|
Revision: 1472 http://sourceforge.net/p/canorus/code/1472 Author: suamor Date: 2017-05-19 19:09:47 +0000 (Fri, 19 May 2017) Log Message: ----------- Fix missing creation of template file issue Modified Paths: -------------- trunk/src/CMakeLists.txt Modified: trunk/src/CMakeLists.txt =================================================================== --- trunk/src/CMakeLists.txt 2017-05-19 17:07:19 UTC (rev 1471) +++ trunk/src/CMakeLists.txt 2017-05-19 19:09:47 UTC (rev 1472) @@ -704,8 +704,8 @@ ############### # Translation # ############### -qt5_create_translation(CANORUS_QM_FILES ${Canorus_UIC_Srcs} ${Canorus_Srcs}) -qt5_add_translation(CANORUS_QM_FILES ${Canorus_Translation_Srcs} lang/template.ts ) +qt5_create_translation(CANORUS_QM_FILES ${Canorus_UIC_Srcs} ${Canorus_Srcs} lang/template.ts OPTIONS -noobsolete) +qt5_add_translation(CANORUS_QM_FILES ${Canorus_Translation_Srcs} ) ADD_CUSTOM_TARGET(canorus_qm DEPENDS ${CANORUS_QM_FILES}) ADD_DEPENDENCIES(canorus canorus_qm) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2017-05-19 17:07:21
|
Revision: 1471 http://sourceforge.net/p/canorus/code/1471 Author: suamor Date: 2017-05-19 17:07:19 +0000 (Fri, 19 May 2017) Log Message: ----------- Add local installation for testing; Update Readme for build folder instructions; add new test chapter to Readme; Modified Paths: -------------- trunk/README trunk/src/CMakeLists.txt Modified: trunk/README =================================================================== --- trunk/README 2017-05-19 07:21:04 UTC (rev 1470) +++ trunk/README 2017-05-19 17:07:19 UTC (rev 1471) @@ -13,26 +13,50 @@ Build dependencies: =================== The latest version of Qt5, Swig and CMake is preferred. -Canorus supports the current "LTS" version 5.6.0 +Canorus requires the current "LTS" version 5.6 or later. - Qt development package >=5.3 (http://www.qt-project.org) - Swig >=2.0.12 (http://www.swig.org). Swig >= 3.0.8 is working too. (cmake does not support parallel installations of swig) -- g++ >=4.8, make (http://gcc.gnu.org, http://www.mingw.org) -- cmake >=2.8 (http://www.cmake.org). CMake 3.x is not supported (does not work on SuSE) +- g++ >=5, make (http://gcc.gnu.org, http://www.mingw.org) +- cmake >=3.5 (http://www.cmake.org). - Python development package >=3.0 (http://www.python.org) - (optional) Lyx, tex4ht (user's guide) -Qt5 Build (tested up to version 5.6.0) -- Get Qt development package 5.6.0 (http://www.qt.io) +Qt5 Build (tested with version 5.6.2) +- Get original Qt development package 5.6.2 (http://www.qt.io) +- It is strongly recommended not to use Qt coming with your distribution - Get Swig, g++, cmake, python, lyx as specified above (make sure to remove Swig 2.0 before using Swig 3.0) - Run cmake with prefix to the Qt installation path (f.e. "/opt/Qt") - $ cmake -DCMAKE_PREFIX_PATH=/opt/Qt/5.6/gcc_64 . - (the prefix option can be skipped on most Linux distributions) +- Create a build folder, outside the source folder and "cd" into it + $ cmake -DCMAKE_PREFIX_PATH=/opt/Qt/5.6/gcc_64 ../canorus/trunk - Ignore the warning about the missing ruby package -- make -j4 (for dual-core use -j2 switch) +- make -j4 (for dual-core use -j2 switch), on Intel i7 use -j8 / -j4 +Note that if you use the old way of building canorus you have to +disable the local installation of Canorus when calling cmake: +- $ cmake -DCMAKE_PREFIX_PATH=/opt/Qt/5.6/gcc_64 -DCANORUS_DEV_INSTALL=False + +Set it to true to do a test installation for a Release version, f.e. +- $ cmake -DCMAKE_PREFIX_PATH=/opt/Qt/5.6/gcc_64 -DCMAKE_BUILD_TYPE=Release -DCANORUS_DEV_INSTALL=False + +Testing Canorus +=============== +If you built the development version of Canorus, an install folder is +created containing a local installation of Canorus. + +To run it, first set the library path to the Qt libraries, f.e. +$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/Qt/5.6/gcc_64/lib + +Change into resources folder: +$ cd install/share/canorus + +Run canorus from the bin folder: +$ ../../bin/canorus + +You need to run it from here so Canorus finds it's libraries, images etc. + Runtime dependencies: ===================== - Qt library, same version Modified: trunk/src/CMakeLists.txt =================================================================== --- trunk/src/CMakeLists.txt 2017-05-19 07:21:04 UTC (rev 1470) +++ trunk/src/CMakeLists.txt 2017-05-19 17:07:19 UTC (rev 1471) @@ -704,12 +704,23 @@ ############### # Translation # ############### -qt5_create_translation(CANORUS_MSG_FILES ${Canorus_UIC_Srcs} ${Canorus_Srcs}) +qt5_create_translation(CANORUS_QM_FILES ${Canorus_UIC_Srcs} ${Canorus_Srcs}) qt5_add_translation(CANORUS_QM_FILES ${Canorus_Translation_Srcs} lang/template.ts ) -ADD_CUSTOM_TARGET(canorus_msg DEPENDS ${CANORUS_MSG_FILES}) ADD_CUSTOM_TARGET(canorus_qm DEPENDS ${CANORUS_QM_FILES}) -ADD_DEPENDENCIES(canorus canorus_msg canorus_qm) +ADD_DEPENDENCIES(canorus canorus_qm) +############### +# Dev Install # +############### +message("CANORUS_DEV_INSTALL " ${CANORUS_DEV_INSTALL}) +IF(${CANORUS_DEV_INSTALL} MATCHES True) + ADD_CUSTOM_COMMAND( + TARGET canorus + POST_BUILD + COMMAND make install + ) +ENDIF(${CANORUS_DEV_INSTALL} MATCHES True) + ################ # Installation # ################ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2017-05-19 07:21:06
|
Revision: 1470 http://sourceforge.net/p/canorus/code/1470 Author: suamor Date: 2017-05-19 07:21:04 +0000 (Fri, 19 May 2017) Log Message: ----------- Streamline Translation with 5.6 (use official macros); remove webkit support (broken, not supported on > 5.6 anyway); add check for webengine; fix crash in pluginmanager when no plugins are available Modified Paths: -------------- trunk/CMakeLists.txt trunk/src/CMakeLists.txt trunk/src/interface/pluginmanager.cpp trunk/src/widgets/helpbrowser.h Modified: trunk/CMakeLists.txt =================================================================== --- trunk/CMakeLists.txt 2016-04-25 22:24:03 UTC (rev 1469) +++ trunk/CMakeLists.txt 2017-05-19 07:21:04 UTC (rev 1470) @@ -86,6 +86,7 @@ FIND_PACKAGE(Qt5Xml REQUIRED) FIND_PACKAGE(Qt5Help REQUIRED) FIND_PACKAGE(Qt5PrintSupport REQUIRED) +FIND_PACKAGE(Qt5WebEngineWidgets REQUIRED) # in the following lines all the requires include directories are added INCLUDE_DIRECTORIES(src) Modified: trunk/src/CMakeLists.txt =================================================================== --- trunk/src/CMakeLists.txt 2016-04-25 22:24:03 UTC (rev 1469) +++ trunk/src/CMakeLists.txt 2017-05-19 07:21:04 UTC (rev 1470) @@ -199,7 +199,6 @@ # Enable needed Qt modules for Canorus SET(QT_USE_QTXML True) # Save/Load SET(QT_USE_QTSVG True) # Icons, Images etc. -SET(QT_USE_QTWEBKIT True) # Inline help browser # Add all resources to Canorus_Resrcs (icons, html files etc.) #SET(Canorus_Resrcs ui/mainwin.qrc) # not needed, all resources are loaded on-the-fly @@ -578,7 +577,6 @@ INCLUDE_DIRECTORIES(${Qt5Widgets_INCLUDE_DIRS}) INCLUDE_DIRECTORIES(${Qt5Xml_INCLUDE_DIRS}) INCLUDE_DIRECTORIES(${Qt5PrintSupport_INCLUDE_DIRS}) -INCLUDE_DIRECTORIES(${Qt5WebKitWidgets_INCLUDE_DIRS}) # FIX: Qt was built with -reduce-relocations if (Qt5_POSITION_INDEPENDENT_CODE) @@ -661,7 +659,7 @@ # command. Never remove that line :-) # Add ${QT_QTTEST_LIBRARY} below to add the Qt Test library as well # Add ${POPPLERQT4_LIBRARY} ${POPPLER_LIBRARY} to reactivate poppler libraries -TARGET_LINK_LIBRARIES(canorus Qt5::Widgets Qt5::Core Qt5::Gui Qt5::Svg Qt5::Xml Qt5::PrintSupport Qt5::WebKitWidgets ${RUBY_LIBRARY} ${PYTHON_LIBRARY} z pthread ) +TARGET_LINK_LIBRARIES(canorus Qt5::Widgets Qt5::Core Qt5::Gui Qt5::Svg Qt5::Xml Qt5::PrintSupport Qt5::WebEngineWidgets ${RUBY_LIBRARY} ${PYTHON_LIBRARY} z pthread ) # Duma leads to a crash on libfontconfig with Ubuntu (10.04/12.04) # duma ) @@ -706,20 +704,11 @@ ############### # Translation # ############### -ADD_CUSTOM_COMMAND( - TARGET canorus - PRE_BUILD - #COMMAND ${QT_BINARY_DIR}/lupdate - COMMAND lupdate - ARGS -noobsolete ${Canorus_UIC_Srcs} ${Canorus_Srcs} -ts ${Canorus_Translation_Srcs} lang/template.ts -) -ADD_CUSTOM_COMMAND( - TARGET canorus - PRE_BUILD - #COMMAND ${QT_BINARY_DIR}/lrelease - COMMAND lrelease - ARGS ${Canorus_Translation_Srcs} -) +qt5_create_translation(CANORUS_MSG_FILES ${Canorus_UIC_Srcs} ${Canorus_Srcs}) +qt5_add_translation(CANORUS_QM_FILES ${Canorus_Translation_Srcs} lang/template.ts ) +ADD_CUSTOM_TARGET(canorus_msg DEPENDS ${CANORUS_MSG_FILES}) +ADD_CUSTOM_TARGET(canorus_qm DEPENDS ${CANORUS_QM_FILES}) +ADD_DEPENDENCIES(canorus canorus_msg canorus_qm) ################ # Installation # @@ -759,7 +748,7 @@ IF(MINGW) # Install Qt libs - INSTALL( FILES ${QT_BIN_DIR}/Qt5Core.dll ${QT_BIN_DIR}/Qt5Gui.dll ${QT_BIN_DIR}/Qt5Widgets.dll ${QT_BIN_DIR}/Qt5Svg.dll ${QT_BIN_DIR}/Qt5Xml.dll ${QT_BIN_DIR}/Qt5Sql.dll ${QT_BIN_DIR}/Qt5Network.dll ${QT_BIN_DIR}/Qt5CLucene.dll ${QT_BIN_DIR}/Qt5PrintSupport.dll ${QT_BIN_DIR}/Qt5WebKitWidgets.dll DESTINATION ${CMAKE_INSTALL_PREFIX}/${CANORUS_INSTALL_BIN_DIR} ) + INSTALL( FILES ${QT_BIN_DIR}/Qt5Core.dll ${QT_BIN_DIR}/Qt5Gui.dll ${QT_BIN_DIR}/Qt5Widgets.dll ${QT_BIN_DIR}/Qt5Svg.dll ${QT_BIN_DIR}/Qt5Xml.dll ${QT_BIN_DIR}/Qt5Sql.dll ${QT_BIN_DIR}/Qt5Network.dll ${QT_BIN_DIR}/Qt5CLucene.dll ${QT_BIN_DIR}/Qt5PrintSupport.dll DESTINATION ${CMAKE_INSTALL_PREFIX}/${CANORUS_INSTALL_BIN_DIR} ) # Install qsvg plugin for rendering SVG icons get_target_property(QSvgIcon_loc Qt5::QSvgIconPlugin LOCATION) Modified: trunk/src/interface/pluginmanager.cpp =================================================================== --- trunk/src/interface/pluginmanager.cpp 2016-04-25 22:24:03 UTC (rev 1469) +++ trunk/src/interface/pluginmanager.cpp 2017-05-19 07:21:04 UTC (rev 1470) @@ -82,31 +82,34 @@ \sa enablePlugin(), enablePlugins() */ void CAPluginManager::readPlugins() { - QString systemPluginsPath = QDir::searchPaths("plugins")[0]; - QList<QString> pluginPaths; + if(QDir::searchPaths("plugins").size() > 0) + { + QString systemPluginsPath = QDir::searchPaths("plugins")[0]; + QList<QString> pluginPaths; - // search the plugins paths and creates a list of directories for each plugin - QDir curDir(systemPluginsPath); - for (int j=0; j<(int)curDir.count(); j++) { - pluginPaths << curDir.absolutePath() + "/" + curDir[j]; - } + // search the plugins paths and creates a list of directories for each plugin + QDir curDir(systemPluginsPath); + for (int j=0; j<(int)curDir.count(); j++) { + pluginPaths << curDir.absolutePath() + "/" + curDir[j]; + } - for (int i=0; i<pluginPaths.size(); i++) { - QXmlSimpleReader reader; - QFile *file = new QFile(pluginPaths[i] + "/canorusplugin.xml"); - file->open(QIODevice::ReadOnly); + for (int i=0; i<pluginPaths.size(); i++) { + QXmlSimpleReader reader; + QFile *file = new QFile(pluginPaths[i] + "/canorusplugin.xml"); + file->open(QIODevice::ReadOnly); - // test if the descriptor file can be opened - if (!file->isOpen()) { - delete file; - continue; - } + // test if the descriptor file can be opened + if (!file->isOpen()) { + delete file; + continue; + } - delete file; - CAPlugin *plugin = new CAPlugin(); - plugin->setDirName(pluginPaths[i]); - _pluginList << plugin; - } + delete file; + CAPlugin *plugin = new CAPlugin(); + plugin->setDirName(pluginPaths[i]); + _pluginList << plugin; + } + } } /*! Modified: trunk/src/widgets/helpbrowser.h =================================================================== --- trunk/src/widgets/helpbrowser.h 2016-04-25 22:24:03 UTC (rev 1469) +++ trunk/src/widgets/helpbrowser.h 2017-05-19 07:21:04 UTC (rev 1470) @@ -9,18 +9,10 @@ #ifndef HELPBROWSER_H_ #define HELPBROWSER_H_ -#if QT_VERSION >= 0x050600 -#include <QWebEngineView> -#else -#include <QWebView> -#endif +#include <QtWebEngineWidgets/QWebEngineView> class CAHelpBrowser -#if QT_VERSION >= 0x050600 : public QWebEngineView -#else -: public QWebView -#endif { Q_OBJECT public: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2016-04-25 22:24:05
|
Revision: 1469 http://sourceforge.net/p/canorus/code/1469 Author: matevz Date: 2016-04-25 22:24:03 +0000 (Mon, 25 Apr 2016) Log Message: ----------- Fixed toolbars: When inserting clefs, time sigs, key sigs etc. the voice toolbar should not be visible. Fixed fake text edit, if adding a text illegaly to non-playable element. Fixed text edit popping back up, when switching from insert to edit mode. Show text edit when exactly one element is selected, otherwise, confirm any opened text edits and hide it. Internals: CAMainWin.insertMusElementAt( const QPoint coords, CAScoreView *v ) now returns bool on success. Internals: Added CAText comment on lilypond issues. Modified Paths: -------------- trunk/src/score/text.cpp trunk/src/ui/mainwin.cpp trunk/src/ui/mainwin.h Modified: trunk/src/score/text.cpp =================================================================== --- trunk/src/score/text.cpp 2016-04-25 21:25:18 UTC (rev 1468) +++ trunk/src/score/text.cpp 2016-04-25 22:24:03 UTC (rev 1469) @@ -13,6 +13,8 @@ \brief Text sign Arbitrary text above or below playable elements. + Playable elements are required since Lilypond is not able to easily assign + arbitrary text on non-playable ones. */ CAText::CAText( const QString s, CAPlayable *t ) Modified: trunk/src/ui/mainwin.cpp =================================================================== --- trunk/src/ui/mainwin.cpp 2016-04-25 21:25:18 UTC (rev 1468) +++ trunk/src/ui/mainwin.cpp 2016-04-25 22:24:03 UTC (rev 1469) @@ -1532,18 +1532,7 @@ } if (currentScoreView()) { - if (currentScoreView()->selection().size()) { - CAMusElement *elt = currentScoreView()->selection().front()->musElement(); - if ( elt->musElementType()==CAMusElement::Syllable || - ((elt->musElementType()==CAMusElement::Mark && (static_cast<CAMark*>(elt)->markType()==CAMark::Text)) || static_cast<CAMark*>(elt)->markType()==CAMark::BookMark) - ) { - if (!currentScoreView()->textEditVisible()) { - currentScoreView()->createTextEdit(currentScoreView()->selection().front()); - } - } else { - currentScoreView()->removeTextEdit(); - } - } else { + if (!currentScoreView()->selection().size()) { musElementFactory()->setMusElementType( CAMusElement::Undefined ); } uiVoiceNum->setRealValue( 0 ); @@ -1864,13 +1853,14 @@ currentScoreView()->updateHelpers(); } - insertMusElementAt( coords, v ); + // Insert playable/music element + bool success = insertMusElementAt( coords, v ); if ( musElementFactory()->musElementType()==CAMusElement::Rest ) musElementFactory()->setMusElementType( CAMusElement::Note ); // Insert Syllable or Text - if ( (uiInsertSyllable->isChecked() || (uiMarkType->isChecked() && (musElementFactory()->markType()==CAMark::Text || musElementFactory()->markType()==CAMark::BookMark))) && !v->selection().isEmpty() ) { + if ( (uiInsertSyllable->isChecked() || (uiMarkType->isChecked() && (musElementFactory()->markType()==CAMark::Text || musElementFactory()->markType()==CAMark::BookMark) && success)) && !v->selection().isEmpty() ) { v->createTextEdit( v->selection().front() ); } else { v->removeTextEdit(); @@ -2054,7 +2044,7 @@ CADrawableMusElement *dElt = 0; CAMusElement *elt = 0; - if (v->selection().size()) { + if (v->selection().size()==1) { dElt = v->selection().front(); elt = dElt->musElement(); } @@ -2513,8 +2503,11 @@ /*! This method places the currently prepared music element in CAMusElementFactory to the staff or voice, dependent on the music element type and the View coordinates. + + \return True, if a new element of any kind was inserted; False, if an + element was just edited or not handled at all. */ -void CAMainWin::insertMusElementAt(const QPoint coords, CAScoreView *v) { +bool CAMainWin::insertMusElementAt(const QPoint coords, CAScoreView *v) { CADrawableContext *drawableContext = v->currentContext(); CAStaff *staff=0; @@ -2533,7 +2526,7 @@ bool success=false; if (!drawableContext) - return; + return false; CACanorus::undo()->createUndoCommand( document(), tr("insertion of music element", "undo") ); @@ -2781,7 +2774,7 @@ for (int i=noteList.indexOf(noteStart); i<=end; i++) if (((musElementFactory()->slurType()==CASlur::SlurType && (noteList[i]->slurStart())) || noteList[i]->slurEnd()) || (((musElementFactory()->slurType()==CASlur::PhrasingSlurType && (noteList[i]->phrasingSlurStart()))) || noteList[i]->phrasingSlurEnd()) ) - return; + return false; if (((musElementFactory()->slurType()==CASlur::SlurType && (noteStart->slurStart())) || noteEnd->slurEnd()) || (((musElementFactory()->slurType()==CASlur::PhrasingSlurType && (noteStart->phrasingSlurStart()))) || noteEnd->phrasingSlurEnd())) @@ -2849,6 +2842,8 @@ v->setWorldX( d->xPos()-v->worldWidth()/2, CACanorus::settings()->animatedScroll() ); } } + + return success; } /*! @@ -4523,8 +4518,8 @@ void CAMainWin::updateVoiceToolBar() { CAContext *context = currentContext(); if ( context && context->contextType() == CAContext::Staff && currentScoreView() && - ((mode()==EditMode && currentScoreView()->selection().size()==0) || - mode()==InsertMode) ) { + ( (mode()==EditMode && currentScoreView()->selection().size()==0) || + (mode()==InsertMode && uiInsertPlayable->isChecked()) ) ) { CAStaff *staff = static_cast<CAStaff*>(context); uiNewVoice->setVisible(true); uiNewVoice->setEnabled(true); Modified: trunk/src/ui/mainwin.h =================================================================== --- trunk/src/ui/mainwin.h 2016-04-25 21:25:18 UTC (rev 1468) +++ trunk/src/ui/mainwin.h 2016-04-25 22:24:03 UTC (rev 1469) @@ -92,7 +92,7 @@ void newDocument(); void addSheet(CASheet *s); void removeSheet(CASheet *s); - void insertMusElementAt( const QPoint coords, CAScoreView *v ); + bool insertMusElementAt( const QPoint coords, CAScoreView *v ); void restartTimeEditedTime() { _timeEditedTime = 0; }; void deleteSelection( CAScoreView *v, bool deleteSyllable, bool deleteNotes, bool undo ); void copySelection( CAScoreView *v ); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2016-04-25 21:25:20
|
Revision: 1468 http://sourceforge.net/p/canorus/code/1468 Author: matevz Date: 2016-04-25 21:25:18 +0000 (Mon, 25 Apr 2016) Log Message: ----------- Fixed QWebEngine dependencies on Qt5.5. Modified Paths: -------------- trunk/src/widgets/helpbrowser.cpp trunk/src/widgets/helpbrowser.h Modified: trunk/src/widgets/helpbrowser.cpp =================================================================== --- trunk/src/widgets/helpbrowser.cpp 2016-04-25 21:16:45 UTC (rev 1467) +++ trunk/src/widgets/helpbrowser.cpp 2016-04-25 21:25:18 UTC (rev 1468) @@ -11,7 +11,7 @@ #include <QTextStream> CAHelpBrowser::CAHelpBrowser(QWidget* parent) -#if QT_VERSION >= 0x050500 +#if QT_VERSION >= 0x050600 : QWebEngineView(parent) #else : QWebView(parent) Modified: trunk/src/widgets/helpbrowser.h =================================================================== --- trunk/src/widgets/helpbrowser.h 2016-04-25 21:16:45 UTC (rev 1467) +++ trunk/src/widgets/helpbrowser.h 2016-04-25 21:25:18 UTC (rev 1468) @@ -9,14 +9,14 @@ #ifndef HELPBROWSER_H_ #define HELPBROWSER_H_ -#if QT_VERSION >= 0x050500 +#if QT_VERSION >= 0x050600 #include <QWebEngineView> #else #include <QWebView> #endif class CAHelpBrowser -#if QT_VERSION >= 0x050500 +#if QT_VERSION >= 0x050600 : public QWebEngineView #else : public QWebView This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2016-04-25 21:16:48
|
Revision: 1467 http://sourceforge.net/p/canorus/code/1467 Author: matevz Date: 2016-04-25 21:16:45 +0000 (Mon, 25 Apr 2016) Log Message: ----------- Fixed insert playable icon to be more meaningful. Modified Paths: -------------- trunk/doc/usersguide2/images/insertplayable.svg trunk/src/ui/images/playable/insertplayable.svg Modified: trunk/doc/usersguide2/images/insertplayable.svg =================================================================== --- trunk/doc/usersguide2/images/insertplayable.svg 2016-04-25 20:18:18 UTC (rev 1466) +++ trunk/doc/usersguide2/images/insertplayable.svg 2016-04-25 21:16:45 UTC (rev 1467) @@ -1,8 +1,9 @@ <?xml version="1.0" encoding="UTF-8" standalone="no"?> <!-- Created with Inkscape (http://www.inkscape.org/) --> + <svg xmlns:dc="http://purl.org/dc/elements/1.1/" - xmlns:cc="http://web.resource.org/cc/" + xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" @@ -13,9 +14,10 @@ height="128" id="svg2" sodipodi:version="0.32" - inkscape:version="0.45" + inkscape:version="0.91 r13725" sodipodi:modified="true" - version="1.0"> + version="1.0" + sodipodi:docname="insertplayable.svg"> <defs id="defs4"> <linearGradient @@ -107,17 +109,19 @@ objecttolerance="10" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="0.49497475" - inkscape:cx="106.98601" - inkscape:cy="-17.653473" + inkscape:zoom="2.8" + inkscape:cx="28.663506" + inkscape:cy="39.722902" inkscape:document-units="px" inkscape:current-layer="layer1" width="128px" height="128px" - inkscape:window-width="1053" - inkscape:window-height="707" - inkscape:window-x="153" - inkscape:window-y="287" /> + inkscape:window-width="1642" + inkscape:window-height="1021" + inkscape:window-x="0" + inkscape:window-y="0" + showgrid="false" + inkscape:window-maximized="1" /> <metadata id="metadata7"> <rdf:RDF> @@ -133,74 +137,37 @@ inkscape:label="Layer 1" inkscape:groupmode="layer" id="layer1"> - <path - id="path4344" - d="M 1.9087978,43.965549 L 126.66263,43.965549" - style="fill:#cccccc;fill-opacity:0.75;fill-rule:evenodd;stroke:#707071;stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.74688798" /> - <path - style="fill:#cccccc;fill-opacity:0.75;fill-rule:evenodd;stroke:#707071;stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.74688798" - d="M 1.9087978,56.781857 L 126.66263,56.781857" - id="path4346" /> - <path - id="path4348" - d="M 1.9087978,69.598171 L 126.66263,69.598171" - style="fill:#cccccc;fill-opacity:0.75;fill-rule:evenodd;stroke:#707071;stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.74688798" /> - <path - style="fill:#cccccc;fill-opacity:0.75;fill-rule:evenodd;stroke:#707071;stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.74688798" - d="M 1.9087978,82.414479 L 126.66263,82.414479" - id="path4350" /> - <path - id="path4352" - d="M 1.9087978,95.230791 L 126.66263,95.230791" - style="fill:#cccccc;fill-opacity:0.75;fill-rule:evenodd;stroke:#707071;stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.74688798" /> - <path - style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="M 1.9087978,42.197782 L 126.66263,42.197782" - id="path2352" /> - <path - id="path2356" - d="M 1.9087978,55.01409 L 126.66263,55.01409" - style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> - <path - style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="M 1.9087978,67.830404 L 126.66263,67.830404" - id="path2358" /> - <path - id="path2360" - d="M 1.9087978,80.646712 L 126.66263,80.646712" - style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> - <path - style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="M 1.9087978,93.463021 L 126.66263,93.463021" - id="path2362" /> <g id="g2431" - transform="matrix(1.0794841,0,0,1.0794841,-0.5443739,-7.0709978)"> + transform="matrix(-1.7371143,0,0,-1.7371143,107.89799,141.29326)"> <path style="fill:#000000;fill-opacity:0.39215686" sodipodi:nodetypes="cscccccccccccssc" id="path36146" - d="M 42.99059,8.9954788 C 42.558362,9.1107018 42.403214,9.3827578 42.210964,9.5814928 C 41.983106,9.8170388 41.843664,10.430677 41.849668,10.758336 L 41.849668,62.137879 C 41.533635,61.429215 41.012019,60.844847 39.706797,60.423172 C 38.415281,60.064417 36.424593,59.828146 34.989578,59.971614 C 29.751758,60.545599 24.3598,64.271271 22.135522,68.791616 C 21.418012,70.29834 21.143743,71.370732 21.07199,72.733967 C 21.00024,74.958267 21.8621,76.961814 23.584125,78.253361 C 24.158131,78.755601 25.453691,79.340012 26.24295,79.555264 C 32.270032,81.349013 40.575965,77.180908 43.589506,71.010331 C 44.307016,69.575312 44.599619,68.504566 44.671377,67.141252 L 44.634701,10.242378 C 44.640853,9.9076018 44.50472,9.5806318 44.267965,9.3438768 C 44.03121,9.1071348 43.72257,8.9893268 43.387802,8.9954788 C 43.336605,8.9962338 43.098815,8.9755738 42.99059,8.9954788 z " /> + d="m 42.99059,8.9954788 c -0.432228,0.115223 -0.587376,0.387279 -0.779626,0.586014 -0.227858,0.235546 -0.3673,0.8491842 -0.361296,1.1768432 l 0,51.379543 c -0.316033,-0.708664 -0.837649,-1.293032 -2.142871,-1.714707 -1.291516,-0.358755 -3.282204,-0.595026 -4.717219,-0.451558 -5.23782,0.573985 -10.629778,4.299657 -12.854056,8.820002 -0.71751,1.506724 -0.991779,2.579116 -1.063532,3.942351 -0.07175,2.2243 0.79011,4.227847 2.512135,5.519394 0.574006,0.50224 1.869566,1.086651 2.658825,1.301903 6.027082,1.793749 14.333015,-2.374356 17.346556,-8.544933 0.71751,-1.435019 1.010113,-2.505765 1.081871,-3.869079 l -0.03668,-56.898874 c 0.0062,-0.3347762 -0.129981,-0.6617462 -0.366736,-0.8985012 -0.236755,-0.236742 -0.545395,-0.35455 -0.880163,-0.348398 -0.0512,7.55e-4 -0.288987,-0.019905 -0.397212,0 z" + inkscape:connector-curvature="0" /> <path style="fill:url(#linearGradient2435);fill-opacity:1" sodipodi:nodetypes="cscccccccccccssc" id="path34228" - d="M 42.251364,8.0911328 C 41.819135,8.2063548 41.663988,8.4784118 41.471736,8.6771458 C 41.243879,8.9126918 41.104437,9.5263298 41.11044,9.8539898 L 41.11044,61.233532 C 40.794409,60.524869 40.272792,59.940501 38.967571,59.518825 C 37.676054,59.16007 35.685367,58.9238 34.250349,59.067268 C 29.01253,59.641252 23.620574,63.366924 21.396294,67.887269 C 20.678785,69.393994 20.404515,70.466385 20.332764,71.829638 C 20.261013,74.053929 21.122873,76.057475 22.844897,77.349027 C 23.418904,77.85125 24.714463,78.435648 25.503724,78.6509 C 31.530803,80.444653 39.836738,76.276579 42.850279,70.105984 C 43.567789,68.670965 43.860392,67.60022 43.93215,66.236906 L 43.895474,9.3380308 C 43.901626,9.0032548 43.765494,8.6762858 43.528738,8.4395308 C 43.291982,8.2027878 42.983342,8.0849798 42.648576,8.0911328 C 42.597378,8.0918878 42.359587,8.0712268 42.251364,8.0911328 z " /> + d="m 42.251364,8.0911328 c -0.432229,0.115222 -0.587376,0.387279 -0.779628,0.586013 -0.227857,0.235546 -0.367299,0.849184 -0.361296,1.176844 l 0,51.3795422 C 40.794409,60.524869 40.272792,59.940501 38.967571,59.518825 37.676054,59.16007 35.685367,58.9238 34.250349,59.067268 c -5.237819,0.573984 -10.629775,4.299656 -12.854055,8.820001 -0.717509,1.506725 -0.991779,2.579116 -1.06353,3.942369 -0.07175,2.224291 0.790109,4.227837 2.512133,5.519389 0.574007,0.502223 1.869566,1.086621 2.658827,1.301873 6.027079,1.793753 14.333014,-2.374321 17.346555,-8.544916 0.71751,-1.435019 1.010113,-2.505764 1.081871,-3.869078 L 43.895474,9.3380308 c 0.0062,-0.334776 -0.12998,-0.661745 -0.366736,-0.8985 -0.236756,-0.236743 -0.545396,-0.354551 -0.880162,-0.348398 -0.0512,7.55e-4 -0.288989,-0.019906 -0.397212,0 z" + inkscape:connector-curvature="0" /> </g> <g id="g2425" - transform="matrix(1.1686772,0,0,1.1686772,-6.3399709,-14.328306)"> + transform="matrix(1.7935719,0,0,1.7935719,-56.505117,-82.613709)"> <g inkscape:export-ydpi="90" inkscape:export-xdpi="90" inkscape:export-filename="/home/matevz/apps/canorus/branches/matevz/src/fonts/r16.png" style="fill:#000000;fill-opacity:0.39215686;stroke:none;stroke-opacity:0.39215686" id="g7639" - transform="matrix(7.8180666e-2,0,0,-7.8180666e-2,76.556536,76.676372)"> + transform="matrix(0.07818067,0,0,-0.07818067,76.556536,76.676372)"> <path style="fill:#000000;fill-opacity:0.39215686;stroke:none;stroke-opacity:0.39215686" id="path7641" - d="M 110,203 C 125,207 140,205 154,198 C 167,191 177,181 182,167 C 183,163 185,154 187,145 C 192,121 195,116 203,111 C 210,108 215,108 220,111 C 229,116 250,140 262,159 C 269,170 270,171 275,173 C 280,175 285,175 291,173 C 295,171 300,165 300,163 C 299,162 260,13 212,-169 C 150,-405 124,-501 123,-502 C 116,-507 102,-512 93,-512 C 83,-512 69,-507 62,-502 C 60,-500 63,-490 110,-338 C 138,-249 160,-176 160,-175 C 160,-175 153,-177 146,-180 C 129,-185 110,-190 94,-193 C 75,-196 48,-196 37,-193 C 13,-187 -8,-171 -18,-151 C -25,-139 -27,-131 -26,-116 C -26,-105 -26,-103 -23,-95 C -19,-83 -15,-76 -6,-67 C 5,-56 17,-49 33,-46 C 64,-40 94,-56 104,-83 C 105,-87 107,-96 109,-105 C 114,-129 117,-134 125,-139 C 136,-143 142,-141 155,-129 C 164,-119 174,-106 183,-91 C 188,-84 190,-78 194,-66 C 203,-39 238,74 238,75 C 237,75 231,73 222,70 C 188,59 166,55 141,55 C 119,55 113,56 97,64 C 75,74 61,91 54,113 C 52,119 52,123 52,134 C 52,145 52,147 55,155 C 59,167 63,174 72,183 C 83,194 95,201 110,203 z " /> + d="m 110,203 c 15,4 30,2 44,-5 13,-7 23,-17 28,-31 1,-4 3,-13 5,-22 5,-24 8,-29 16,-34 7,-3 12,-3 17,0 9,5 30,29 42,48 7,11 8,12 13,14 5,2 10,2 16,0 4,-2 9,-8 9,-10 -1,-1 -40,-150 -88,-332 -62,-236 -88,-332 -89,-333 -7,-5 -21,-10 -30,-10 -10,0 -24,5 -31,10 -2,2 1,12 48,164 28,89 50,162 50,163 0,0 -7,-2 -14,-5 -17,-5 -36,-10 -52,-13 -19,-3 -46,-3 -57,0 -24,6 -45,22 -55,42 -7,12 -9,20 -8,35 0,11 0,13 3,21 4,12 8,19 17,28 11,11 23,18 39,21 31,6 61,-10 71,-37 1,-4 3,-13 5,-22 5,-24 8,-29 16,-34 11,-4 17,-2 30,10 9,10 19,23 28,38 5,7 7,13 11,25 9,27 44,140 44,141 -1,0 -7,-2 -16,-5 -34,-11 -56,-15 -81,-15 -22,0 -28,1 -44,9 -22,10 -36,27 -43,49 -2,6 -2,10 -2,21 0,11 0,13 3,21 4,12 8,19 17,28 11,11 23,18 38,20 z" + inkscape:connector-curvature="0" /> </g> <g inkscape:export-ydpi="90" @@ -208,11 +175,12 @@ inkscape:export-filename="/home/matevz/apps/canorus/branches/matevz/src/fonts/r16.png" style="fill:url(#linearGradient2437);fill-opacity:1" id="g6755" - transform="matrix(7.8180666e-2,0,0,-7.8180666e-2,75.632361,75.567408)"> + transform="matrix(0.07818067,0,0,-0.07818067,75.632361,75.567408)"> <path style="fill:url(#linearGradient2439);fill-opacity:1" id="path6757" - d="M 110,203 C 125,207 140,205 154,198 C 167,191 177,181 182,167 C 183,163 185,154 187,145 C 192,121 195,116 203,111 C 210,108 215,108 220,111 C 229,116 250,140 262,159 C 269,170 270,171 275,173 C 280,175 285,175 291,173 C 295,171 300,165 300,163 C 299,162 260,13 212,-169 C 150,-405 124,-501 123,-502 C 116,-507 102,-512 93,-512 C 83,-512 69,-507 62,-502 C 60,-500 63,-490 110,-338 C 138,-249 160,-176 160,-175 C 160,-175 153,-177 146,-180 C 129,-185 110,-190 94,-193 C 75,-196 48,-196 37,-193 C 13,-187 -8,-171 -18,-151 C -25,-139 -27,-131 -26,-116 C -26,-105 -26,-103 -23,-95 C -19,-83 -15,-76 -6,-67 C 5,-56 17,-49 33,-46 C 64,-40 94,-56 104,-83 C 105,-87 107,-96 109,-105 C 114,-129 117,-134 125,-139 C 136,-143 142,-141 155,-129 C 164,-119 174,-106 183,-91 C 188,-84 190,-78 194,-66 C 203,-39 238,74 238,75 C 237,75 231,73 222,70 C 188,59 166,55 141,55 C 119,55 113,56 97,64 C 75,74 61,91 54,113 C 52,119 52,123 52,134 C 52,145 52,147 55,155 C 59,167 63,174 72,183 C 83,194 95,201 110,203 z " /> + d="m 110,203 c 15,4 30,2 44,-5 13,-7 23,-17 28,-31 1,-4 3,-13 5,-22 5,-24 8,-29 16,-34 7,-3 12,-3 17,0 9,5 30,29 42,48 7,11 8,12 13,14 5,2 10,2 16,0 4,-2 9,-8 9,-10 -1,-1 -40,-150 -88,-332 -62,-236 -88,-332 -89,-333 -7,-5 -21,-10 -30,-10 -10,0 -24,5 -31,10 -2,2 1,12 48,164 28,89 50,162 50,163 0,0 -7,-2 -14,-5 -17,-5 -36,-10 -52,-13 -19,-3 -46,-3 -57,0 -24,6 -45,22 -55,42 -7,12 -9,20 -8,35 0,11 0,13 3,21 4,12 8,19 17,28 11,11 23,18 39,21 31,6 61,-10 71,-37 1,-4 3,-13 5,-22 5,-24 8,-29 16,-34 11,-4 17,-2 30,10 9,10 19,23 28,38 5,7 7,13 11,25 9,27 44,140 44,141 -1,0 -7,-2 -16,-5 -34,-11 -56,-15 -81,-15 -22,0 -28,1 -44,9 -22,10 -36,27 -43,49 -2,6 -2,10 -2,21 0,11 0,13 3,21 4,12 8,19 17,28 11,11 23,18 38,20 z" + inkscape:connector-curvature="0" /> </g> </g> <rect Modified: trunk/src/ui/images/playable/insertplayable.svg =================================================================== --- trunk/src/ui/images/playable/insertplayable.svg 2016-04-25 20:18:18 UTC (rev 1466) +++ trunk/src/ui/images/playable/insertplayable.svg 2016-04-25 21:16:45 UTC (rev 1467) @@ -1,8 +1,9 @@ <?xml version="1.0" encoding="UTF-8" standalone="no"?> <!-- Created with Inkscape (http://www.inkscape.org/) --> + <svg xmlns:dc="http://purl.org/dc/elements/1.1/" - xmlns:cc="http://web.resource.org/cc/" + xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" @@ -13,9 +14,10 @@ height="128" id="svg2" sodipodi:version="0.32" - inkscape:version="0.45" + inkscape:version="0.91 r13725" sodipodi:modified="true" - version="1.0"> + version="1.0" + sodipodi:docname="insertplayable.svg"> <defs id="defs4"> <linearGradient @@ -107,17 +109,19 @@ objecttolerance="10" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="0.49497475" - inkscape:cx="106.98601" - inkscape:cy="-17.653473" + inkscape:zoom="2.8" + inkscape:cx="28.663506" + inkscape:cy="39.722902" inkscape:document-units="px" inkscape:current-layer="layer1" width="128px" height="128px" - inkscape:window-width="1053" - inkscape:window-height="707" - inkscape:window-x="153" - inkscape:window-y="287" /> + inkscape:window-width="1642" + inkscape:window-height="1021" + inkscape:window-x="0" + inkscape:window-y="0" + showgrid="false" + inkscape:window-maximized="1" /> <metadata id="metadata7"> <rdf:RDF> @@ -133,74 +137,37 @@ inkscape:label="Layer 1" inkscape:groupmode="layer" id="layer1"> - <path - id="path4344" - d="M 1.9087978,43.965549 L 126.66263,43.965549" - style="fill:#cccccc;fill-opacity:0.75;fill-rule:evenodd;stroke:#707071;stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.74688798" /> - <path - style="fill:#cccccc;fill-opacity:0.75;fill-rule:evenodd;stroke:#707071;stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.74688798" - d="M 1.9087978,56.781857 L 126.66263,56.781857" - id="path4346" /> - <path - id="path4348" - d="M 1.9087978,69.598171 L 126.66263,69.598171" - style="fill:#cccccc;fill-opacity:0.75;fill-rule:evenodd;stroke:#707071;stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.74688798" /> - <path - style="fill:#cccccc;fill-opacity:0.75;fill-rule:evenodd;stroke:#707071;stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.74688798" - d="M 1.9087978,82.414479 L 126.66263,82.414479" - id="path4350" /> - <path - id="path4352" - d="M 1.9087978,95.230791 L 126.66263,95.230791" - style="fill:#cccccc;fill-opacity:0.75;fill-rule:evenodd;stroke:#707071;stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.74688798" /> - <path - style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="M 1.9087978,42.197782 L 126.66263,42.197782" - id="path2352" /> - <path - id="path2356" - d="M 1.9087978,55.01409 L 126.66263,55.01409" - style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> - <path - style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="M 1.9087978,67.830404 L 126.66263,67.830404" - id="path2358" /> - <path - id="path2360" - d="M 1.9087978,80.646712 L 126.66263,80.646712" - style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> - <path - style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:2.9000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" - d="M 1.9087978,93.463021 L 126.66263,93.463021" - id="path2362" /> <g id="g2431" - transform="matrix(1.0794841,0,0,1.0794841,-0.5443739,-7.0709978)"> + transform="matrix(-1.7371143,0,0,-1.7371143,107.89799,141.29326)"> <path style="fill:#000000;fill-opacity:0.39215686" sodipodi:nodetypes="cscccccccccccssc" id="path36146" - d="M 42.99059,8.9954788 C 42.558362,9.1107018 42.403214,9.3827578 42.210964,9.5814928 C 41.983106,9.8170388 41.843664,10.430677 41.849668,10.758336 L 41.849668,62.137879 C 41.533635,61.429215 41.012019,60.844847 39.706797,60.423172 C 38.415281,60.064417 36.424593,59.828146 34.989578,59.971614 C 29.751758,60.545599 24.3598,64.271271 22.135522,68.791616 C 21.418012,70.29834 21.143743,71.370732 21.07199,72.733967 C 21.00024,74.958267 21.8621,76.961814 23.584125,78.253361 C 24.158131,78.755601 25.453691,79.340012 26.24295,79.555264 C 32.270032,81.349013 40.575965,77.180908 43.589506,71.010331 C 44.307016,69.575312 44.599619,68.504566 44.671377,67.141252 L 44.634701,10.242378 C 44.640853,9.9076018 44.50472,9.5806318 44.267965,9.3438768 C 44.03121,9.1071348 43.72257,8.9893268 43.387802,8.9954788 C 43.336605,8.9962338 43.098815,8.9755738 42.99059,8.9954788 z " /> + d="m 42.99059,8.9954788 c -0.432228,0.115223 -0.587376,0.387279 -0.779626,0.586014 -0.227858,0.235546 -0.3673,0.8491842 -0.361296,1.1768432 l 0,51.379543 c -0.316033,-0.708664 -0.837649,-1.293032 -2.142871,-1.714707 -1.291516,-0.358755 -3.282204,-0.595026 -4.717219,-0.451558 -5.23782,0.573985 -10.629778,4.299657 -12.854056,8.820002 -0.71751,1.506724 -0.991779,2.579116 -1.063532,3.942351 -0.07175,2.2243 0.79011,4.227847 2.512135,5.519394 0.574006,0.50224 1.869566,1.086651 2.658825,1.301903 6.027082,1.793749 14.333015,-2.374356 17.346556,-8.544933 0.71751,-1.435019 1.010113,-2.505765 1.081871,-3.869079 l -0.03668,-56.898874 c 0.0062,-0.3347762 -0.129981,-0.6617462 -0.366736,-0.8985012 -0.236755,-0.236742 -0.545395,-0.35455 -0.880163,-0.348398 -0.0512,7.55e-4 -0.288987,-0.019905 -0.397212,0 z" + inkscape:connector-curvature="0" /> <path style="fill:url(#linearGradient2435);fill-opacity:1" sodipodi:nodetypes="cscccccccccccssc" id="path34228" - d="M 42.251364,8.0911328 C 41.819135,8.2063548 41.663988,8.4784118 41.471736,8.6771458 C 41.243879,8.9126918 41.104437,9.5263298 41.11044,9.8539898 L 41.11044,61.233532 C 40.794409,60.524869 40.272792,59.940501 38.967571,59.518825 C 37.676054,59.16007 35.685367,58.9238 34.250349,59.067268 C 29.01253,59.641252 23.620574,63.366924 21.396294,67.887269 C 20.678785,69.393994 20.404515,70.466385 20.332764,71.829638 C 20.261013,74.053929 21.122873,76.057475 22.844897,77.349027 C 23.418904,77.85125 24.714463,78.435648 25.503724,78.6509 C 31.530803,80.444653 39.836738,76.276579 42.850279,70.105984 C 43.567789,68.670965 43.860392,67.60022 43.93215,66.236906 L 43.895474,9.3380308 C 43.901626,9.0032548 43.765494,8.6762858 43.528738,8.4395308 C 43.291982,8.2027878 42.983342,8.0849798 42.648576,8.0911328 C 42.597378,8.0918878 42.359587,8.0712268 42.251364,8.0911328 z " /> + d="m 42.251364,8.0911328 c -0.432229,0.115222 -0.587376,0.387279 -0.779628,0.586013 -0.227857,0.235546 -0.367299,0.849184 -0.361296,1.176844 l 0,51.3795422 C 40.794409,60.524869 40.272792,59.940501 38.967571,59.518825 37.676054,59.16007 35.685367,58.9238 34.250349,59.067268 c -5.237819,0.573984 -10.629775,4.299656 -12.854055,8.820001 -0.717509,1.506725 -0.991779,2.579116 -1.06353,3.942369 -0.07175,2.224291 0.790109,4.227837 2.512133,5.519389 0.574007,0.502223 1.869566,1.086621 2.658827,1.301873 6.027079,1.793753 14.333014,-2.374321 17.346555,-8.544916 0.71751,-1.435019 1.010113,-2.505764 1.081871,-3.869078 L 43.895474,9.3380308 c 0.0062,-0.334776 -0.12998,-0.661745 -0.366736,-0.8985 -0.236756,-0.236743 -0.545396,-0.354551 -0.880162,-0.348398 -0.0512,7.55e-4 -0.288989,-0.019906 -0.397212,0 z" + inkscape:connector-curvature="0" /> </g> <g id="g2425" - transform="matrix(1.1686772,0,0,1.1686772,-6.3399709,-14.328306)"> + transform="matrix(1.7935719,0,0,1.7935719,-56.505117,-82.613709)"> <g inkscape:export-ydpi="90" inkscape:export-xdpi="90" inkscape:export-filename="/home/matevz/apps/canorus/branches/matevz/src/fonts/r16.png" style="fill:#000000;fill-opacity:0.39215686;stroke:none;stroke-opacity:0.39215686" id="g7639" - transform="matrix(7.8180666e-2,0,0,-7.8180666e-2,76.556536,76.676372)"> + transform="matrix(0.07818067,0,0,-0.07818067,76.556536,76.676372)"> <path style="fill:#000000;fill-opacity:0.39215686;stroke:none;stroke-opacity:0.39215686" id="path7641" - d="M 110,203 C 125,207 140,205 154,198 C 167,191 177,181 182,167 C 183,163 185,154 187,145 C 192,121 195,116 203,111 C 210,108 215,108 220,111 C 229,116 250,140 262,159 C 269,170 270,171 275,173 C 280,175 285,175 291,173 C 295,171 300,165 300,163 C 299,162 260,13 212,-169 C 150,-405 124,-501 123,-502 C 116,-507 102,-512 93,-512 C 83,-512 69,-507 62,-502 C 60,-500 63,-490 110,-338 C 138,-249 160,-176 160,-175 C 160,-175 153,-177 146,-180 C 129,-185 110,-190 94,-193 C 75,-196 48,-196 37,-193 C 13,-187 -8,-171 -18,-151 C -25,-139 -27,-131 -26,-116 C -26,-105 -26,-103 -23,-95 C -19,-83 -15,-76 -6,-67 C 5,-56 17,-49 33,-46 C 64,-40 94,-56 104,-83 C 105,-87 107,-96 109,-105 C 114,-129 117,-134 125,-139 C 136,-143 142,-141 155,-129 C 164,-119 174,-106 183,-91 C 188,-84 190,-78 194,-66 C 203,-39 238,74 238,75 C 237,75 231,73 222,70 C 188,59 166,55 141,55 C 119,55 113,56 97,64 C 75,74 61,91 54,113 C 52,119 52,123 52,134 C 52,145 52,147 55,155 C 59,167 63,174 72,183 C 83,194 95,201 110,203 z " /> + d="m 110,203 c 15,4 30,2 44,-5 13,-7 23,-17 28,-31 1,-4 3,-13 5,-22 5,-24 8,-29 16,-34 7,-3 12,-3 17,0 9,5 30,29 42,48 7,11 8,12 13,14 5,2 10,2 16,0 4,-2 9,-8 9,-10 -1,-1 -40,-150 -88,-332 -62,-236 -88,-332 -89,-333 -7,-5 -21,-10 -30,-10 -10,0 -24,5 -31,10 -2,2 1,12 48,164 28,89 50,162 50,163 0,0 -7,-2 -14,-5 -17,-5 -36,-10 -52,-13 -19,-3 -46,-3 -57,0 -24,6 -45,22 -55,42 -7,12 -9,20 -8,35 0,11 0,13 3,21 4,12 8,19 17,28 11,11 23,18 39,21 31,6 61,-10 71,-37 1,-4 3,-13 5,-22 5,-24 8,-29 16,-34 11,-4 17,-2 30,10 9,10 19,23 28,38 5,7 7,13 11,25 9,27 44,140 44,141 -1,0 -7,-2 -16,-5 -34,-11 -56,-15 -81,-15 -22,0 -28,1 -44,9 -22,10 -36,27 -43,49 -2,6 -2,10 -2,21 0,11 0,13 3,21 4,12 8,19 17,28 11,11 23,18 38,20 z" + inkscape:connector-curvature="0" /> </g> <g inkscape:export-ydpi="90" @@ -208,11 +175,12 @@ inkscape:export-filename="/home/matevz/apps/canorus/branches/matevz/src/fonts/r16.png" style="fill:url(#linearGradient2437);fill-opacity:1" id="g6755" - transform="matrix(7.8180666e-2,0,0,-7.8180666e-2,75.632361,75.567408)"> + transform="matrix(0.07818067,0,0,-0.07818067,75.632361,75.567408)"> <path style="fill:url(#linearGradient2439);fill-opacity:1" id="path6757" - d="M 110,203 C 125,207 140,205 154,198 C 167,191 177,181 182,167 C 183,163 185,154 187,145 C 192,121 195,116 203,111 C 210,108 215,108 220,111 C 229,116 250,140 262,159 C 269,170 270,171 275,173 C 280,175 285,175 291,173 C 295,171 300,165 300,163 C 299,162 260,13 212,-169 C 150,-405 124,-501 123,-502 C 116,-507 102,-512 93,-512 C 83,-512 69,-507 62,-502 C 60,-500 63,-490 110,-338 C 138,-249 160,-176 160,-175 C 160,-175 153,-177 146,-180 C 129,-185 110,-190 94,-193 C 75,-196 48,-196 37,-193 C 13,-187 -8,-171 -18,-151 C -25,-139 -27,-131 -26,-116 C -26,-105 -26,-103 -23,-95 C -19,-83 -15,-76 -6,-67 C 5,-56 17,-49 33,-46 C 64,-40 94,-56 104,-83 C 105,-87 107,-96 109,-105 C 114,-129 117,-134 125,-139 C 136,-143 142,-141 155,-129 C 164,-119 174,-106 183,-91 C 188,-84 190,-78 194,-66 C 203,-39 238,74 238,75 C 237,75 231,73 222,70 C 188,59 166,55 141,55 C 119,55 113,56 97,64 C 75,74 61,91 54,113 C 52,119 52,123 52,134 C 52,145 52,147 55,155 C 59,167 63,174 72,183 C 83,194 95,201 110,203 z " /> + d="m 110,203 c 15,4 30,2 44,-5 13,-7 23,-17 28,-31 1,-4 3,-13 5,-22 5,-24 8,-29 16,-34 7,-3 12,-3 17,0 9,5 30,29 42,48 7,11 8,12 13,14 5,2 10,2 16,0 4,-2 9,-8 9,-10 -1,-1 -40,-150 -88,-332 -62,-236 -88,-332 -89,-333 -7,-5 -21,-10 -30,-10 -10,0 -24,5 -31,10 -2,2 1,12 48,164 28,89 50,162 50,163 0,0 -7,-2 -14,-5 -17,-5 -36,-10 -52,-13 -19,-3 -46,-3 -57,0 -24,6 -45,22 -55,42 -7,12 -9,20 -8,35 0,11 0,13 3,21 4,12 8,19 17,28 11,11 23,18 39,21 31,6 61,-10 71,-37 1,-4 3,-13 5,-22 5,-24 8,-29 16,-34 11,-4 17,-2 30,10 9,10 19,23 28,38 5,7 7,13 11,25 9,27 44,140 44,141 -1,0 -7,-2 -16,-5 -34,-11 -56,-15 -81,-15 -22,0 -28,1 -44,9 -22,10 -36,27 -43,49 -2,6 -2,10 -2,21 0,11 0,13 3,21 4,12 8,19 17,28 11,11 23,18 38,20 z" + inkscape:connector-curvature="0" /> </g> </g> <rect This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2016-04-25 20:18:21
|
Revision: 1466 http://sourceforge.net/p/canorus/code/1466 Author: matevz Date: 2016-04-25 20:18:18 +0000 (Mon, 25 Apr 2016) Log Message: ----------- Fixed user's guide theming for Sphinx 1.3.6. Fixed English user's guide url syntax. Modified Paths: -------------- trunk/doc/usersguide2/_templates/layout.html trunk/doc/usersguide2/source/en/conf.py trunk/doc/usersguide2/source/en/introduction.rst trunk/doc/usersguide2/source/nb/conf.py trunk/doc/usersguide2/source/sl/conf.py Added Paths: ----------- trunk/doc/usersguide2/_static/classic.css Removed Paths: ------------- trunk/doc/usersguide2/_static/default.css Copied: trunk/doc/usersguide2/_static/classic.css (from rev 1465, trunk/doc/usersguide2/_static/default.css) =================================================================== --- trunk/doc/usersguide2/_static/classic.css (rev 0) +++ trunk/doc/usersguide2/_static/classic.css 2016-04-25 20:18:18 UTC (rev 1466) @@ -0,0 +1,512 @@ +/** + * Alternate Sphinx design + * Originally created by Armin Ronacher for Werkzeug, adapted by Georg Brandl. + */ + +body { + font-family: "Times New Roman", Times, serif; + font-size: 14px; + letter-spacing: -0.01em; + line-height: 150%; + text-align: center; + /*background-color: #AFC1C4; */ + background-color: #FFFFF0; + color: black; + padding: 0; + border: 1px solid #aaa; + + margin: 0 0 0 0; +/* min-width: 740px; */ +} + +a { + color: #CA7900; + text-decoration: none; +} + +a:hover { + color: #2491CF; +} + +pre { + font-family: 'Consolas', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace; + font-size: 0.95em; + letter-spacing: 0.015em; + padding: 0.5em; + border: 1px solid #ccc; + background-color: #f8f8f8; +} + +td.linenos pre { + padding: 0.5em 0; + border: 0; + background-color: transparent; + color: #aaa; +} + +table.highlighttable { + margin-left: 0.5em; +} + +table.highlighttable td { + padding: 0 0.5em 0 0.5em; +} + +cite, code, tt { + font-family: 'Consolas', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace; + font-size: 0.95em; + letter-spacing: 0.01em; +} + +hr { + border: 1px solid #abc; + margin: 2em; +} + +tt { + background-color: #f2f2f2; + border-bottom: 1px solid #ddd; + color: #333; +} + +tt.descname { + background-color: transparent; + font-weight: bold; + font-size: 1.2em; + border: 0; +} + +tt.descclassname { + background-color: transparent; + border: 0; +} + +tt.xref { + background-color: transparent; + font-weight: bold; + border: 0; +} + +a tt { + background-color: transparent; + font-weight: bold; + border: 0; + color: #CA7900; +} + +a tt:hover { + color: #2491CF; +} + +dl { + margin-bottom: 15px; +} + +dd p { + margin-top: 0px; +} + +dd ul, dd table { + margin-bottom: 10px; +} + +dd { + margin-top: 3px; + margin-bottom: 10px; + margin-left: 30px; +} + +.refcount { + color: #060; +} + +dt:target, +.highlight { + background-color: #fbe54e; +} + +dl.class, dl.function { + border-top: 2px solid #888; +} + +dl.method, dl.attribute { + border-top: 1px solid #aaa; +} + +dl.glossary dt { + font-weight: bold; + font-size: 1.1em; +} + +pre { + line-height: 120%; +} + +pre a { + color: inherit; + text-decoration: underline; +} + +.first { + margin-top: 0 !important; +} + +div.document { + background-color: white; + text-align: left; + background-image: url(contents.png); + background-repeat: repeat-x; +} + +/* +div.documentwrapper { + width: 100%; +} +*/ + +div.clearer { + clear: both; +} + +.related { + display: none; +} + +div.related h3 { + display: none; +} + +div.related ul { + background-image: url(navigation.png); + height: 2em; + list-style: none; + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 0; + padding-left: 10px; +} + +div.related ul li { + margin: 0; + padding: 0; + height: 2em; + float: left; +} + +div.related ul li.right { + float: right; + margin-right: 5px; +} + +div.related ul li a { + margin: 0; + padding: 0 5px 0 5px; + line-height: 1.75em; + color: #EE9816; +} + +div.related ul li a:hover { + color: #3CA8E7; +} + +div.body { + margin: 0; + padding: 0.5em 20px 20px 20px; +} + +div.bodywrapper { + margin: 0 0 0 0; + border-right: 1px solid #ccc; +} + +div.body a { + text-decoration: underline; +} + +div.sphinxsidebar { + margin: 0; + padding: 0.5em 15px 15px 0; + width: 210px; + float: right; + text-align: left; +/* margin-left: -100%; */ +} + +div.sphinxsidebar h4, div.sphinxsidebar h3 { + margin: 1em 0 0.5em 0; + font-size: 0.9em; + padding: 0.1em 0 0.1em 0.5em; + color: white; + border: 1px solid #86989B; + background-color: #AFC1C4; +} + +div.sphinxsidebar ul { + padding-left: 1.5em; + margin-top: 7px; + list-style: none; + padding: 0; + line-height: 130%; +} + +div.sphinxsidebar ul ul { + list-style: square; + margin-left: 20px; +} + +p { + margin: 0.8em 0 0.5em 0; +} + +p.rubric { + font-weight: bold; +} + +h1 { + margin: 0; + padding: 0.7em 0 0.3em 0; + font-size: 1.5em; + color: black; +} + +h2 { + margin: 1.3em 0 0.2em 0; + font-size: 1.35em; + padding: 0; +} + +h3 { + margin: 1em 0 -0.3em 0; + font-size: 1.2em; +} + +h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { + color: black!important; +} + +h1 a.anchor, h2 a.anchor, h3 a.anchor, h4 a.anchor, h5 a.anchor, h6 a.anchor { + display: none; + margin: 0 0 0 0.3em; + padding: 0 0.2em 0 0.2em; + color: #aaa!important; +} + +h1:hover a.anchor, h2:hover a.anchor, h3:hover a.anchor, h4:hover a.anchor, +h5:hover a.anchor, h6:hover a.anchor { + display: inline; +} + +h1 a.anchor:hover, h2 a.anchor:hover, h3 a.anchor:hover, h4 a.anchor:hover, +h5 a.anchor:hover, h6 a.anchor:hover { + color: #777; + background-color: #eee; +} + +table { + border-collapse: collapse; + margin: 0 -0.5em 0 -0.5em; +} + +table td, table th { + padding: 0.2em 0.5em 0.2em 0.5em; +} + +div.footer { + background-color: #E3EFF1; + color: #86989B; + padding: 3px 8px 3px 0; + clear: both; + font-size: 0.8em; + text-align: right; +} + +div.footer a { + color: #86989B; + text-decoration: underline; +} + +div.pagination { + margin-top: 2em; + padding-top: 0.5em; + border-top: 1px solid black; + text-align: center; +} + +div.sphinxsidebar ul.toc { + margin: 1em 0 1em 0; + padding: 0 0 0 0.5em; + list-style: none; +} + +div.sphinxsidebar ul.toc li { + margin: 0.5em 0 0.5em 0; + font-size: 0.9em; + line-height: 130%; +} + +div.sphinxsidebar ul.toc li p { + margin: 0; + padding: 0; +} + +div.sphinxsidebar ul.toc ul { + margin: 0.2em 0 0.2em 0; + padding: 0 0 0 1.8em; +} + +div.sphinxsidebar ul.toc ul li { + padding: 0; +} + +div.admonition, div.warning { + font-size: 0.9em; + margin: 1em 0 0 0; + border: 1px solid #86989B; + background-color: #f7f7f7; +} + +div.admonition p, div.warning p { + margin: 0.5em 1em 0.5em 1em; + padding: 0; +} + +div.admonition pre, div.warning pre { + margin: 0.4em 1em 0.4em 1em; +} + +div.admonition p.admonition-title, +div.warning p.admonition-title { + margin: 0; + padding: 0.1em 0 0.1em 0.5em; + color: white; + border-bottom: 1px solid #86989B; + font-weight: bold; + background-color: #AFC1C4; +} + +div.warning { + border: 1px solid #940000; +} + +div.warning p.admonition-title { + background-color: #CF0000; + border-bottom-color: #940000; +} + +div.admonition ul, div.admonition ol, +div.warning ul, div.warning ol { + margin: 0.1em 0.5em 0.5em 3em; + padding: 0; +} + +div.versioninfo { + margin: 1em 0 0 0; + border: 1px solid #ccc; + background-color: #DDEAF0; + padding: 8px; + line-height: 1.3em; + font-size: 0.9em; +} + + +a.headerlink { + color: #c60f0f!important; + font-size: 1em; + margin-left: 6px; + padding: 0 4px 0 4px; + text-decoration: none!important; + visibility: hidden; +} + +h1:hover > a.headerlink, +h2:hover > a.headerlink, +h3:hover > a.headerlink, +h4:hover > a.headerlink, +h5:hover > a.headerlink, +h6:hover > a.headerlink, +dt:hover > a.headerlink { + visibility: hidden; +} + +a.headerlink:hover { + background-color: #ccc; + color: white!important; +} + +table.indextable td { + text-align: left; + vertical-align: top; +} + +table.indextable dl, table.indextable dd { + margin-top: 0; + margin-bottom: 0; +} + +table.indextable tr.pcap { + height: 10px; +} + +table.indextable tr.cap { + margin-top: 10px; + background-color: #f2f2f2; +} + +img.toggler { + margin-right: 3px; + margin-top: 3px; + cursor: pointer; +} + +img.inheritance { + border: 0px +} + +form.pfform { + margin: 10px 0 20px 0; +} + +table.contentstable { + width: 90%; +} + +table.contentstable p.biglink { + line-height: 150%; +} + +a.biglink { + font-size: 1.3em; +} + +span.linkdescr { + font-style: italic; + padding-top: 5px; + font-size: 90%; +} + +ul.search { + margin: 10px 0 0 20px; + padding: 0; +} + +ul.search li { + padding: 5px 0 5px 20px; + background-image: url(file.png); + background-repeat: no-repeat; + background-position: 0 7px; +} + +ul.search li a { + font-weight: bold; +} + +ul.search li div.context { + color: #888; + margin: 2px 0 0 30px; + text-align: left; +} + +ul.keywordmatches li.goodmatch a { + font-weight: bold; +} + Deleted: trunk/doc/usersguide2/_static/default.css =================================================================== --- trunk/doc/usersguide2/_static/default.css 2016-04-23 21:52:44 UTC (rev 1465) +++ trunk/doc/usersguide2/_static/default.css 2016-04-25 20:18:18 UTC (rev 1466) @@ -1,512 +0,0 @@ -/** - * Alternate Sphinx design - * Originally created by Armin Ronacher for Werkzeug, adapted by Georg Brandl. - */ - -body { - font-family: "Times New Roman", Times, serif; - font-size: 14px; - letter-spacing: -0.01em; - line-height: 150%; - text-align: center; - /*background-color: #AFC1C4; */ - background-color: #FFFFF0; - color: black; - padding: 0; - border: 1px solid #aaa; - - margin: 0 0 0 0; -/* min-width: 740px; */ -} - -a { - color: #CA7900; - text-decoration: none; -} - -a:hover { - color: #2491CF; -} - -pre { - font-family: 'Consolas', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace; - font-size: 0.95em; - letter-spacing: 0.015em; - padding: 0.5em; - border: 1px solid #ccc; - background-color: #f8f8f8; -} - -td.linenos pre { - padding: 0.5em 0; - border: 0; - background-color: transparent; - color: #aaa; -} - -table.highlighttable { - margin-left: 0.5em; -} - -table.highlighttable td { - padding: 0 0.5em 0 0.5em; -} - -cite, code, tt { - font-family: 'Consolas', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace; - font-size: 0.95em; - letter-spacing: 0.01em; -} - -hr { - border: 1px solid #abc; - margin: 2em; -} - -tt { - background-color: #f2f2f2; - border-bottom: 1px solid #ddd; - color: #333; -} - -tt.descname { - background-color: transparent; - font-weight: bold; - font-size: 1.2em; - border: 0; -} - -tt.descclassname { - background-color: transparent; - border: 0; -} - -tt.xref { - background-color: transparent; - font-weight: bold; - border: 0; -} - -a tt { - background-color: transparent; - font-weight: bold; - border: 0; - color: #CA7900; -} - -a tt:hover { - color: #2491CF; -} - -dl { - margin-bottom: 15px; -} - -dd p { - margin-top: 0px; -} - -dd ul, dd table { - margin-bottom: 10px; -} - -dd { - margin-top: 3px; - margin-bottom: 10px; - margin-left: 30px; -} - -.refcount { - color: #060; -} - -dt:target, -.highlight { - background-color: #fbe54e; -} - -dl.class, dl.function { - border-top: 2px solid #888; -} - -dl.method, dl.attribute { - border-top: 1px solid #aaa; -} - -dl.glossary dt { - font-weight: bold; - font-size: 1.1em; -} - -pre { - line-height: 120%; -} - -pre a { - color: inherit; - text-decoration: underline; -} - -.first { - margin-top: 0 !important; -} - -div.document { - background-color: white; - text-align: left; - background-image: url(contents.png); - background-repeat: repeat-x; -} - -/* -div.documentwrapper { - width: 100%; -} -*/ - -div.clearer { - clear: both; -} - -.related { - display: none; -} - -div.related h3 { - display: none; -} - -div.related ul { - background-image: url(navigation.png); - height: 2em; - list-style: none; - border-top: 1px solid #ddd; - border-bottom: 1px solid #ddd; - margin: 0; - padding-left: 10px; -} - -div.related ul li { - margin: 0; - padding: 0; - height: 2em; - float: left; -} - -div.related ul li.right { - float: right; - margin-right: 5px; -} - -div.related ul li a { - margin: 0; - padding: 0 5px 0 5px; - line-height: 1.75em; - color: #EE9816; -} - -div.related ul li a:hover { - color: #3CA8E7; -} - -div.body { - margin: 0; - padding: 0.5em 20px 20px 20px; -} - -div.bodywrapper { - margin: 0 0 0 0; - border-right: 1px solid #ccc; -} - -div.body a { - text-decoration: underline; -} - -div.sphinxsidebar { - margin: 0; - padding: 0.5em 15px 15px 0; - width: 210px; - float: right; - text-align: left; -/* margin-left: -100%; */ -} - -div.sphinxsidebar h4, div.sphinxsidebar h3 { - margin: 1em 0 0.5em 0; - font-size: 0.9em; - padding: 0.1em 0 0.1em 0.5em; - color: white; - border: 1px solid #86989B; - background-color: #AFC1C4; -} - -div.sphinxsidebar ul { - padding-left: 1.5em; - margin-top: 7px; - list-style: none; - padding: 0; - line-height: 130%; -} - -div.sphinxsidebar ul ul { - list-style: square; - margin-left: 20px; -} - -p { - margin: 0.8em 0 0.5em 0; -} - -p.rubric { - font-weight: bold; -} - -h1 { - margin: 0; - padding: 0.7em 0 0.3em 0; - font-size: 1.5em; - color: black; -} - -h2 { - margin: 1.3em 0 0.2em 0; - font-size: 1.35em; - padding: 0; -} - -h3 { - margin: 1em 0 -0.3em 0; - font-size: 1.2em; -} - -h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { - color: black!important; -} - -h1 a.anchor, h2 a.anchor, h3 a.anchor, h4 a.anchor, h5 a.anchor, h6 a.anchor { - display: none; - margin: 0 0 0 0.3em; - padding: 0 0.2em 0 0.2em; - color: #aaa!important; -} - -h1:hover a.anchor, h2:hover a.anchor, h3:hover a.anchor, h4:hover a.anchor, -h5:hover a.anchor, h6:hover a.anchor { - display: inline; -} - -h1 a.anchor:hover, h2 a.anchor:hover, h3 a.anchor:hover, h4 a.anchor:hover, -h5 a.anchor:hover, h6 a.anchor:hover { - color: #777; - background-color: #eee; -} - -table { - border-collapse: collapse; - margin: 0 -0.5em 0 -0.5em; -} - -table td, table th { - padding: 0.2em 0.5em 0.2em 0.5em; -} - -div.footer { - background-color: #E3EFF1; - color: #86989B; - padding: 3px 8px 3px 0; - clear: both; - font-size: 0.8em; - text-align: right; -} - -div.footer a { - color: #86989B; - text-decoration: underline; -} - -div.pagination { - margin-top: 2em; - padding-top: 0.5em; - border-top: 1px solid black; - text-align: center; -} - -div.sphinxsidebar ul.toc { - margin: 1em 0 1em 0; - padding: 0 0 0 0.5em; - list-style: none; -} - -div.sphinxsidebar ul.toc li { - margin: 0.5em 0 0.5em 0; - font-size: 0.9em; - line-height: 130%; -} - -div.sphinxsidebar ul.toc li p { - margin: 0; - padding: 0; -} - -div.sphinxsidebar ul.toc ul { - margin: 0.2em 0 0.2em 0; - padding: 0 0 0 1.8em; -} - -div.sphinxsidebar ul.toc ul li { - padding: 0; -} - -div.admonition, div.warning { - font-size: 0.9em; - margin: 1em 0 0 0; - border: 1px solid #86989B; - background-color: #f7f7f7; -} - -div.admonition p, div.warning p { - margin: 0.5em 1em 0.5em 1em; - padding: 0; -} - -div.admonition pre, div.warning pre { - margin: 0.4em 1em 0.4em 1em; -} - -div.admonition p.admonition-title, -div.warning p.admonition-title { - margin: 0; - padding: 0.1em 0 0.1em 0.5em; - color: white; - border-bottom: 1px solid #86989B; - font-weight: bold; - background-color: #AFC1C4; -} - -div.warning { - border: 1px solid #940000; -} - -div.warning p.admonition-title { - background-color: #CF0000; - border-bottom-color: #940000; -} - -div.admonition ul, div.admonition ol, -div.warning ul, div.warning ol { - margin: 0.1em 0.5em 0.5em 3em; - padding: 0; -} - -div.versioninfo { - margin: 1em 0 0 0; - border: 1px solid #ccc; - background-color: #DDEAF0; - padding: 8px; - line-height: 1.3em; - font-size: 0.9em; -} - - -a.headerlink { - color: #c60f0f!important; - font-size: 1em; - margin-left: 6px; - padding: 0 4px 0 4px; - text-decoration: none!important; - visibility: hidden; -} - -h1:hover > a.headerlink, -h2:hover > a.headerlink, -h3:hover > a.headerlink, -h4:hover > a.headerlink, -h5:hover > a.headerlink, -h6:hover > a.headerlink, -dt:hover > a.headerlink { - visibility: hidden; -} - -a.headerlink:hover { - background-color: #ccc; - color: white!important; -} - -table.indextable td { - text-align: left; - vertical-align: top; -} - -table.indextable dl, table.indextable dd { - margin-top: 0; - margin-bottom: 0; -} - -table.indextable tr.pcap { - height: 10px; -} - -table.indextable tr.cap { - margin-top: 10px; - background-color: #f2f2f2; -} - -img.toggler { - margin-right: 3px; - margin-top: 3px; - cursor: pointer; -} - -img.inheritance { - border: 0px -} - -form.pfform { - margin: 10px 0 20px 0; -} - -table.contentstable { - width: 90%; -} - -table.contentstable p.biglink { - line-height: 150%; -} - -a.biglink { - font-size: 1.3em; -} - -span.linkdescr { - font-style: italic; - padding-top: 5px; - font-size: 90%; -} - -ul.search { - margin: 10px 0 0 20px; - padding: 0; -} - -ul.search li { - padding: 5px 0 5px 20px; - background-image: url(file.png); - background-repeat: no-repeat; - background-position: 0 7px; -} - -ul.search li a { - font-weight: bold; -} - -ul.search li div.context { - color: #888; - margin: 2px 0 0 30px; - text-align: left; -} - -ul.keywordmatches li.goodmatch a { - font-weight: bold; -} - Modified: trunk/doc/usersguide2/_templates/layout.html =================================================================== --- trunk/doc/usersguide2/_templates/layout.html 2016-04-23 21:52:44 UTC (rev 1465) +++ trunk/doc/usersguide2/_templates/layout.html 2016-04-25 20:18:18 UTC (rev 1466) @@ -1,6 +1,5 @@ {% extends "!layout.html" %} - {% block rootrellink %} {% endblock %} Modified: trunk/doc/usersguide2/source/en/conf.py =================================================================== --- trunk/doc/usersguide2/source/en/conf.py 2016-04-23 21:52:44 UTC (rev 1465) +++ trunk/doc/usersguide2/source/en/conf.py 2016-04-25 20:18:18 UTC (rev 1466) @@ -99,7 +99,7 @@ # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. -html_theme = 'default' +html_theme = 'classic' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the Modified: trunk/doc/usersguide2/source/en/introduction.rst =================================================================== --- trunk/doc/usersguide2/source/en/introduction.rst 2016-04-23 21:52:44 UTC (rev 1465) +++ trunk/doc/usersguide2/source/en/introduction.rst 2016-04-25 20:18:18 UTC (rev 1466) @@ -2,4 +2,4 @@ ============ Welcome to Canorus v0.7, a free cross-platform music score editor. -Visit our website at \url{http://www.canorus.org}. +Visit our website at http://www.canorus.org. Modified: trunk/doc/usersguide2/source/nb/conf.py =================================================================== --- trunk/doc/usersguide2/source/nb/conf.py 2016-04-23 21:52:44 UTC (rev 1465) +++ trunk/doc/usersguide2/source/nb/conf.py 2016-04-25 20:18:18 UTC (rev 1466) @@ -99,7 +99,7 @@ # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. -html_theme = 'default' +html_theme = 'classic' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the Modified: trunk/doc/usersguide2/source/sl/conf.py =================================================================== --- trunk/doc/usersguide2/source/sl/conf.py 2016-04-23 21:52:44 UTC (rev 1465) +++ trunk/doc/usersguide2/source/sl/conf.py 2016-04-25 20:18:18 UTC (rev 1466) @@ -99,7 +99,7 @@ # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. -html_theme = 'default' +html_theme = 'classic' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the @@ -246,6 +246,8 @@ 'Miscellaneous'), ] +pdf_documents = [('index', 'rst2pdf', 'Uporabniški priročnik Canorus', 'Matevž Jekovec'),] + # Documents to append as an appendix to all manuals. #texinfo_appendices = [] This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2016-04-23 21:52:46
|
Revision: 1465 http://sourceforge.net/p/canorus/code/1465 Author: matevz Date: 2016-04-23 21:52:44 +0000 (Sat, 23 Apr 2016) Log Message: ----------- Removed obsolete User's guide readme. Removed Paths: ------------- trunk/doc/HOWTO_Lyx.txt Deleted: trunk/doc/HOWTO_Lyx.txt =================================================================== --- trunk/doc/HOWTO_Lyx.txt 2016-04-23 21:51:54 UTC (rev 1464) +++ trunk/doc/HOWTO_Lyx.txt 2016-04-23 21:52:44 UTC (rev 1465) @@ -1,14 +0,0 @@ - -Hints for using lyx for Canorus documentation -============================================= - -Canorus Style ? (LaTeX, Logo etc.) for every doc for identification -License ? (Common License type similar to GPL) - -Main document: -- Contains all documents (including plugin docs etc.) -- Using "include" way to integrate sub documents -- New page for every sub document automatically created -- includeonly line can be created by cmake if some plugins - or parts of canorus are not built. - This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2016-04-23 21:51:55
|
Revision: 1464 http://sourceforge.net/p/canorus/code/1464 Author: matevz Date: 2016-04-23 21:51:54 +0000 (Sat, 23 Apr 2016) Log Message: ----------- Removed obsolete User's guide. Removed Paths: ------------- trunk/doc/usersguide/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2016-04-23 21:50:13
|
Revision: 1463 http://sourceforge.net/p/canorus/code/1463 Author: matevz Date: 2016-04-23 21:50:10 +0000 (Sat, 23 Apr 2016) Log Message: ----------- CAHelpBrowser cleanups. Modified Paths: -------------- trunk/src/widgets/helpbrowser.h Modified: trunk/src/widgets/helpbrowser.h =================================================================== --- trunk/src/widgets/helpbrowser.h 2016-04-23 21:48:55 UTC (rev 1462) +++ trunk/src/widgets/helpbrowser.h 2016-04-23 21:50:10 UTC (rev 1463) @@ -9,7 +9,6 @@ #ifndef HELPBROWSER_H_ #define HELPBROWSER_H_ -//#include <QTextBrowser> #if QT_VERSION >= 0x050500 #include <QWebEngineView> #else @@ -23,7 +22,6 @@ : public QWebView #endif { -//class CAHelpBrowser : public QTextBrowser { Q_OBJECT public: CAHelpBrowser(QWidget* parent = 0); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2016-04-23 21:48:57
|
Revision: 1462 http://sourceforge.net/p/canorus/code/1462 Author: matevz Date: 2016-04-23 21:48:55 +0000 (Sat, 23 Apr 2016) Log Message: ----------- Implemented new built-in User's guide using the web engine provided by Qt. Removed QT_HELP dependency from CMakeLists. Modified Paths: -------------- trunk/src/CMakeLists.txt trunk/src/control/helpctl.cpp trunk/src/control/helpctl.h trunk/src/ui/mainwin.cpp trunk/src/widgets/helpbrowser.cpp trunk/src/widgets/helpbrowser.h Modified: trunk/src/CMakeLists.txt =================================================================== --- trunk/src/CMakeLists.txt 2016-04-23 21:46:37 UTC (rev 1461) +++ trunk/src/CMakeLists.txt 2016-04-23 21:48:55 UTC (rev 1462) @@ -199,7 +199,6 @@ # Enable needed Qt modules for Canorus SET(QT_USE_QTXML True) # Save/Load SET(QT_USE_QTSVG True) # Icons, Images etc. -SET(QT_USE_QTHELP True) # Inline help browser SET(QT_USE_QTWEBKIT True) # Inline help browser # Add all resources to Canorus_Resrcs (icons, html files etc.) @@ -578,8 +577,8 @@ INCLUDE_DIRECTORIES(${Qt5Svg_INCLUDE_DIRS}) INCLUDE_DIRECTORIES(${Qt5Widgets_INCLUDE_DIRS}) INCLUDE_DIRECTORIES(${Qt5Xml_INCLUDE_DIRS}) -INCLUDE_DIRECTORIES(${Qt5Help_INCLUDE_DIRS}) INCLUDE_DIRECTORIES(${Qt5PrintSupport_INCLUDE_DIRS}) +INCLUDE_DIRECTORIES(${Qt5WebKitWidgets_INCLUDE_DIRS}) # FIX: Qt was built with -reduce-relocations if (Qt5_POSITION_INDEPENDENT_CODE) @@ -602,7 +601,7 @@ ${Canorus_Swig_Srcs} ${CMAKE_CURRENT_SOURCE_DIR}/scripting/canorusruby.i ) - SWIG_LINK_LIBRARIES(CanorusRuby ${RUBY_LIBRARY} Qt5::Widgets Qt5::Core Qt5::Gui Qt5::Svg Qt5::Xml Qt5::Help Qt5::PrintSupport) + SWIG_LINK_LIBRARIES(CanorusRuby ${RUBY_LIBRARY} Qt5::Widgets Qt5::Core Qt5::Gui Qt5::Svg Qt5::Xml Qt5::PrintSupport) SET_TARGET_PROPERTIES( ${SWIG_MODULE_CanorusRuby_REAL_NAME} PROPERTIES COMPILE_FLAGS "-DSWIGCPP" ) ENDIF(USE_RUBY) @@ -617,7 +616,7 @@ ${Canorus_Swig_Srcs} ${CMAKE_CURRENT_SOURCE_DIR}/scripting/canoruspython.i ) - SWIG_LINK_LIBRARIES(CanorusPython ${PYTHON_LIBRARY} Qt5::Widgets Qt5::Core Qt5::Gui Qt5::Svg Qt5::Xml Qt5::Help Qt5::PrintSupport) + SWIG_LINK_LIBRARIES(CanorusPython ${PYTHON_LIBRARY} Qt5::Widgets Qt5::Core Qt5::Gui Qt5::Svg Qt5::Xml Qt5::PrintSupport) SET_TARGET_PROPERTIES( ${SWIG_MODULE_CanorusPython_REAL_NAME} PROPERTIES COMPILE_FLAGS "-DSWIGCPP" ) ENDIF(USE_PYTHON) @@ -662,7 +661,7 @@ # command. Never remove that line :-) # Add ${QT_QTTEST_LIBRARY} below to add the Qt Test library as well # Add ${POPPLERQT4_LIBRARY} ${POPPLER_LIBRARY} to reactivate poppler libraries -TARGET_LINK_LIBRARIES(canorus Qt5::Widgets Qt5::Core Qt5::Gui Qt5::Svg Qt5::Xml Qt5::Help Qt5::PrintSupport ${RUBY_LIBRARY} ${PYTHON_LIBRARY} z pthread ) +TARGET_LINK_LIBRARIES(canorus Qt5::Widgets Qt5::Core Qt5::Gui Qt5::Svg Qt5::Xml Qt5::PrintSupport Qt5::WebKitWidgets ${RUBY_LIBRARY} ${PYTHON_LIBRARY} z pthread ) # Duma leads to a crash on libfontconfig with Ubuntu (10.04/12.04) # duma ) @@ -760,7 +759,7 @@ IF(MINGW) # Install Qt libs - INSTALL( FILES ${QT_BIN_DIR}/Qt5Core.dll ${QT_BIN_DIR}/Qt5Gui.dll ${QT_BIN_DIR}/Qt5Widgets.dll ${QT_BIN_DIR}/Qt5Svg.dll ${QT_BIN_DIR}/Qt5Xml.dll ${QT_BIN_DIR}/Qt5Help.dll ${QT_BIN_DIR}/Qt5Sql.dll ${QT_BIN_DIR}/Qt5Network.dll ${QT_BIN_DIR}/Qt5CLucene.dll ${QT_BIN_DIR}/Qt5PrintSupport.dll DESTINATION ${CMAKE_INSTALL_PREFIX}/${CANORUS_INSTALL_BIN_DIR} ) + INSTALL( FILES ${QT_BIN_DIR}/Qt5Core.dll ${QT_BIN_DIR}/Qt5Gui.dll ${QT_BIN_DIR}/Qt5Widgets.dll ${QT_BIN_DIR}/Qt5Svg.dll ${QT_BIN_DIR}/Qt5Xml.dll ${QT_BIN_DIR}/Qt5Sql.dll ${QT_BIN_DIR}/Qt5Network.dll ${QT_BIN_DIR}/Qt5CLucene.dll ${QT_BIN_DIR}/Qt5PrintSupport.dll ${QT_BIN_DIR}/Qt5WebKitWidgets.dll DESTINATION ${CMAKE_INSTALL_PREFIX}/${CANORUS_INSTALL_BIN_DIR} ) # Install qsvg plugin for rendering SVG icons get_target_property(QSvgIcon_loc Qt5::QSvgIconPlugin LOCATION) Modified: trunk/src/control/helpctl.cpp =================================================================== --- trunk/src/control/helpctl.cpp 2016-04-23 21:46:37 UTC (rev 1461) +++ trunk/src/control/helpctl.cpp 2016-04-23 21:48:55 UTC (rev 1462) @@ -1,12 +1,11 @@ /*! - Copyright (c) 2009, Matevž Jekovec, Canorus development team + Copyright (c) 2009, 2016 Matevž Jekovec, Canorus development team All Rights Reserved. See AUTHORS for a complete list of authors. Licensed under the GNU GENERAL PUBLIC LICENSE. See COPYING for details. */ #include <QStringList> -#include <QHelpEngine> #include <QDockWidget> #include "canorus.h" @@ -22,60 +21,72 @@ /*! Initializes Help and loads User's guide. */ -CAHelpCtl::CAHelpCtl() - : _helpEngine(0) { - QString lang = usersGuideLanguage(); - - if (!lang.isEmpty()) { - _helpEngine = new QHelpEngine( QFileInfo("doc:usersguide/"+lang+".qhc").absoluteFilePath() ); - } +CAHelpCtl::CAHelpCtl() { + _homeUrl = detectHomeUrl(); } CAHelpCtl::~CAHelpCtl() { } /*! - Helper function which returns the existent User's guide language. + Helper function which returns the preferred User's guide language. */ -QString CAHelpCtl::usersGuideLanguage() { - if ( QFileInfo("doc:usersguide/"+QLocale::system().name()+".qhc").exists() ) { - return QLocale::system().name(); - } else - if ( QFileInfo("doc:usersguide/"+QLocale::system().name().left(2)+".qhc").exists() ) { - return QLocale::system().name().left(2); - } else - if ( QFileInfo("doc:usersguide/en.qhc").exists() ) { - return "en"; - } else { - return ""; +QUrl CAHelpCtl::detectHomeUrl() { + QUrl url; + QFileInfo i; + + i=QFileInfo("doc:usersguide2/build/"+QLocale::system().name()+"/index.html"); + + if ( !i.exists() ) { + i=QFileInfo("doc:usersguide2/"+QLocale::system().name()+"/index.html"); } + + if ( !i.exists() ) { + i=QFileInfo("doc:usersguide2/build/"+QLocale::system().name().left(2)+"/index.html"); + } + + if ( !i.exists() ) { + i=QFileInfo("doc:usersguide2/"+QLocale::system().name().left(2)+"/index.html"); + } + + if ( !i.exists() ) { + i=QFileInfo("doc:usersguide2/build/en/index.html"); + } + + if ( !i.exists() ) { + i=QFileInfo("doc:usersguide2/en/index.html"); + } + + if ( i.exists() ) { + url = QUrl::fromLocalFile(i.absoluteFilePath()); + } + + return url; } /*! - Loads user's guide file + Show user's guide at the given chapter. + + \return True, if a user's guide was found and shown; False otherwise. */ -void CAHelpCtl::showUsersGuide( QString chapter, QWidget *helpWidget ) { - QUrl url; - - if (!_helpEngine) { - return; +bool CAHelpCtl::showUsersGuide( QString chapter, QWidget *helpWidget ) { + QUrl url = _homeUrl; + + if (!chapter.isEmpty()) { + url.setFragment(chapter); } - - if (chapter.isEmpty()) { - if (!usersGuideLanguage().isEmpty()) - url = "qthelp://canorus/usersguide-"+usersGuideLanguage()+"/"+usersGuideLanguage()+".html"; - else - return; - } else { - QMap<QString, QUrl> links = _helpEngine->linksForIdentifier(chapter); - if (links.count()) { - url = links.constBegin().value(); - } + + if (!url.path().isEmpty()) { + displayHelp( url, helpWidget ); + return true; } - - displayHelp( url, helpWidget ); + + return false; } +/*! + Activates the user's guide help at the given url. + */ void CAHelpCtl::displayHelp( QUrl url, QWidget *helpWidget ) { CAHelpBrowser *browser=0; if ( !helpWidget ) { @@ -88,7 +99,6 @@ } if (browser) { - browser->setHelpEngine( _helpEngine ); - browser->setSource( url ); + browser->setUrl( url ); } } Modified: trunk/src/control/helpctl.h =================================================================== --- trunk/src/control/helpctl.h 2016-04-23 21:46:37 UTC (rev 1461) +++ trunk/src/control/helpctl.h 2016-04-23 21:48:55 UTC (rev 1462) @@ -1,5 +1,5 @@ /*! - Copyright (c) 2009, Matevž Jekovec, Canorus development team + Copyright (c) 2009, 2016 Matevž Jekovec, Canorus development team All Rights Reserved. See AUTHORS for a complete list of authors. Licensed under the GNU GENERAL PUBLIC LICENSE. See COPYING for details. @@ -19,13 +19,13 @@ CAHelpCtl(); virtual ~CAHelpCtl(); - void showUsersGuide( QString chapter="", QWidget *helpWidget=0 ); + bool showUsersGuide( QString chapter="", QWidget *helpWidget=0 ); private: + QUrl _homeUrl; + + QUrl detectHomeUrl(); void displayHelp( QUrl url, QWidget *helpWidget ); - QString usersGuideLanguage(); - - QHelpEngine *_helpEngine; }; #endif /* HELPCTL_H_ */ Modified: trunk/src/ui/mainwin.cpp =================================================================== --- trunk/src/ui/mainwin.cpp 2016-04-23 21:46:37 UTC (rev 1461) +++ trunk/src/ui/mainwin.cpp 2016-04-23 21:48:55 UTC (rev 1462) @@ -581,6 +581,7 @@ // User's guide and other Help uiHelpDock = new QDockWidget(tr("Help"), this); uiHelpDock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea); + uiHelpDock->setMaximumWidth(400); uiHelpWidget = new CAHelpBrowser( uiHelpDock ); uiHelpDock->setWidget( uiHelpWidget ); @@ -4195,7 +4196,7 @@ } void CAMainWin::on_uiUsersGuide_triggered() { - CACanorus::help()->showUsersGuide( "", this ); + CACanorus::help()->showUsersGuide( "playback", this ); } void CAMainWin::on_uiAboutQt_triggered() { Modified: trunk/src/widgets/helpbrowser.cpp =================================================================== --- trunk/src/widgets/helpbrowser.cpp 2016-04-23 21:46:37 UTC (rev 1461) +++ trunk/src/widgets/helpbrowser.cpp 2016-04-23 21:48:55 UTC (rev 1462) @@ -1,40 +1,20 @@ /*! Copyright (c) 2009, Itay Perl, Canorus development team + Copyright (c) 2016, Matevž Jekovec, Canorus development team All Rights Reserved. See AUTHORS for a complete list of authors. Licensed under the GNU GENERAL PUBLIC LICENSE. See LICENSE.GPL for details. */ -#include <QHelpEngine> -#include <QDesktopServices> #include "widgets/helpbrowser.h" +#include <QFile> +#include <QTextStream> - -CAHelpBrowser::CAHelpBrowser(QWidget* parent, QHelpEngine *helpEngine) - : QTextBrowser(parent), _helpEngine(helpEngine) +CAHelpBrowser::CAHelpBrowser(QWidget* parent) +#if QT_VERSION >= 0x050500 + : QWebEngineView(parent) +#else + : QWebView(parent) +#endif { } - -/*! - Open network URLs in an external browser, without changing the QTextBrowser source. -*/ - -void CAHelpBrowser::setSource(const QUrl& url) -{ - if (url.scheme() == "http" || url.scheme() == "https" || url.scheme() == "mailto") - QDesktopServices::openUrl(url); - else - QTextBrowser::setSource(url); -} - -/*! - Handle qthelp URLs correctly. -*/ - -QVariant CAHelpBrowser::loadResource(int type, const QUrl& url) { - if( url.scheme() == "qthelp" && _helpEngine ) { - return QVariant(_helpEngine->fileData(url)); - } else { - return QTextBrowser::loadResource(type, url); - } -} Modified: trunk/src/widgets/helpbrowser.h =================================================================== --- trunk/src/widgets/helpbrowser.h 2016-04-23 21:46:37 UTC (rev 1461) +++ trunk/src/widgets/helpbrowser.h 2016-04-23 21:48:55 UTC (rev 1462) @@ -1,5 +1,6 @@ /*! Copyright (c) 2009, Itay Perl, Canorus development team + Copyright (c) 2016, Matevž Jekovec, Canorus development team All Rights Reserved. See AUTHORS for a complete list of authors. Licensed under the GNU GENERAL PUBLIC LICENSE. See LICENSE.GPL for details. @@ -8,20 +9,25 @@ #ifndef HELPBROWSER_H_ #define HELPBROWSER_H_ -#include <QTextBrowser> -class QHelpEngine; +//#include <QTextBrowser> +#if QT_VERSION >= 0x050500 +#include <QWebEngineView> +#else +#include <QWebView> +#endif -class CAHelpBrowser : public QTextBrowser { +class CAHelpBrowser +#if QT_VERSION >= 0x050500 +: public QWebEngineView +#else +: public QWebView +#endif +{ +//class CAHelpBrowser : public QTextBrowser { Q_OBJECT public: - CAHelpBrowser(QWidget* parent = 0, QHelpEngine *helpEngine = 0); + CAHelpBrowser(QWidget* parent = 0); ~CAHelpBrowser() {} - QVariant loadResource(int type, const QUrl& url); - void setSource(const QUrl& url); - inline void setHelpEngine(QHelpEngine* helpEngine) { _helpEngine = helpEngine; } - inline QHelpEngine* helpEngine() { return _helpEngine; } - private: - QHelpEngine* _helpEngine; }; #endif /* HELPBROWSER_H_ */ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2016-04-23 21:46:39
|
Revision: 1461 http://sourceforge.net/p/canorus/code/1461 Author: matevz Date: 2016-04-23 21:46:37 +0000 (Sat, 23 Apr 2016) Log Message: ----------- New user's guide readme. Modified Paths: -------------- trunk/doc/Readme-doc.txt Modified: trunk/doc/Readme-doc.txt =================================================================== --- trunk/doc/Readme-doc.txt 2016-04-23 21:34:46 UTC (rev 1460) +++ trunk/doc/Readme-doc.txt 2016-04-23 21:46:37 UTC (rev 1461) @@ -11,23 +11,19 @@ Doxygen generates html files. User's guide: -Is written in Lyx. To edit or translate User's guide open -your_language.lyx. +Is generated using Sphinx, a python-based documentation generator. To edit or +translate User's guide go to source/your_language/ directory and edit .rst +files, one file per chapter. -You can then compile it to: - - Latex (needed for anything below!) +Usually you want to compile User's guide to: + - HTML (for viewing on-line, also used by Canorus built-in web engine) - PDF (for printing) - - HTML (for viewing on-line, needed for QtHelp) - - QtHelp (for viewing inside Canorus) -For generating Latex source, Lyx is required. -For generating PDF files latex, ps2pdf and friends are required. -For generating HTML files htlatex is required. -For generating QtHelp (qch and qhc files) HTML files are compressed -into QtHelp format using Qt development tool qcollectiongenerator. +Sphinx-build supports generating HTML out of the box. +For generating PDF files latex, rst2pdf builder for sphinx is required (pip install rst2pdf). -Matevz Jekovec +Matevž Jekovec Canorus development team -<ma...@je...> +<mat...@gm...> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2016-04-23 21:34:49
|
Revision: 1460 http://sourceforge.net/p/canorus/code/1460 Author: matevz Date: 2016-04-23 21:34:46 +0000 (Sat, 23 Apr 2016) Log Message: ----------- Migrated Norwegian user's guide to Sphinx. Modified Paths: -------------- trunk/doc/usersguide2/Makefile Added Paths: ----------- trunk/doc/usersguide2/images/mainwin.nb.png trunk/doc/usersguide2/source/nb/ trunk/doc/usersguide2/source/nb/conf.py trunk/doc/usersguide2/source/nb/index.rst trunk/doc/usersguide2/source/nb/introduction.rst trunk/doc/usersguide2/source/nb/quickstart.rst Modified: trunk/doc/usersguide2/Makefile =================================================================== --- trunk/doc/usersguide2/Makefile 2016-04-22 20:20:00 UTC (rev 1459) +++ trunk/doc/usersguide2/Makefile 2016-04-23 21:34:46 UTC (rev 1460) @@ -1,4 +1,4 @@ -languages = en sl +languages = en sl nb SPHINX_BUILD_COMMAND = sphinx-build RM_COMMAND = rm -rf Added: trunk/doc/usersguide2/images/mainwin.nb.png =================================================================== (Binary files differ) Index: trunk/doc/usersguide2/images/mainwin.nb.png =================================================================== --- trunk/doc/usersguide2/images/mainwin.nb.png 2016-04-22 20:20:00 UTC (rev 1459) +++ trunk/doc/usersguide2/images/mainwin.nb.png 2016-04-23 21:34:46 UTC (rev 1460) Property changes on: trunk/doc/usersguide2/images/mainwin.nb.png ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: trunk/doc/usersguide2/source/nb/conf.py =================================================================== --- trunk/doc/usersguide2/source/nb/conf.py (rev 0) +++ trunk/doc/usersguide2/source/nb/conf.py 2016-04-23 21:34:46 UTC (rev 1460) @@ -0,0 +1,259 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- +# +# Canorus User's Guide documentation build configuration file, created by +# sphinx-quickstart on Sun Apr 10 00:33:52 2016. +# +# This file is execfile()d with the current directory set to its +# containing dir. +# +# Note that not all possible configuration values are present in this +# autogenerated file. +# +# All configuration values have a default; values that are commented out +# serve to show the default. + +import sys +import os + +# If extensions (or modules to document with autodoc) are in another directory, +# add these directories to sys.path here. If the directory is relative to the +# documentation root, use os.path.abspath to make it absolute, like shown here. +#sys.path.insert(0, os.path.abspath('.')) + +# -- General configuration ------------------------------------------------ + +# If your documentation needs a minimal Sphinx version, state it here. +#needs_sphinx = '1.0' + +# Add any Sphinx extension module names here, as strings. They can be +# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom +# ones. +extensions = [] + +# Add any paths that contain templates here, relative to this directory. +templates_path = ['../../_templates'] + +# The suffix of source filenames. +source_suffix = '.rst' + +# The encoding of source files. +#source_encoding = 'utf-8-sig' + +# The master toctree document. +master_doc = 'index' + +# General information about the project. +project = 'Canorus Hurtigstart' +copyright = '2016, Dag Henning Sørbø' + +# The version info for the project you're documenting, acts as replacement for +# |version| and |release|, also used in various other places throughout the +# built documents. +# +# The short X.Y version. +version = '0.7.3rc1' +# The full version, including alpha/beta/rc tags. +release = '0.7.3rc1' + +# The language for content autogenerated by Sphinx. Refer to documentation +# for a list of supported languages. +#language = None + +# There are two options for replacing |today|: either, you set today to some +# non-false value, then it is used: +#today = '' +# Else, today_fmt is used as the format for a strftime call. +#today_fmt = '%B %d, %Y' + +# List of patterns, relative to source directory, that match files and +# directories to ignore when looking for source files. +exclude_patterns = [] + +# The reST default role (used for this markup: `text`) to use for all +# documents. +#default_role = None + +# If true, '()' will be appended to :func: etc. cross-reference text. +#add_function_parentheses = True + +# If true, the current module name will be prepended to all description +# unit titles (such as .. function::). +#add_module_names = True + +# If true, sectionauthor and moduleauthor directives will be shown in the +# output. They are ignored by default. +#show_authors = False + +# The name of the Pygments (syntax highlighting) style to use. +pygments_style = 'sphinx' + +# A list of ignored prefixes for module index sorting. +#modindex_common_prefix = [] + +# If true, keep warnings as "system message" paragraphs in the built documents. +#keep_warnings = False + + +# -- Options for HTML output ---------------------------------------------- + +# The theme to use for HTML and HTML Help pages. See the documentation for +# a list of builtin themes. +html_theme = 'default' + +# Theme options are theme-specific and customize the look and feel of a theme +# further. For a list of options available for each theme, see the +# documentation. +#html_theme_options = {} + +# Add any paths that contain custom themes here, relative to this directory. +#html_theme_path = [] + +# The name for this set of Sphinx documents. If None, it defaults to +# "<project> v<release> documentation". +#html_title = None + +# A shorter title for the navigation bar. Default is the same as html_title. +#html_short_title = None + +# The name of an image file (relative to this directory) to place at the top +# of the sidebar. +#html_logo = None + +# The name of an image file (within the static path) to use as favicon of the +# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 +# pixels large. +#html_favicon = None + +# Add any paths that contain custom static files (such as style sheets) here, +# relative to this directory. They are copied after the builtin static files, +# so a file named "default.css" will overwrite the builtin "default.css". +html_static_path = ['../../_static'] + +# Add any extra paths that contain custom files (such as robots.txt or +# .htaccess) here, relative to this directory. These files are copied +# directly to the root of the documentation. +#html_extra_path = [] + +# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, +# using the given strftime format. +#html_last_updated_fmt = '%b %d, %Y' + +# If true, SmartyPants will be used to convert quotes and dashes to +# typographically correct entities. +#html_use_smartypants = True + +# Custom sidebar templates, maps document names to template names. +#html_sidebars = {} + +# Additional templates that should be rendered to pages, maps page names to +# template names. +#html_additional_pages = {} + +# If false, no module index is generated. +#html_domain_indices = True + +# If false, no index is generated. +#html_use_index = True + +# If true, the index is split into individual pages for each letter. +#html_split_index = False + +# If true, links to the reST sources are added to the pages. +#html_show_sourcelink = True + +# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. +#html_show_sphinx = True + +# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. +#html_show_copyright = True + +# If true, an OpenSearch description file will be output, and all pages will +# contain a <link> tag referring to it. The value of this option must be the +# base URL from which the finished HTML is served. +#html_use_opensearch = '' + +# This is the file name suffix for HTML files (e.g. ".xhtml"). +#html_file_suffix = None + +# Output file base name for HTML help builder. +htmlhelp_basename = 'CanorusUsersGuidedoc' + + +# -- Options for LaTeX output --------------------------------------------- + +latex_elements = { +# The paper size ('letterpaper' or 'a4paper'). +#'papersize': 'letterpaper', + +# The font size ('10pt', '11pt' or '12pt'). +#'pointsize': '10pt', + +# Additional stuff for the LaTeX preamble. +#'preamble': '', +} + +# Grouping the document tree into LaTeX files. List of tuples +# (source start file, target name, title, +# author, documentclass [howto, manual, or own class]). +latex_documents = [ + ('index', 'CanorusUsersGuide.tex', 'Canorus Hurtigstart', + 'Dag Henning Sørbø', 'manual'), +] + +# The name of an image file (relative to this directory) to place at the top of +# the title page. +#latex_logo = None + +# For "manual" documents, if this is true, then toplevel headings are parts, +# not chapters. +#latex_use_parts = False + +# If true, show page references after internal links. +#latex_show_pagerefs = False + +# If true, show URL addresses after external links. +#latex_show_urls = False + +# Documents to append as an appendix to all manuals. +#latex_appendices = [] + +# If false, no module index is generated. +#latex_domain_indices = True + + +# -- Options for manual page output --------------------------------------- + +# One entry per manual page. List of tuples +# (source start file, name, description, authors, manual section). +man_pages = [ + ('index', 'canorususersguide', 'Canorus Hurtigstart', + ['Dag Henning Sørbø'], 1) +] + +# If true, show URL addresses after external links. +#man_show_urls = False + + +# -- Options for Texinfo output ------------------------------------------- + +# Grouping the document tree into Texinfo files. List of tuples +# (source start file, target name, title, author, +# dir menu entry, description, category) +texinfo_documents = [ + ('index', 'CanorusUsersGuide', 'Canorus Hurtigstart', + 'Dag Henning Sørbø', 'CanorusUsersGuide', 'One line description of project.', + 'Miscellaneous'), +] + +# Documents to append as an appendix to all manuals. +#texinfo_appendices = [] + +# If false, no module index is generated. +#texinfo_domain_indices = True + +# How to display URL addresses: 'footnote', 'no', or 'inline'. +#texinfo_show_urls = 'footnote' + +# If true, do not generate a @detailmenu in the "Top" node's menu. +#texinfo_no_detailmenu = False Added: trunk/doc/usersguide2/source/nb/index.rst =================================================================== --- trunk/doc/usersguide2/source/nb/index.rst (rev 0) +++ trunk/doc/usersguide2/source/nb/index.rst 2016-04-23 21:34:46 UTC (rev 1460) @@ -0,0 +1,15 @@ +.. Canorus User's Guide documentation master file, created by + sphinx-quickstart on Sun Apr 23 00:33:52 2016. + You can adapt this file completely to your liking, but it should at least + contain the root `toctree` directive. + +.. image:: ../../images/canorus.png + :height: 100px + :align: center + +.. toctree:: + :maxdepth: 2 + + introduction.rst + quickstart.rst + Added: trunk/doc/usersguide2/source/nb/introduction.rst =================================================================== --- trunk/doc/usersguide2/source/nb/introduction.rst (rev 0) +++ trunk/doc/usersguide2/source/nb/introduction.rst 2016-04-23 21:34:46 UTC (rev 1460) @@ -0,0 +1,5 @@ +Introduksjon +============ + +Velkommen til Canorus v0.7, et åpent og platformuavhengig noteprogram. +Besøk vår nettside http://www.canorus.org. \ No newline at end of file Added: trunk/doc/usersguide2/source/nb/quickstart.rst =================================================================== --- trunk/doc/usersguide2/source/nb/quickstart.rst (rev 0) +++ trunk/doc/usersguide2/source/nb/quickstart.rst 2016-04-23 21:34:46 UTC (rev 1460) @@ -0,0 +1,116 @@ +Hurtigstart +=========== + +Hovedvindu +---------- + +Det første du møter når du åpner programmet er hovedvinduet. Det ser +omtrent slik ut: + +.. image:: ../../images/mainwin.nb.png + :width: 350px + +Hovedvinduet består av en meny øverst, vertøylinje for innsetting +av elementer til venstre, generelle innstillinger og musikkinnstillinger +under menylinja øverst og en fanebasert notearkvisning. + +Hvert dokument kan ha ett eller flere noteark - et noteark er representert +ved en fane (lignende det du kan finne i skriveprogrammer). Bruk av +flere noteark kan være hensiksmessig for å skille ulike deler av musikkstykket, +ulike transponeringer, variasjoner eller bare som en midlertidig plass +til å skrive ned dine musikalske idéer. + + +Innsetting av noter +------------------- + +For å sette inn noter eller pauser, klikk på notesystemet du vil legge +til et element i, velg stemmen øverst og klikk på ``Noter og pauser``-ikonet +|INSERT_PLAYABLE| i den venstre +verktøylinjen. Den øverste verktøylinjen viser nå note-/pauselengde, +synlighet, noteoppdeling etc. + +Klikk deretter med venstre musetast på notesystemet der du vil legge +til en note. For å legge til en pause, klikk med høyre musetast. Hvis +du vil heve/senke en note et halvt notesteg, bruk +/- knappene. For +å endre den innsatte noten, bruk opp/ned-knappene. Klikk . (punktum) +hvis noten skal være punktert. + +.. |INSERT_PLAYABLE| image:: ../../images/insertplayable.svg + :height: 20px + +Innsetting av andre musikkelementer +----------------------------------- + +For å sette inn nøkler, toneart, taktart, taktstreker og andre musikkelementer, +bruk knappene i den venstre verktøylinja, bestem egenskapene i vertøylinja +øverst og klikk på notesystemet. Venstre vertøylinje viser hvilke +elementer som kan settes inn i valgt system på notearket. + +For å sette inn en bue, velg først to eller flere noter og klikk på +bueknappen og velg type bue. + +En spesiell hurtigtast b setter manuelt inn en taktstrek i angitt +posisjon (f.eks for opptakter). + +Redigering av elementer +----------------------- + +Hvis du vil endre et musikkelement som allerede er innsatt, må du +gå inn i Redigeringsmodus. Dette gjør du med hurtigtast e eller ved +å klikke den røde pilen i venstre verktøylinje |ARROW|. +Når du velger én eller flere elementer, vises deres egenskaper i den +øverste verktøylinja. + +.. |ARROW| image:: ../../images/arrow.svg + :height: 20px + +Du kan forlate hvilken som helst modus og gå til Valgmodus ved å trykke +Esc-knappen. + +Nytt notesystem, stemme, sangtekst +---------------------------------- + +For å sette inn et nytt system, klikk på ``Sett inn system``-valgknappen +i venstre verktøylinje |STAFF_NEW|, +velg et system (notesystem, sangtekst, funksjonsanalyse) og klikk +på notearket der systemet skal settes inn. + +.. |STAFF_NEW| image:: ../../images/staffnew.svg + :height: 20px + +For å sette inn en ny stemme, velg et notesystem på notearket og klikk +på ``Ny stemme``-knappen |VOICE_NEW|. + +.. |VOICE_NEW| image:: ../../images/voicenew.svg + :height: 20px + +Avspilling +---------- + +For å spille av musikken du har skrevet, trykk space-knappen eller +klikk på den grønne avspillingsknappen |PLAY|. +Avspillingen starter fra nåværende eller valgt takt. For å stoppe +avspillingen, klikk på knappen en gang til. + +.. |PLAY| image:: ../../images/play.svg + :height: 20px + +Utskrift +-------- + +Canorus bruker programmet LilyPond for utskrift. + +Desverre følger ikke LilyPond med Canorus. Det første du må gjøre +er å installere LilyPond - gå til http://www.lilypond.org og +last det ned. Du kan også bruke din distribusjons pakkehåndterer for +å installerer det på Linux. + +For å bruke utskriftsvisning må du ha en PDF-fremviser installert +på ditt system. Gå til Fil->Utskriftsvisning |PRINT_PREVIEW|. + +.. |PRINT_PREVIEW| image:: ../../images/fileprintpreview.png + :height: 20px + +Du kan skrive ut direkte ved å bruke Fil->Skriv ut eller du kan skrive +ut fra din PDF-fremviser (anbefalt). This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2016-04-22 20:20:01
|
Revision: 1459 http://sourceforge.net/p/canorus/code/1459 Author: matevz Date: 2016-04-22 20:20:00 +0000 (Fri, 22 Apr 2016) Log Message: ----------- Lyrics, text and bookmarks: Text edit shows on mouse release to allows multiple selection. Modified Paths: -------------- trunk/src/ui/mainwin.cpp Modified: trunk/src/ui/mainwin.cpp =================================================================== --- trunk/src/ui/mainwin.cpp 2016-04-17 21:43:15 UTC (rev 1458) +++ trunk/src/ui/mainwin.cpp 2016-04-22 20:20:00 UTC (rev 1459) @@ -1,5 +1,5 @@ /*! - Copyright (c) 2006-2015, Reinhard Katzmann, Matevž Jekovec, Canorus development team + Copyright (c) 2006-2016, Reinhard Katzmann, Matevž Jekovec, Canorus development team All Rights Reserved. See AUTHORS for a complete list of authors. Licensed under the GNU GENERAL PUBLIC LICENSE. See COPYING for details. @@ -805,7 +805,7 @@ uiShowRuler->setChecked( CACanorus::settings()->showRuler() ); // Help - addDockWidget( (qApp->isLeftToRight()) ? Qt::RightDockWidgetArea : Qt::LeftDockWidgetArea, uiHelpDock); + addDockWidget( (qApp->isLeftToRight()) ? Qt::RightDockWidgetArea : Qt::LeftDockWidgetArea, uiHelpDock ); uiHelpDock->hide(); // Score UI Interface @@ -1773,17 +1773,9 @@ std::cout << std::endl; } - // lyrics, texts, book - if ( elt && - (elt->musElementType()==CAMusElement::Syllable || - (elt->musElementType()==CAMusElement::Mark && (static_cast<CAMark*>(elt)->markType()==CAMark::Text || static_cast<CAMark*>(elt)->markType()==CAMark::BookMark)) - ) - ) { - v->createTextEdit( dElt ); - } else { - if (v->textEditVisible() && oldSelection.size() && oldSelection.front()->musElement()) { - confirmTextEdit(v, v->textEdit(), oldSelection.front()->musElement()); - } + // lyrics, texts, bookmarks + if (v->textEditVisible() && oldSelection.size() && oldSelection.front()->musElement()) { + confirmTextEdit(v, v->textEdit(), oldSelection.front()->musElement()); } break; @@ -2021,40 +2013,60 @@ \sa CAScoreView::mouseReleaseEvent(), scoreViewMousePress(), scoreViewMouseMove(), scoreViewWheel(), scoreViewKeyPress() */ void CAMainWin::scoreViewMouseRelease(QMouseEvent *e, QPoint coords) { - CAScoreView *c = static_cast<CAScoreView*>(sender()); - if ( c->resizeDirection()!=CADrawable::Undefined ) { + CAScoreView *v = static_cast<CAScoreView*>(sender()); + if ( v->resizeDirection()!=CADrawable::Undefined ) { CACanorus::undo()->pushUndoCommand(); - CACanorus::rebuildUI(document(), c->sheet()); + CACanorus::rebuildUI(document(), v->sheet()); } - if ( mode() != InsertMode && c->mouseDragActivated() ) { // area was selected - c->clearSelectionRegionList(); + if ( mode() != InsertMode ) { + if ( v->mouseDragActivated() ) { + // area was selected + v->clearSelectionRegionList(); - if (e->modifiers()==Qt::NoModifier) - c->clearSelection(); + if (e->modifiers()==Qt::NoModifier) + v->clearSelection(); - int x=c->lastMousePressCoords().x(), y=c->lastMousePressCoords().y(), - w=coords.x()-c->lastMousePressCoords().x(), h=coords.y()-c->lastMousePressCoords().y(); - if (w<0) { x+=w; w*=(-1); } // user selected from right to left - if (h<0) { y+=h; h*=(-1); } // user selected from bottom to top - QRect selectionRect( x, y, w, h ); + int x=v->lastMousePressCoords().x(), y=v->lastMousePressCoords().y(), + w=coords.x()-v->lastMousePressCoords().x(), h=coords.y()-v->lastMousePressCoords().y(); + if (w<0) { x+=w; w*=(-1); } // user selected from right to left + if (h<0) { y+=h; h*=(-1); } // user selected from bottom to top + QRect selectionRect( x, y, w, h ); - QList<CADrawableContext*> dcList = c->findContextsInRegion( selectionRect ); - for (int i=0; i<dcList.size(); i++) { - QList<CADrawableMusElement*> musEltList = dcList[i]->findInRange( selectionRect.x(), selectionRect.x() + selectionRect.width() ); - if ( c->selectedVoice() && dcList[i]->context()!=c->selectedVoice()->staff() ) - continue; + QList<CADrawableContext*> dcList = v->findContextsInRegion( selectionRect ); + for (int i=0; i<dcList.size(); i++) { + QList<CADrawableMusElement*> musEltList = dcList[i]->findInRange( selectionRect.x(), selectionRect.x() + selectionRect.width() ); + if ( v->selectedVoice() && dcList[i]->context()!=v->selectedVoice()->staff() ) + continue; - for (int j=0; j<musEltList.size(); j++) - if ((!musEltList[j]->isSelectable()) || - (c->selectedVoice() && musEltList[j]->musElement()->isPlayable() && - static_cast<CAPlayable*>(musEltList[j]->musElement())->voice()!=c->selectedVoice()) || - (musEltList[j]->drawableMusElementType()==CADrawableMusElement::DrawableSlur) + for (int j=0; j<musEltList.size(); j++) + if ((!musEltList[j]->isSelectable()) || + (v->selectedVoice() && musEltList[j]->musElement()->isPlayable() && + static_cast<CAPlayable*>(musEltList[j]->musElement())->voice()!=v->selectedVoice()) || + (musEltList[j]->drawableMusElementType()==CADrawableMusElement::DrawableSlur) + ) + musEltList.removeAt(j--); + v->addToSelection(musEltList); + } + } else { + // single element or none selected + CADrawableMusElement *dElt = 0; + CAMusElement *elt = 0; + + if (v->selection().size()) { + dElt = v->selection().front(); + elt = dElt->musElement(); + } + + if ( elt && + (elt->musElementType()==CAMusElement::Syllable || + (elt->musElementType()==CAMusElement::Mark && (static_cast<CAMark*>(elt)->markType()==CAMark::Text || static_cast<CAMark*>(elt)->markType()==CAMark::BookMark)) ) - musEltList.removeAt(j--); - c->addToSelection(musEltList); + ) { + v->createTextEdit( dElt ); + } } - c->repaint(); + v->repaint(); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2016-04-17 21:43:18
|
Revision: 1458 http://sourceforge.net/p/canorus/code/1458 Author: matevz Date: 2016-04-17 21:43:15 +0000 (Sun, 17 Apr 2016) Log Message: ----------- Fixed main window screenshot to 350px for the user's guide. Modified Paths: -------------- trunk/doc/usersguide2/source/en/quickstart.rst trunk/doc/usersguide2/source/sl/quickstart.rst Modified: trunk/doc/usersguide2/source/en/quickstart.rst =================================================================== --- trunk/doc/usersguide2/source/en/quickstart.rst 2016-04-16 23:26:25 UTC (rev 1457) +++ trunk/doc/usersguide2/source/en/quickstart.rst 2016-04-17 21:43:15 UTC (rev 1458) @@ -8,7 +8,7 @@ main window. It should look something like this: .. image:: ../../images/mainwin.en.png - :width: 700px + :width: 350px The main window consists of a menu at the top, insert toolbar on the left, general and music properties on the top and a tabbed score view. Modified: trunk/doc/usersguide2/source/sl/quickstart.rst =================================================================== --- trunk/doc/usersguide2/source/sl/quickstart.rst 2016-04-16 23:26:25 UTC (rev 1457) +++ trunk/doc/usersguide2/source/sl/quickstart.rst 2016-04-17 21:43:15 UTC (rev 1458) @@ -8,7 +8,7 @@ (odvisno od operacijskega sistema in jezika) približno takole: .. image:: ../../images/mainwin.sl.png - :width: 700px + :width: 350px Glavno okno je zgrajeno iz menija na vrhu, orodjarne za vstavljanje na levi, splošne lastnosti elementov na vrhu in pogleda črtovja. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2016-04-16 23:26:27
|
Revision: 1457 http://sourceforge.net/p/canorus/code/1457 Author: matevz Date: 2016-04-16 23:26:25 +0000 (Sat, 16 Apr 2016) Log Message: ----------- Fixed edit text hiding when clicked on an existing music element. Fixed Text/Lyrics/Bookmarks saving when clicked outside of the text edit. Only Esc key explicitly cancels the editing. Fixed editing bookmarks. Fixed Text/Lyrics/Bookmarks lost when switching from Insert mode to Edit mode without confirming text edit content. Added panning the view forward when writing lyrics at the end of the screen. Added behaviour to text edit: Blank content deletes the text element. Modified Paths: -------------- trunk/src/ui/mainwin.cpp trunk/src/ui/mainwin.h Modified: trunk/src/ui/mainwin.cpp =================================================================== --- trunk/src/ui/mainwin.cpp 2016-04-16 14:18:55 UTC (rev 1456) +++ trunk/src/ui/mainwin.cpp 2016-04-16 23:26:25 UTC (rev 1457) @@ -1536,7 +1536,9 @@ if ( elt->musElementType()==CAMusElement::Syllable || ((elt->musElementType()==CAMusElement::Mark && (static_cast<CAMark*>(elt)->markType()==CAMark::Text)) || static_cast<CAMark*>(elt)->markType()==CAMark::BookMark) ) { - currentScoreView()->createTextEdit(currentScoreView()->selection().front()); + if (!currentScoreView()->textEditVisible()) { + currentScoreView()->createTextEdit(currentScoreView()->selection().front()); + } } else { currentScoreView()->removeTextEdit(); } @@ -1694,7 +1696,8 @@ */ void CAMainWin::scoreViewMousePress(QMouseEvent *e, const QPoint coords) { CAScoreView *v = static_cast<CAScoreView*>(sender()); - + QList<CADrawableMusElement*> oldSelection = v->selection(); + CADrawableContext *prevContext = v->currentContext(); v->selectCElement(coords.x(), coords.y()); @@ -1742,17 +1745,14 @@ case EditMode: { v->clearSelectionRegionList(); + CADrawableMusElement *dElt = 0; + CAMusElement *elt = 0; + if ( v->selection().size() ) { - CADrawableMusElement *dElt = v->selection().front(); - CAMusElement *elt = dElt->musElement(); + dElt = v->selection().front(); + elt = dElt->musElement(); if (!elt) break; - if ( mode()==EditMode && - (elt->musElementType()==CAMusElement::Syllable || (elt->musElementType()==CAMusElement::Mark && static_cast<CAMark*>(elt)->markType()==CAMark::Text)) - ){ - v->createTextEdit( dElt ); - } - // debug std::cout << "drawableMusElement: " << dElt << ", x,y=" << dElt->xPos() << "," << dElt->yPos() << ", w,h=" << dElt->width() << "," << dElt->height() << ", dContext=" << dElt->drawableContext() << std::endl; std::cout << "musElement: " << elt << ", timeStart=" << elt->timeStart() << ", timeEnd=" << elt->timeEnd() << ", context=" << elt->context(); @@ -1771,8 +1771,19 @@ std::cout << "noteStart=" << static_cast<CASlur*>(elt)->noteStart() << ", noteEnd=" << static_cast<CASlur*>(elt)->noteStart(); } std::cout << std::endl; + } + + // lyrics, texts, book + if ( elt && + (elt->musElementType()==CAMusElement::Syllable || + (elt->musElementType()==CAMusElement::Mark && (static_cast<CAMark*>(elt)->markType()==CAMark::Text || static_cast<CAMark*>(elt)->markType()==CAMark::BookMark)) + ) + ) { + v->createTextEdit( dElt ); } else { - v->removeTextEdit(); + if (v->textEditVisible() && oldSelection.size() && oldSelection.front()->musElement()) { + confirmTextEdit(v, v->textEdit(), oldSelection.front()->musElement()); + } } break; @@ -3577,7 +3588,61 @@ //CADrawableContext *dContext = v->currentContext(); CAMusElement *elt = (v->selection().size()?v->selection().front()->musElement():0); + if ( elt ) { + if (elt->musElementType()==CAMusElement::Syllable ) { + CASyllable *syllable = static_cast<CASyllable*>(elt); + + if ( e->key()==Qt::Key_Space || + e->key()==Qt::Key_Return || + (e->key()==Qt::Key_Right && textEdit->cursorPosition()==textEdit->text().size()) || + ((e->key()==Qt::Key_Left || e->key()==Qt::Key_Backspace) && textEdit->cursorPosition()==0) || + (CACanorus::settings()->finaleLyricsBehaviour() && e->key()==Qt::Key_Minus) + ) { + // create or edit syllable + confirmTextEdit(currentScoreView(), textEdit, elt); + + //CAVoice *voice = (syllable->associatedVoice()?syllable->associatedVoice():lc->associatedVoice()); + CAMusElement *nextSyllable = 0; + if (syllable) { + if (e->key()==Qt::Key_Space || e->key()==Qt::Key_Right || e->key()==Qt::Key_Return) { // next right note + nextSyllable = syllable->lyricsContext()->next(syllable); + } else if (e->key()==Qt::Key_Left || e->key()==Qt::Key_Backspace) { // next left note + nextSyllable = syllable->lyricsContext()->previous(syllable); + } else if (e->key()==Qt::Key_Minus) { + syllable->setHyphenStart(true); + nextSyllable = syllable->lyricsContext()->next(syllable); + } + if (nextSyllable) { + CADrawableMusElement *dNextSyllable = v->selectMElement(nextSyllable); + v->createTextEdit( dNextSyllable ); + if ( e->key()==Qt::Key_Space || e->key()==Qt::Key_Right || e->key()==Qt::Key_Return ) { + v->textEdit()->setCursorPosition(0); // go to the beginning if moving to the right next syllable + } + + if ( dNextSyllable && (dNextSyllable->xPos() > v->worldX()+0.85*v->worldWidth()) ) { + v->setWorldX( dNextSyllable->xPos()-v->worldWidth()/2, CACanorus::settings()->animatedScroll() ); + } + } + } + } + } else { + // ((elt->musElementType()==CAMusElement::Mark && + // static_cast<CAMark*>(elt)->markType()==CAMark::Text) || static_cast<CAMark*>(elt)->markType()==CAMark::BookMark) + if (e->key()==Qt::Key_Return) { + confirmTextEdit(currentScoreView(),textEdit, elt); + } + } + } + + // escape key - cancel + if (e->key()==Qt::Key_Escape) { + v->removeTextEdit(); + } +} + +void CAMainWin::confirmTextEdit(CAScoreView *v, CATextEdit *textEdit, CAMusElement *elt) { if ( elt->musElementType()==CAMusElement::Syllable ) { + // create or edit syllable CASyllable *syllable = static_cast<CASyllable*>(elt); QString text = textEdit->text().simplified(); // remove any trailing whitespaces @@ -3592,44 +3657,17 @@ //CALyricsContext *lc = static_cast<CALyricsContext*>(dContext->context()); - // create or edit syllable - if ( e->key()==Qt::Key_Space || - e->key()==Qt::Key_Return || - (e->key()==Qt::Key_Right && textEdit->cursorPosition()==textEdit->text().size()) || - ((e->key()==Qt::Key_Left || e->key()==Qt::Key_Backspace) && textEdit->cursorPosition()==0) || - (CACanorus::settings()->finaleLyricsBehaviour() && e->key()==Qt::Key_Minus) - ) { - CACanorus::undo()->createUndoCommand( document(), tr("lyrics edit", "undo") ); - syllable->setText(text); - syllable->setHyphenStart(hyphen); - syllable->setMelismaStart(melisma); + CACanorus::undo()->createUndoCommand( document(), tr("lyrics edit", "undo") ); + syllable->setText(text); + syllable->setHyphenStart(hyphen); + syllable->setMelismaStart(melisma); - v->removeTextEdit(); - - //CAVoice *voice = (syllable->associatedVoice()?syllable->associatedVoice():lc->associatedVoice()); - CAMusElement *nextSyllable = 0; - if (syllable) { - if (e->key()==Qt::Key_Space || e->key()==Qt::Key_Right || e->key()==Qt::Key_Return) { // next right note - nextSyllable = syllable->lyricsContext()->next(syllable); - } else if (e->key()==Qt::Key_Left || e->key()==Qt::Key_Backspace) { // next left note - nextSyllable = syllable->lyricsContext()->previous(syllable); - } else if (e->key()==Qt::Key_Minus) { - syllable->setHyphenStart(true); - nextSyllable = syllable->lyricsContext()->next(syllable); - } - CACanorus::undo()->pushUndoCommand(); - CACanorus::rebuildUI( document(), currentSheet() ); - if (nextSyllable) { - CADrawableMusElement *dNextSyllable = v->selectMElement(nextSyllable); - v->createTextEdit( dNextSyllable ); - if ( e->key()==Qt::Key_Space || e->key()==Qt::Key_Right || e->key()==Qt::Key_Return ) - v->textEdit()->setCursorPosition(0); // go to the beginning if moving to the right next syllable - } - } - } - } else if ((elt->musElementType()==CAMusElement::Mark && static_cast<CAMark*>(elt)->markType()==CAMark::Text) || static_cast<CAMark*>(elt)->markType()==CAMark::BookMark) { - if (e->key()==Qt::Key_Return) { - CAMark *mark = static_cast<CAMark*>(elt); + v->removeTextEdit(); + } else { + // ((elt->musElementType()==CAMusElement::Mark && + // static_cast<CAMark*>(elt)->markType()==CAMark::Text) || static_cast<CAMark*>(elt)->markType()==CAMark::BookMark) + CAMark *mark = static_cast<CAMark*>(elt); + if (!textEdit->text().isEmpty() || mark->markType()==CAMark::BookMark) { CACanorus::undo()->createUndoCommand( document(), tr("text edit", "undo") ); if (mark->markType()==CAMark::Text) { static_cast<CAText*>(mark)->setText( textEdit->text() ); @@ -3637,17 +3675,16 @@ static_cast<CABookMark*>(mark)->setText( textEdit->text() ); } v->removeTextEdit(); - CACanorus::undo()->pushUndoCommand(); - CACanorus::rebuildUI( document(), currentSheet() ); + } else { + // remove text sign with empty content, if it's not a bookmark + CACanorus::undo()->createUndoCommand( document(), tr("text edit", "delete") ); + v->removeTextEdit(); + delete mark; } - } else { - v->removeTextEdit(); } - - // escape key - cancel - if (e->key()==Qt::Key_Escape) { - v->removeTextEdit(); - } + + CACanorus::undo()->pushUndoCommand(); + CACanorus::rebuildUI( document(), currentSheet() ); } void CAMainWin::on_uiFBMNumber_toggled( bool checked, int buttonId ) { Modified: trunk/src/ui/mainwin.h =================================================================== --- trunk/src/ui/mainwin.h 2016-04-16 14:18:55 UTC (rev 1456) +++ trunk/src/ui/mainwin.h 2016-04-16 23:26:25 UTC (rev 1457) @@ -238,6 +238,7 @@ // Lyrics void onTextEditKeyPressEvent(QKeyEvent *); + void confirmTextEdit(CAScoreView *v, CATextEdit *textEdit, CAMusElement *elt); // Function marks void on_uiFMFunction_toggled(bool, int); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2016-04-16 14:18:56
|
Revision: 1456 http://sourceforge.net/p/canorus/code/1456 Author: suamor Date: 2016-04-16 14:18:55 +0000 (Sat, 16 Apr 2016) Log Message: ----------- Add parts of class ShortcutGetter Activate editShortCut method Use ShortCutGetter for editing shortcuts for now ("USE_SHORTCUTGETTER") Modified Paths: -------------- trunk/src/widgets/actionseditor.cpp trunk/src/widgets/actionseditor.h Modified: trunk/src/widgets/actionseditor.cpp =================================================================== --- trunk/src/widgets/actionseditor.cpp 2016-04-11 19:32:08 UTC (rev 1455) +++ trunk/src/widgets/actionseditor.cpp 2016-04-16 14:18:55 UTC (rev 1456) @@ -30,6 +30,8 @@ #include <QRegExp> #include <QApplication> #include <QAction> +#include <QLineEdit> +#include <QKeyEvent> #include <QDebug> //#include "images.h" @@ -113,8 +115,8 @@ actionsTable->setAlternatingRowColors(true); //#if USE_SHORTCUTGETTER -// actionsTable->setSelectionBehavior(QAbstractItemView::SelectRows); -// actionsTable->setSelectionMode(QAbstractItemView::ExtendedSelection); +// actionsTable->setSelectionBehavior(QAbstractItemView::SelectRows); + actionsTable->setSelectionMode(QAbstractItemView::ExtendedSelection); //#endif //actionsTable->setItemDelegateForColumn( COL_SHORTCUT, new MyDelegate(actionsTable) ); @@ -124,8 +126,8 @@ connect(actionsTable, SIGNAL(itemChanged(QTableWidgetItem *)), this, SLOT(validateAction(QTableWidgetItem *)) ); //#else -// connect(actionsTable, SIGNAL(itemActivated(QTableWidgetItem *)), -// this, SLOT(editShortcut()) ); + connect(actionsTable, SIGNAL(itemActivated(QTableWidgetItem *)), + this, SLOT(editShortcut()) ); //#endif saveButton = new QPushButton(this); @@ -135,14 +137,14 @@ connect(loadButton, SIGNAL(clicked()), this, SLOT(loadActionsTable())); //#if USE_SHORTCUTGETTER -// editButton = new QPushButton(this); -// connect( editButton, SIGNAL(clicked()), this, SLOT(editShortcut()) ); + editButton = new QPushButton(this); + connect( editButton, SIGNAL(clicked()), this, SLOT(editShortcut()) ); //#endif QHBoxLayout *buttonLayout = new QHBoxLayout; buttonLayout->setSpacing(8); //#if USE_SHORTCUTGETTER -// buttonLayout->addWidget(editButton); + buttonLayout->addWidget(editButton); //#endif buttonLayout->addStretch(1); buttonLayout->addWidget(loadButton); @@ -171,7 +173,7 @@ loadButton->setText(tr("&Load shortcuts...")); //#if USE_SHORTCUTGETTER -// editButton->setText(tr("&Change shortcut...")); + editButton->setText(tr("&Change shortcut...")); //#endif //updateView(); // The actions are translated later, so it's useless @@ -211,7 +213,7 @@ QString accelText, midi_com, midi_scut, description; //#if !USE_SHORTCUTGETTER - dont_validate = true; +// dont_validate = true; //#endif //actionsTable->setSortingEnabled(false); @@ -254,7 +256,7 @@ i_conf->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable); i_command->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable); i_context->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable); - i_shortcut->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable); + i_shortcut->setFlags(Qt::ItemIsEnabled | Qt::ItemIsEnabled); i_midi->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable); i_midiscut->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable); //#endif @@ -363,8 +365,6 @@ } } -/* #else - void CAActionsEditor::editShortcut() { QTableWidgetItem * i = actionsTable->item( actionsTable->currentRow(), COL_SHORTCUT ); if (i) { @@ -378,7 +378,6 @@ } } } -#endif */ int CAActionsEditor::findActionCommand(const QString & name) { for (int row=0; row < actionsTable->rowCount(); row++) { @@ -704,5 +703,196 @@ } } -// Why include this ?? :-) we have moc -//#include "moc_actionseditor.cxx" +static QString keyToString(int k) +{ + if ( k == Qt::Key_Shift || k == Qt::Key_Control || k == Qt::Key_Meta || + k == Qt::Key_Alt || k == Qt::Key_AltGr ) + return QString::null; + + return QKeySequence(k).toString(); +} + +static QStringList modToString(Qt::KeyboardModifiers k) +{ + //qDebug("modToString: k: %x", (int) k); + + QStringList l; + + if ( k & Qt::ShiftModifier ) + l << "Shift"; + if ( k & Qt::ControlModifier ) + l << "Ctrl"; + if ( k & Qt::AltModifier ) + l << "Alt"; + if ( k & Qt::MetaModifier ) + l << "Meta"; + if ( k & Qt::GroupSwitchModifier ) + ; + if ( k & Qt::KeypadModifier ) + ; + + return l; +} + + +ShortcutGetter::ShortcutGetter(QWidget *parent) : QDialog(parent) +{ + setWindowTitle(tr("Modify shortcut")); + + + QVBoxLayout *vbox = new QVBoxLayout(this); + vbox->setMargin(2); + vbox->setSpacing(4); + + QLabel *l = new QLabel(this); + l->setText(tr("Press the key combination you want to assign")); + vbox->addWidget(l); + + leKey = new QLineEdit(this); + + leKey->installEventFilter(this); + vbox->addWidget(leKey); + + // Change by rvm: use a QDialogButtonBox instead of QPushButtons + // and add a clear button + setCaptureKeyboard(true); + QDialogButtonBox * buttonbox = new QDialogButtonBox(QDialogButtonBox::Ok | + QDialogButtonBox::Cancel | + QDialogButtonBox::Reset ); + QPushButton * clearbutton = buttonbox->button(QDialogButtonBox::Reset); + clearbutton->setText( tr("Clear") ); + + QPushButton * captureButton = new QPushButton(tr("Capture"), this); + captureButton->setToolTip( tr("Capture keystrokes") ); + captureButton->setCheckable( captureKeyboard() ); + captureButton->setChecked( captureKeyboard() ); + connect(captureButton, SIGNAL(toggled(bool)), + this, SLOT(setCaptureKeyboard(bool))); + + + buttonbox->addButton(captureButton, QDialogButtonBox::ActionRole); + + connect( buttonbox, SIGNAL(accepted()), this, SLOT(accept()) ); + connect( buttonbox, SIGNAL(rejected()), this, SLOT(reject()) ); + connect( clearbutton, SIGNAL(clicked()), leKey, SLOT(clear()) ); + vbox->addWidget(buttonbox); +} + +void ShortcutGetter::setCaptureKeyboard(bool b) { + capture = b; + leKey->setReadOnly(b); + leKey->setFocus(); +} + + +QString ShortcutGetter::exec(const QString& s) +{ + bStop = false; + leKey->setText(s); + + if ( QDialog::exec() == QDialog::Accepted ) + return leKey->text(); + + return QString(); +} + +bool ShortcutGetter::event(QEvent *e) +{ + if (!capture) return QDialog::event(e); + + + QString key; + QStringList mods; + QKeyEvent *k = static_cast<QKeyEvent *>(e); + + switch ( e->type() ) + { + case QEvent::KeyPress : + + if ( bStop ) + { + lKeys.clear(); + bStop = false; + } + + key = keyToString(k->key()); + mods = modToString(k->modifiers()); + + //qDebug("event: key.count: %d, mods.count: %d", key.count(), mods.count()); + + if ( key.count() || mods.count() ) + { + + if ( key.count() && !lKeys.contains(key) ) + lKeys << key; + + foreach ( key, mods ) + if ( !lKeys.contains(key) ) + lKeys << key; + + } else { + key = k->text(); + + if ( !lKeys.contains(key) ) + lKeys << key; + } + + setText(); + break; + + case QEvent::KeyRelease : + + bStop = true; + break; + + /* + case QEvent::ShortcutOverride : + leKey->setText("Shortcut override"); + break; + */ + + default: + return QDialog::event(e); + break; + } + + return true; +} + +bool ShortcutGetter::eventFilter(QObject *o, QEvent *e) +{ + if (!capture) return QDialog::eventFilter(o, e); + + if ( e->type() == QEvent::KeyPress || + e->type() ==QEvent::KeyRelease ) + return event(e); + else + return QDialog::eventFilter(o, e); +} + +void ShortcutGetter::setText() +{ + QStringList seq; + + if ( lKeys.contains("Shift") ) + seq << "Shift"; + + if ( lKeys.contains("Ctrl") ) + seq << "Ctrl"; + + if ( lKeys.contains("Alt") ) + seq << "Alt"; + + if ( lKeys.contains("Meta") ) + seq << "Meta"; + + foreach ( QString s, lKeys ) { + //qDebug("setText: s: '%s'", s.toUtf8().data()); + if ( s != "Shift" && s != "Ctrl" + && s != "Alt" && s != "Meta" ) + seq << s; + } + + leKey->setText(seq.join("+")); + //leKey->selectAll(); +} Modified: trunk/src/widgets/actionseditor.h =================================================================== --- trunk/src/widgets/actionseditor.h 2016-04-11 19:32:08 UTC (rev 1455) +++ trunk/src/widgets/actionseditor.h 2016-04-16 14:18:55 UTC (rev 1456) @@ -14,7 +14,7 @@ #ifndef _CAACTIONSEDITOR_H_ #define _CAACTIONSEDITOR_H_ -#include <QWidget> +#include <QDialog> #include <QList> #include <QStringList> #include "ui/singleaction.h" @@ -23,6 +23,7 @@ class QTableWidgetItem; class CASingleAction; class QSettings; +class QLineEdit; class QPushButton; class CAActionsEditor : public QWidget @@ -102,7 +103,7 @@ // Easy check of edited shortcut / midi command void validateAction(QTableWidgetItem*); //#else -// void editShortcut(); + void editShortcut(); //#endif private: @@ -113,7 +114,7 @@ QString latest_dir; //#if USE_SHORTCUTGETTER -// QPushButton *editButton; + QPushButton *editButton; //#else QString oldAccelText; QString oldMidiText; @@ -121,4 +122,31 @@ //#endif }; +class ShortcutGetter : public QDialog +{ + Q_OBJECT + +public: + ShortcutGetter(QWidget *parent = 0); + + QString exec(const QString& s); + +protected slots: + void setCaptureKeyboard(bool b); + +protected: + bool captureKeyboard() { return capture; } + + bool event(QEvent *e); + bool eventFilter(QObject *o, QEvent *e); + void setText(); + +private: + bool bStop; + QLineEdit *leKey; + QStringList lKeys; + bool capture; +}; + + #endif This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2016-04-11 19:32:10
|
Revision: 1455 http://sourceforge.net/p/canorus/code/1455 Author: suamor Date: 2016-04-11 19:32:08 +0000 (Mon, 11 Apr 2016) Log Message: ----------- Mark whole line when selecting a shortcut entry Modified Paths: -------------- trunk/src/widgets/actionseditor.cpp Modified: trunk/src/widgets/actionseditor.cpp =================================================================== --- trunk/src/widgets/actionseditor.cpp 2016-04-10 12:07:32 UTC (rev 1454) +++ trunk/src/widgets/actionseditor.cpp 2016-04-11 19:32:08 UTC (rev 1455) @@ -100,6 +100,7 @@ latest_dir = CACanorus::settings()->latestShortcutsDirectory().dirName(); actionsTable = new QTableWidget(0, COL_NUM, this); actionsTable->setSelectionMode( QAbstractItemView::SingleSelection ); + actionsTable->setSelectionBehavior(QAbstractItemView::SelectRows); actionsTable->verticalHeader()->hide(); #if QT_VERSION >= 0x050000 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2016-04-10 12:07:34
|
Revision: 1454 http://sourceforge.net/p/canorus/code/1454 Author: matevz Date: 2016-04-10 12:07:32 +0000 (Sun, 10 Apr 2016) Log Message: ----------- Fixed old GUI bug: On Undo, it draws as the first voice is selected (the LCD number still shows A). Fixed old GUI bug: On New document, a quarter shadow note is shown as selected, but different note might be selected in the toolbar. On first Escape, the selection is cleared. On second Escape, we a context is deselected. Fixed old GUI bug: Note checker not activated on Undo. Fixed console logging: No mode handled. Modified Paths: -------------- trunk/src/ui/mainwin.cpp Modified: trunk/src/ui/mainwin.cpp =================================================================== --- trunk/src/ui/mainwin.cpp 2016-04-10 12:00:16 UTC (rev 1453) +++ trunk/src/ui/mainwin.cpp 2016-04-10 12:07:32 UTC (rev 1454) @@ -1302,7 +1302,7 @@ void CAMainWin::on_uiUndo_toggled( bool checked, int row ) { stopPlayback(); if ( document() ) { - int curVoiceIdx = 0; + int curVoiceIdx = -1; if (currentVoice() && currentVoice()->staff() && currentVoice()->staff()->sheet()) { curVoiceIdx = currentVoice()->staff()->sheet()->voiceList().indexOf(currentVoice()); } @@ -1311,6 +1311,12 @@ CACanorus::undo()->undo( document() ); } + if (CACanorus::settings()->useNoteChecker()) { + for (int i=0; i<document()->sheetList().size(); i++) { + _noteChecker.checkSheet(document()->sheetList()[i]); + } + } + CACanorus::rebuildUI( document(), 0 ); if (curVoiceIdx>=0 && curVoiceIdx<currentSheet()->voiceList().size()) { setCurrentVoice( currentSheet()->voiceList()[curVoiceIdx] ); @@ -1321,7 +1327,7 @@ void CAMainWin::on_uiRedo_toggled( bool checked, int row ) { stopPlayback(); if ( document() ) { - int curVoiceIdx = 0; + int curVoiceIdx = -1; if (currentVoice() && currentVoice()->staff() && currentVoice()->staff()->sheet()) { curVoiceIdx = currentVoice()->staff()->sheet()->voiceList().indexOf(currentVoice()); } @@ -1330,6 +1336,12 @@ CACanorus::undo()->redo( document() ); } + if (CACanorus::settings()->useNoteChecker()) { + for (int i=0; i<document()->sheetList().size(); i++) { + _noteChecker.checkSheet(document()->sheetList()[i]); + } + } + CACanorus::rebuildUI( document(), 0 ); if (curVoiceIdx>=0 && curVoiceIdx<currentSheet()->voiceList().size()) { @@ -1533,6 +1545,8 @@ } uiVoiceNum->setRealValue( 0 ); } + + break; } case ReadOnlyMode: case ProgressMode: @@ -2372,8 +2386,12 @@ // Mode keys case Qt::Key_Escape: if (mode()==EditMode) { - v->clearSelection(); - v->setCurrentContext( 0 ); + if (v->selection().size()) { + v->clearSelection(); + } else { + v->setCurrentContext( 0 ); + } + v->repaint(); } uiEditMode->trigger(); break; @@ -3446,6 +3464,8 @@ musElementFactory()->setMusElementType( CAMusElement::Note ); setMode( InsertMode ); + + on_uiPlayableLength_toggled(uiPlayableLength->isChecked(), uiPlayableLength->currentId() ); } } @@ -5398,7 +5418,7 @@ CACanorus::undo()->pushUndoCommand(); if (CACanorus::settings()->useNoteChecker()) { - _noteChecker.checkSheet(v->sheet()); + _noteChecker.checkSheet(v->sheet()); } v->clearSelection(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2016-04-10 12:00:17
|
Revision: 1453 http://sourceforge.net/p/canorus/code/1453 Author: suamor Date: 2016-04-10 12:00:16 +0000 (Sun, 10 Apr 2016) Log Message: ----------- Remove ampersand from command name when it is shown in the actioneditor's table Modified Paths: -------------- trunk/src/ui/singleaction.cpp trunk/src/ui/singleaction.h trunk/src/widgets/actionseditor.cpp Modified: trunk/src/ui/singleaction.cpp =================================================================== --- trunk/src/ui/singleaction.cpp 2016-04-10 11:36:39 UTC (rev 1452) +++ trunk/src/ui/singleaction.cpp 2016-04-10 12:00:16 UTC (rev 1453) @@ -31,6 +31,8 @@ if(_pAction) { _pAction->setText( oCommandName ); } + _oCommandNameNoAmpersand = _oCommandName; + _oCommandNameNoAmpersand.remove("&"); } } Modified: trunk/src/ui/singleaction.h =================================================================== --- trunk/src/ui/singleaction.h 2016-04-10 11:36:39 UTC (rev 1452) +++ trunk/src/ui/singleaction.h 2016-04-10 12:00:16 UTC (rev 1453) @@ -23,7 +23,7 @@ virtual ~CASingleAction(); // Getter methods for all single action parameters - inline QString getCommandName() { return _oCommandName; } + inline QString getCommandName(bool ampersand = false) { return ampersand ? _oCommandNameNoAmpersand : _oCommandName; } inline QString getDescription() { return _oDescription; } inline QString getShortCutAsString() { return _oShortCut; } inline QString getMidiKeySequence() { return _oMidiKeySequence; } @@ -46,6 +46,7 @@ protected: // Action parameters to be stored / loaded via Settings Dialog QString _oCommandName; + QString _oCommandNameNoAmpersand; QString _oDescription; QString _oShortCut; QString _oMidiKeySequence; Modified: trunk/src/widgets/actionseditor.cpp =================================================================== --- trunk/src/widgets/actionseditor.cpp 2016-04-10 11:36:39 UTC (rev 1452) +++ trunk/src/widgets/actionseditor.cpp 2016-04-10 12:00:16 UTC (rev 1453) @@ -230,7 +230,7 @@ QTableWidgetItem * i_conf = new QTableWidgetItem(); // Command column - QTableWidgetItem * i_command = new QTableWidgetItem(action->getCommandName()); + QTableWidgetItem * i_command = new QTableWidgetItem(action->getCommandName(true)); // Context column QTableWidgetItem * i_context = new QTableWidgetItem( description ); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2016-04-10 11:36:41
|
Revision: 1452 http://sourceforge.net/p/canorus/code/1452 Author: suamor Date: 2016-04-10 11:36:39 +0000 (Sun, 10 Apr 2016) Log Message: ----------- Add check for alsa on Linux for rtmidi; fix Qt5 version Modified Paths: -------------- trunk/CMakeLists.txt trunk/README trunk/src/CMakeLists.txt Modified: trunk/CMakeLists.txt =================================================================== --- trunk/CMakeLists.txt 2016-04-10 11:21:40 UTC (rev 1451) +++ trunk/CMakeLists.txt 2016-04-10 11:36:39 UTC (rev 1452) @@ -75,7 +75,7 @@ #----------------------------------------------------------------------------- # Search for Qt5. We need the latest version of Qt -SET(QT_MIN_VERSION "5.3.2") +SET(QT_MIN_VERSION "5.2.1") # this line includes FindQt.cmake, which searches the Qt library and headers FIND_PACKAGE(Qt5Core REQUIRED) Modified: trunk/README =================================================================== --- trunk/README 2016-04-10 11:21:40 UTC (rev 1451) +++ trunk/README 2016-04-10 11:36:39 UTC (rev 1452) @@ -16,7 +16,7 @@ Canorus supports the current "LTS" version 5.6.0 - Qt development package >=5.3 (http://www.qt-project.org) -- Swig >=2.0.12 (http://www.swig.org). Swig >= 3.0.3 is working too. +- Swig >=2.0.12 (http://www.swig.org). Swig >= 3.0.8 is working too. (cmake does not support parallel installations of swig) - g++ >=4.8, make (http://gcc.gnu.org, http://www.mingw.org) - cmake >=2.8 (http://www.cmake.org). CMake 3.x is not supported (does not work on SuSE) Modified: trunk/src/CMakeLists.txt =================================================================== --- trunk/src/CMakeLists.txt 2016-04-10 11:21:40 UTC (rev 1451) +++ trunk/src/CMakeLists.txt 2016-04-10 11:36:39 UTC (rev 1452) @@ -26,6 +26,14 @@ ENDIF(APPLE) ####################### +# Linux: Detect Alsa # +####################### +IF("${CMAKE_SYSTEM_NAME}" MATCHES "Linux") + FIND_PACKAGE(ALSA REQUIRED) +ENDIF("${CMAKE_SYSTEM_NAME}" MATCHES "Linux") + + +####################### # Scripting detection # ####################### # The following lines detect scripting environments (SWIG, Ruby, Python etc.) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2016-04-10 11:21:42
|
Revision: 1451 http://sourceforge.net/p/canorus/code/1451 Author: suamor Date: 2016-04-10 11:21:40 +0000 (Sun, 10 Apr 2016) Log Message: ----------- CMakeList.txt: Unfortunately until 3.0.7 the python script cxx file still was stored in scripting folder ActionEditor: Fix columns (numbers are directly used for column position) ActionEditor: Conflicts columns will not be used (remove some code) ActionEditor: Read command directly ActionEditor: Add missing midi shortcut table column Modified Paths: -------------- trunk/src/CMakeLists.txt trunk/src/widgets/actionseditor.cpp Modified: trunk/src/CMakeLists.txt =================================================================== --- trunk/src/CMakeLists.txt 2016-04-10 10:55:16 UTC (rev 1450) +++ trunk/src/CMakeLists.txt 2016-04-10 11:21:40 UTC (rev 1451) @@ -29,7 +29,7 @@ # Scripting detection # ####################### # The following lines detect scripting environments (SWIG, Ruby, Python etc.) -FIND_PACKAGE(SWIG 3.0.3 QUIET) +FIND_PACKAGE(SWIG 3.0.8 QUIET) MESSAGE("Swig version ${SWIG_VERSION}") IF(SWIG_FOUND AND NOT NO_SWIG) SET(USE_SWIG True) Modified: trunk/src/widgets/actionseditor.cpp =================================================================== --- trunk/src/widgets/actionseditor.cpp 2016-04-10 10:55:16 UTC (rev 1450) +++ trunk/src/widgets/actionseditor.cpp 2016-04-10 11:21:40 UTC (rev 1451) @@ -42,12 +42,11 @@ // Definition of column positions enum actionCol { -//COL_CONFLICTS = 0 // indicates a conflict (will be done with a color of the conflicting line) - COL_COMMAND = 1, // name of the command (not internal!) - COL_DESCRIPTION = 2, // Context of the command like mode - COL_SHORTCUT = 3, // Keyboard shortcut - COL_MIDI = 4, // Midi command - COL_MIDISCUT = 5 // Requires Midi and Shortcut at one time to be used + COL_COMMAND = 0, // name of the command (not internal!) + COL_DESCRIPTION = 1, // Context of the command like mode + COL_SHORTCUT = 2, // Keyboard shortcut + COL_MIDI = 3, // Midi command + COL_MIDISCUT = 4 // Requires Midi and Shortcut at one time to be used }; /* @@ -231,7 +230,7 @@ QTableWidgetItem * i_conf = new QTableWidgetItem(); // Command column - QTableWidgetItem * i_command = new QTableWidgetItem(action->getAction()->text()); + QTableWidgetItem * i_command = new QTableWidgetItem(action->getCommandName()); // Context column QTableWidgetItem * i_context = new QTableWidgetItem( description ); @@ -243,7 +242,7 @@ QTableWidgetItem * i_midi = new QTableWidgetItem(midi_com); // Midi command - QTableWidgetItem * i_midiscut = new QTableWidgetItem(midi_com); + QTableWidgetItem * i_midiscut = new QTableWidgetItem(midi_scut); // Set flags //#if !USE_SHORTCUTGETTER @@ -256,14 +255,14 @@ i_context->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable); i_shortcut->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable); i_midi->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable); + i_midiscut->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable); //#endif // Add items to table - //actionsTable->setItem(n, COL_CONFLICTS, i_conf ); actionsTable->setItem(n, COL_COMMAND, i_command ); actionsTable->setItem(n, COL_DESCRIPTION, i_context ); - actionsTable->setItem(n, COL_SHORTCUT, i_shortcut ); - actionsTable->setItem(n, COL_MIDI, i_midi ); + actionsTable->setItem(n, COL_SHORTCUT, i_shortcut ); + actionsTable->setItem(n, COL_MIDI, i_midi ); actionsTable->setItem(n, COL_MIDISCUT, i_midiscut ); } @@ -431,8 +430,6 @@ findActionAccel( accelText, n ); if ( (found != -1) && (found != n) ) { conflict = true; - //actionsTable->setText( n, COL_CONFLICTS, "!"); - //actionsTable->item( n, COL_CONFLICTS )->setIcon( Images::icon("conflict") ); } } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2016-04-10 10:55:17
|
Revision: 1450 http://sourceforge.net/p/canorus/code/1450 Author: suamor Date: 2016-04-10 10:55:16 +0000 (Sun, 10 Apr 2016) Log Message: ----------- Known issues with action editing (Keyboard/Midi) Added Paths: ----------- trunk/doc/developersguide/action_settings/keyboard_shortcuts_bugs.txt Added: trunk/doc/developersguide/action_settings/keyboard_shortcuts_bugs.txt =================================================================== --- trunk/doc/developersguide/action_settings/keyboard_shortcuts_bugs.txt (rev 0) +++ trunk/doc/developersguide/action_settings/keyboard_shortcuts_bugs.txt 2016-04-10 10:55:16 UTC (rev 1450) @@ -0,0 +1,24 @@ +Bugs I encountered when starting to try out keyboard shortcuts +============================================================== +- Conflicts: No conflict column; instead show dialog when conflict + occurs (ToDo) +- Conflicts: When reading settings, show one (or a list of) + commands with conflicting shortcuts. Tell that these got removed. + Handling: First wins ?! + Remaining conflicts: Mark red, delete shortcut + -> Red marking: Would be removed when either Ok or Apply is pressed +- Conflicts: If happens while loading application + -> Popup settings dialog + +- Editing: Seems not to work (dialogue is not opened) +- Focus: The whole line should be selected instead of only column +- Focus: Tab on SettingsDialog changes to button instead of editor + (Tab Sequence is not correct) +- Pressing Enter does not open the Edit Shortcut dialog +- On this dialog pressing "Cancel" should not cancel whole Settings + (Same of course for "Ok") + +- Midi: No default midi commands are shown (Somewhere in MidiImport?) +- Midi: No midi shortcuts are shown (same) +- Midi Input: Not connected to editor yet (MidiImport too) + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2016-04-10 09:08:47
|
Revision: 1449 http://sourceforge.net/p/canorus/code/1449 Author: suamor Date: 2016-04-10 09:08:44 +0000 (Sun, 10 Apr 2016) Log Message: ----------- Fix crash when inserting note on empty bar line when already having edited some notes on a different bar line Modified Paths: -------------- trunk/src/widgets/scoreview.cpp Modified: trunk/src/widgets/scoreview.cpp =================================================================== --- trunk/src/widgets/scoreview.cpp 2016-04-10 08:55:23 UTC (rev 1448) +++ trunk/src/widgets/scoreview.cpp 2016-04-10 09:08:44 UTC (rev 1449) @@ -1774,7 +1774,7 @@ if (it!=voiceList[i]->musElementList().constEnd()) { if (_mapDrawable.contains(*it)) { CADrawableMusElement *dElt = static_cast<CADrawableMusElement*>(_mapDrawable.values(*it).last()); - if (leftElt->xPos()<dElt->xPos()) { + if (leftElt && leftElt->xPos()<dElt->xPos()) { leftElt = dElt; } } else { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2016-04-10 08:55:26
|
Revision: 1448 http://sourceforge.net/p/canorus/code/1448 Author: matevz Date: 2016-04-10 08:55:23 +0000 (Sun, 10 Apr 2016) Log Message: ----------- Migrated Slovenian user's guide to sphinx. Modified Paths: -------------- trunk/doc/usersguide2/Makefile trunk/doc/usersguide2/_static/default.css trunk/doc/usersguide2/_templates/layout.html trunk/doc/usersguide2/source/en/quickstart.rst Added Paths: ----------- trunk/doc/usersguide2/images/mainwin.sl.png trunk/doc/usersguide2/source/sl/ trunk/doc/usersguide2/source/sl/conf.py trunk/doc/usersguide2/source/sl/index.rst trunk/doc/usersguide2/source/sl/introduction.rst trunk/doc/usersguide2/source/sl/quickstart.rst Modified: trunk/doc/usersguide2/Makefile =================================================================== --- trunk/doc/usersguide2/Makefile 2016-04-10 08:50:16 UTC (rev 1447) +++ trunk/doc/usersguide2/Makefile 2016-04-10 08:55:23 UTC (rev 1448) @@ -1,4 +1,4 @@ -languages = en +languages = en sl SPHINX_BUILD_COMMAND = sphinx-build RM_COMMAND = rm -rf Modified: trunk/doc/usersguide2/_static/default.css =================================================================== --- trunk/doc/usersguide2/_static/default.css 2016-04-10 08:50:16 UTC (rev 1447) +++ trunk/doc/usersguide2/_static/default.css 2016-04-10 08:55:23 UTC (rev 1448) @@ -15,8 +15,8 @@ padding: 0; border: 1px solid #aaa; - margin: 0px 80px 0px 80px; - min-width: 740px; + margin: 0 0 0 0; +/* min-width: 740px; */ } a { @@ -168,6 +168,10 @@ clear: both; } +.related { + display: none; +} + div.related h3 { display: none; } Modified: trunk/doc/usersguide2/_templates/layout.html =================================================================== --- trunk/doc/usersguide2/_templates/layout.html 2016-04-10 08:50:16 UTC (rev 1447) +++ trunk/doc/usersguide2/_templates/layout.html 2016-04-10 08:55:23 UTC (rev 1448) @@ -2,10 +2,8 @@ {% block rootrellink %} - <li><a href="{{ pathto('index') }}">home</a>| </li> {% endblock %} - {% block relbar1 %} {{ super() }} Added: trunk/doc/usersguide2/images/mainwin.sl.png =================================================================== (Binary files differ) Index: trunk/doc/usersguide2/images/mainwin.sl.png =================================================================== --- trunk/doc/usersguide2/images/mainwin.sl.png 2016-04-10 08:50:16 UTC (rev 1447) +++ trunk/doc/usersguide2/images/mainwin.sl.png 2016-04-10 08:55:23 UTC (rev 1448) Property changes on: trunk/doc/usersguide2/images/mainwin.sl.png ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Modified: trunk/doc/usersguide2/source/en/quickstart.rst =================================================================== --- trunk/doc/usersguide2/source/en/quickstart.rst 2016-04-10 08:50:16 UTC (rev 1447) +++ trunk/doc/usersguide2/source/en/quickstart.rst 2016-04-10 08:55:23 UTC (rev 1448) @@ -8,6 +8,7 @@ main window. It should look something like this: .. image:: ../../images/mainwin.en.png + :width: 700px The main window consists of a menu at the top, insert toolbar on the left, general and music properties on the top and a tabbed score view. Added: trunk/doc/usersguide2/source/sl/conf.py =================================================================== --- trunk/doc/usersguide2/source/sl/conf.py (rev 0) +++ trunk/doc/usersguide2/source/sl/conf.py 2016-04-10 08:55:23 UTC (rev 1448) @@ -0,0 +1,259 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- +# +# Canorus User's Guide documentation build configuration file, created by +# sphinx-quickstart on Sun Apr 10 00:33:52 2016. +# +# This file is execfile()d with the current directory set to its +# containing dir. +# +# Note that not all possible configuration values are present in this +# autogenerated file. +# +# All configuration values have a default; values that are commented out +# serve to show the default. + +import sys +import os + +# If extensions (or modules to document with autodoc) are in another directory, +# add these directories to sys.path here. If the directory is relative to the +# documentation root, use os.path.abspath to make it absolute, like shown here. +#sys.path.insert(0, os.path.abspath('.')) + +# -- General configuration ------------------------------------------------ + +# If your documentation needs a minimal Sphinx version, state it here. +#needs_sphinx = '1.0' + +# Add any Sphinx extension module names here, as strings. They can be +# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom +# ones. +extensions = [] + +# Add any paths that contain templates here, relative to this directory. +templates_path = ['../../_templates'] + +# The suffix of source filenames. +source_suffix = '.rst' + +# The encoding of source files. +#source_encoding = 'utf-8-sig' + +# The master toctree document. +master_doc = 'index' + +# General information about the project. +project = 'Uporabniški priročnik Canorus' +copyright = '2016, Matevž Jekovec' + +# The version info for the project you're documenting, acts as replacement for +# |version| and |release|, also used in various other places throughout the +# built documents. +# +# The short X.Y version. +version = '0.7.3rc1' +# The full version, including alpha/beta/rc tags. +release = '0.7.3rc1' + +# The language for content autogenerated by Sphinx. Refer to documentation +# for a list of supported languages. +#language = None + +# There are two options for replacing |today|: either, you set today to some +# non-false value, then it is used: +#today = '' +# Else, today_fmt is used as the format for a strftime call. +#today_fmt = '%B %d, %Y' + +# List of patterns, relative to source directory, that match files and +# directories to ignore when looking for source files. +exclude_patterns = [] + +# The reST default role (used for this markup: `text`) to use for all +# documents. +#default_role = None + +# If true, '()' will be appended to :func: etc. cross-reference text. +#add_function_parentheses = True + +# If true, the current module name will be prepended to all description +# unit titles (such as .. function::). +#add_module_names = True + +# If true, sectionauthor and moduleauthor directives will be shown in the +# output. They are ignored by default. +#show_authors = False + +# The name of the Pygments (syntax highlighting) style to use. +pygments_style = 'sphinx' + +# A list of ignored prefixes for module index sorting. +#modindex_common_prefix = [] + +# If true, keep warnings as "system message" paragraphs in the built documents. +#keep_warnings = False + + +# -- Options for HTML output ---------------------------------------------- + +# The theme to use for HTML and HTML Help pages. See the documentation for +# a list of builtin themes. +html_theme = 'default' + +# Theme options are theme-specific and customize the look and feel of a theme +# further. For a list of options available for each theme, see the +# documentation. +#html_theme_options = {} + +# Add any paths that contain custom themes here, relative to this directory. +#html_theme_path = [] + +# The name for this set of Sphinx documents. If None, it defaults to +# "<project> v<release> documentation". +#html_title = None + +# A shorter title for the navigation bar. Default is the same as html_title. +#html_short_title = None + +# The name of an image file (relative to this directory) to place at the top +# of the sidebar. +#html_logo = None + +# The name of an image file (within the static path) to use as favicon of the +# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 +# pixels large. +#html_favicon = None + +# Add any paths that contain custom static files (such as style sheets) here, +# relative to this directory. They are copied after the builtin static files, +# so a file named "default.css" will overwrite the builtin "default.css". +html_static_path = ['../../_static'] + +# Add any extra paths that contain custom files (such as robots.txt or +# .htaccess) here, relative to this directory. These files are copied +# directly to the root of the documentation. +#html_extra_path = [] + +# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, +# using the given strftime format. +#html_last_updated_fmt = '%b %d, %Y' + +# If true, SmartyPants will be used to convert quotes and dashes to +# typographically correct entities. +#html_use_smartypants = True + +# Custom sidebar templates, maps document names to template names. +#html_sidebars = {} + +# Additional templates that should be rendered to pages, maps page names to +# template names. +#html_additional_pages = {} + +# If false, no module index is generated. +#html_domain_indices = True + +# If false, no index is generated. +#html_use_index = True + +# If true, the index is split into individual pages for each letter. +#html_split_index = False + +# If true, links to the reST sources are added to the pages. +#html_show_sourcelink = True + +# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. +#html_show_sphinx = True + +# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. +#html_show_copyright = True + +# If true, an OpenSearch description file will be output, and all pages will +# contain a <link> tag referring to it. The value of this option must be the +# base URL from which the finished HTML is served. +#html_use_opensearch = '' + +# This is the file name suffix for HTML files (e.g. ".xhtml"). +#html_file_suffix = None + +# Output file base name for HTML help builder. +htmlhelp_basename = 'CanorusUsersGuidedoc' + + +# -- Options for LaTeX output --------------------------------------------- + +latex_elements = { +# The paper size ('letterpaper' or 'a4paper'). +#'papersize': 'letterpaper', + +# The font size ('10pt', '11pt' or '12pt'). +#'pointsize': '10pt', + +# Additional stuff for the LaTeX preamble. +#'preamble': '', +} + +# Grouping the document tree into LaTeX files. List of tuples +# (source start file, target name, title, +# author, documentclass [howto, manual, or own class]). +latex_documents = [ + ('index', 'CanorusUsersGuide.tex', 'Uporabniški priročnik Canorus', + 'Matevž Jekovec', 'manual'), +] + +# The name of an image file (relative to this directory) to place at the top of +# the title page. +#latex_logo = None + +# For "manual" documents, if this is true, then toplevel headings are parts, +# not chapters. +#latex_use_parts = False + +# If true, show page references after internal links. +#latex_show_pagerefs = False + +# If true, show URL addresses after external links. +#latex_show_urls = False + +# Documents to append as an appendix to all manuals. +#latex_appendices = [] + +# If false, no module index is generated. +#latex_domain_indices = True + + +# -- Options for manual page output --------------------------------------- + +# One entry per manual page. List of tuples +# (source start file, name, description, authors, manual section). +man_pages = [ + ('index', 'canorususersguide', 'Uporabniški priročnik Canorus', + ['Matevž Jekovec'], 1) +] + +# If true, show URL addresses after external links. +#man_show_urls = False + + +# -- Options for Texinfo output ------------------------------------------- + +# Grouping the document tree into Texinfo files. List of tuples +# (source start file, target name, title, author, +# dir menu entry, description, category) +texinfo_documents = [ + ('index', 'CanorusUsersGuide', 'Uporabniški priročnik Canorus', + 'Matevž Jekovec', 'CanorusUsersGuide', 'One line description of project.', + 'Miscellaneous'), +] + +# Documents to append as an appendix to all manuals. +#texinfo_appendices = [] + +# If false, no module index is generated. +#texinfo_domain_indices = True + +# How to display URL addresses: 'footnote', 'no', or 'inline'. +#texinfo_show_urls = 'footnote' + +# If true, do not generate a @detailmenu in the "Top" node's menu. +#texinfo_no_detailmenu = False Added: trunk/doc/usersguide2/source/sl/index.rst =================================================================== --- trunk/doc/usersguide2/source/sl/index.rst (rev 0) +++ trunk/doc/usersguide2/source/sl/index.rst 2016-04-10 08:55:23 UTC (rev 1448) @@ -0,0 +1,15 @@ +.. Canorus User's Guide documentation master file, created by + sphinx-quickstart on Sun Apr 10 00:33:52 2016. + You can adapt this file completely to your liking, but it should at least + contain the root `toctree` directive. + +.. image:: ../../images/canorus.png + :height: 100px + :align: center + +.. toctree:: + :maxdepth: 2 + + introduction.rst + quickstart.rst + Added: trunk/doc/usersguide2/source/sl/introduction.rst =================================================================== --- trunk/doc/usersguide2/source/sl/introduction.rst (rev 0) +++ trunk/doc/usersguide2/source/sl/introduction.rst 2016-04-10 08:55:23 UTC (rev 1448) @@ -0,0 +1,6 @@ +Uvod +==== + +Dobrodošli v Canorus, napreden, odprtokoden urejevalnik not, ki teče na +operacijskih sistemih Linux, Microsoft Windows in Mac OSX. Naša spletna +stran se nahaja na http://www.canorus.org. Added: trunk/doc/usersguide2/source/sl/quickstart.rst =================================================================== --- trunk/doc/usersguide2/source/sl/quickstart.rst (rev 0) +++ trunk/doc/usersguide2/source/sl/quickstart.rst 2016-04-10 08:55:23 UTC (rev 1448) @@ -0,0 +1,107 @@ +Hiter začetek +============= + +Glavno okno +----------- + +Ob zagonu se pojavi glavno okno aplikacije. Izgledati bi moralo +(odvisno od operacijskega sistema in jezika) približno takole: + +.. image:: ../../images/mainwin.sl.png + :width: 700px + +Glavno okno je zgrajeno iz menija na vrhu, orodjarne za vstavljanje +na levi, splošne lastnosti elementov na vrhu in pogleda črtovja. + +Vsak dokument vsebuje en ali več listov - vsak list predstavlja zavihek +na dnu (izgled je podoben aplikacijam za delo s preglednicami). Več +listov se ponavadi uporablja za različne stavke skladbe, transpozicije, +variacije ali pa samo za začasen prostor, kamor želite na hitro zapisati +glasbeno idejo. + +Pisanje not +----------- + +Za dodajanje not kliknite na črtovje, izberite glas v vrhnji orodjarni +in kliknite na ``Note in pavze`` ikono |INSERT_PLAYABLE| v levi orodjarni. +Na vrhu se sedaj pojavijo lastnosti, kot so dolžina +note/pavze, vidljivost, triole itd. + +Za vstavljanje izbrane note kliknite na črtovje z levim miškinim klikom. +Za pavze uporabite desni klik. Za dodajanje predznakov uporabite tipki ++/-. Za popravljanje višine že vstavljene note uporabite tipki gor/dol. +Za vstavljanje pike uporabite tipko. + +.. |INSERT_PLAYABLE| image:: ../../images/insertplayable.svg + :height: 20px + +Pisanje drugih elementov +------------------------ + +Za vstavljanje ključa, tonalitete, taktovskega načina, taktnice in +ostalih elementov uporabite gumbe v levi orodjarni, nastavite želene +lastnosti na vrhu in kliknite na črtovje. Leva orodjarna ves čas prikazuje +elemente, ki se lahko vstavijo v trenutno izbrano črtovje. + +Za dodajanje lokov najprej izberite dve ali več not in nato izberite +lok. + +Za vstavljanje navadne taktnice takoj za izbrano noto lahko uporabite +tudi tipko b. + + +Spreminjanje elementov +---------------------- + +Če želite spremeniti lastnosti že vstavljenih elementov, morate biti +v načinu za urejanje. Pritisnite tipko Esc ali kliknite na +puščico |ARROW| v levi orodjarni. +Ko izberete določen element v črtovju, se v zgornji orodjarni pojavijo +njegove lastnosti, ki jih lahko po želji spreminjate. + +.. |ARROW| image:: ../../images/arrow.svg + :height: 20px + +\section{Novo črtovje, glas, besedilo} + +Za vstavljanje novega črtovja kliknite na ikono ``Vstavi sled`` +|STAFF_NEW| v levi orodjarni, izberite tip (črtovje, besedilo or funkcijske oznake) in kliknite +na pogled črtovja. + +.. |STAFF_NEW| image:: ../../images/staffnew.svg + :height: 20px + +Za dodajanje novega glasu izberite črtovje in kliknite na ikono ``Nov +glas`` |VOICE_NEW| v vrhnji orodjarni. + +.. |VOICE_NEW| image:: ../../images/voicenew.svg + :height: 20px + +Predvajanje +----------- + +Za predvajanje od trenutne izbire dalje pritisnite preslednico ali +kliknite na zeleno ikono ``Predvajaj`` |PLAY| v vrhnji orodjarni. +Za ustavitev pritisnite še enkrat. + +.. |PLAY| image:: ../../images/play.svg + :height: 20px + +Tiskanje +-------- + +Canorus uporablja program LilyPond za tiskanje. + +Žal je potrebno LilyPond namestiti ločeno na vaš računalnik. Če LilyPonda +še niste namestili, obiščite http://www.lilypond.org. Če uporabljate +operacijski sitem Linux, lahko uporabite izbrani upravitelj paketov za +namestitev. + +Za predogled tiska je potreben PDF pregledovalnik. Uporabite meni +Datoteka->Predogled tiska |PRINT_PREVIEW|. + +.. |PRINT_PREVIEW| image:: ../../images/fileprintpreview.png + :height: 20px + +Dokument lahko natisnete neposredno s klikom na meni Datoteka->Tiskanje +ali pa posredno preko vašega PDF pregledovalnika (priporočeno). This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |