コード例 #1
0
UpdateManager::UpdateManager(QObject *parent) :
	QObject(parent),
	isAutomaticCheck(false)
{
	// is this the first time this version was run?
	QSettings settings;
	settings.beginGroup("UpdateManager");
	if (settings.contains("DontCheckForUpdates") && settings.value("DontCheckForUpdates") == "TRUE")
		return;
	if (settings.contains("LastVersionUsed")) {
		// we have checked at least once before
		if (settings.value("LastVersionUsed").toString() != subsurface_git_version()) {
			// we have just updated - wait two weeks before you check again
			settings.setValue("LastVersionUsed", QString(subsurface_git_version()));
			settings.setValue("NextCheck", QDateTime::currentDateTime().addDays(14).toString(Qt::ISODate));
		} else {
			// is it time to check again?
			QString nextCheckString = settings.value("NextCheck").toString();
			QDateTime nextCheck = QDateTime::fromString(nextCheckString, Qt::ISODate);
			if (nextCheck > QDateTime::currentDateTime())
				return;
		}
	}
	settings.setValue("LastVersionUsed", QString(subsurface_git_version()));
	settings.setValue("NextCheck", QDateTime::currentDateTime().addDays(14).toString(Qt::ISODate));
	checkForUpdates(true);
}
コード例 #2
0
ファイル: subsurfacestartup.c プロジェクト: dirkhh/subsurface
void print_version()
{
	if (version_printed)
		return;
	printf("Subsurface v%s,\n", subsurface_git_version());
	printf("built with libdivecomputer v%s\n", dc_version(NULL));
	print_qt_versions();
	int git_maj, git_min, git_rev;
	git_libgit2_version(&git_maj, &git_min, &git_rev);
	printf("built with libgit2 %d.%d.%d\n", git_maj, git_min, git_rev);
	version_printed = true;
}
コード例 #3
0
QString ConfigureDiveComputer::dc_open(device_data_t *data)
{
	FILE *fp = NULL;
	dc_status_t rc;

	if (data->libdc_log)
		fp = subsurface_fopen(logfile_name, "w");

	data->libdc_logfile = fp;

	rc = dc_context_new(&data->context);
	if (rc != DC_STATUS_SUCCESS) {
		return tr("Unable to create libdivecomputer context");
	}

	if (fp) {
		dc_context_set_loglevel(data->context, DC_LOGLEVEL_ALL);
		dc_context_set_logfunc(data->context, logfunc, fp);
		fprintf(data->libdc_logfile, "Subsurface: v%s, ", subsurface_git_version());
		fprintf(data->libdc_logfile, "built with libdivecomputer v%s\n", dc_version(NULL));
	}

	rc = divecomputer_device_open(data);

	if (rc != DC_STATUS_SUCCESS) {
		report_error(errmsg(rc));
	} else {
		rc = dc_device_open(&data->device, data->context, data->descriptor, data->iostream);
	}

	if (rc != DC_STATUS_SUCCESS) {
		return tr("Could not a establish connection to the dive computer.");
	}

	setState(OPEN);

	return NULL;
}
コード例 #4
0
ファイル: about.cpp プロジェクト: neolit123/subsurface
SubsurfaceAbout::SubsurfaceAbout(QWidget *parent, Qt::WindowFlags f) : QDialog(parent, f)
{
	ui.setupUi(this);

	setWindowModality(Qt::ApplicationModal);
	QString versionString(subsurface_git_version());
	QStringList readableVersions = QStringList() << "4.5.95" << "4.6 Beta 0" <<
							"4.5.96" << "4.6 Beta 1" <<
							"4.5.97" << "4.6 Beta 2";
	if (readableVersions.contains(versionString))
		versionString = readableVersions[readableVersions.indexOf(versionString) + 1];

	ui.aboutLabel->setText(tr("<span style='font-size: 18pt; font-weight: bold;'>"
				  "Subsurface %1 </span><br><br>"
				  "Multi-platform divelog software<br>"
				  "<span style='font-size: 8pt'>"
				  "Linus Torvalds, Dirk Hohndel, Tomaz Canabrava, and others, 2011-2017"
				  "</span>").arg(versionString));

	QShortcut *close = new QShortcut(QKeySequence(Qt::CTRL + Qt::Key_W), this);
	connect(close, SIGNAL(activated()), this, SLOT(close()));
	QShortcut *quit = new QShortcut(QKeySequence(Qt::CTRL + Qt::Key_Q), this);
	connect(quit, SIGNAL(activated()), parent, SLOT(close()));
}
コード例 #5
0
static void print_version()
{
	printf("Subsurface v%s, ", subsurface_git_version());
	printf("built with libdivecomputer v%s\n", dc_version(NULL));
}