ui/motif/Fsb.h

Sun, 07 Dec 2025 19:20:48 +0100

author
Olaf Wintermann <olaf.wintermann@gmail.com>
date
Sun, 07 Dec 2025 19:20:48 +0100
changeset 976
e2763e880938
parent 925
df27741d02b5
permissions
-rw-r--r--

implement radiobutton (Client)

925
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
1 /*
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
2 * Copyright 2021 Olaf Wintermann
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
3 *
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
4 * Permission is hereby granted, free of charge, to any person obtaining a
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
5 * copy of this software and associated documentation files (the "Software"),
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
6 * to deal in the Software without restriction, including without limitation
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
7 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
8 * and/or sell copies of the Software, and to permit persons to whom the
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
9 * Software is furnished to do so, subject to the following conditions:
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
10 *
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
11 * The above copyright notice and this permission notice shall be included in
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
12 * all copies or substantial portions of the Software.
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
13 *
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
15 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
16 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
17 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
18 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
19 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
20 * DEALINGS IN THE SOFTWARE.
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
21 */
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
22
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
23 #ifndef FSB_H
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
24 #define FSB_H
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
25
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
26 #include <X11/Intrinsic.h>
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
27 #include <Xm/PrimitiveP.h>
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
28
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
29 #ifdef __cplusplus
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
30 extern "C" {
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
31 #endif
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
32
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
33 extern WidgetClass xnFsbWidgetClass;
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
34
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
35 #define FILEDIALOG_OPEN 1
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
36 #define FILEDIALOG_SAVE 2
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
37
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
38 #define FILEDIALOG_OK 1
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
39 #define FILEDIALOG_CANCEL 2
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
40
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
41 #define XnNwidgetSpacing "fsbWidgetSpacing"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
42 #define XnNwindowSpacing "fsbWindowSpacing"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
43
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
44 #define XnNfsbType "fsbType"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
45 #define XnCfsbType "fsbType"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
46
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
47 #define XnNshowHidden "showHidden"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
48 #define XnCshowHidden "showHidden"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
49 #define XnNshowHiddenButton "showHiddenButton"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
50 #define XnCshowHiddenButton "showHiddenButton"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
51
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
52 #define XnNshowViewMenu "showViewMenu"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
53 #define XnCshowViewMenu "showViewMenu"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
54
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
55 #define XnNselectedView "fsbSelectedView"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
56 #define XnCselectedView "fsbSelectedView"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
57
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
58 #define XnNdirectory "directory"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
59 #define XnCdirectory "directory"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
60 #define XnNselectedPath "selectedPath"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
61 #define XnCselectedPath "selectedPath"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
62 #define XnNhomePath "homePath"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
63 #define XnChomePath "homePath"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
64
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
65 #define XnNfilter "filter"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
66 #define XnCfilter "filter"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
67
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
68 #define XnNfilterFunc "filterFunc"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
69 #define XnCfilterFunc "filterFunc"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
70
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
71 #define XnNlabelListView "labelListView"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
72 #define XnClabelListView "labelListView"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
73 #define XnNlabelDetailView "labelDetailView"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
74 #define XnClabelDetailView "labelDetailView"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
75 #define XnNlabelOpenFileTitle "labelOpenFileTitle"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
76 #define XnClabelOpenFileTitle "labelOpenFileTitle"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
77 #define XnNlabelSaveFileTitle "labelSaveFileTitle"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
78 #define XnClabelSaveFileTitle "labelSaveFileTitel"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
79 #define XnNlabelDirUp "labelDirUp"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
80 #define XnClabelDirUp "labelDirUp"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
81 #define XnNlabelHome "labelHome"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
82 #define XnClabelHome "labelHome"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
83 #define XnNlabelNewFolder "labelNewFolder"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
84 #define XnClabelNewFolder "labelNewFolder"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
85 #define XnNlabelFilter "labelFilter"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
86 #define XnClabelFilter "labelFilter"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
87 #define XnNlabelFilterButton "labelFilterButton"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
88 #define XnClabelFilterButton "labelFilterButton"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
89 #define XnNlabelShowHiddenFiles "labelShowHiddenFiles"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
90 #define XnClabelShowHiddenFiles "labelShowHiddenFiles"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
91 #define XnNlabelDirectories "labelDirectories"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
92 #define XnClabelDirectories "labelDirectories"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
93 #define XnNlabelFiles "labelFiles"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
94 #define XnClabelFiles "labelFiles"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
95 #define XnNlabelRename "labelRename"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
96 #define XnClabelRename "labelRename"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
97 #define XnNlabelDelete "labelDelete"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
98 #define XnClabelDelete "labelDelete"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
99 #define XnNlabelOpen "labelOpen"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
100 #define XnClabelOpen "labelOpen"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
101 #define XnNlabelSave "labelSave"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
102 #define XnClabelSave "labelSave"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
103 #define XnNlabelOk "labelOk"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
104 #define XnClabelOk "labelOk"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
105 #define XnNlabelCancel "labelCancel"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
106 #define XnClabelCancel "labelCancel"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
107 #define XnNlabelHelp "labelHelp"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
108 #define XnClabelHelp "labelHelp"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
109 #define XnNlabelFileName "labelFileName"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
110 #define XnClabelFileName "labelFileName"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
111 #define XnNlabelDirectoryName "labelDirectoryName"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
112 #define XnClabelDirectoryName "labelDirectoryName"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
113 #define XnNlabelNewFileName "labelNewFileName"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
114 #define XnClabelNewFileName "labelNewFileName"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
115 #define XnNlabelDeleteFile "labelDeleteFile"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
116 #define XnClabelDeleteFile "labelDeleteFile"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
117 #define XnNdetailHeadings "detailHeadings"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
118 #define XnCdetailHeadings "detailHeadings"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
119 #define XnNdateFormatSameYear "dateFormatSameYear"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
120 #define XnCdateFormatSameYear "dateFormatSameYear"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
121 #define XnNdateFormatOtherYear "dateFormatOtherYear"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
122 #define XnCdateFormatOtherYear "dateFormatOtherYear"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
123 #define XnNsuffixBytes "suffixBytes"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
124 #define XnCsuffixBytes "suffixBytes"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
125 #define XnNsuffixKB "suffixKB"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
126 #define XnCsuffixKB "suffixKB"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
127 #define XnNsuffixMB "suffixMB"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
128 #define XnCsuffixMB "suffixMB"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
129 #define XnNsuffixGB "suffixGB"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
130 #define XnCsuffixGB "suffixGB"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
131 #define XnNsuffixTB "suffixTB"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
132 #define XnCsuffixTB "suffixTB"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
133 #define XnNerrorTitle "errorTitle"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
134 #define XnCerrorTitle "errorTitle"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
135 #define XnNerrorIllegalChar "errorIllegalChar"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
136 #define XnCerrorIllegalChar "errorIllegalChar"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
137 #define XnNerrorRename "errorRename"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
138 #define XnCerrorRename "errorRename"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
139 #define XnNerrorCreateFolder "errorCreateFolder"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
140 #define XnCerrorCreateFolder "errorCreateFolder"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
141 #define XnNerrorDelete "errorDelete"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
142 #define XnCerrorDelete "errorDelete"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
143 #define XnNerrorOpenDir "errorOpenDir"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
144 #define XnCerrorOpenDir "errorOpenDir"
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
145
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
146 /*
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
147 * int FSBFilterFunc(const char *pattern, const char *string)
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
148 *
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
149 * Checks whether the string matches the pattern
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
150 *
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
151 * Return
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
152 * zero if the string matches the pattern
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
153 * non-zero if there is no match
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
154 */
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
155 typedef int(*FSBFilterFunc)(const char*, const char*);
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
156
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
157
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
158 typedef struct FileElm FileElm;
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
159 struct FileElm {
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
160 char *path;
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
161 int isDirectory;
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
162 unsigned long long size;
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
163 time_t lastModified;
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
164 };
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
165
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
166 typedef struct {
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
167 Widget view;
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
168 Widget focus;
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
169 } FSBViewWidgets;
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
170
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
171 enum XnFSBChild {
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
172 XnFSB_DIR_UP_BUTTON = 0,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
173 XnFSB_HOME_BUTTON,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
174 XnFSB_NEW_FOLDER_BUTTON,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
175 XnFSB_DETAIL_TOGGLE_BUTTON,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
176 XnFSB_VIEW_OPTION_BUTTON,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
177 XnFSB_FILTER_DROPDOWN,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
178 XnFSB_FILTER_BUTTON,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
179 XnFSB_SHOW_HIDDEN_TOGGLE_BUTTON,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
180 XnFSB_DIRECTORIES_LABEL,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
181 XnFSB_FILES_LABEL,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
182 XnFSB_DIRLIST,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
183 XnFSB_FILELIST,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
184 XnFSB_GRID,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
185 XnFSB_OK_BUTTON,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
186 XnFSB_CANCEL_BUTTON,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
187 XnFSB_HELP_BUTTON
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
188 };
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
189
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
190 typedef FSBViewWidgets(*FSBViewCreateProc)(Widget parent, ArgList args, int n, void *userData);
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
191 typedef void(*FSBViewUpdateProc)(Widget fsb, Widget view, FileElm *dirs, int dircount, FileElm *files, int filecount, const char *filter, int maxnamelen, void *userData);
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
192 typedef void(*FSBViewSelectProc)(Widget fsb, Widget view, const char *item);
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
193 typedef void(*FSBViewCleanupProc)(Widget fsb, Widget view, void *userData);
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
194 typedef void(*FSBViewDestroyProc)(Widget fsb, Widget view, void *userData);
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
195
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
196 Widget XnCreateFileSelectionDialog(
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
197 Widget parent,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
198 String name,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
199 ArgList arglist,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
200 Cardinal argcount);
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
201
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
202 Widget XnCreateFileSelectionBox(
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
203 Widget parent,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
204 String name,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
205 ArgList arglist,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
206 Cardinal argcount);
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
207
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
208 void XnFileSelectionBoxAddView(
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
209 Widget fsb,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
210 const char *name,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
211 FSBViewCreateProc create,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
212 FSBViewUpdateProc update,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
213 FSBViewSelectProc select,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
214 FSBViewCleanupProc cleanup,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
215 FSBViewDestroyProc destroy,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
216 Boolean useDirList,
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
217 void *userData);
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
218
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
219 //void XnFileSelectionBoxSetDirList(Widget fsb, const char **dirlist, size_t nelm);
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
220
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
221 Widget XnFileSelectionBoxWorkArea(Widget fsb);
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
222
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
223 Widget XnFileSelectionBoxGetChild(Widget fsb, enum XnFSBChild child);
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
224
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
225 void XnFileSelectionBoxDeleteFilters(Widget fsb);
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
226
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
227 void XnFileSelectionBoxAddFilter(Widget fsb, const char *filter);
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
228
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
229 #ifdef __cplusplus
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
230 }
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
231 #endif
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
232
df27741d02b5 implement ui_openfiledialog (Motif)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
233 #endif /* FSB_H */

mercurial