Subversion Repositories Kolibri OS

Rev

Rev 9577 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 9577 Rev 9645
Line 15... Line 15...
15
    along with this program.  If not, see .
15
    along with this program.  If not, see .
16
*)
16
*)
Line 17... Line 17...
17
 
17
 
Line 18... Line 18...
18
MODULE OpenDlg;
18
MODULE OpenDlg;
Line 19... Line 19...
19
 
19
 
20
IMPORT sys := SYSTEM, KOSAPI;
20
IMPORT sys := SYSTEM;
21
 
21
 
22
CONST
22
CONST
Line 57... Line 57...
57
 
57
 
Line 58... Line 58...
58
  Dialog* = POINTER TO TDialog;
58
  Dialog* = POINTER TO TDialog;
Line 59... Line -...
59
 
-
 
60
VAR
-
 
61
 
59
 
Line -... Line 60...
-
 
60
VAR
-
 
61
 
-
 
62
  filter_area: tFilterArea;
62
  Dialog_start, Dialog_init: PROCEDURE [stdcall] (od: Dialog);
63
 
63
 
64
 
64
  filter_area: tFilterArea;
65
PROCEDURE [stdcall, "proc_lib.obj", ""] OpenDialog_init (od: Dialog); END;
65
 
66
PROCEDURE [stdcall, "proc_lib.obj", ""] OpenDialog_start (od: Dialog); END;
66
 
67
 
67
PROCEDURE Show*(od: Dialog; Width, Height: INTEGER);
68
PROCEDURE Show*(od: Dialog; Width, Height: INTEGER);
68
BEGIN
69
BEGIN
69
  IF od # NIL THEN
70
  IF od # NIL THEN
Line 70... Line 71...
70
    od.X := Width;
71
    od.X := Width;
Line 133... Line 134...
133
      res.start_path         := sys.SADR("/sys/File managers/opendial");
134
      res.start_path         := sys.SADR("/sys/File managers/opendial");
134
      res.opendir_path       := sys.ADR(res.s_opendir_path[0]);
135
      res.opendir_path       := sys.ADR(res.s_opendir_path[0]);
135
      res.dir_default_path   := sys.ADR(res.s_dir_default_path[0]);
136
      res.dir_default_path   := sys.ADR(res.s_dir_default_path[0]);
136
      res.openfile_path      := sys.ADR(res.FilePath[0]);
137
      res.openfile_path      := sys.ADR(res.FilePath[0]);
137
      res.filename_area      := sys.ADR(res.FileName[0]);
138
      res.filename_area      := sys.ADR(res.FileName[0]);
138
      Dialog_init(res)
139
      OpenDialog_init(res)
139
    ELSE
140
    ELSE
140
      DISPOSE(res)
141
      DISPOSE(res)
141
    END
142
    END
142
  END
143
  END
143
  RETURN res
144
  RETURN res
Line 149... Line 150...
149
    DISPOSE(od.filter_area);
150
    DISPOSE(od.filter_area);
150
    DISPOSE(od)
151
    DISPOSE(od)
151
  END
152
  END
152
END Destroy;
153
END Destroy;
Line 153... Line -...
153
 
-
 
154
PROCEDURE Load;
-
 
155
VAR Lib: INTEGER;
-
 
156
 
-
 
157
  PROCEDURE GetProc(Lib, v: INTEGER; name: ARRAY OF CHAR);
-
 
158
  VAR a: INTEGER;
-
 
159
  BEGIN
-
 
160
    a := KOSAPI.GetProcAdr(name, Lib);
-
 
161
    ASSERT(a # 0);
-
 
162
    sys.PUT(v, a)
-
 
Line 163... Line -...
163
  END GetProc;
-
 
164
 
-
 
165
BEGIN
-
 
166
  Lib := KOSAPI.LoadLib("/sys/Lib/Proc_lib.obj");
-
 
167
  GetProc(Lib, sys.ADR(Dialog_init),  "OpenDialog_init");
-
 
168
  GetProc(Lib, sys.ADR(Dialog_start), "OpenDialog_start");
-
 
169
END Load;
-
 
170
 
-
 
171
BEGIN
154
 
172
  Load
155