--- /tmp/qbzr/bzr-diff-hMQ5ey/1/src/com/goldencode/p2j/uast/SymbolResolver.java
+++ /home/om/repositories/local/p2j/active/3750b/src/com/goldencode/p2j/uast/SymbolResolver.java
@@ -362,9 +362,10 @@
 **                           table.
 **                           Annotate the USING class reference with the class info (and prescan 
 **                           if needed).
-**     GES 20181216          Added method_def tempIdx support.   
+**     GES 20181216          Added method_def tempIdx support.
 ** 080 CA  20190219          tempIdx support is added to constructors, too - so that NEW can 
 **                           reference the exact definition via the refid annotation.
+**     OM  20190322          Fixed relative path of mapped classes.
 */
 
 /*
@@ -1467,6 +1468,10 @@
          // remove the leading "/" or "\" char
          begin = 2;
       }
+      if (!path.endsWith("\\") && !path.endsWith("/"))
+      {
+         begin++;
+      }
       
       for (int i = 0; i < list.length; i++)
       {
@@ -7255,7 +7260,7 @@
             result.dotnet  = dotnet[i];
             return true;
          }
-      }                                          
+      }
       
       return false;
    }
--- /tmp/qbzr/bzr-diff-T_bEok/1/src/com/goldencode/p2j/uast/progress.g
+++ /home/om/repositories/local/p2j/active/3750b/src/com/goldencode/p2j/uast/progress.g
@@ -1946,6 +1946,8 @@
 ** 361 OM  20190111          Added support for CATEGORY table option. A few typos fixed.
 ** 362 HC  20190313          Initial implementation of TREELIST widget. TREEVIEW widget
 **                           refactored to make it the base for the TREELIST widget.
+** 36_ OM  20190322          Added KW_CUR_QRY, KW_MAX_LVL, KW_REST_ROW. Fixed KW_PAR_FLDA and 
+**                           KW_PAR_FLDB.
 */
 
 /*
@@ -4767,6 +4769,9 @@
       KW_YES_NO_C;
       KW_Y;
       KW_Y_OF;
+      KW_CUR_QRY;    // Data-relation object handle mehods and attributes
+      KW_MAX_LVL;
+      KW_REST_ROW;
       BEGIN_FWD_EXTENSION;
          KW_TIMER;
          KW_CALLBACK;
@@ -7796,6 +7801,7 @@
       attrsAndMethods.put( KW_CUR_RSI , ATTR_CLASS   );
       attrsAndMethods.put( KW_CUR_R_M , ATTR_LOGICAL );
       attrsAndMethods.put( KW_CUR_WIN , ATTR_HANDLE  );
+      attrsAndMethods.put( KW_CUR_QRY , METH_HANDLE  );
       attrsAndMethods.put( KW_CURR_TAB, ATTR_INT     ); // FWD extension, not real 4GL
       attrsAndMethods.put( KW_CVT_2OFF, METH_INT     );
       attrsAndMethods.put( KW_ADD_TAB , METH_VOID    ); // FWD extension, not real 4GL
@@ -7967,6 +7973,7 @@
       attrsAndMethods.put( KW_FOCUS_RS, ATTR_LOGICAL );
       attrsAndMethods.put( KW_FONT    , ATTR_INT     );
       attrsAndMethods.put( KW_FORE    , ATTR_LOGICAL );
+      attrsAndMethods.put( KW_F_KEY_H , ATTR_LOGICAL );
       attrsAndMethods.put( KW_FORM_INP, ATTR_CHAR    );
       attrsAndMethods.put( KW_FORM_LIN, ATTR_MEMPTR  );
       attrsAndMethods.put( KW_FORMAT  , ATTR_CHAR    );
@@ -8236,6 +8243,7 @@
       attrsAndMethods.put( KW_MAX_HT  , ATTR_DEC     );
       attrsAndMethods.put( KW_MAX_H_C , ATTR_DEC     );
       attrsAndMethods.put( KW_MAX_H_P , ATTR_INT     );
+      attrsAndMethods.put( KW_MAX_LVL , ATTR_INT     );
       attrsAndMethods.put( KW_MAX_VAL , ATTR_INT     );
       attrsAndMethods.put( KW_MAX_WID , ATTR_DEC     );
       attrsAndMethods.put( KW_MAX_W_C , ATTR_DEC     );
@@ -8354,6 +8362,8 @@
       attrsAndMethods.put( KW_PARENT  , ATTR_HANDLE  );
       attrsAndMethods.put( KW_PARM    , ATTR_CHAR    );
       attrsAndMethods.put( KW_PARSE_ST, ATTR_INT     );
+      attrsAndMethods.put( KW_PAR_FLDA, ATTR_CHAR    );
+      attrsAndMethods.put( KW_PAR_FLDB, ATTR_CHAR    );
       attrsAndMethods.put( KW_PASSWD_F, ATTR_LOGICAL );
       attrsAndMethods.put( KW_PATHNAME, ATTR_CHAR    );
       attrsAndMethods.put( KW_PBE_H_AL, ATTR_CHAR    );
@@ -8440,6 +8450,7 @@
       attrsAndMethods.put( KW_RESIZABL, ATTR_LOGICAL );
       attrsAndMethods.put( KW_RESORT  , METH_VOID    ); // FWD extension, not real 4GL
       attrsAndMethods.put( KW_REST_RID, ATTR_ROWID   );
+      attrsAndMethods.put( KW_REST_ROW, ATTR_INT     );
       attrsAndMethods.put( KW_RET_INS , ATTR_LOGICAL );
       attrsAndMethods.put( KW_RET_SHAP, ATTR_LOGICAL );
       attrsAndMethods.put( KW_RET_VAL , ATTR_POLY    );
@@ -31960,7 +31971,7 @@
          new Keyword("after-fill"                     ,  0, KW_AFT_FILL, false),  // missing from keyword index and UNTESTED at this time
          new Keyword("after-row-fill"                 ,  0, KW_AFT_R_F , false),  // missing from keyword index and UNTESTED at this time
          new Keyword("after-rowid"                    ,  0, KW_AFT_ROID, false),  // missing from keyword index and UNTESTED at this time
-         new Keyword("after-table"                    ,  0, KW_AFT_TBL , false),  // missing from keyword index and UNTESTED at this time
+         new Keyword("after-table"                    ,  0, KW_AFT_TBL , false),
          new Keyword("alert-box"                      ,  0, KW_ALERT_BX, false),
          new Keyword("alias"                          ,  0, KW_ALIAS   , true ),
          new Keyword("all"                            ,  0, KW_ALL     , true ),
@@ -32046,7 +32057,7 @@
          new Keyword("before-hide"                    ,  8, KW_B4_HIDE , true ),
          new Keyword("before-row-fill"                ,  0, KW_B4_R_F  , false),  // missing from keyword index and UNTESTED at this time
          new Keyword("before-rowid"                   ,  0, KW_B4_ROWID, false),  // missing from keyword index and UNTESTED at this time
-         new Keyword("before-table"                   ,  0, KW_B4_TABLE, false),  // missing from keyword index and UNTESTED at this time
+         new Keyword("before-table"                   ,  0, KW_B4_TABLE, false),
          new Keyword("begin-event-group"              ,  0, KW_BEG_EV_G, false),
          new Keyword("begins"                         ,  0, KW_BEGINS  , true ),
          new Keyword("bell"                           ,  0, KW_BELL    , true ),
@@ -32148,11 +32159,6 @@
          new Keyword("child-buffer"                   ,  0, KW_CHLD_BUF, false),  // missing from keyword index and UNTESTED at this time
          new Keyword("clear-tabs"                     ,  0, KW_CLR_TABS, false),  // FWD extension, not a real 4GL keyword
          new Keyword("current-tab"                    ,  0, KW_CURR_TAB, false),  // FWD extension, not a real 4GL keyword
-         new Keyword("node-collapsed"                 ,  0, KW_N_COLED , false),  // FWD extension, not a real 4GL keyword
-         new Keyword("node-collapsing"                ,  0, KW_N_COLING, false),  // FWD extension, not a real 4GL keyword
-         new Keyword("node-expanded"                  ,  0, KW_N_EXPED , false),  // FWD extension, not a real 4GL keyword
-         new Keyword("node-expanding"                 ,  0, KW_N_EXPING, false),  // FWD extension, not a real 4GL keyword
-         new Keyword("nodes"                          ,  0, KW_NODES   , false),  // FWD extension, not a real 4GL keyword
          new Keyword("choices"                        ,  0, KW_CHOICES , false),  // missing in keyword index, found in prog handbook as a key function
          new Keyword("choose"                         ,  0, KW_CHOOSE  , false),
          new Keyword("chr"                            ,  0, KW_CHR     , true ),
@@ -32286,6 +32292,7 @@
          new Keyword("current-row-modified"           ,  0, KW_CUR_R_M , false),
          new Keyword("current-window"                 ,  0, KW_CUR_WIN , true ),
          new Keyword("current-value"                  ,  0, KW_CUR_VAL , false),
+         new Keyword("current-query"                  ,  0, KW_CUR_QRY,  false),
          new Keyword("current_date"                   ,  0, KW_CUR_DATE, false),  // possible SQL keyword in the keyword index but no reference found in the SQL 89 reference
          new Keyword("cursor"                         ,  4, KW_CURSOR  , true ),
          new Keyword("cursor-char"                    ,  0, KW_CUR_CHAR, false),
@@ -32601,7 +32608,7 @@
          new Keyword("for"                            ,  0, KW_FOR     , true ),
          new Keyword("force-file"                     ,  0, KW_FORCE_F , false),
          new Keyword("foreground"                     ,  4, KW_FORE    , false),
-         new Keyword("foreign-key-hidden"             ,  0, KW_F_KEY_H , false),  // missing from keyword index, found elsewhere in lang ref, TESTED
+         new Keyword("foreign-key-hidden"             ,  0, KW_F_KEY_H , false),
          new Keyword("form-input"                     ,  0, KW_FORM_INP, false),
          new Keyword("form-long-input"                ,  0, KW_FORM_LIN, false),
          new Keyword("format"                         ,  4, KW_FORMAT  , true ),  // handles "separate keyword" form too
@@ -33049,6 +33056,7 @@
          new Keyword("max-height"                     ,  0, KW_MAX_HT  , false),
          new Keyword("max-height-chars"               , 12, KW_MAX_H_C , false),
          new Keyword("max-height-pixels"              , 12, KW_MAX_H_P , false),
+         new Keyword("maximum-level"                  ,  0, KW_MAX_LVL , false),
          new Keyword("max-width-chars"                ,  9, KW_MAX_W_C , false),
          new Keyword("max-width-pixels"               , 11, KW_MAX_W_P , false),
          new Keyword("max-rows"                       ,  0, KW_MAX_ROWS, false),
@@ -33205,6 +33213,10 @@
          new Keyword("no-validate"                    ,  6, KW_NO_VALID, true ),
          new Keyword("no-wait"                        ,  0, KW_NO_WAIT , true ),
          new Keyword("no-word-wrap"                   ,  0, KW_NO_WRAP , false),
+         new Keyword("node-collapsed"                 ,  0, KW_N_COLED , false),  // FWD extension, not a real 4GL keyword
+         new Keyword("node-collapsing"                ,  0, KW_N_COLING, false),  // FWD extension, not a real 4GL keyword
+         new Keyword("node-expanded"                  ,  0, KW_N_EXPED , false),  // FWD extension, not a real 4GL keyword
+         new Keyword("node-expanding"                 ,  0, KW_N_EXPING, false),  // FWD extension, not a real 4GL keyword
          new Keyword("node-count"                     ,  0, KW_NODE_CNT, false),  // FWD extension, not a real 4GL keyword
          new Keyword("node-expanded"                  ,  0, KW_NODE_EXP, false),  // FWD extension, not a real 4GL keyword
          new Keyword("node-height"                    ,  0, KW_N_HEIGHT, false),  // FWD extension, not a real 4GL keyword
@@ -33331,8 +33343,8 @@
          new Keyword("page-width"                     ,  8, KW_PAGE_WID, false),
          new Keyword("parameter"                      ,  5, KW_PARM    , true ),
          new Keyword("parent-buffer"                  ,  0, KW_PAR_BUFF, false),  // missing from keyword index and UNTESTED at this time
-         new Keyword("parent-fields-after"            ,  0, KW_PAR_FLDA, false),  // missing from keyword index and UNTESTED at this time
-         new Keyword("parent-fields-before"           ,  0, KW_PAR_FLDB, false),  // missing from keyword index and UNTESTED at this time
+         new Keyword("parent-fields-after"            ,  0, KW_PAR_FLDA, false),
+         new Keyword("parent-fields-before"           ,  0, KW_PAR_FLDB, false),
          new Keyword("parent-id-field"                ,  0, KW_PAR_IFLD, false),  // missing from keyword index and UNTESTED at this time
          new Keyword("parent-id-relation"             ,  0, KW_PAR_IREL, false),  // missing from keyword index and UNTESTED at this time
          new Keyword("parent-relation"                ,  0, KW_PAR_REL , false),  // missing from keyword index and UNTESTED at this time
@@ -33508,6 +33520,7 @@
          new Keyword("reset"                          ,  0, KW_RESET   , false),
          new Keyword("resize"                         ,  0, KW_RESIZE  , false),
          new Keyword("resizable"                      ,  6, KW_RESIZABL, false),
+         new Keyword("restart-row"                    ,  0, KW_REST_ROW, false),
          new Keyword("resort"                         ,  0, KW_RESORT  , false),  // FWD extension, not a real 4GL keyword
          new Keyword("restart-rowid"                  ,  0, KW_REST_RID, false),
          new Keyword("result"                         ,  0, KW_RESULT  , false),
@@ -33900,7 +33913,7 @@
          new Keyword("total"                          ,  0, KW_TOTAL   , false),
          new Keyword("to-rowid"                       ,  0, KW_TO_ROWID, true ),
          new Keyword("trace-filter"                   ,  0, KW_TRC_FILT, false),  // missing from keyword index, found in customer code and UNTESTED at this time
-         new Keyword("tracking-changes"               ,  0, KW_TRAC_CHG, false),  // missing from keyword index and UNTESTED at this time
+         new Keyword("tracking-changes"               ,  0, KW_TRAC_CHG, false),
          new Keyword("trailing"                       ,  0, KW_TRAILING, false),
          new Keyword("trans-init-procedure"           ,  0, KW_TRAN_I_P, false),
          new Keyword("trans"                          ,  0, KW_TRANS   , true ), // undocumented feature transa and transac are unreserved (just symbols) so we exclude them here by using 2 keyword defs to leave a loophole like in the 4GL

