]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/wx-console/wxbtableparser.h
- wxbRestorePanel : Fixed problem when the newly created job is not at the end of...
[bacula/bacula] / bacula / src / wx-console / wxbtableparser.h
index fb249592d38964b40106f898fe24fc7afdf6a78e..e7dc80b77336b5c2c078ea4c4369a402e31f464c 100644 (file)
    #include "wx/wx.h"
 #endif
 
-#include <wx/hashmap.h>
+#include "wxbutils.h"
 
-/* int-indexed array of wxString, used for one line */
-WX_DECLARE_HASH_MAP( int, wxString, wxIntegerHash, wxIntegerEqual, wxbTableRow );
-/* int-indexed array of wxbTableRow, contains the whole table */
-WX_DECLARE_HASH_MAP( int, wxbTableRow, wxIntegerHash, wxIntegerEqual, wxbTable );
+#include <wx/dynarray.h>
+
+/* 
+ * Allow the use of Object Array (auto-deletion, object returned as themselves 
+ * and not as pointers)
+ */
+class wxbArrayString: public wxArrayString, public wxObject {
+   public:
+      wxbArrayString(int n = 1);
+      virtual ~wxbArrayString();
+};
+
+WX_DECLARE_OBJARRAY( wxbArrayString, wxbTable );
 
 /*
  * Class used to parse tables received from director. Data can be accessed with
@@ -58,17 +67,16 @@ WX_DECLARE_HASH_MAP( int, wxbTableRow, wxIntegerHash, wxIntegerEqual, wxbTable )
  *
  * Example : wxString elem = parser[3][2]; fetches column 2 of element 3.
  */
-class wxbTableParser: public wxbTable
+class wxbTableParser: public wxbTable, public wxbDataParser
 {
    public:
       wxbTableParser();
-      ~wxbTableParser();
+      virtual ~wxbTableParser();
 
       /*
-       *   Receives director information, forwarded by the wxbPanel which
-       *  uses this parser.
+       *   Receives data to analyse.
        */
-      void Print(wxString str, int status);
+      virtual bool Analyse(wxString str, int status);
 
       /*
        *   Return true table parsing has finished.
@@ -78,9 +86,9 @@ class wxbTableParser: public wxbTable
       /*
        *   Returns table header as an array of wxStrings.
        */
-      wxbTableRow* GetHeader();
+      const wxbArrayString& GetHeader();
    private:
-      wxbTableRow tableHeader;
+      wxbArrayString tableHeader;
 
       /*
        * 0 - Table has not begun