mirror of
				https://github.com/subsurface/subsurface.git
				synced 2025-02-19 22:16:15 +00:00 
			
		
		
		
	core: qPref replace COPY_TXT with copy_txt in qPrefPrivate
Add copy_txt function to qPrefPrivate class Remove macro COPY_TXT from qPrefPrivate.h Replace use of COPY_TXT with copy_txt in qPref classes copy_txt is only once, COPY_TXT was expanded approx. 160 times, so this commit saves space (and removes a macro). Signed-off-by: Jan Iversen <jani@apache.org>
This commit is contained in:
		
							parent
							
								
									597aa75348
								
							
						
					
					
						commit
						f1648d297b
					
				
					 4 changed files with 17 additions and 15 deletions
				
			
		|  | @ -35,8 +35,8 @@ void qPrefCloudStorage::set_cloud_base_url(const QString& value) | |||
| 	if (value != prefs.cloud_base_url) { | ||||
| 		// only free and set if not default
 | ||||
| 		if (prefs.cloud_base_url != default_prefs.cloud_base_url) { | ||||
| 			COPY_TXT(cloud_base_url, value); | ||||
| 			COPY_TXT(cloud_git_url, QString(prefs.cloud_base_url) + "/git"); | ||||
| 			qPrefPrivate::copy_txt(&prefs.cloud_base_url, value); | ||||
| 			qPrefPrivate::copy_txt(&prefs.cloud_git_url, QString(prefs.cloud_base_url) + "/git"); | ||||
| 		} | ||||
| 
 | ||||
| 		disk_cloud_base_url(true); | ||||
|  | @ -55,7 +55,7 @@ void qPrefCloudStorage::set_cloud_git_url(const QString& value) | |||
| 	if (value != prefs.cloud_git_url) { | ||||
| 		// only free and set if not default
 | ||||
| 		if (prefs.cloud_git_url != default_prefs.cloud_git_url) { | ||||
| 			COPY_TXT(cloud_git_url, value); | ||||
| 			qPrefPrivate::copy_txt(&prefs.cloud_git_url, value); | ||||
| 		} | ||||
| 		disk_cloud_git_url(true); | ||||
| 		emit cloud_git_url_changed(value); | ||||
|  | @ -73,7 +73,7 @@ void qPrefCloudStorage::set_cloud_storage_newpassword(const QString& value) | |||
| 	if (value == prefs.cloud_storage_newpassword) | ||||
| 		return; | ||||
| 
 | ||||
| 	COPY_TXT(cloud_storage_newpassword, value); | ||||
| 	qPrefPrivate::copy_txt(&prefs.cloud_storage_newpassword, value); | ||||
| 
 | ||||
| 	// NOT saved on disk, because it is only temporary
 | ||||
| 	emit cloud_storage_newpassword_changed(value); | ||||
|  | @ -83,7 +83,7 @@ GET_PREFERENCE_TXT(CloudStorage, cloud_storage_password); | |||
| void qPrefCloudStorage::set_cloud_storage_password(const QString& value) | ||||
| { | ||||
| 	if (value != prefs.cloud_storage_password) { | ||||
| 		COPY_TXT(cloud_storage_password,value); | ||||
| 		qPrefPrivate::copy_txt(&prefs.cloud_storage_password, value); | ||||
| 		disk_cloud_storage_password(true); | ||||
| 		emit cloud_storage_password_changed(value); | ||||
| 	} | ||||
|  |  | |||
|  | @ -35,7 +35,7 @@ void qPrefDisplay::set_divelist_font(const QString& value) | |||
| 
 | ||||
| 	if (newValue != prefs.divelist_font && | ||||
| 		!subsurface_ignore_font(qPrintable(newValue))) { | ||||
| 		COPY_TXT(divelist_font, value); | ||||
| 		qPrefPrivate::copy_txt(&prefs.divelist_font, value); | ||||
| 		disk_divelist_font(true); | ||||
| 
 | ||||
| 		qApp->setFont(QFont(newValue)); | ||||
|  |  | |||
|  | @ -9,3 +9,10 @@ qPrefPrivate *qPrefPrivate::instance() | |||
| 	static qPrefPrivate *self = new qPrefPrivate; | ||||
| 	return self; | ||||
| } | ||||
| 
 | ||||
| void qPrefPrivate::copy_txt(const char **name, const QString& string) | ||||
| { | ||||
| 	free((void *)*name); | ||||
| 	*name = copy_qstring(string); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -3,7 +3,6 @@ | |||
| #define QPREFPRIVATE_H | ||||
| 
 | ||||
| // Header used by all qPref<class> implementations to avoid duplicating code
 | ||||
| 
 | ||||
| #include <QSettings> | ||||
| #include <QVariant> | ||||
| #include <QObject> | ||||
|  | @ -18,17 +17,13 @@ public: | |||
| 
 | ||||
| 	QSettings setting; | ||||
| 
 | ||||
| 	// Helper functions
 | ||||
| 	static void copy_txt(const char **name, const QString& string); | ||||
| 
 | ||||
| private: | ||||
|     qPrefPrivate(QObject *parent = NULL); | ||||
| }; | ||||
| 
 | ||||
| //****** Macros to be used in the set functions ******
 | ||||
| #define COPY_TXT(name, string) \ | ||||
| { \ | ||||
| 	free((void *)prefs.name); \ | ||||
| 	prefs.name = copy_qstring(string); \ | ||||
| } | ||||
| 
 | ||||
| //****** Macros to be used in the disk functions, which are special ******
 | ||||
| #define LOADSYNC_BOOL(name, field) \ | ||||
| { \ | ||||
|  | @ -191,7 +186,7 @@ void qPref ## usegroup::set_ ## field (int value) \ | |||
| void qPref ## usegroup::set_ ## field (const QString& value) \ | ||||
| { \ | ||||
| 	if (value != prefs.field) { \ | ||||
| 		COPY_TXT(field, value); \ | ||||
| 		qPrefPrivate::instance()->copy_txt(&prefs.field, value); \ | ||||
| 		disk_ ## field(true); \ | ||||
| 		emit field ## _changed(value); \ | ||||
| 	} \ | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue