# HG changeset patch # User John W. Eaton # Date 1344722292 14400 # Node ID 098546e95a5e1b6cb8a3c2a5d878cab87a30da50 # Parent 960aa8863476bb225a82e5e12596de3688a7d409 allow location of default settings file to be configurable * gui/default-qt-settings: Rename from default-settings. * gui/Makefile.am (octetc_DATA): New variable. * resource-manager.cc (default_qt_settings_file): New function. (resource_manager::reload_settings): Call default_qt_settings_file to find default settings file. * run-octave.in: Set OCTAVE_DEFAULT_QT_SETTINGS in the environment for running octave. * gui/src/Makefile.am (liboctgui_la_CPPFLAGS): Include -I../../src, -I../../src/interpfcn, and -I../../src/parse-tree in the list. diff -r 960aa8863476 -r 098546e95a5e gui/Makefile.am --- a/gui/Makefile.am Sat Aug 11 17:35:16 2012 -0400 +++ b/gui/Makefile.am Sat Aug 11 17:58:12 2012 -0400 @@ -1,1 +1,3 @@ SUBDIRS = src + +octetc_DATA = default-qt-settings diff -r 960aa8863476 -r 098546e95a5e gui/default-qt-settings --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gui/default-qt-settings Sat Aug 11 17:58:12 2012 -0400 @@ -0,0 +1,37 @@ +[General] +connectOnStartup=true +showMessageOfTheDay=true +showTopic=true +autoIdentification=false +nickServPassword= +useCustomFileEditor=false +customFileEditor=emacs +showFilenames=true +showFileSize=false +showFileType=false +showLastModified=false +showHiddenFiles=false +useAlternatingRowColors=true +useProxyServer=false +proxyType= +proxyHostName=none +proxyPort=8080 +proxyUserName= +proxyPassword= + +[editor] +showLineNumbers=true +highlightCurrentLine=true +codeCompletion=true +fontName=Ubuntu Mono +fontSize=12 +shortWindowTitle=true +longWindowTitle=true + +[terminal] +fontSize=10 +fontName=Andale Mono + +[MainWindow] +geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x1\0\0\0\0\0\x31\0\0\0\x18\0\0\x4\xff\0\0\x3\xff\0\0\0\0\0\0\0\0\xff\xff\xff\xfe\xff\xff\xff\xfe\0\0\0\0\x2\0) +windowState=@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\x1\0\0\0\x1\0\0\x4\xcf\0\0\x3\x91\xfc\x2\0\0\0\x1\xfc\0\0\0\x41\0\0\x3\x91\0\0\x1\xc7\0\xff\xff\xff\xfc\x1\0\0\0\x3\xfc\0\0\0\0\0\0\x1.\0\0\0R\0\xff\xff\xff\xfc\x2\0\0\0\x2\xfb\0\0\0\x1a\0W\0o\0r\0k\0s\0p\0\x61\0\x63\0\x65\0V\0i\0\x65\0w\x1\0\0\0\x41\0\0\x1\xe8\0\0\0k\0\xff\xff\xff\xfb\0\0\0\"\0H\0i\0s\0t\0o\0r\0y\0\x44\0o\0\x63\0k\0W\0i\0\x64\0g\0\x65\0t\x1\0\0\x2/\0\0\x1\xa3\0\0\0\x8c\0\xff\xff\xff\xfc\0\0\x1\x34\0\0\x2\x81\0\0\x2\x81\0\0\x2\x81\xfa\0\0\0\0\x2\0\0\0\x2\xfb\0\0\0$\0T\0\x65\0r\0m\0i\0n\0\x61\0l\0\x44\0o\0\x63\0k\0W\0i\0\x64\0g\0\x65\0t\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1\xa9\0\xff\xff\xff\xfb\0\0\0\x14\0\x46\0i\0l\0\x65\0\x45\0\x64\0i\0t\0o\0r\x1\0\0\x1\xf0\0\0\x1\xe2\0\0\0j\0\xff\xff\xff\xfb\0\0\0\x1e\0\x46\0i\0l\0\x65\0s\0\x44\0o\0\x63\0k\0W\0i\0\x64\0g\0\x65\0t\x1\0\0\x3\xbb\0\0\x1\x14\0\0\0P\0\xff\xff\xff\0\0\0\0\0\0\x3\x91\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x1\0\0\0\x2\0\0\0\x1\xff\xff\xff\xff\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0) diff -r 960aa8863476 -r 098546e95a5e gui/default-settings --- a/gui/default-settings Sat Aug 11 17:35:16 2012 -0400 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,37 +0,0 @@ -[General] -connectOnStartup=true -showMessageOfTheDay=true -showTopic=true -autoIdentification=false -nickServPassword= -useCustomFileEditor=false -customFileEditor=emacs -showFilenames=true -showFileSize=false -showFileType=false -showLastModified=false -showHiddenFiles=false -useAlternatingRowColors=true -useProxyServer=false -proxyType= -proxyHostName=none -proxyPort=8080 -proxyUserName= -proxyPassword= - -[editor] -showLineNumbers=true -highlightCurrentLine=true -codeCompletion=true -fontName=Ubuntu Mono -fontSize=12 -shortWindowTitle=true -longWindowTitle=true - -[terminal] -fontSize=10 -fontName=Andale Mono - -[MainWindow] -geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x1\0\0\0\0\0\x31\0\0\0\x18\0\0\x4\xff\0\0\x3\xff\0\0\0\0\0\0\0\0\xff\xff\xff\xfe\xff\xff\xff\xfe\0\0\0\0\x2\0) -windowState=@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\x1\0\0\0\x1\0\0\x4\xcf\0\0\x3\x91\xfc\x2\0\0\0\x1\xfc\0\0\0\x41\0\0\x3\x91\0\0\x1\xc7\0\xff\xff\xff\xfc\x1\0\0\0\x3\xfc\0\0\0\0\0\0\x1.\0\0\0R\0\xff\xff\xff\xfc\x2\0\0\0\x2\xfb\0\0\0\x1a\0W\0o\0r\0k\0s\0p\0\x61\0\x63\0\x65\0V\0i\0\x65\0w\x1\0\0\0\x41\0\0\x1\xe8\0\0\0k\0\xff\xff\xff\xfb\0\0\0\"\0H\0i\0s\0t\0o\0r\0y\0\x44\0o\0\x63\0k\0W\0i\0\x64\0g\0\x65\0t\x1\0\0\x2/\0\0\x1\xa3\0\0\0\x8c\0\xff\xff\xff\xfc\0\0\x1\x34\0\0\x2\x81\0\0\x2\x81\0\0\x2\x81\xfa\0\0\0\0\x2\0\0\0\x2\xfb\0\0\0$\0T\0\x65\0r\0m\0i\0n\0\x61\0l\0\x44\0o\0\x63\0k\0W\0i\0\x64\0g\0\x65\0t\x1\0\0\0\0\xff\xff\xff\xff\0\0\x1\xa9\0\xff\xff\xff\xfb\0\0\0\x14\0\x46\0i\0l\0\x65\0\x45\0\x64\0i\0t\0o\0r\x1\0\0\x1\xf0\0\0\x1\xe2\0\0\0j\0\xff\xff\xff\xfb\0\0\0\x1e\0\x46\0i\0l\0\x65\0s\0\x44\0o\0\x63\0k\0W\0i\0\x64\0g\0\x65\0t\x1\0\0\x3\xbb\0\0\x1\x14\0\0\0P\0\xff\xff\xff\0\0\0\0\0\0\x3\x91\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x1\0\0\0\x2\0\0\0\x1\xff\xff\xff\xff\x1\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0) diff -r 960aa8863476 -r 098546e95a5e gui/src/Makefile.am --- a/gui/src/Makefile.am Sat Aug 11 17:35:16 2012 -0400 +++ b/gui/src/Makefile.am Sat Aug 11 17:58:12 2012 -0400 @@ -92,7 +92,10 @@ -I$(srcdir)/../../libcruft/misc \ -I../../liboctave \ -I$(srcdir)/../../liboctave \ + -I../../src \ -I../../src/interp-core \ + -I../../src/interpfcn \ + -I../../src/parse-tree \ -I$(srcdir)/../../src \ -I$(srcdir)/../../src/interp-core \ -I$(srcdir)/../../src/interpfcn \ diff -r 960aa8863476 -r 098546e95a5e gui/src/resource-manager.cc --- a/gui/src/resource-manager.cc Sat Aug 11 17:35:16 2012 -0400 +++ b/gui/src/resource-manager.cc Sat Aug 11 17:58:12 2012 -0400 @@ -15,11 +15,22 @@ * along with this program. If not, see . */ -#include "resource-manager.h" +#ifdef HAVE_CONFIG_H +#include +#endif + +#include + #include #include +#include -#include +#include "file-ops.h" +#include "oct-env.h" + +#include "defaults.h" + +#include "resource-manager.h" resource_manager resource_manager::_singleton; @@ -47,18 +58,30 @@ return _home_path; } +static std::string +default_qt_settings_file (void) +{ + std::string dsf = octave_env::getenv ("OCTAVE_DEFAULT_QT_SETTINGS"); + + if (dsf.empty ()) + dsf = Voct_etc_dir + file_ops::dir_sep_str () + "default-qt-settings"; + + return dsf; +} + void resource_manager::reload_settings () { QDesktopServices desktopServices; _home_path = desktopServices.storageLocation (QDesktopServices::HomeLocation); - QString settings_path = _home_path + "/.config/octave-gui/"; - QString settings_file = settings_path + "settings"; + QString settings_path = _home_path + "/.config/octave/"; + QString settings_file = settings_path + "qt-settings"; if (!QFile::exists (settings_file)) { QDir("/").mkpath (settings_path); - QFile::copy ("../default-settings", settings_file); + QFile::copy (QString::fromStdString (default_qt_settings_file ()), + settings_file); _first_run = true; } else diff -r 960aa8863476 -r 098546e95a5e run-octave.in --- a/run-octave.in Sat Aug 11 17:35:16 2012 -0400 +++ b/run-octave.in Sat Aug 11 17:58:12 2012 -0400 @@ -73,6 +73,7 @@ fi OCTAVE_SITE_INITFILE="$top_srcdir/scripts/startup/main-rcfile" \ +OCTAVE_DEFAULT_QT_SETTINGS="$top_srcdir/gui/default-qt-settings" \ exec $builddir/libtool --mode=execute $driver \ "$octave_executable" --no-init-path --path="$LOADPATH" \ --image-path="$IMAGEPATH" --doc-cache-file="$DOCFILE" \