From 48540940b6c28bb4378abfeb500ec45a625b37b6 Mon Sep 17 00:00:00 2001 From: Vadim Dashevskiy Date: Tue, 15 May 2012 10:38:20 +0000 Subject: initial commit git-svn-id: http://svn.miranda-ng.org/main/trunk@2 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/updater/common.h | 145 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 145 insertions(+) create mode 100644 plugins/updater/common.h (limited to 'plugins/updater/common.h') diff --git a/plugins/updater/common.h b/plugins/updater/common.h new file mode 100644 index 0000000000..de17bd08eb --- /dev/null +++ b/plugins/updater/common.h @@ -0,0 +1,145 @@ +#ifndef _COMMON_INC +#define _COMMON_INC + +#define _CRT_SECURE_NO_DEPRECATE + +#define MIRANDA_VER 0x0800 + +#include + +#include +#include +#include + +#include +#include + +#include "ezxml.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#include "m_updater.h" +#include "m_trigger.h" +#include "m_folders.h" + +//#define TESTING // causes version to be 0.0.0.1 +//#define USE_MY_SERVER // uses URLS for scottellis.com.au test site for non-beta +#define REGISTER_BETA // register beta urls for beta site +//#define DEBUG_POPUPS // define to show some popups (restoring status, etc) +//#define _UD_LOGGING // define to log some stuff, from inside the external process, overwriting the data file +//#define DEBUG_HTTP_POPUPS // define to show popups re http +#define REGISTER_AUTO // get updater to automatically collect file listing URL's from backend xml data + +#define BETA_HOST_URL_PREFIX "http://www.scottellis.com.au/miranda_plugins" //(thanks Omniwolf for old twosx webspace, thx Koobs for hosting my domain) + +typedef enum Category {MC_PLUGINS, MC_LOCALIZATION, MC_UNKNOWN, NUM_CATEGORIES}; + +typedef struct UpdateOptions_tag { + bool enabled; // user has enabled updates for this plugin + bool use_beta; // use the beta update data + bool fixed; // use_beta flag is fixed - cannot be changed by user (e.g. szUpdateURL is null, szBetaUpdateURL is not) +} UpdateOptions; + +typedef struct UpdateInternal_tag { + Update update; + UpdateOptions update_options; + int file_id; // miranda file listing id + bool auto_register; + char *newVersion; + + Category cat; + + char *shortName; +} UpdateInternal; + +struct UpdateList : OBJLIST +{ + UpdateList() : OBJLIST(10) {} + UpdateList(const UpdateList& upd) : OBJLIST(10, compareUrl) + { + for (int i=0; iupdate.szBetaVersionURL && !p2->update.szBetaVersionURL) + return 0; + else if (!p1->update.szBetaVersionURL && p2->update.szBetaVersionURL) + return -1; + else if (p1->update.szBetaVersionURL && !p2->update.szBetaVersionURL) + return 1; + else + return _stricmp(p1->update.szBetaVersionURL, p2->update.szBetaVersionURL); + } +}; + +struct StrList : LIST +{ + StrList() : LIST(5) {} + ~StrList() + { + for (int i=0; i FilenameMap; + +#include "resource.h" + +#define MODULE "Updater" + +extern HINSTANCE hInst; +extern PLUGINLINK *pluginLink; +extern PLUGININFOEX pluginInfo; + +extern bool is_idle; + +extern HANDLE hNetlibUser, hNetlibHttp; + +int FindFileInList(const char *name); + +void* memmem (const void *buf1, size_t size1, const void *buf2, size_t size2); + +void NLog(char *msg); +void NLogF(const char *fmt, ...); + +#ifdef _UNICODE +void NLog(wchar_t *msg); +#endif + +// clist 'exit' menu item command id +#define ID_ICQ_EXIT 40001 + +// maximum number of redirects when getting xml data or download files via HTTP +#define MAX_REDIRECT_RECURSE 4 + +#ifndef MIID_UPDATER +#define MIID_UPDATER {0x4a47b19b, 0xde5a, 0x4436, { 0xab, 0x4b, 0xe1, 0xf3, 0xa0, 0x22, 0x5d, 0xe7}} +#endif + +#endif + + -- cgit v1.2.3