Fix umpnpmgr build
[reactos.git] / rosapps / packmgr / lib / package.hpp
index 1170ba4..020dfdc 100644 (file)
@@ -1,91 +1,92 @@
-////////////////////////////////////////////////\r
-//\r
-// package.hpp\r
-//                                     Package C++ Header\r
-////////////////////////////////////////////////\r
-\r
-#include <windows.h>\r
-#include <vector>\r
-#include "error.h"\r
-\r
-using namespace std;\r
-\r
-\r
-/* Callbacks */\r
-\r
-typedef int (*PML_AddItem)             (int id, const char* name, int parent, int icon);\r
-typedef int (*PML_SetStatus)   (int status1, int status2, WCHAR* text);\r
-typedef int (*PML_SetButton)   (DWORD dwID, BOOL state);\r
-typedef int (*PML_SetIcon)             (int id, int icon);\r
-typedef int (*PML_SetText)             (const char* text);\r
-typedef int (*PML_Ask)                 (const WCHAR* text);\r
-\r
-\r
-/* Structs */\r
-\r
-typedef struct\r
-{\r
-  char*                        path;\r
-  BOOL                 icon;\r
-  BOOL                 loaded;\r
-  vector<int>  children;\r
-\r
-  char**               field;\r
-  char*                        name;\r
-  char*                        description;\r
-  vector<char*>        depencies;\r
-  vector<int>  neededBy;\r
-  \r
-  int                  action;\r
-  char*                        files [4];\r
-\r
-  union //which actions are possible\r
-  {\r
-    struct { BOOL none, inst, src_inst, update, uninstall; };\r
-    BOOL actions [4];\r
-  };\r
-\r
-} PACKAGE;\r
-\r
-typedef struct\r
-{\r
-  char*                                xmltree;\r
-\r
-  vector<char*>                descriptionPath;\r
-  vector<char*>                todo;\r
-  vector<PACKAGE>      packages;\r
-\r
-  PML_AddItem          addItem;\r
-  PML_SetButton                setButton;\r
-  PML_SetStatus                setStatus;\r
-  PML_SetIcon          setIcon;\r
-  PML_SetText          setText;\r
-\r
-} TREE, *pTree;\r
-\r
-#define MAXNODES 10000\r
-\r
-\r
-/* Prototypes */\r
-\r
-extern "C" \r
-{\r
-  void PML_Abort (void);\r
-  WCHAR* PML_TransError (int code);\r
-\r
-  int PML_LoadTree (pTree*, char* url, PML_AddItem);\r
-  int PML_FindItem (TREE* tree, const char* what);\r
-  int PML_LoadPackage (pTree, int id, PML_SetButton);\r
-  char* PML_GetDescription (TREE* tree, int id);\r
-  int PML_SetAction (pTree, int package, int action, PML_SetIcon, PML_Ask);\r
-  int PML_DoIt (pTree, PML_SetStatus, PML_Ask);\r
-\r
-  void PML_CloseTree (pTree);\r
-}\r
-\r
-\r
-/* Version */ \r
-\r
-#define PACKMGR_VERSION_MAJOR          0\r
-#define PACKMGR_VERSION_MINOR          3\r
-#define PACKMGR_VERSION_PATCH_LEVEL    1\r
+////////////////////////////////////////////////
+//
+// package.hpp
+//                                     Package C++ Header
+////////////////////////////////////////////////
+
+#include <windows.h>
+#include <vector>
+#include "error.h"
+
+using namespace std;
+
+
+/* Callbacks */
+
+typedef int (*PML_AddItem)             (int id, const char* name, int parent, int icon);
+typedef int (*PML_SetStatus)   (int status1, int status2, WCHAR* text);
+typedef int (*PML_SetButton)   (DWORD dwID, BOOL state);
+typedef int (*PML_SetIcon)             (int id, int icon);
+typedef int (*PML_SetText)             (const char* text);
+typedef int (*PML_Ask)                 (const WCHAR* text);
+
+
+/* Structs */
+
+typedef struct
+{
+  char*                        path;
+  char*                        name;
+  char*                        description;
+  char**               field;
+
+  BOOL                 icon;
+  BOOL                 loaded;
+  vector<int>  neededBy;
+  vector<int>  children;
+  vector<char*>        depencies;
+  
+  int                  action;
+  char*                        files [4];
+
+  union //which actions are possible
+  {
+    struct { BOOL none, inst, src_inst, update, uninstall; };
+    BOOL actions [4];
+  };
+
+} PACKAGE;
+
+typedef struct
+{
+  char**               field;
+
+  vector<char*>                todo;
+  vector<char*>                sources;
+  vector<char*>                descriptionPath;
+  vector<PACKAGE>      packages;
+
+  PML_AddItem          addItem;
+  PML_SetButton                setButton;
+  PML_SetStatus                setStatus;
+  PML_SetIcon          setIcon;
+  PML_SetText          setText;
+
+} TREE, *pTree;
+
+#define MAXNODES 10000
+
+
+/* Prototypes */
+
+extern "C" 
+{
+  void PML_Abort (void);
+  WCHAR* PML_TransError (int code, WCHAR* string, INT maxchar);
+
+  int PML_LoadTree (pTree*, char* url, PML_AddItem);
+  int PML_FindItem (TREE* tree, const char* what);
+  int PML_LoadPackage (pTree, int id, PML_SetButton);
+  char* PML_GetDescription (TREE* tree, int id);
+  int PML_SetAction (pTree, int package, int action, PML_SetIcon, PML_Ask);
+  int PML_DoIt (pTree, PML_SetStatus, PML_Ask);
+
+  void PML_CloseTree (pTree);
+}
+
+
+/* Version */ 
+
+#define PACKMGR_VERSION_MAJOR          0
+#define PACKMGR_VERSION_MINOR          3
+#define PACKMGR_VERSION_PATCH_LEVEL    1