summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJasem Mutlaq <mutlaqja@ikarustech.com>2016-10-04 07:41:03 (GMT)
committerJasem Mutlaq <mutlaqja@ikarustech.com>2016-10-04 07:41:03 (GMT)
commit373c3ebeac6e75dacc84f5298cbcfb0f321726aa (patch)
tree32a6772ead7dc263cb7bb4344e084f8f648d5738
parent98649c60807d1635eb8d1c7a50261331fe8efe3f (diff)
parentfe69ba4fdae4fbfdbe2671cddd204467097f82f2 (diff)
Master sync
-rw-r--r--kstars/auxiliary/ksdssdownloader.cpp11
-rw-r--r--kstars/auxiliary/ksdssdownloader.h6
-rw-r--r--kstars/data/icons/breeze/index.theme7
-rw-r--r--kstars/fitsviewer/fitsviewlite.cpp1
-rw-r--r--kstars/kstars.kcfg112
-rw-r--r--kstars/kstarsdbus.cpp7
-rw-r--r--kstars/kstarslite/dialogs/detaildialoglite.cpp3
-rw-r--r--kstars/kstarslite/dialogs/finddialoglite.cpp1
-rw-r--r--kstars/kstarslite/skyitems/deepskyitem.cpp1
-rw-r--r--kstars/kstarslite/skyitems/skynodes/deepskynode.cpp2
-rw-r--r--kstars/kstarslite/skyitems/skynodes/deepskynode.h1
-rw-r--r--kstars/kstarslite/skyitems/skynodes/dsosymbolnode.cpp1
-rw-r--r--kstars/kstarslite/skyitems/skynodes/dsosymbolnode.h1
-rw-r--r--kstars/kstarslite/skyitems/skynodes/nodes/linenode.cpp10
-rw-r--r--kstars/kstarslite/skyitems/syncedcatalogitem.cpp3
-rw-r--r--kstars/options/opsadvanced.cpp8
-rw-r--r--kstars/options/opsadvanced.ui83
-rw-r--r--kstars/skycomponents/catalogcomponent.cpp3
-rw-r--r--kstars/skyqpainter.cpp10
-rw-r--r--kstars/tools/nameresolver.cpp2
-rw-r--r--kstars/tools/observinglist.cpp53
-rw-r--r--kstars/tools/observinglist.ui444
22 files changed, 452 insertions, 318 deletions
diff --git a/kstars/auxiliary/ksdssdownloader.cpp b/kstars/auxiliary/ksdssdownloader.cpp
index 2512036..edb53f7 100644
--- a/kstars/auxiliary/ksdssdownloader.cpp
+++ b/kstars/auxiliary/ksdssdownloader.cpp
@@ -38,14 +38,17 @@ KSDssDownloader::KSDssDownloader( QObject *parent ) : QObject( parent ) {
m_VersionPreference << "poss2ukstu_blue" << "poss2ukstu_red" << "poss1_blue" << "poss1_red" << "quickv" << "poss2ukstu_ir";
m_TempFile.open();
}
-KSDssDownloader::KSDssDownloader(const SkyPoint * const p, const QString &destFileName, QObject *parent ) : QObject( parent ) {
+
+KSDssDownloader::KSDssDownloader(const SkyPoint * const p, const QString &destFileName, const std::function<void( bool )> &slotDownloadReady, QObject *parent ) : QObject( parent ) {
// Initialize version preferences. FIXME: This must be made a
// user-changeable option just in case someone likes red
m_VersionPreference << "poss2ukstu_blue" << "poss2ukstu_red" << "poss1_blue" << "poss1_red" << "quickv" << "poss2ukstu_ir";
m_TempFile.open();
+ connect( this, &KSDssDownloader::downloadComplete, slotDownloadReady );
startDownload( p, destFileName );
}
+
QString KSDssDownloader::getDSSURL( const SkyPoint * const p, const QString &version, struct KSDssImage::Metadata *md ) {
const DeepSkyObject *dso = 0;
double height, width;
@@ -232,7 +235,7 @@ void KSDssDownloader::singleDownloadFinished()
m_TempFile.open();
m_TempFile.write(downloadJob->downloadedData());
m_TempFile.close();
- delete (downloadJob);
+ downloadJob->deleteLater();
// Check if we have a proper DSS image or the DSS server failed
QMimeDatabase mdb;
@@ -256,7 +259,7 @@ void KSDssDownloader::downloadAttemptFinished()
// FIXME: do SDSS-y things
emit downloadComplete( false );
deleteLater();
- delete (downloadJob);
+ downloadJob->deleteLater();
return;
}
else
@@ -264,7 +267,7 @@ void KSDssDownloader::downloadAttemptFinished()
m_TempFile.open();
m_TempFile.write(downloadJob->downloadedData());
m_TempFile.close();
- delete (downloadJob);
+ downloadJob->deleteLater();
// Check if we have a proper DSS image or the DSS server failed
QMimeDatabase mdb;
diff --git a/kstars/auxiliary/ksdssdownloader.h b/kstars/auxiliary/ksdssdownloader.h
index 6045ace..8f8746b 100644
--- a/kstars/auxiliary/ksdssdownloader.h
+++ b/kstars/auxiliary/ksdssdownloader.h
@@ -27,6 +27,8 @@
#include <QStringList>
#include <QTemporaryFile>
+#include <functional>
+
class FileDownloader;
class SkyPoint;
class dms;
@@ -54,12 +56,12 @@ class KSDssDownloader : public QObject {
KSDssDownloader( QObject *parent = 0 );
/**
- * @short Constructor that initiates a "standard" DSS download job, and finally self destructs
+ * @short Constructor that initiates a "standard" DSS download job, calls the downloadReady slot, and finally self destructs
* @note Very important that if you create with this constructor,
* the object will self-destruct. Avoid keeping pointers to it, or
* things may segfault!
*/
- KSDssDownloader( const SkyPoint * const p, const QString &destFileName, QObject *parent = 0 );
+ KSDssDownloader( const SkyPoint * const p, const QString &destFileName, const std::function<void(bool)> &slotDownloadReady, QObject *parent = 0 );
/**
* @short Stateful single-download of a supplied URL. Use when the flexibility is required
diff --git a/kstars/data/icons/breeze/index.theme b/kstars/data/icons/breeze/index.theme
index 156dffc..b0f2686 100644
--- a/kstars/data/icons/breeze/index.theme
+++ b/kstars/data/icons/breeze/index.theme
@@ -1,5 +1,12 @@
[Icon Theme]
Name=Breeze
+Name[ca]=Brisa
+Name[es]=Brisa
+Name[nl]=Breeze
+Name[pt]=Brisa
+Name[sv]=Breeze
+Name[uk]=Breeze
+Name[x-test]=xxBreezexx
Inherits=default
Directories=default
diff --git a/kstars/fitsviewer/fitsviewlite.cpp b/kstars/fitsviewer/fitsviewlite.cpp
index 30d347f..dc5f556 100644
--- a/kstars/fitsviewer/fitsviewlite.cpp
+++ b/kstars/fitsviewer/fitsviewlite.cpp
@@ -35,6 +35,7 @@
#include "indi/indistd.h"
#include "indi/driverinfo.h"
#endif
+#include <QImage>
#define ZOOM_DEFAULT 100.0
#define ZOOM_MIN 10
diff --git a/kstars/kstars.kcfg b/kstars/kstars.kcfg
index 55dfd73..0ee01ca 100644
--- a/kstars/kstars.kcfg
+++ b/kstars/kstars.kcfg
@@ -1,6 +1,8 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<kcfg xmlns="http://www.kde.org/standards/kcfg/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0 http://www.kde.org/standards/kcfg/1.0/kcfg.xsd">
+<?xml version="1.0" encoding="UTF-8" ?>
+<kcfg xmlns="http://www.kde.org/standards/kcfg/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0
+ http://www.kde.org/standards/kcfg/1.0/kcfg.xsd">
<kcfgfile name="kstarsrc" />
+
<group name="GUI">
<entry name="PositionTimeBox" type="Point">
<label>Position of the time InfoBox.</label>
@@ -54,21 +56,21 @@
</entry>
<entry name="StickyTimeBox" type="Int">
<label>Time InfoBox anchor flag</label>
- <whatsthis>Is the Time InfoBox anchored to a window edge? 0 = not anchored; 1 = anchored to right edge; 2 = anchored to bottom edge; 3 = anchored to bottom and right edges.</whatsthis>
+ <whatsthis>Is the Time InfoBox anchored to a window edge? 0 = not anchored; 1 = anchored to right edge; 2 = anchored to bottom edge; 3 = anchored to bottom and right edges.</whatsthis>
<default>0</default>
<min>0</min>
<max>3</max>
</entry>
<entry name="StickyFocusBox" type="Int">
<label>Time InfoBox anchor flag</label>
- <whatsthis>Is the Focus InfoBox anchored to a window edge? 0 = not anchored; 1 = anchored to right edge; 2 = anchored to bottom edge; 3 = anchored to bottom and right edges.</whatsthis>
+ <whatsthis>Is the Focus InfoBox anchored to a window edge? 0 = not anchored; 1 = anchored to right edge; 2 = anchored to bottom edge; 3 = anchored to bottom and right edges.</whatsthis>
<default>1</default>
<min>0</min>
<max>3</max>
</entry>
<entry name="StickyGeoBox" type="Int">
<label>Geographic InfoBox anchor flag</label>
- <whatsthis>Is the Geographic Location InfoBox anchored to a window edge? 0 = not anchored; 1 = anchored to right edge; 2 = anchored to bottom edge; 3 = anchored to bottom and right edges.</whatsthis>
+ <whatsthis>Is the Geographic Location InfoBox anchored to a window edge? 0 = not anchored; 1 = anchored to right edge; 2 = anchored to bottom edge; 3 = anchored to bottom and right edges.</whatsthis>
<default>2</default>
<min>0</min>
<max>3</max>
@@ -85,14 +87,12 @@
</entry>
<entry name="ShowRADecField" type="Bool">
<label>Display RA/Dec coordinates in the statusbar?</label>
- <whatsthis>Toggle display of the Equatorial coordinates of the
-mouse cursor at the current epoch in the status bar.</whatsthis>
+ <whatsthis>Toggle display of the Equatorial coordinates of the mouse cursor at the current epoch in the status bar.</whatsthis>
<default>true</default>
</entry>
<entry name="ShowJ2000RADecField" type="Bool">
<label>Display J2000.0 RA/Dec coordinates in the statusbar?</label>
- <whatsthis>Toggle display of the Equatorial coordinates of the
-mouse cursor at the standard epoch in the status bar.</whatsthis>
+ <whatsthis>Toggle display of the Equatorial coordinates of the mouse cursor at the standard epoch in the status bar.</whatsthis>
<default>true</default>
</entry>
<entry name="WindowWidth" type="UInt">
@@ -108,6 +108,7 @@ mouse cursor at the standard epoch in the status bar.</whatsthis>
<default>true</default>
</entry>
</group>
+
<group name="Catalogs">
<entry name="CatalogFile" type="StringList">
<label>Filenames of defined custom object catalogs.</label>
@@ -123,13 +124,11 @@ mouse cursor at the standard epoch in the status bar.</whatsthis>
</entry>
<entry name="ResolveNamesOnline" type="Bool">
<label>Resolve names using online services.</label>
- <whatsthis>Names of objects entered into the find dialog are
-resolved using online services and stored in the database. This
-option also toggles the display of such resolved objects on the
-sky map.</whatsthis>
+ <whatsthis>Names of objects entered into the find dialog are resolved using online services and stored in the database. This option also toggles the display of such resolved objects on the sky map.</whatsthis>
<default>true</default>
</entry>
</group>
+
<group name="indi">
<entry name="useGeographicUpdate" type="Bool">
<label>Automatically updates geographic location?</label>
@@ -164,7 +163,7 @@ sky map.</whatsthis>
<entry name="fitsDir" type="String">
<label>FITS Default directory</label>
<whatsthis>The default location of saved FITS files</whatsthis>
- <default />
+ <default></default>
</entry>
<entry name="serverPortStart" type="String">
<label>INDI Server Start Port</label>
@@ -190,6 +189,7 @@ sky map.</whatsthis>
<whatsthis>PATH to indi drivers directory</whatsthis>
</entry>
</group>
+
<group name="Location">
<entry name="CityName" type="String">
<label>City name of geographic location.</label>
@@ -198,8 +198,8 @@ sky map.</whatsthis>
</entry>
<entry name="ProvinceName" type="String">
<label>Province name of geographic location.</label>
- <whatsthis>The Province name of the current geographic location. This is the name of the state for locations in the U. S.</whatsthis>
- <default />
+ <whatsthis>The Province name of the current geographic location. This is the name of the state for locations in the U. S.</whatsthis>
+ <default> </default>
</entry>
<entry name="CountryName" type="String">
<label>Country name of geographic location.</label>
@@ -230,15 +230,16 @@ sky map.</whatsthis>
<default>--</default>
</entry>
</group>
+
<group name="View">
<entry name="UseAnimatedSlewing" type="Bool">
<label>Use animated slewing effects when changing focus position?</label>
- <whatsthis>If true, focus changes will cause the sky to visibly spin to the new position. Otherwise, the display will "snap" instantly to the new position.</whatsthis>
+ <whatsthis>If true, focus changes will cause the sky to visibly spin to the new position. Otherwise, the display will "snap" instantly to the new position.</whatsthis>
<default>true</default>
</entry>
<entry name="FOVNames" type="StringList">
<label>Name of selected FOV indicators</label>
- <whatsthis>The names of the currently selected field-of-view indicators. The list of defined FOV indicator names is listed in the "Settings|FOV Symbols" menu.</whatsthis>
+ <whatsthis>The names of the currently selected field-of-view indicators. The list of defined FOV indicator names is listed in the "Settings|FOV Symbols" menu.</whatsthis>
<default>Telrad</default>
</entry>
<entry name="FadePlanetTrails" type="Bool">
@@ -248,22 +249,22 @@ sky map.</whatsthis>
</entry>
<entry name="FocusRA" type="Double">
<label>Right Ascension of focus position</label>
- <whatsthis>The right ascension of the initial focus position of the sky map, in decimal hours. This value is volatile; it is reset whenever the program shuts down.</whatsthis>
+ <whatsthis>The right ascension of the initial focus position of the sky map, in decimal hours. This value is volatile; it is reset whenever the program shuts down.</whatsthis>
<default>180.0</default>
</entry>
<entry name="FocusDec" type="Double">
<label>Declination of focus position</label>
- <whatsthis>The declination of the initial focus position of the sky map, in decimal degrees. This value is volatile; it is reset whenever the program shuts down.</whatsthis>
+ <whatsthis>The declination of the initial focus position of the sky map, in decimal degrees. This value is volatile; it is reset whenever the program shuts down.</whatsthis>
<default>45.0</default>
</entry>
<entry name="FocusObject" type="String">
<label>Name of focused object</label>
- <whatsthis>The name of the object that should be centered and tracked on startup. If no object should be centered, set to "nothing". This value is volatile; it is reset whenever the program shuts down.</whatsthis>
+ <whatsthis>The name of the object that should be centered and tracked on startup. If no object should be centered, set to "nothing". This value is volatile; it is reset whenever the program shuts down.</whatsthis>
<default>nothing</default>
</entry>
<entry name="IsTracking" type="Bool">
<label>Is tracking engaged?</label>
- <whatsthis>True if the skymap should track on its initial position on startup. This value is volatile; it is reset whenever the program shuts down.</whatsthis>
+ <whatsthis>True if the skymap should track on its initial position on startup. This value is volatile; it is reset whenever the program shuts down.</whatsthis>
<default>false</default>
</entry>
<entry name="HideOnSlew" type="Bool">
@@ -488,7 +489,7 @@ sky map.</whatsthis>
</entry>
<entry name="FillMilkyWay" type="Bool">
<label>Fill Milky Way contour? (false means use outline only)</label>
- <whatsthis>Toggle whether the Milky Way contour is filled. When this option is false, the Milky Way is shown as an outline.</whatsthis>
+ <whatsthis>Toggle whether the Milky Way contour is filled. When this option is false, the Milky Way is shown as an outline.</whatsthis>
<default>true</default>
</entry>
<entry name="ShowSolarSystem" type="Bool">
@@ -643,7 +644,7 @@ sky map.</whatsthis>
</entry>
<entry name="UseAntialias" type="Bool">
<label>Use antialiasing when drawing the screen?</label>
- <whatsthis>Toggle whether the sky is rendered using antialiasing. Lines and shapes are smoother with antialiasing, but rendering the screen will take more time.</whatsthis>
+ <whatsthis>Toggle whether the sky is rendered using antialiasing. Lines and shapes are smoother with antialiasing, but rendering the screen will take more time.</whatsthis>
<default>true</default>
</entry>
<entry name="ZoomFactor" type="Double">
@@ -679,22 +680,23 @@ sky map.</whatsthis>
<default>true</default>
</entry>
<!--
-<entry name="MagLimitDrawStar" type="Double">
-<label>Faint limit for stars</label>
-<whatsthis>The faint magnitude limit for drawing stars, when fully zoomed in.</whatsthis>
-<default>8.0</default>
--->
+ <entry name="MagLimitDrawStar" type="Double">
+ <label>Faint limit for stars</label>
+ <whatsthis>The faint magnitude limit for drawing stars, when fully zoomed in.</whatsthis>
+ <default>8.0</default>
+ -->
<entry name="StarDensity" type="Int">
<label>Density of stars in the field of view</label>
<whatsthis>Sets the density of stars in the field of view</whatsthis>
<default>5</default>
</entry>
+
<!-- <entry name="MagLimitDrawStarZoomOut" type="Double">
-<label>Faint limit for stars when zoomed out</label>
-<whatsthis>The faint magnitude limit for drawing stars, when fully zoomed out.</whatsthis>
-<default>6.0</default>
-</entry>
--->
+ <label>Faint limit for stars when zoomed out</label>
+ <whatsthis>The faint magnitude limit for drawing stars, when fully zoomed out.</whatsthis>
+ <default>6.0</default>
+ </entry>
+ -->
<entry name="MagLimitHideStar" type="Double">
<label>Faint limit for stars when slewing</label>
<whatsthis>The faint magnitude limit for drawing stars, when the map is in motion (only applicable if faint stars are set to be hidden while the map is in motion).</whatsthis>
@@ -752,6 +754,16 @@ sky map.</whatsthis>
<whatsthis>The observing list will prefer SDSS imagery while downloading imagery.</whatsthis>
<default>false</default>
</entry>
+ <entry name="ObsListDemoteHole" type="Bool">
+ <label>While sorting by percentage altitude in the observing list, demote objects present in the Dobsonian hole</label>
+ <whatsthis>Check this if you use a large Dobsonian telescope. Sorting by percentage current altitude is an easy way of determining what objects are well-placed for observation. However, when using a large Dobsonian telescope, objects close to the zenith are hard to observe. Since tracking there corresponds to a rotation in azimuth, it is both counterintuitive and requires the observer to frequently move the ladder. The region around the zenith where this is particularly frustrating is called the Dobsonian hole. This checkbox makes the observing list consider objects present in the hole as unfit for observation.</whatsthis>
+ <default>false</default>
+ </entry>
+ <entry name="ObsListHoleSize" type="Double">
+ <label>This is the angular distance from the zenith, in degrees, below which you can easily point your telescope.</label>
+ <whatsthis>This specifies the angular radius of the Dobsonian hole, i.e. the region where a large Dobsonian telescope cannot be pointed easily.</whatsthis>
+ <default>15.00</default>
+ </entry>
</group>
<group name="Colors">
<entry name="ColorSchemeFile" type="String">
@@ -951,12 +963,12 @@ sky map.</whatsthis>
<entry name="XplanetPath" type="String">
<label>Path to xplanet binary</label>
<whatsthis>Xplanet binary path</whatsthis>
- <default />
+ <default></default>
</entry>
<entry name="XplanetTitle" type="String">
<label>Window title</label>
<whatsthis>Set the window’s title.</whatsthis>
- <default />
+ <default></default>
</entry>
<entry name="XplanetWidth" type="String">
<label>Width of xplanet window</label>
@@ -985,8 +997,8 @@ sky map.</whatsthis>
</entry>
<entry name="XplanetLabelString" type="String">
<label>Planet string</label>
- <whatsthis>Specify the text of the first line of the label. By default, it says something like "Looking at Earth". Any instances of %t will be replaced by the target name, and any instances of %o will be replaced by the origin name.</whatsthis>
- <default />
+ <whatsthis>Specify the text of the first line of the label. By default, it says something like "Looking at Earth". Any instances of %t will be replaced by the target name, and any instances of %o will be replaced by the origin name.</whatsthis>
+ <default></default>
</entry>
<entry name="XplanetFontSize" type="String">
<label>Font Size</label>
@@ -1000,7 +1012,7 @@ sky map.</whatsthis>
</entry>
<entry name="XplanetDateFormat" type="String">
<label>Date format</label>
- <whatsthis>Specify the format for the date/time label. This format string is passed to strftime(3). The default is "%c %Z", which shows the date, time, and time zone in the locale’s appropriate date and time representation.</whatsthis>
+ <whatsthis>Specify the format for the date/time label. This format string is passed to strftime(3). The default is "%c %Z", which shows the date, time, and time zone in the locale’s appropriate date and time representation.</whatsthis>
<default>%c %Z</default>
</entry>
<entry name="XplanetLabelTL" type="Bool">
@@ -1021,7 +1033,7 @@ sky map.</whatsthis>
</entry>
<entry name="XplanetGlare" type="String">
<label>Sun Glare</label>
- <whatsthis>Draw a glare around the sun with a radius of the specified value larger than the Sun. The default value is 28.</whatsthis>
+ <whatsthis>Draw a glare around the sun with a radius of the specified value larger than the Sun. The default value is 28.</whatsthis>
<default>28</default>
</entry>
<entry name="XplanetRandom" type="Bool">
@@ -1036,17 +1048,17 @@ sky map.</whatsthis>
</entry>
<entry name="XplanetLatitude" type="String">
<label>Latitude in degrees</label>
- <whatsthis>Render the target body as seen from above the specified latitude (in degrees). The default value is 0.</whatsthis>
+ <whatsthis>Render the target body as seen from above the specified latitude (in degrees). The default value is 0.</whatsthis>
<default>0</default>
</entry>
<entry name="XplanetLongitude" type="String">
<label>Longitude in degrees</label>
- <whatsthis>Place the observer above the specified longitude (in degrees). Longitude is positive going east, negative going west (for the earth and moon), so for example Los Angeles is at -118 or 242. The default value is 0.</whatsthis>
+ <whatsthis>Place the observer above the specified longitude (in degrees). Longitude is positive going east, negative going west (for the earth and moon), so for example Los Angeles is at -118 or 242. The default value is 0.</whatsthis>
<default>0</default>
</entry>
<entry name="XplanetProjection" type="UInt">
<label>Projection</label>
- <whatsthis>The default is no projection. Multiple bodies will not be shown if this option is specified, although shadows will still be drawn.</whatsthis>
+ <whatsthis>The default is no projection. Multiple bodies will not be shown if this option is specified, although shadows will still be drawn.</whatsthis>
<default>0</default>
</entry>
<entry name="XplanetWait" type="Bool">
@@ -1072,7 +1084,7 @@ sky map.</whatsthis>
<entry name="XplanetBackgroundImagePath" type="String">
<label>Background image path</label>
<whatsthis>The path of the background image.</whatsthis>
- <default />
+ <default></default>
</entry>
<entry name="XplanetBackgroundColor" type="Bool">
<label>Use background color</label>
@@ -1097,7 +1109,7 @@ sky map.</whatsthis>
<entry name="XplanetArcFilePath" type="String">
<label>Path to arc file</label>
<whatsthis>Specify an arc file to be plotted against the background stars.</whatsthis>
- <default />
+ <default></default>
</entry>
<entry name="XplanetConfigFile" type="Bool">
<label>Config file</label>
@@ -1107,7 +1119,7 @@ sky map.</whatsthis>
<entry name="XplanetConfigFilePath" type="String">
<label>Path to config file</label>
<whatsthis>Use the specified configuration file.</whatsthis>
- <default />
+ <default></default>
</entry>
<entry name="XplanetFOV" type="Bool">
<label>Use kstars's FOV</label>
@@ -1122,7 +1134,7 @@ sky map.</whatsthis>
<entry name="XplanetMarkerFilePath" type="String">
<label>Marker file path</label>
<whatsthis>Specify a file containing user-defined marker data to display against the background stars.</whatsthis>
- <default />
+ <default></default>
</entry>
<entry name="XplanetMarkerBounds" type="Bool">
<label>Write marker bounds</label>
@@ -1132,7 +1144,7 @@ sky map.</whatsthis>
<entry name="XplanetMarkerBoundsPath" type="String">
<label>Marker bounds file path</label>
<whatsthis>Write coordinates of the bounding box for each marker to this file.</whatsthis>
- <default />
+ <default></default>
</entry>
<entry name="XplanetStarmap" type="Bool">
<label>Star map</label>
@@ -1142,7 +1154,7 @@ sky map.</whatsthis>
<entry name="XplanetStarmapPath" type="String">
<label>Star map file path</label>
<whatsthis>Star map file path</whatsthis>
- <default />
+ <default></default>
</entry>
<entry name="XplanetQuality" type="String">
<label>Output file quality</label>
@@ -1608,7 +1620,7 @@ sky map.</whatsthis>
<entry name="GuideSquareSizeIndex" type="UInt">
<label>Guide square size index (0 to 4) corresponding to pixel sizes (8 to 128).</label>
<default>1</default>
- </entry>
+ </entry>
<entry name="AutoStarEnabled" type="Bool">
<label>Automatically select calibration star and perform calibration.</label>
<default>false</default>
diff --git a/kstars/kstarsdbus.cpp b/kstars/kstarsdbus.cpp
index 62f5f3c..de7e89b 100644
--- a/kstars/kstarsdbus.cpp
+++ b/kstars/kstarsdbus.cpp
@@ -604,9 +604,12 @@ void KStars::renderEyepieceView( const QString &objectName, const QString &destP
if( !QFile::exists( imagePath ) ) {
// We must download a DSS image
tempFile.open();
- KSDssDownloader *dler = new KSDssDownloader( target, tempFile.fileName() );
QEventLoop loop;
- connect( dler, SIGNAL( downloadComplete( bool ) ), &loop, SLOT( quit() ) );
+ std::function<void( bool )> slot = [ &loop ]( bool unused ) {
+ Q_UNUSED( unused );
+ loop.quit();
+ };
+ new KSDssDownloader( target, tempFile.fileName(), slot, this );
qDebug() << "DSS download requested. Waiting for download to complete...";
loop.exec(); // wait for download to complete
imagePath = tempFile.fileName();
diff --git a/kstars/kstarslite/dialogs/detaildialoglite.cpp b/kstars/kstarslite/dialogs/detaildialoglite.cpp
index c495ccf..142d413 100644
--- a/kstars/kstarslite/dialogs/detaildialoglite.cpp
+++ b/kstars/kstarslite/dialogs/detaildialoglite.cpp
@@ -26,6 +26,9 @@
#include "skyobjects/ksasteroid.h"
#include "skyobjects/supernova.h"
+#include "deepskyobject.h"
+#include "starobject.h"
+
#include <QTemporaryFile>
#include <QDesktopServices>
diff --git a/kstars/kstarslite/dialogs/finddialoglite.cpp b/kstars/kstarslite/dialogs/finddialoglite.cpp
index 8cd1522..3e37b16 100644
--- a/kstars/kstarslite/dialogs/finddialoglite.cpp
+++ b/kstars/kstarslite/dialogs/finddialoglite.cpp
@@ -23,6 +23,7 @@
#include "skycomponents/skymapcomposite.h"
#include "skymaplite.h"
#include "kstarslite.h"
+#include"deepskyobject.h"
#include "solarsystemcomposite.h"
//Resolver
diff --git a/kstars/kstarslite/skyitems/deepskyitem.cpp b/kstars/kstarslite/skyitems/deepskyitem.cpp
index ad93e17..47b2184 100644
--- a/kstars/kstarslite/skyitems/deepskyitem.cpp
+++ b/kstars/kstarslite/skyitems/deepskyitem.cpp
@@ -23,6 +23,7 @@
#include "deepstaritem.h"
#include "skynodes/dsosymbolnode.h"
+#include "deepskyobject.h"
#include "starcomponent.h"
#include "starblockfactory.h"
#include "skymesh.h"
diff --git a/kstars/kstarslite/skyitems/skynodes/deepskynode.cpp b/kstars/kstarslite/skyitems/skynodes/deepskynode.cpp
index b985cda..dd27eac 100644
--- a/kstars/kstarslite/skyitems/skynodes/deepskynode.cpp
+++ b/kstars/kstarslite/skyitems/skynodes/deepskynode.cpp
@@ -23,7 +23,7 @@
#include "nodes/pointnode.h"
#include "dsosymbolnode.h"
#include "trixelnode.h"
-
+#include "deepskyobject.h"
#include "../rootnode.h"
#include "../labelsitem.h"
#include "labelnode.h"
diff --git a/kstars/kstarslite/skyitems/skynodes/deepskynode.h b/kstars/kstarslite/skyitems/skynodes/deepskynode.h
index 6c9cee7..7a5b5f8 100644
--- a/kstars/kstarslite/skyitems/skynodes/deepskynode.h
+++ b/kstars/kstarslite/skyitems/skynodes/deepskynode.h
@@ -36,6 +36,7 @@ class DSOSymbolNode;
*/
class RootNode;
+class DeepSkyObject;
class DeepSkyNode : public SkyNode {
public:
diff --git a/kstars/kstarslite/skyitems/skynodes/dsosymbolnode.cpp b/kstars/kstarslite/skyitems/skynodes/dsosymbolnode.cpp
index 48a0ed2..9be770c 100644
--- a/kstars/kstarslite/skyitems/skynodes/dsosymbolnode.cpp
+++ b/kstars/kstarslite/skyitems/skynodes/dsosymbolnode.cpp
@@ -20,6 +20,7 @@
#include "dsosymbolnode.h"
#include "nodes/ellipsenode.h"
+#include "deepskyobject.h"
#include "../rootnode.h"
#include "../labelsitem.h"
diff --git a/kstars/kstarslite/skyitems/skynodes/dsosymbolnode.h b/kstars/kstarslite/skyitems/skynodes/dsosymbolnode.h
index 0144bce..80de7ce 100644
--- a/kstars/kstarslite/skyitems/skynodes/dsosymbolnode.h
+++ b/kstars/kstarslite/skyitems/skynodes/dsosymbolnode.h
@@ -25,6 +25,7 @@ class LabelNode;
class QSGSimpleTextureNode;
class EllipseNode;
class LineNode;
+class DeepSkyObject;
class RootNode;
diff --git a/kstars/kstarslite/skyitems/skynodes/nodes/linenode.cpp b/kstars/kstarslite/skyitems/skynodes/nodes/linenode.cpp
index 81b56ff..654de5f 100644
--- a/kstars/kstarslite/skyitems/skynodes/nodes/linenode.cpp
+++ b/kstars/kstarslite/skyitems/skynodes/nodes/linenode.cpp
@@ -96,8 +96,16 @@ void LineNode::updateGeometry() {
doSkip = m_skipList->skip(j);
}
+ bool pointsVisible = false;
+ //Temporary solution to avoid random lines in Gnomonic projection and draw lines up to horizon
+ if(SkyMapLite::Instance()->projector()->type() == Projector::Gnomonic) {
+ if ( isVisible && isVisibleLast ) pointsVisible = true;
+ } else {
+ if ( isVisible || isVisibleLast ) pointsVisible = true;
+ }
+
if ( !doSkip ) {
- if ( (isVisible ) ) {
+ if(pointsVisible) {
newPoints.append(oLast);
newPoints.append(oThis);
}
diff --git a/kstars/kstarslite/skyitems/syncedcatalogitem.cpp b/kstars/kstarslite/skyitems/syncedcatalogitem.cpp
index 7b5d957..a8573c7 100644
--- a/kstars/kstarslite/skyitems/syncedcatalogitem.cpp
+++ b/kstars/kstarslite/skyitems/syncedcatalogitem.cpp
@@ -5,6 +5,9 @@
#include "skynodes/deepskynode.h"
#include "skynodes/dsosymbolnode.h"
+#include "deepskyobject.h"
+#include "starobject.h"
+
SyncedCatalogItem::SyncedCatalogItem(SyncedCatalogComponent *parent, RootNode *rootNode)
:SkyItem(LabelsItem::label_t::NO_LABEL, rootNode), m_parent(parent), //It has NO_LABEL type because it handles two types of labels (CATALOG_STAR_LABEL and CATALOG_DSO_LABEL)
stars(new QSGNode), dsoSymbols(new QSGNode), dsoNodes(new QSGNode)
diff --git a/kstars/options/opsadvanced.cpp b/kstars/options/opsadvanced.cpp
index 72ebe6d..ea0e7a6 100644
--- a/kstars/options/opsadvanced.cpp
+++ b/kstars/options/opsadvanced.cpp
@@ -51,6 +51,10 @@ OpsAdvanced::OpsAdvanced()
connect(showLogsB, SIGNAL(clicked()), this, SLOT(slotShowLogFiles()));
+ connect( kcfg_ObsListDemoteHole, &QCheckBox::toggled, [this]( bool state ) {
+ kcfg_ObsListHoleSize->setEnabled( state );
+ } );
+
foreach(QAbstractButton *b, modulesGroup->buttons())
b->setEnabled(kcfg_VerboseLogging->isChecked());
}
@@ -83,12 +87,12 @@ void OpsAdvanced::slotToggleVerbosityOptions()
void OpsAdvanced::slotToggleOutputOptions()
{
if (kcfg_LogToDefault->isChecked())
- {
+ {
if (kcfg_DisableLogging->isChecked() == false)
KSUtils::Logging::UseDefault();
}
- else
+ else
KSUtils::Logging::UseFile();
}
diff --git a/kstars/options/opsadvanced.ui b/kstars/options/opsadvanced.ui
index d5f5979..e694469 100644
--- a/kstars/options/opsadvanced.ui
+++ b/kstars/options/opsadvanced.ui
@@ -6,15 +6,15 @@
<rect>
<x>0</x>
<y>0</y>
- <width>584</width>
- <height>473</height>
+ <width>723</width>
+ <height>486</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout_5">
<item>
<widget class="QTabWidget" name="AdvancedOptionsTabWidget">
<property name="currentIndex">
- <number>0</number>
+ <number>2</number>
</property>
<widget class="QWidget" name="tab">
<attribute name="title">
@@ -280,7 +280,7 @@
<string>Enable regular debug output</string>
</property>
<property name="text">
- <string>Regular</string>
+ <string>Reg&amp;ular</string>
</property>
<property name="checked">
<bool>true</bool>
@@ -329,7 +329,7 @@
<string>Disable all logging output</string>
</property>
<property name="text">
- <string>Disable</string>
+ <string>&amp;Disable</string>
</property>
<property name="checked">
<bool>false</bool>
@@ -404,7 +404,7 @@
<string>Log debug messages to default output device used by the platform (e.g. Standard Error)</string>
</property>
<property name="text">
- <string>Default</string>
+ <string>Defaul&amp;t</string>
</property>
<property name="checked">
<bool>true</bool>
@@ -865,7 +865,7 @@
<item>
<widget class="QRadioButton" name="kcfg_ObsListSymbol">
<property name="text">
- <string>Sy&amp;mbol</string>
+ <string>S&amp;ymbol</string>
</property>
<property name="checked">
<bool>true</bool>
@@ -928,7 +928,7 @@
<bool>false</bool>
</property>
<property name="text">
- <string>Sloan Digital Sky Sur&amp;vey (SDSS)</string>
+ <string>Sloan &amp;Digital Sky Survey (SDSS)</string>
</property>
</widget>
</item>
@@ -936,6 +936,71 @@
</widget>
</item>
<item>
+ <widget class="QGroupBox" name="ObsListMiscOptions">
+ <property name="title">
+ <string>Miscellaneous</string>
+ </property>
+ <layout class="QVBoxLayout" name="verticalLayout_6">
+ <item>
+ <widget class="QCheckBox" name="kcfg_ObsListDemoteHole">
+ <property name="text">
+ <string>While sorting by percentage altitude, demote objects present in the Dobsonian hole</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <layout class="QHBoxLayout" name="horizontalLayout">
+ <item>
+ <spacer name="holeSizeSpacer">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>40</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item>
+ <widget class="QLabel" name="holeSizeLabel">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="MinimumExpanding" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text">
+ <string>Hole size in degrees:</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QDoubleSpinBox" name="kcfg_ObsListHoleSize">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Minimum" vsizetype="Minimum">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="maximum">
+ <double>89.989999999999995</double>
+ </property>
+ <property name="value">
+ <double>15.000000000000000</double>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item>
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
@@ -999,12 +1064,12 @@
<resources/>
<connections/>
<buttongroups>
+ <buttongroup name="logbuttonGroup"/>
<buttongroup name="modulesGroup">
<property name="exclusive">
<bool>false</bool>
</property>
</buttongroup>
<buttongroup name="verbosityButtonGroup"/>
- <buttongroup name="logbuttonGroup"/>
</buttongroups>
</ui>
diff --git a/kstars/skycomponents/catalogcomponent.cpp b/kstars/skycomponents/catalogcomponent.cpp
index 037294a..2bbfa2f 100644
--- a/kstars/skycomponents/catalogcomponent.cpp
+++ b/kstars/skycomponents/catalogcomponent.cpp
@@ -78,7 +78,7 @@ void CatalogComponent::_loadData( bool includeCatalogDesignation ) {
objectNames(names.at(iter).first).append(names.at(iter).second);
}
}
-#ifdef KSTARS_LITE
+
//FIXME - get rid of objectNames completely. For now only KStars Lite uses objectLists
for(int iter = 0; iter < m_ObjectList.size(); ++iter) {
SkyObject *obj = m_ObjectList[iter];
@@ -107,7 +107,6 @@ void CatalogComponent::_loadData( bool includeCatalogDesignation ) {
}
}
}
-#endif
// Remove Duplicates
foreach(QStringList list, objectNames())
diff --git a/kstars/skyqpainter.cpp b/kstars/skyqpainter.cpp
index 75f6b6d..ba65574 100644
--- a/kstars/skyqpainter.cpp
+++ b/kstars/skyqpainter.cpp
@@ -270,8 +270,16 @@ void SkyQPainter::drawSkyPolyline(LineList* list, SkipList* skipList, LineListLa
doSkip = skipList->skip(j);
}
+ bool pointsVisible = false;
+ //Temporary solution to avoid random lines in Gnomonic projection and draw lines up to horizon
+ if(SkyMap::Instance()->projector()->type() == Projector::Gnomonic) {
+ if ( isVisible && isVisibleLast ) pointsVisible = true;
+ } else {
+ if ( isVisible || isVisibleLast ) pointsVisible = true;
+ }
+
if ( !doSkip ) {
- if ( isVisible && isVisibleLast ) {
+ if(pointsVisible) {
drawLine( oLast, oThis );
if ( label )
label->updateLabelCandidates( oThis.x(), oThis.y(), list, j );
diff --git a/kstars/tools/nameresolver.cpp b/kstars/tools/nameresolver.cpp
index 1cccb8a..85f4cb8 100644
--- a/kstars/tools/nameresolver.cpp
+++ b/kstars/tools/nameresolver.cpp
@@ -69,6 +69,7 @@ bool NameResolver::NameResolverInternals::sesameResolver( class CatalogEntryData
QNetworkAccessManager manager;
QNetworkReply *response = manager.get( QNetworkRequest( resolverUrl ) );
+ Q_ASSERT( response );
// Wait synchronously
QEventLoop event;
@@ -86,6 +87,7 @@ bool NameResolver::NameResolverInternals::sesameResolver( class CatalogEntryData
}
QXmlStreamReader xml( response->readAll() );
+ response->deleteLater();
if( xml.atEnd() ) {
// file is empty
msg = xi18n("Empty result instead of expected XML from CDS Sesame! Maybe bad internet connection?");
diff --git a/kstars/tools/observinglist.cpp b/kstars/tools/observinglist.cpp
index c83df77..b9e9613 100644
--- a/kstars/tools/observinglist.cpp
+++ b/kstars/tools/observinglist.cpp
@@ -122,8 +122,8 @@ ObservingList::ObservingList()
m_WishListModel->setHorizontalHeaderLabels(
QStringList() << i18n( "Name" )
<< i18n( "Alternate Name" )
- << i18nc( "Right Ascension", "RA" )
- << i18nc( "Declination", "Dec" )
+ << i18nc( "Right Ascension", "RA (J2000)" )
+ << i18nc( "Declination", "Dec (J2000)" )
<< i18nc( "Magnitude", "Mag" )
<< i18n( "Type" )
<< i18n( "Current Altitude" )
@@ -131,8 +131,8 @@ ObservingList::ObservingList()
m_SessionModel->setHorizontalHeaderLabels(
QStringList() << i18n( "Name" )
<< i18n( "Alternate Name" )
- << i18nc( "Right Ascension", "RA" )
- << i18nc( "Declination", "Dec" )
+ << i18nc( "Right Ascension", "RA (J2000)" )
+ << i18nc( "Declination", "Dec (J2000)" )
<< i18nc( "Magnitude", "Mag" )
<< i18n( "Type" )
<< i18nc( "Constellation", "Constell." )
@@ -233,22 +233,31 @@ ObservingList::ObservingList()
m_NoImagePixmap = QPixmap(":/images/noimage.png").scaledToHeight(ui->ImagePreview->width());
m_altCostHelper = [ this ]( const SkyPoint &p ) -> QStandardItem * {
- double inf = std::numeric_limits<double>::infinity();
+ const double inf = std::numeric_limits<double>::infinity();
double altCost = 0.;
QString itemText;
- if ( p.maxAlt( *( geo->lat() ) ) <= 0. ) {
+ double maxAlt = p.maxAlt( *( geo->lat() ) );
+ if ( Options::obsListDemoteHole() && maxAlt > 90. - Options::obsListHoleSize() )
+ maxAlt = 90. - Options::obsListHoleSize();
+ if ( maxAlt <= 0. ) {
altCost = -inf;
itemText = i18n( "Never rises" );
}
else {
- altCost = ( p.alt().Degrees() / p.maxAlt( *( geo->lat() ) ) ) * 100.;
+ altCost = ( p.alt().Degrees() / maxAlt ) * 100.;
if ( altCost < 0 )
itemText = i18nc( "Short text to describe that object has not risen yet", "Not risen" );
- else
- itemText = QString::number( altCost, 'f', 0 ) + '%';
+ else {
+ if ( altCost > 100. ) {
+ altCost = -inf;
+ itemText = i18nc( "Object is in the Dobsonian hole", "In hole" );
+ }
+ else
+ itemText = QString::number( altCost, 'f', 0 ) + '%';
+ }
}
- QStandardItem *altItem = new QStandardItem( itemText );
+ QStandardItem *altItem = new QStandardItem( itemText );
altItem->setData( altCost, Qt::UserRole );
qDebug() << "Updating altitude for " << p.ra().toHMSString() << " " << p.dec().toDMSString() << " alt = " << p.alt().toDMSString() << " info to " << itemText;
return altItem;
@@ -344,8 +353,8 @@ void ObservingList::slotAddObject( SkyObject *obj, bool session, bool update ) {
keyItem->setData( QVariant::fromValue<void *>( static_cast<void *>( obj ) ), Qt::UserRole + 1 );
itemList << keyItem // NOTE: The rest of the methods assume that the SkyObject pointer is available in the first column!
<< getItemWithUserRole( obj->translatedLongName() )
- << getItemWithUserRole( p.ra().toHMSString() )
- << getItemWithUserRole( p.dec().toDMSString() )
+ << getItemWithUserRole( p.ra0().toHMSString() )
+ << getItemWithUserRole( p.dec0().toDMSString() )
<< getItemWithUserRole( smag )
<< getItemWithUserRole( obj->typeName() );
};
@@ -380,7 +389,6 @@ void ObservingList::slotAddObject( SkyObject *obj, bool session, bool update ) {
dt.setTime( TimeHash.value( finalObjectName, obj->transitTime( dt, geo ) ) );
dms lst(geo->GSTtoLST( dt.gst() ));
p.EquatorialToHorizontal( &lst, geo->lat() );
- QList<QStandardItem*> itemList;
QString ra, dec, time = "--", alt = "--", az = "--";
@@ -504,6 +512,7 @@ void ObservingList::slotNewSelection() {
QModelIndexList selectedItems;
QString newName;
SkyObject *o;
+ QString labelText;
ui->DeleteImage->setEnabled( false );
selectedItems = getActiveSortModel()->mapSelectionToSource( getActiveView()->selectionModel()->selection() ).indexes();
@@ -595,12 +604,25 @@ void ObservingList::slotNewSelection() {
setDefaultImage();
ui->dssMetadataLabel->setText( i18n( "No image available. Click on the placeholder image to download one." ) );
}
+ QString cname = KStarsData::Instance()->skyComposite()->constellationBoundary()->constellationName( o );
+ if ( o->type() != SkyObject::CONSTELLATION ) {
+ labelText = "<b>";
+ if ( o->type() == SkyObject::PLANET )
+ labelText += o->translatedName();
+ else
+ labelText += o->name();
+ if ( std::isfinite( o->mag() ) && o->mag() <= 30. )
+ labelText += ":</b> " + i18nc("%1 magnitude of object, %2 type of sky object (planet, asteroid etc), %3 name of a constellation", "%1 mag %2 in %3", o->mag(), o->typeName().toLower(), cname );
+ else
+ labelText += ":</b> " + i18nc("%1 type of sky object (planet, asteroid etc), %2 name of a constellation", "%1 in %2", o->typeName(), cname );
+ }
}
else
{
setDefaultImage();
qDebug() << "Object " << newName << " not found in list.";
}
+ ui->quickInfoLabel->setText( labelText );
} else {
if ( selectedItems.size() == 0 ) {//Nothing selected
//Disable buttons
@@ -630,6 +652,7 @@ void ObservingList::slotNewSelection() {
//Clear the user log text box.
saveCurrentUserLog();
ui->NotesEdit->setPlainText("");
+ ui->quickInfoLabel->setText( QString() );
}
}
}
@@ -1181,8 +1204,8 @@ void ObservingList::slotGetImage( bool _dss, const SkyObject *o ) {
//QUrl url;
dss = true;
qWarning() << "FIXME: Removed support for SDSS. Until reintroduction, we will supply a DSS image";
- KSDssDownloader *dler = new KSDssDownloader( o, currentImagePath );
- connect( dler, SIGNAL( downloadComplete( bool ) ), SLOT( downloadReady( bool ) ) );
+ std::function<void( bool )> slot = std::bind( &ObservingList::downloadReady, this, std::placeholders::_1 );
+ KSDssDownloader *dler = new KSDssDownloader( o, currentImagePath, slot, this );
}
void ObservingList::downloadReady( bool success ) {
diff --git a/kstars/tools/observinglist.ui b/kstars/tools/observinglist.ui
index 81f8a1a..ca341b3 100644
--- a/kstars/tools/observinglist.ui
+++ b/kstars/tools/observinglist.ui
@@ -6,12 +6,12 @@
<rect>
<x>0</x>
<y>0</y>
- <width>837</width>
+ <width>811</width>
<height>650</height>
</rect>
</property>
<property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Minimum">
+ <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
@@ -22,22 +22,7 @@
<height>650</height>
</size>
</property>
- <layout class="QVBoxLayout">
- <property name="spacing">
- <number>6</number>
- </property>
- <property name="leftMargin">
- <number>9</number>
- </property>
- <property name="topMargin">
- <number>9</number>
- </property>
- <property name="rightMargin">
- <number>9</number>
- </property>
- <property name="bottomMargin">
- <number>9</number>
- </property>
+ <layout class="QVBoxLayout" name="verticalLayout_4">
<item>
<layout class="QHBoxLayout" name="horizontalLayout_1">
<property name="spacing">
@@ -392,251 +377,252 @@
</layout>
</item>
<item>
- <widget class="QTabWidget" name="tabWidget">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="MinimumExpanding">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize">
- <size>
- <width>0</width>
- <height>202</height>
- </size>
- </property>
- <property name="currentIndex">
- <number>0</number>
+ <layout class="QHBoxLayout" name="horizontalLayout_3">
+ <property name="sizeConstraint">
+ <enum>QLayout::SetMinimumSize</enum>
</property>
- <widget class="QWidget" name="WishList">
- <attribute name="title">
- <string>Wish List</string>
- </attribute>
- <layout class="QVBoxLayout">
- <item>
- <widget class="QTableView" name="WishListView">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="editTriggers">
- <set>QAbstractItemView::NoEditTriggers</set>
- </property>
- <property name="alternatingRowColors">
- <bool>true</bool>
- </property>
- <property name="selectionBehavior">
- <enum>QAbstractItemView::SelectRows</enum>
- </property>
- <property name="showGrid">
- <bool>false</bool>
- </property>
- <property name="sortingEnabled">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- </layout>
- </widget>
- <widget class="QWidget" name="Session">
- <attribute name="title">
- <string>Session Plan</string>
- </attribute>
- <layout class="QHBoxLayout">
- <item>
- <widget class="QTableView" name="SessionView">
- <property name="editTriggers">
- <set>QAbstractItemView::NoEditTriggers</set>
- </property>
- <property name="alternatingRowColors">
- <bool>true</bool>
- </property>
- <property name="selectionBehavior">
- <enum>QAbstractItemView::SelectRows</enum>
- </property>
- <property name="showGrid">
- <bool>false</bool>
- </property>
- <property name="sortingEnabled">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item>
+ <item>
+ <widget class="QTabWidget" name="tabWidget">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>0</width>
+ <height>202</height>
+ </size>
+ </property>
+ <property name="currentIndex">
+ <number>0</number>
+ </property>
+ <widget class="QWidget" name="WishList">
+ <attribute name="title">
+ <string>Wish List</string>
+ </attribute>
<layout class="QVBoxLayout">
<item>
- <spacer name="verticalSpacer">
- <property name="orientation">
- <enum>Qt::Vertical</enum>
+ <widget class="QTableView" name="WishListView">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="MinimumExpanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
</property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>20</width>
- <height>40</height>
- </size>
+ <property name="editTriggers">
+ <set>QAbstractItemView::NoEditTriggers</set>
</property>
- </spacer>
- </item>
- <item>
- <widget class="QLabel" name="scheduledTimeLabel">
- <property name="text">
- <string>Scheduled Time</string>
+ <property name="alternatingRowColors">
+ <bool>true</bool>
+ </property>
+ <property name="selectionBehavior">
+ <enum>QAbstractItemView::SelectRows</enum>
+ </property>
+ <property name="showGrid">
+ <bool>false</bool>
+ </property>
+ <property name="sortingEnabled">
+ <bool>true</bool>
</property>
</widget>
</item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="Session">
+ <attribute name="title">
+ <string>Session Plan</string>
+ </attribute>
+ <layout class="QVBoxLayout" name="verticalLayout_5">
<item>
- <widget class="QTimeEdit" name="TimeEdit">
+ <widget class="QTableView" name="SessionView">
<property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
+ <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
- <property name="maximumSize">
- <size>
- <width>100</width>
- <height>30</height>
- </size>
+ <property name="editTriggers">
+ <set>QAbstractItemView::NoEditTriggers</set>
</property>
- </widget>
- </item>
- <item>
- <widget class="QPushButton" name="SetTime">
- <property name="text">
- <string>Set Time</string>
+ <property name="alternatingRowColors">
+ <bool>true</bool>
+ </property>
+ <property name="selectionBehavior">
+ <enum>QAbstractItemView::SelectRows</enum>
+ </property>
+ <property name="showGrid">
+ <bool>false</bool>
+ </property>
+ <property name="sortingEnabled">
+ <bool>true</bool>
</property>
</widget>
</item>
<item>
- <spacer name="verticalSpacer_3">
- <property name="orientation">
- <enum>Qt::Vertical</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>20</width>
- <height>40</height>
- </size>
- </property>
- </spacer>
+ <layout class="QHBoxLayout" name="horizontalLayout_5">
+ <item>
+ <widget class="QLabel" name="scheduledTimeLabel">
+ <property name="text">
+ <string>Scheduled Time</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QTimeEdit" name="TimeEdit">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>100</width>
+ <height>30</height>
+ </size>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QPushButton" name="SetTime">
+ <property name="text">
+ <string>Set Time</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
</item>
</layout>
- </item>
- </layout>
- </widget>
- </widget>
- </item>
- <item>
- <layout class="QHBoxLayout" name="Preview">
- <property name="topMargin">
- <number>0</number>
- </property>
- <item>
- <widget class="AVTPlotWidget" name="avt">
- <property name="enabled">
- <bool>true</bool>
- </property>
- <property name="sizePolicy">
- <sizepolicy hsizetype="Fixed" vsizetype="Preferred">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize">
- <size>
- <width>350</width>
- <height>200</height>
- </size>
- </property>
- <property name="maximumSize">
- <size>
- <width>350</width>
- <height>200</height>
- </size>
- </property>
- <property name="cursor">
- <cursorShape>CrossCursor</cursorShape>
- </property>
- </widget>
- </item>
- <item>
- <spacer name="horizontalSpacer">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>1</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- <item>
- <widget class="QLabel" name="ImagePreview">
- <property name="minimumSize">
- <size>
- <width>200</width>
- <height>200</height>
- </size>
- </property>
- <property name="maximumSize">
- <size>
- <width>200</width>
- <height>200</height>
- </size>
- </property>
- <property name="text">
- <string>(No Image)</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLabel" name="dssMetadataLabel">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize">
- <size>
- <width>145</width>
- <height>0</height>
- </size>
- </property>
- <property name="text">
- <string>Image Metadata Info</string>
- </property>
- <property name="alignment">
- <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
- </property>
- <property name="wordWrap">
- <bool>true</bool>
- </property>
+ </widget>
</widget>
</item>
<item>
- <layout class="QVBoxLayout" name="verticalLayout">
- <property name="rightMargin">
- <number>12</number>
+ <layout class="QVBoxLayout" name="verticalLayout_2">
+ <property name="sizeConstraint">
+ <enum>QLayout::SetDefaultConstraint</enum>
</property>
<item>
- <widget class="QPushButton" name="SearchImage">
+ <widget class="QLabel" name="quickInfoLabel">
<property name="text">
- <string>Find Image</string>
+ <string>Select an object to view information here.</string>
</property>
</widget>
</item>
<item>
- <widget class="QPushButton" name="DeleteImage">
- <property name="text">
- <string>Delete</string>
+ <widget class="AVTPlotWidget" name="avt">
+ <property name="enabled">
+ <bool>true</bool>
+ </property>
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Fixed" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>350</width>
+ <height>200</height>
+ </size>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>350</width>
+ <height>200</height>
+ </size>
+ </property>
+ <property name="cursor">
+ <cursorShape>CrossCursor</cursorShape>
</property>
</widget>
</item>
+ <item>
+ <layout class="QHBoxLayout" name="horizontalLayout_4">
+ <item>
+ <widget class="QLabel" name="ImagePreview">
+ <property name="minimumSize">
+ <size>
+ <width>200</width>
+ <height>200</height>
+ </size>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>200</width>
+ <height>200</height>
+ </size>
+ </property>
+ <property name="text">
+ <string>(No Image)</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <layout class="QVBoxLayout" name="verticalLayout_3">
+ <item>
+ <widget class="QLabel" name="dssMetadataLabel">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>145</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="text">
+ <string>Image Metadata Info</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
+ </property>
+ <property name="wordWrap">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <layout class="QVBoxLayout" name="verticalLayout">
+ <property name="rightMargin">
+ <number>12</number>
+ </property>
+ <item>
+ <widget class="QPushButton" name="SearchImage">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text">
+ <string>Replace from internet</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QPushButton" name="DeleteImage">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text">
+ <string>Delete Image</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </item>
</layout>
</item>
</layout>