application/application.h

changeset 97
5a3d27b8e6b0
parent 95
e92c72705da4
--- a/application/application.h	Wed Nov 27 18:53:11 2024 +0100
+++ b/application/application.h	Thu Nov 28 18:03:12 2024 +0100
@@ -48,6 +48,8 @@
 #define APP_STATE_BROWSER_SELECTION 110
     
 #define RESOURCEVIEWER_STATE_MODIFIED 2000
+#define RESOURCEVIEWER_STATE_PROP_SELECTED 2001
+#define RESOURCEVIEWER_STATE_PROP_XML 2002
     
 typedef struct DavApp {
     DavConfig *dav_config;
@@ -108,12 +110,28 @@
     UiList *resources;
 } DavBrowser;
 
+
+/*
+ * resource property list entry
+ */
+typedef struct DavPropertyList {
+    char *ns;
+    char *name;
+    char *value_simplified;
+    char *value_full;
+    DavXmlNode *xml;
+    DavBool update;
+    DavBool isnew;
+} DavPropertyList;
+
 /*
  * resource view window document object
  */
 typedef struct DavResourceViewer {
+    UiObject *obj;
     UiContext *ctx;
     DavSession *sn;
+    UiThreadpool *dav_queue;
     DavResource *current;
     char *path;
     DavResourceViewType type;
@@ -133,23 +151,27 @@
     UiString *info_etag;
     UiString *info_size;
     
+    UiInteger *property_type;
+    UiString  *property_ns;
+    UiString  *property_name;
+    UiString  *property_nsdef;
+    UiText    *property_value;
+    UiString  *property_errormsg;
+    
+    DavPropertyList *selected_property;
+    DavPropertyList *edit_property;
+    
     int error;
     char *message_str;
     
     CxBuffer *text_content;
     char *tmp_file;
     
+    bool properties_modified;
     bool loaded;
     bool window_closed;
 } DavResourceViewer;
 
-typedef struct DavPropertyList {
-    char *ns;
-    char *name;
-    char *value_simplified;
-    char *value_full;
-} DavPropertyList;
-
 typedef struct SessionAuthData {
     UiObject *obj;
     UiCondVar *cond;

mercurial