Commit 846ee516beecdbf967fe19026d69ef74e31e3084
1 parent
4288039a
Exists in
master
and in
5 other branches
Implementando suporte para os botões full/unfullscreen
Showing
11 changed files
with
285 additions
and
186 deletions
Show diff stats
pw3270.cbp
| @@ -8,8 +8,8 @@ | @@ -8,8 +8,8 @@ | ||
| 8 | <Option compiler="gcc" /> | 8 | <Option compiler="gcc" /> |
| 9 | <Build> | 9 | <Build> |
| 10 | <Target title="Debug"> | 10 | <Target title="Debug"> |
| 11 | - <Option output=".bin\Debug\pw3270" prefix_auto="1" extension_auto="1" /> | ||
| 12 | - <Option object_output=".obj\Debug\" /> | 11 | + <Option output=".bin/Debug/pw3270" prefix_auto="1" extension_auto="1" /> |
| 12 | + <Option object_output=".obj/Debug/" /> | ||
| 13 | <Option type="0" /> | 13 | <Option type="0" /> |
| 14 | <Option compiler="gcc" /> | 14 | <Option compiler="gcc" /> |
| 15 | <Compiler> | 15 | <Compiler> |
| @@ -18,8 +18,8 @@ | @@ -18,8 +18,8 @@ | ||
| 18 | </Compiler> | 18 | </Compiler> |
| 19 | </Target> | 19 | </Target> |
| 20 | <Target title="Release"> | 20 | <Target title="Release"> |
| 21 | - <Option output=".bin\Release\pw3270" prefix_auto="1" extension_auto="1" /> | ||
| 22 | - <Option object_output=".obj\Release\" /> | 21 | + <Option output=".bin/Release/pw3270" prefix_auto="1" extension_auto="1" /> |
| 22 | + <Option object_output=".obj/Release/" /> | ||
| 23 | <Option type="0" /> | 23 | <Option type="0" /> |
| 24 | <Option compiler="gcc" /> | 24 | <Option compiler="gcc" /> |
| 25 | <Compiler> | 25 | <Compiler> |
| @@ -33,7 +33,7 @@ | @@ -33,7 +33,7 @@ | ||
| 33 | <Compiler> | 33 | <Compiler> |
| 34 | <Add option="-Wall" /> | 34 | <Add option="-Wall" /> |
| 35 | <Add option="`pkg-config gtk+-3.0 lib3270 --cflags`" /> | 35 | <Add option="`pkg-config gtk+-3.0 lib3270 --cflags`" /> |
| 36 | - <Add directory="src\include" /> | 36 | + <Add directory="src/include" /> |
| 37 | </Compiler> | 37 | </Compiler> |
| 38 | <Linker> | 38 | <Linker> |
| 39 | <Add option="`pkg-config gtk+-3.0 lib3270 --libs`" /> | 39 | <Add option="`pkg-config gtk+-3.0 lib3270 --libs`" /> |
| @@ -41,273 +41,270 @@ | @@ -41,273 +41,270 @@ | ||
| 41 | <Unit filename="Makefile.in" /> | 41 | <Unit filename="Makefile.in" /> |
| 42 | <Unit filename="configure.ac" /> | 42 | <Unit filename="configure.ac" /> |
| 43 | <Unit filename="pw3270.spec.in" /> | 43 | <Unit filename="pw3270.spec.in" /> |
| 44 | - <Unit filename="src\gtk\Makefile.in" /> | ||
| 45 | - <Unit filename="src\gtk\actions.c"> | 44 | + <Unit filename="src/gtk/Makefile.in" /> |
| 45 | + <Unit filename="src/gtk/actions.c"> | ||
| 46 | <Option compilerVar="CC" /> | 46 | <Option compilerVar="CC" /> |
| 47 | </Unit> | 47 | </Unit> |
| 48 | - <Unit filename="src\gtk\common\common.h" /> | ||
| 49 | - <Unit filename="src\gtk\common\config.c"> | 48 | + <Unit filename="src/gtk/common/common.h" /> |
| 49 | + <Unit filename="src/gtk/common/config.c"> | ||
| 50 | <Option compilerVar="CC" /> | 50 | <Option compilerVar="CC" /> |
| 51 | </Unit> | 51 | </Unit> |
| 52 | - <Unit filename="src\gtk\fonts.c"> | 52 | + <Unit filename="src/gtk/fonts.c"> |
| 53 | <Option compilerVar="CC" /> | 53 | <Option compilerVar="CC" /> |
| 54 | </Unit> | 54 | </Unit> |
| 55 | - <Unit filename="src\gtk\globals.h" /> | ||
| 56 | - <Unit filename="src\gtk\main.c"> | 55 | + <Unit filename="src/gtk/globals.h" /> |
| 56 | + <Unit filename="src/gtk/main.c"> | ||
| 57 | <Option compilerVar="CC" /> | 57 | <Option compilerVar="CC" /> |
| 58 | </Unit> | 58 | </Unit> |
| 59 | - <Unit filename="src\gtk\mainwindow.c"> | 59 | + <Unit filename="src/gtk/mainwindow.c"> |
| 60 | <Option compilerVar="CC" /> | 60 | <Option compilerVar="CC" /> |
| 61 | </Unit> | 61 | </Unit> |
| 62 | - <Unit filename="src\gtk\uiparser\Makefile.in" /> | ||
| 63 | - <Unit filename="src\gtk\uiparser\accelerator.c"> | 62 | + <Unit filename="src/gtk/uiparser/Makefile.in" /> |
| 63 | + <Unit filename="src/gtk/uiparser/accelerator.c"> | ||
| 64 | <Option compilerVar="CC" /> | 64 | <Option compilerVar="CC" /> |
| 65 | </Unit> | 65 | </Unit> |
| 66 | - <Unit filename="src\gtk\uiparser\action.c"> | 66 | + <Unit filename="src/gtk/uiparser/action.c"> |
| 67 | <Option compilerVar="CC" /> | 67 | <Option compilerVar="CC" /> |
| 68 | </Unit> | 68 | </Unit> |
| 69 | - <Unit filename="src\gtk\uiparser\menu.c"> | 69 | + <Unit filename="src/gtk/uiparser/menu.c"> |
| 70 | <Option compilerVar="CC" /> | 70 | <Option compilerVar="CC" /> |
| 71 | </Unit> | 71 | </Unit> |
| 72 | - <Unit filename="src\gtk\uiparser\menubar.c"> | 72 | + <Unit filename="src/gtk/uiparser/menubar.c"> |
| 73 | <Option compilerVar="CC" /> | 73 | <Option compilerVar="CC" /> |
| 74 | </Unit> | 74 | </Unit> |
| 75 | - <Unit filename="src\gtk\uiparser\menuitem.c"> | 75 | + <Unit filename="src/gtk/uiparser/menuitem.c"> |
| 76 | <Option compilerVar="CC" /> | 76 | <Option compilerVar="CC" /> |
| 77 | </Unit> | 77 | </Unit> |
| 78 | - <Unit filename="src\gtk\uiparser\parsefile.c"> | 78 | + <Unit filename="src/gtk/uiparser/parsefile.c"> |
| 79 | <Option compilerVar="CC" /> | 79 | <Option compilerVar="CC" /> |
| 80 | </Unit> | 80 | </Unit> |
| 81 | - <Unit filename="src\gtk\uiparser\parser.c"> | 81 | + <Unit filename="src/gtk/uiparser/parser.c"> |
| 82 | <Option compilerVar="CC" /> | 82 | <Option compilerVar="CC" /> |
| 83 | </Unit> | 83 | </Unit> |
| 84 | - <Unit filename="src\gtk\uiparser\parser.h" /> | ||
| 85 | - <Unit filename="src\gtk\uiparser\popup.c"> | 84 | + <Unit filename="src/gtk/uiparser/parser.h" /> |
| 85 | + <Unit filename="src/gtk/uiparser/popup.c"> | ||
| 86 | <Option compilerVar="CC" /> | 86 | <Option compilerVar="CC" /> |
| 87 | </Unit> | 87 | </Unit> |
| 88 | - <Unit filename="src\gtk\uiparser\private.h" /> | ||
| 89 | - <Unit filename="src\gtk\uiparser\script.c"> | 88 | + <Unit filename="src/gtk/uiparser/private.h" /> |
| 89 | + <Unit filename="src/gtk/uiparser/script.c"> | ||
| 90 | <Option compilerVar="CC" /> | 90 | <Option compilerVar="CC" /> |
| 91 | </Unit> | 91 | </Unit> |
| 92 | - <Unit filename="src\gtk\uiparser\separator.c"> | 92 | + <Unit filename="src/gtk/uiparser/separator.c"> |
| 93 | <Option compilerVar="CC" /> | 93 | <Option compilerVar="CC" /> |
| 94 | </Unit> | 94 | </Unit> |
| 95 | - <Unit filename="src\gtk\uiparser\sources.mak" /> | ||
| 96 | - <Unit filename="src\gtk\uiparser\testprogram.c"> | 95 | + <Unit filename="src/gtk/uiparser/sources.mak" /> |
| 96 | + <Unit filename="src/gtk/uiparser/toolbar.c"> | ||
| 97 | <Option compilerVar="CC" /> | 97 | <Option compilerVar="CC" /> |
| 98 | </Unit> | 98 | </Unit> |
| 99 | - <Unit filename="src\gtk\uiparser\toolbar.c"> | 99 | + <Unit filename="src/gtk/uiparser/toolitem.c"> |
| 100 | <Option compilerVar="CC" /> | 100 | <Option compilerVar="CC" /> |
| 101 | </Unit> | 101 | </Unit> |
| 102 | - <Unit filename="src\gtk\uiparser\toolitem.c"> | 102 | + <Unit filename="src/gtk/v3270/clipboard.c"> |
| 103 | <Option compilerVar="CC" /> | 103 | <Option compilerVar="CC" /> |
| 104 | </Unit> | 104 | </Unit> |
| 105 | - <Unit filename="src\gtk\v3270\clipboard.c"> | 105 | + <Unit filename="src/gtk/v3270/draw.c"> |
| 106 | <Option compilerVar="CC" /> | 106 | <Option compilerVar="CC" /> |
| 107 | </Unit> | 107 | </Unit> |
| 108 | - <Unit filename="src\gtk\v3270\draw.c"> | 108 | + <Unit filename="src/gtk/v3270/genmarshal" /> |
| 109 | + <Unit filename="src/gtk/v3270/iocallback.c"> | ||
| 109 | <Option compilerVar="CC" /> | 110 | <Option compilerVar="CC" /> |
| 110 | </Unit> | 111 | </Unit> |
| 111 | - <Unit filename="src\gtk\v3270\genmarshal" /> | ||
| 112 | - <Unit filename="src\gtk\v3270\iocallback.c"> | 112 | + <Unit filename="src/gtk/v3270/keyboard.c"> |
| 113 | <Option compilerVar="CC" /> | 113 | <Option compilerVar="CC" /> |
| 114 | </Unit> | 114 | </Unit> |
| 115 | - <Unit filename="src\gtk\v3270\keyboard.c"> | 115 | + <Unit filename="src/gtk/v3270/mouse.c"> |
| 116 | <Option compilerVar="CC" /> | 116 | <Option compilerVar="CC" /> |
| 117 | </Unit> | 117 | </Unit> |
| 118 | - <Unit filename="src\gtk\v3270\mouse.c"> | 118 | + <Unit filename="src/gtk/v3270/oia.c"> |
| 119 | <Option compilerVar="CC" /> | 119 | <Option compilerVar="CC" /> |
| 120 | </Unit> | 120 | </Unit> |
| 121 | - <Unit filename="src\gtk\v3270\oia.c"> | 121 | + <Unit filename="src/gtk/v3270/private.h" /> |
| 122 | + <Unit filename="src/gtk/v3270/sources.mak" /> | ||
| 123 | + <Unit filename="src/gtk/v3270/v3270.h" /> | ||
| 124 | + <Unit filename="src/gtk/v3270/widget.c"> | ||
| 122 | <Option compilerVar="CC" /> | 125 | <Option compilerVar="CC" /> |
| 123 | </Unit> | 126 | </Unit> |
| 124 | - <Unit filename="src\gtk\v3270\private.h" /> | ||
| 125 | - <Unit filename="src\gtk\v3270\sources.mak" /> | ||
| 126 | - <Unit filename="src\gtk\v3270\v3270.h" /> | ||
| 127 | - <Unit filename="src\gtk\v3270\widget.c"> | 127 | + <Unit filename="src/include/lib3270.h" /> |
| 128 | + <Unit filename="src/include/lib3270/action_table.h" /> | ||
| 129 | + <Unit filename="src/include/lib3270/actions.h" /> | ||
| 130 | + <Unit filename="src/include/lib3270/config.h.in" /> | ||
| 131 | + <Unit filename="src/include/lib3270/log.h" /> | ||
| 132 | + <Unit filename="src/include/lib3270/popup.h" /> | ||
| 133 | + <Unit filename="src/include/lib3270/selection.h" /> | ||
| 134 | + <Unit filename="src/include/lib3270/session.h" /> | ||
| 135 | + <Unit filename="src/include/pw3270.h" /> | ||
| 136 | + <Unit filename="src/include/rules.mak.in" /> | ||
| 137 | + <Unit filename="src/lib3270/3270ds.h" /> | ||
| 138 | + <Unit filename="src/lib3270/Makefile.in" /> | ||
| 139 | + <Unit filename="src/lib3270/X11keysym.h" /> | ||
| 140 | + <Unit filename="src/lib3270/XtGlue.c"> | ||
| 128 | <Option compilerVar="CC" /> | 141 | <Option compilerVar="CC" /> |
| 129 | </Unit> | 142 | </Unit> |
| 130 | - <Unit filename="src\include\lib3270.h" /> | ||
| 131 | - <Unit filename="src\include\lib3270\action_table.h" /> | ||
| 132 | - <Unit filename="src\include\lib3270\actions.h" /> | ||
| 133 | - <Unit filename="src\include\lib3270\config.h.in" /> | ||
| 134 | - <Unit filename="src\include\lib3270\log.h" /> | ||
| 135 | - <Unit filename="src\include\lib3270\popup.h" /> | ||
| 136 | - <Unit filename="src\include\lib3270\selection.h" /> | ||
| 137 | - <Unit filename="src\include\lib3270\session.h" /> | ||
| 138 | - <Unit filename="src\include\pw3270.h" /> | ||
| 139 | - <Unit filename="src\include\rules.mak.in" /> | ||
| 140 | - <Unit filename="src\lib3270\3270ds.h" /> | ||
| 141 | - <Unit filename="src\lib3270\Makefile.in" /> | ||
| 142 | - <Unit filename="src\lib3270\X11keysym.h" /> | ||
| 143 | - <Unit filename="src\lib3270\XtGlue.c"> | 143 | + <Unit filename="src/lib3270/actions.c"> |
| 144 | <Option compilerVar="CC" /> | 144 | <Option compilerVar="CC" /> |
| 145 | </Unit> | 145 | </Unit> |
| 146 | - <Unit filename="src\lib3270\actions.c"> | 146 | + <Unit filename="src/lib3270/actionsc.h" /> |
| 147 | + <Unit filename="src/lib3270/ansi.c"> | ||
| 147 | <Option compilerVar="CC" /> | 148 | <Option compilerVar="CC" /> |
| 148 | </Unit> | 149 | </Unit> |
| 149 | - <Unit filename="src\lib3270\actionsc.h" /> | ||
| 150 | - <Unit filename="src\lib3270\ansi.c"> | 150 | + <Unit filename="src/lib3270/ansic.h" /> |
| 151 | + <Unit filename="src/lib3270/api.h" /> | ||
| 152 | + <Unit filename="src/lib3270/apl.c"> | ||
| 151 | <Option compilerVar="CC" /> | 153 | <Option compilerVar="CC" /> |
| 152 | </Unit> | 154 | </Unit> |
| 153 | - <Unit filename="src\lib3270\ansic.h" /> | ||
| 154 | - <Unit filename="src\lib3270\api.h" /> | ||
| 155 | - <Unit filename="src\lib3270\apl.c"> | 155 | + <Unit filename="src/lib3270/aplc.h" /> |
| 156 | + <Unit filename="src/lib3270/appres.h" /> | ||
| 157 | + <Unit filename="src/lib3270/arpa_telnet.h" /> | ||
| 158 | + <Unit filename="src/lib3270/cg.h" /> | ||
| 159 | + <Unit filename="src/lib3270/charset.c"> | ||
| 156 | <Option compilerVar="CC" /> | 160 | <Option compilerVar="CC" /> |
| 157 | </Unit> | 161 | </Unit> |
| 158 | - <Unit filename="src\lib3270\aplc.h" /> | ||
| 159 | - <Unit filename="src\lib3270\appres.h" /> | ||
| 160 | - <Unit filename="src\lib3270\arpa_telnet.h" /> | ||
| 161 | - <Unit filename="src\lib3270\cg.h" /> | ||
| 162 | - <Unit filename="src\lib3270\charset.c"> | 162 | + <Unit filename="src/lib3270/charsetc.h" /> |
| 163 | + <Unit filename="src/lib3270/childc.h" /> | ||
| 164 | + <Unit filename="src/lib3270/ctlr.c"> | ||
| 163 | <Option compilerVar="CC" /> | 165 | <Option compilerVar="CC" /> |
| 164 | </Unit> | 166 | </Unit> |
| 165 | - <Unit filename="src\lib3270\charsetc.h" /> | ||
| 166 | - <Unit filename="src\lib3270\childc.h" /> | ||
| 167 | - <Unit filename="src\lib3270\ctlr.c"> | 167 | + <Unit filename="src/lib3270/ctlr.h" /> |
| 168 | + <Unit filename="src/lib3270/ctlrc.h" /> | ||
| 169 | + <Unit filename="src/lib3270/dialogc.h" /> | ||
| 170 | + <Unit filename="src/lib3270/fallbacks.c"> | ||
| 168 | <Option compilerVar="CC" /> | 171 | <Option compilerVar="CC" /> |
| 169 | </Unit> | 172 | </Unit> |
| 170 | - <Unit filename="src\lib3270\ctlr.h" /> | ||
| 171 | - <Unit filename="src\lib3270\ctlrc.h" /> | ||
| 172 | - <Unit filename="src\lib3270\dialogc.h" /> | ||
| 173 | - <Unit filename="src\lib3270\fallbacks.c"> | 173 | + <Unit filename="src/lib3270/ft.c"> |
| 174 | <Option compilerVar="CC" /> | 174 | <Option compilerVar="CC" /> |
| 175 | </Unit> | 175 | </Unit> |
| 176 | - <Unit filename="src\lib3270\ft.c"> | 176 | + <Unit filename="src/lib3270/ft_cut.c"> |
| 177 | <Option compilerVar="CC" /> | 177 | <Option compilerVar="CC" /> |
| 178 | </Unit> | 178 | </Unit> |
| 179 | - <Unit filename="src\lib3270\ft_cut.c"> | 179 | + <Unit filename="src/lib3270/ft_cut_ds.h" /> |
| 180 | + <Unit filename="src/lib3270/ft_cutc.h" /> | ||
| 181 | + <Unit filename="src/lib3270/ft_dft.c"> | ||
| 180 | <Option compilerVar="CC" /> | 182 | <Option compilerVar="CC" /> |
| 181 | </Unit> | 183 | </Unit> |
| 182 | - <Unit filename="src\lib3270\ft_cut_ds.h" /> | ||
| 183 | - <Unit filename="src\lib3270\ft_cutc.h" /> | ||
| 184 | - <Unit filename="src\lib3270\ft_dft.c"> | 184 | + <Unit filename="src/lib3270/ft_dft_ds.h" /> |
| 185 | + <Unit filename="src/lib3270/ft_dftc.h" /> | ||
| 186 | + <Unit filename="src/lib3270/ftc.h" /> | ||
| 187 | + <Unit filename="src/lib3270/globals.h" /> | ||
| 188 | + <Unit filename="src/lib3270/glue.c"> | ||
| 185 | <Option compilerVar="CC" /> | 189 | <Option compilerVar="CC" /> |
| 186 | </Unit> | 190 | </Unit> |
| 187 | - <Unit filename="src\lib3270\ft_dft_ds.h" /> | ||
| 188 | - <Unit filename="src\lib3270\ft_dftc.h" /> | ||
| 189 | - <Unit filename="src\lib3270\ftc.h" /> | ||
| 190 | - <Unit filename="src\lib3270\globals.h" /> | ||
| 191 | - <Unit filename="src\lib3270\glue.c"> | 191 | + <Unit filename="src/lib3270/gluec.h" /> |
| 192 | + <Unit filename="src/lib3270/host.c"> | ||
| 192 | <Option compilerVar="CC" /> | 193 | <Option compilerVar="CC" /> |
| 193 | </Unit> | 194 | </Unit> |
| 194 | - <Unit filename="src\lib3270\gluec.h" /> | ||
| 195 | - <Unit filename="src\lib3270\host.c"> | 195 | + <Unit filename="src/lib3270/hostc.h" /> |
| 196 | + <Unit filename="src/lib3270/icmdc.h" /> | ||
| 197 | + <Unit filename="src/lib3270/keypadc.h" /> | ||
| 198 | + <Unit filename="src/lib3270/kybd.c"> | ||
| 196 | <Option compilerVar="CC" /> | 199 | <Option compilerVar="CC" /> |
| 197 | </Unit> | 200 | </Unit> |
| 198 | - <Unit filename="src\lib3270\hostc.h" /> | ||
| 199 | - <Unit filename="src\lib3270\icmdc.h" /> | ||
| 200 | - <Unit filename="src\lib3270\keypadc.h" /> | ||
| 201 | - <Unit filename="src\lib3270\kybd.c"> | 201 | + <Unit filename="src/lib3270/kybdc.h" /> |
| 202 | + <Unit filename="src/lib3270/localdefs.h" /> | ||
| 203 | + <Unit filename="src/lib3270/log.c"> | ||
| 202 | <Option compilerVar="CC" /> | 204 | <Option compilerVar="CC" /> |
| 203 | </Unit> | 205 | </Unit> |
| 204 | - <Unit filename="src\lib3270\kybdc.h" /> | ||
| 205 | - <Unit filename="src\lib3270\localdefs.h" /> | ||
| 206 | - <Unit filename="src\lib3270\log.c"> | 206 | + <Unit filename="src/lib3270/macros.c"> |
| 207 | <Option compilerVar="CC" /> | 207 | <Option compilerVar="CC" /> |
| 208 | </Unit> | 208 | </Unit> |
| 209 | - <Unit filename="src\lib3270\macros.c"> | 209 | + <Unit filename="src/lib3270/mkfb.c"> |
| 210 | <Option compilerVar="CC" /> | 210 | <Option compilerVar="CC" /> |
| 211 | </Unit> | 211 | </Unit> |
| 212 | - <Unit filename="src\lib3270\mkfb.c"> | 212 | + <Unit filename="src/lib3270/objects.h" /> |
| 213 | + <Unit filename="src/lib3270/paste.c"> | ||
| 213 | <Option compilerVar="CC" /> | 214 | <Option compilerVar="CC" /> |
| 214 | </Unit> | 215 | </Unit> |
| 215 | - <Unit filename="src\lib3270\objects.h" /> | ||
| 216 | - <Unit filename="src\lib3270\paste.c"> | 216 | + <Unit filename="src/lib3270/popupsc.h" /> |
| 217 | + <Unit filename="src/lib3270/print.c"> | ||
| 217 | <Option compilerVar="CC" /> | 218 | <Option compilerVar="CC" /> |
| 218 | </Unit> | 219 | </Unit> |
| 219 | - <Unit filename="src\lib3270\popupsc.h" /> | ||
| 220 | - <Unit filename="src\lib3270\print.c"> | 220 | + <Unit filename="src/lib3270/printc.h" /> |
| 221 | + <Unit filename="src/lib3270/printer.c"> | ||
| 221 | <Option compilerVar="CC" /> | 222 | <Option compilerVar="CC" /> |
| 222 | </Unit> | 223 | </Unit> |
| 223 | - <Unit filename="src\lib3270\printc.h" /> | ||
| 224 | - <Unit filename="src\lib3270\printer.c"> | 224 | + <Unit filename="src/lib3270/printerc.h" /> |
| 225 | + <Unit filename="src/lib3270/proxy.c"> | ||
| 225 | <Option compilerVar="CC" /> | 226 | <Option compilerVar="CC" /> |
| 226 | </Unit> | 227 | </Unit> |
| 227 | - <Unit filename="src\lib3270\printerc.h" /> | ||
| 228 | - <Unit filename="src\lib3270\proxy.c"> | 228 | + <Unit filename="src/lib3270/proxyc.h" /> |
| 229 | + <Unit filename="src/lib3270/resolver.c"> | ||
| 229 | <Option compilerVar="CC" /> | 230 | <Option compilerVar="CC" /> |
| 230 | </Unit> | 231 | </Unit> |
| 231 | - <Unit filename="src\lib3270\proxyc.h" /> | ||
| 232 | - <Unit filename="src\lib3270\resolver.c"> | 232 | + <Unit filename="src/lib3270/resolverc.h" /> |
| 233 | + <Unit filename="src/lib3270/resources.c"> | ||
| 233 | <Option compilerVar="CC" /> | 234 | <Option compilerVar="CC" /> |
| 234 | </Unit> | 235 | </Unit> |
| 235 | - <Unit filename="src\lib3270\resolverc.h" /> | ||
| 236 | - <Unit filename="src\lib3270\resources.c"> | 236 | + <Unit filename="src/lib3270/resources.h" /> |
| 237 | + <Unit filename="src/lib3270/rpq.c"> | ||
| 237 | <Option compilerVar="CC" /> | 238 | <Option compilerVar="CC" /> |
| 238 | </Unit> | 239 | </Unit> |
| 239 | - <Unit filename="src\lib3270\resources.h" /> | ||
| 240 | - <Unit filename="src\lib3270\rpq.c"> | 240 | + <Unit filename="src/lib3270/savec.h" /> |
| 241 | + <Unit filename="src/lib3270/screen.c"> | ||
| 241 | <Option compilerVar="CC" /> | 242 | <Option compilerVar="CC" /> |
| 242 | </Unit> | 243 | </Unit> |
| 243 | - <Unit filename="src\lib3270\savec.h" /> | ||
| 244 | - <Unit filename="src\lib3270\screen.c"> | 244 | + <Unit filename="src/lib3270/screen.h" /> |
| 245 | + <Unit filename="src/lib3270/screenc.h" /> | ||
| 246 | + <Unit filename="src/lib3270/scrollc.h" /> | ||
| 247 | + <Unit filename="src/lib3270/see.c"> | ||
| 245 | <Option compilerVar="CC" /> | 248 | <Option compilerVar="CC" /> |
| 246 | </Unit> | 249 | </Unit> |
| 247 | - <Unit filename="src\lib3270\screen.h" /> | ||
| 248 | - <Unit filename="src\lib3270\screenc.h" /> | ||
| 249 | - <Unit filename="src\lib3270\scrollc.h" /> | ||
| 250 | - <Unit filename="src\lib3270\see.c"> | 250 | + <Unit filename="src/lib3270/seec.h" /> |
| 251 | + <Unit filename="src/lib3270/selection.c"> | ||
| 251 | <Option compilerVar="CC" /> | 252 | <Option compilerVar="CC" /> |
| 252 | </Unit> | 253 | </Unit> |
| 253 | - <Unit filename="src\lib3270\seec.h" /> | ||
| 254 | - <Unit filename="src\lib3270\selection.c"> | 254 | + <Unit filename="src/lib3270/sf.c"> |
| 255 | <Option compilerVar="CC" /> | 255 | <Option compilerVar="CC" /> |
| 256 | </Unit> | 256 | </Unit> |
| 257 | - <Unit filename="src\lib3270\sf.c"> | 257 | + <Unit filename="src/lib3270/sfc.h" /> |
| 258 | + <Unit filename="src/lib3270/shlobj_missing.h" /> | ||
| 259 | + <Unit filename="src/lib3270/statusc.h" /> | ||
| 260 | + <Unit filename="src/lib3270/tables.c"> | ||
| 258 | <Option compilerVar="CC" /> | 261 | <Option compilerVar="CC" /> |
| 259 | </Unit> | 262 | </Unit> |
| 260 | - <Unit filename="src\lib3270\sfc.h" /> | ||
| 261 | - <Unit filename="src\lib3270\shlobj_missing.h" /> | ||
| 262 | - <Unit filename="src\lib3270\statusc.h" /> | ||
| 263 | - <Unit filename="src\lib3270\tables.c"> | 263 | + <Unit filename="src/lib3270/tablesc.h" /> |
| 264 | + <Unit filename="src/lib3270/telnet.c"> | ||
| 264 | <Option compilerVar="CC" /> | 265 | <Option compilerVar="CC" /> |
| 265 | </Unit> | 266 | </Unit> |
| 266 | - <Unit filename="src\lib3270\tablesc.h" /> | ||
| 267 | - <Unit filename="src\lib3270\telnet.c"> | 267 | + <Unit filename="src/lib3270/telnetc.h" /> |
| 268 | + <Unit filename="src/lib3270/testprogram.c"> | ||
| 268 | <Option compilerVar="CC" /> | 269 | <Option compilerVar="CC" /> |
| 269 | </Unit> | 270 | </Unit> |
| 270 | - <Unit filename="src\lib3270\telnetc.h" /> | ||
| 271 | - <Unit filename="src\lib3270\testprogram.c"> | 271 | + <Unit filename="src/lib3270/tn3270e.h" /> |
| 272 | + <Unit filename="src/lib3270/toggle.h" /> | ||
| 273 | + <Unit filename="src/lib3270/toggles.c"> | ||
| 272 | <Option compilerVar="CC" /> | 274 | <Option compilerVar="CC" /> |
| 273 | </Unit> | 275 | </Unit> |
| 274 | - <Unit filename="src\lib3270\tn3270e.h" /> | ||
| 275 | - <Unit filename="src\lib3270\toggle.h" /> | ||
| 276 | - <Unit filename="src\lib3270\toggles.c"> | 276 | + <Unit filename="src/lib3270/togglesc.h" /> |
| 277 | + <Unit filename="src/lib3270/trace_ds.c"> | ||
| 277 | <Option compilerVar="CC" /> | 278 | <Option compilerVar="CC" /> |
| 278 | </Unit> | 279 | </Unit> |
| 279 | - <Unit filename="src\lib3270\togglesc.h" /> | ||
| 280 | - <Unit filename="src\lib3270\trace_ds.c"> | 280 | + <Unit filename="src/lib3270/trace_dsc.h" /> |
| 281 | + <Unit filename="src/lib3270/utf8.c"> | ||
| 281 | <Option compilerVar="CC" /> | 282 | <Option compilerVar="CC" /> |
| 282 | </Unit> | 283 | </Unit> |
| 283 | - <Unit filename="src\lib3270\trace_dsc.h" /> | ||
| 284 | - <Unit filename="src\lib3270\utf8.c"> | 284 | + <Unit filename="src/lib3270/utf8c.h" /> |
| 285 | + <Unit filename="src/lib3270/util.c"> | ||
| 285 | <Option compilerVar="CC" /> | 286 | <Option compilerVar="CC" /> |
| 286 | </Unit> | 287 | </Unit> |
| 287 | - <Unit filename="src\lib3270\utf8c.h" /> | ||
| 288 | - <Unit filename="src\lib3270\util.c"> | 288 | + <Unit filename="src/lib3270/utilc.h" /> |
| 289 | + <Unit filename="src/lib3270/version.c"> | ||
| 289 | <Option compilerVar="CC" /> | 290 | <Option compilerVar="CC" /> |
| 290 | </Unit> | 291 | </Unit> |
| 291 | - <Unit filename="src\lib3270\utilc.h" /> | ||
| 292 | - <Unit filename="src\lib3270\version.c"> | 292 | + <Unit filename="src/lib3270/w3misc.c"> |
| 293 | <Option compilerVar="CC" /> | 293 | <Option compilerVar="CC" /> |
| 294 | </Unit> | 294 | </Unit> |
| 295 | - <Unit filename="src\lib3270\w3misc.c"> | 295 | + <Unit filename="src/lib3270/w3miscc.h" /> |
| 296 | + <Unit filename="src/lib3270/widec.h" /> | ||
| 297 | + <Unit filename="src/lib3270/winvers.c"> | ||
| 296 | <Option compilerVar="CC" /> | 298 | <Option compilerVar="CC" /> |
| 297 | </Unit> | 299 | </Unit> |
| 298 | - <Unit filename="src\lib3270\w3miscc.h" /> | ||
| 299 | - <Unit filename="src\lib3270\widec.h" /> | ||
| 300 | - <Unit filename="src\lib3270\winvers.c"> | 300 | + <Unit filename="src/lib3270/winversc.h" /> |
| 301 | + <Unit filename="src/lib3270/xio.c"> | ||
| 301 | <Option compilerVar="CC" /> | 302 | <Option compilerVar="CC" /> |
| 302 | </Unit> | 303 | </Unit> |
| 303 | - <Unit filename="src\lib3270\winversc.h" /> | ||
| 304 | - <Unit filename="src\lib3270\xio.c"> | ||
| 305 | - <Option compilerVar="CC" /> | ||
| 306 | - </Unit> | ||
| 307 | - <Unit filename="src\lib3270\xioc.h" /> | ||
| 308 | - <Unit filename="src\lib3270\xl.h" /> | ||
| 309 | - <Unit filename="ui\00default.xml" /> | ||
| 310 | - <Unit filename="ui\99debug.xml" /> | 304 | + <Unit filename="src/lib3270/xioc.h" /> |
| 305 | + <Unit filename="src/lib3270/xl.h" /> | ||
| 306 | + <Unit filename="ui/00default.xml" /> | ||
| 307 | + <Unit filename="ui/99debug.xml" /> | ||
| 311 | <Unit filename="valgrind.suppression" /> | 308 | <Unit filename="valgrind.suppression" /> |
| 312 | <Extensions> | 309 | <Extensions> |
| 313 | <code_completion /> | 310 | <code_completion /> |
src/gtk/actions.c
| @@ -186,8 +186,41 @@ static void action_pakey(GtkAction *action, GtkWidget *widget) | @@ -186,8 +186,41 @@ static void action_pakey(GtkAction *action, GtkWidget *widget) | ||
| 186 | lib3270_pakey(GTK_V3270(widget)->host,(int) g_object_get_data(G_OBJECT(action),"pakey")); | 186 | lib3270_pakey(GTK_V3270(widget)->host,(int) g_object_get_data(G_OBJECT(action),"pakey")); |
| 187 | } | 187 | } |
| 188 | 188 | ||
| 189 | +static void action_fullscreen(GtkAction *action, GtkWidget *widget) | ||
| 190 | +{ | ||
| 191 | + lib3270_set_toggle(GTK_V3270(widget)->host,LIB3270_TOGGLE_FULL_SCREEN,1); | ||
| 192 | +} | ||
| 193 | + | ||
| 194 | +static void action_unfullscreen(GtkAction *action, GtkWidget *widget) | ||
| 195 | +{ | ||
| 196 | + lib3270_set_toggle(GTK_V3270(widget)->host,LIB3270_TOGGLE_FULL_SCREEN,0); | ||
| 197 | +} | ||
| 198 | + | ||
| 189 | void ui_connect_pakey(GtkAction *action, GtkWidget *widget, const gchar *name, const gchar *id) | 199 | void ui_connect_pakey(GtkAction *action, GtkWidget *widget, const gchar *name, const gchar *id) |
| 190 | { | 200 | { |
| 191 | g_object_set_data(G_OBJECT(action),"pakey",(gpointer) atoi(id)); | 201 | g_object_set_data(G_OBJECT(action),"pakey",(gpointer) atoi(id)); |
| 192 | g_signal_connect(action,"activate",G_CALLBACK(action_pakey),widget); | 202 | g_signal_connect(action,"activate",G_CALLBACK(action_pakey),widget); |
| 193 | } | 203 | } |
| 204 | + | ||
| 205 | +void ui_connect_index_action(GtkAction *action, GtkWidget *widget, int ix, GtkAction **lst) | ||
| 206 | +{ | ||
| 207 | + trace("action(%d): %p",ix,action); | ||
| 208 | + | ||
| 209 | + switch(ix) | ||
| 210 | + { | ||
| 211 | + case ACTION_PASTENEXT: | ||
| 212 | + break; | ||
| 213 | + | ||
| 214 | + case ACTION_FULLSCREEN: | ||
| 215 | + g_signal_connect(action,"activate",G_CALLBACK(action_fullscreen),widget); | ||
| 216 | + break; | ||
| 217 | + | ||
| 218 | + case ACTION_UNFULLSCREEN: | ||
| 219 | + g_signal_connect(action,"activate",G_CALLBACK(action_unfullscreen),widget); | ||
| 220 | + break; | ||
| 221 | + | ||
| 222 | + default: | ||
| 223 | + g_warning("Action \"%s\" has unexpected id %d",gtk_action_get_name(action),ix); | ||
| 224 | + gtk_action_set_sensitive(action,FALSE); | ||
| 225 | + } | ||
| 226 | +} |
src/gtk/globals.h
| @@ -39,6 +39,16 @@ | @@ -39,6 +39,16 @@ | ||
| 39 | 39 | ||
| 40 | #include "v3270/v3270.h" | 40 | #include "v3270/v3270.h" |
| 41 | 41 | ||
| 42 | + // Special actions | ||
| 43 | + enum | ||
| 44 | + { | ||
| 45 | + ACTION_PASTENEXT, | ||
| 46 | + ACTION_FULLSCREEN, | ||
| 47 | + ACTION_UNFULLSCREEN, | ||
| 48 | + | ||
| 49 | + ACTION_COUNT | ||
| 50 | + }; | ||
| 51 | + | ||
| 42 | // Configuration | 52 | // Configuration |
| 43 | #include "common/common.h" | 53 | #include "common/common.h" |
| 44 | 54 |
src/gtk/mainwindow.c
| @@ -73,22 +73,37 @@ | @@ -73,22 +73,37 @@ | ||
| 73 | "selection", | 73 | "selection", |
| 74 | NULL | 74 | NULL |
| 75 | }; | 75 | }; |
| 76 | + | ||
| 77 | + static const gchar *actionname[ACTION_COUNT+1] = { "pastenext", | ||
| 78 | + "setfullscreen", | ||
| 79 | + "resetfullscreen" | ||
| 80 | + }; | ||
| 76 | /*--[ Implement ]------------------------------------------------------------------------------------*/ | 81 | /*--[ Implement ]------------------------------------------------------------------------------------*/ |
| 77 | 82 | ||
| 78 | - static void save_toggle(GtkWidget *widget, LIB3270_TOGGLE id, gboolean toggled, const gchar *name, GtkWindow *toplevel) | 83 | + static void toggle_changed(GtkWidget *widget, LIB3270_TOGGLE id, gboolean toggled, const gchar *name, GtkWindow *toplevel) |
| 79 | { | 84 | { |
| 80 | gchar *nm = g_ascii_strdown(name,-1); | 85 | gchar *nm = g_ascii_strdown(name,-1); |
| 81 | - trace("Toggle \"%s\" in widget %p is %s toplevel=%p",nm,widget,toggled ? "Active" : "Inactive",toplevel); | ||
| 82 | set_boolean_to_config("toggle",nm,toggled); | 86 | set_boolean_to_config("toggle",nm,toggled); |
| 83 | g_free(nm); | 87 | g_free(nm); |
| 84 | 88 | ||
| 85 | if(id == LIB3270_TOGGLE_FULL_SCREEN) | 89 | if(id == LIB3270_TOGGLE_FULL_SCREEN) |
| 86 | { | 90 | { |
| 91 | + GtkAction **action = (GtkAction **) g_object_get_data(G_OBJECT(toplevel),"named_actions"); | ||
| 92 | + | ||
| 93 | + if(action[ACTION_FULLSCREEN]) | ||
| 94 | + gtk_action_set_visible(action[ACTION_FULLSCREEN],!toggled); | ||
| 95 | + | ||
| 96 | + if(action[ACTION_UNFULLSCREEN]) | ||
| 97 | + gtk_action_set_visible(action[ACTION_UNFULLSCREEN],toggled); | ||
| 98 | + | ||
| 87 | if(toggled) | 99 | if(toggled) |
| 88 | gtk_window_fullscreen(GTK_WINDOW(toplevel)); | 100 | gtk_window_fullscreen(GTK_WINDOW(toplevel)); |
| 89 | else | 101 | else |
| 90 | gtk_window_unfullscreen(GTK_WINDOW(toplevel)); | 102 | gtk_window_unfullscreen(GTK_WINDOW(toplevel)); |
| 91 | } | 103 | } |
| 104 | + | ||
| 105 | + #warning TODO: Update toggle actions. | ||
| 106 | + | ||
| 92 | } | 107 | } |
| 93 | 108 | ||
| 94 | static void disconnected(GtkWidget *widget, GtkActionGroup **group) | 109 | static void disconnected(GtkWidget *widget, GtkActionGroup **group) |
| @@ -226,6 +241,7 @@ | @@ -226,6 +241,7 @@ | ||
| 226 | H3270 * host = v3270_get_session(terminal); | 241 | H3270 * host = v3270_get_session(terminal); |
| 227 | gchar * path = build_data_filename("ui",NULL); | 242 | gchar * path = build_data_filename("ui",NULL); |
| 228 | GtkActionGroup **group; | 243 | GtkActionGroup **group; |
| 244 | + GtkAction **action; | ||
| 229 | GtkWidget **popup; | 245 | GtkWidget **popup; |
| 230 | int f; | 246 | int f; |
| 231 | 247 | ||
| @@ -247,9 +263,10 @@ | @@ -247,9 +263,10 @@ | ||
| 247 | } | 263 | } |
| 248 | 264 | ||
| 249 | // Create window | 265 | // Create window |
| 250 | - window = ui_parse_xml_folder(path,groupname,popupname,terminal,widget_setup); | 266 | + window = ui_parse_xml_folder(path,groupname,popupname,actionname,terminal,widget_setup); |
| 251 | group = g_object_get_data(G_OBJECT(window),"action_groups"); | 267 | group = g_object_get_data(G_OBJECT(window),"action_groups"); |
| 252 | popup = g_object_get_data(G_OBJECT(window),"popup_menus"); | 268 | popup = g_object_get_data(G_OBJECT(window),"popup_menus"); |
| 269 | + action = (GtkAction **) g_object_get_data(G_OBJECT(window),"named_actions"); | ||
| 253 | 270 | ||
| 254 | // Setup action groups | 271 | // Setup action groups |
| 255 | gtk_action_group_set_sensitive(group[ACTION_GROUP_SELECTION],FALSE); | 272 | gtk_action_group_set_sensitive(group[ACTION_GROUP_SELECTION],FALSE); |
| @@ -258,8 +275,15 @@ | @@ -258,8 +275,15 @@ | ||
| 258 | gtk_action_group_set_sensitive(group[ACTION_GROUP_PASTE],FALSE); | 275 | gtk_action_group_set_sensitive(group[ACTION_GROUP_PASTE],FALSE); |
| 259 | disconnected(terminal, (gpointer) group); | 276 | disconnected(terminal, (gpointer) group); |
| 260 | 277 | ||
| 278 | + // Setup actions | ||
| 279 | + if(action[ACTION_FULLSCREEN]) | ||
| 280 | + gtk_action_set_visible(action[ACTION_FULLSCREEN],!lib3270_get_toggle(host,LIB3270_TOGGLE_FULL_SCREEN)); | ||
| 281 | + | ||
| 282 | + if(action[ACTION_UNFULLSCREEN]) | ||
| 283 | + gtk_action_set_visible(action[ACTION_UNFULLSCREEN],lib3270_get_toggle(host,LIB3270_TOGGLE_FULL_SCREEN)); | ||
| 284 | + | ||
| 261 | // Connect widget signals | 285 | // Connect widget signals |
| 262 | - g_signal_connect(terminal,"toggle_changed",G_CALLBACK(save_toggle),window); | 286 | + g_signal_connect(terminal,"toggle_changed",G_CALLBACK(toggle_changed),window); |
| 263 | g_signal_connect(terminal,"disconnected",G_CALLBACK(disconnected),group); | 287 | g_signal_connect(terminal,"disconnected",G_CALLBACK(disconnected),group); |
| 264 | g_signal_connect(terminal,"connected",G_CALLBACK(connected),group); | 288 | g_signal_connect(terminal,"connected",G_CALLBACK(connected),group); |
| 265 | g_signal_connect(terminal,"update_config",G_CALLBACK(update_config),0); | 289 | g_signal_connect(terminal,"update_config",G_CALLBACK(update_config),0); |
src/gtk/uiparser/parsefile.c
| @@ -182,10 +182,24 @@ | @@ -182,10 +182,24 @@ | ||
| 182 | } | 182 | } |
| 183 | else | 183 | else |
| 184 | { | 184 | { |
| 185 | + int ix = -1; | ||
| 186 | + | ||
| 185 | action = GTK_ACTION(create(nm,NULL,NULL,NULL)); | 187 | action = GTK_ACTION(create(nm,NULL,NULL,NULL)); |
| 186 | g_hash_table_insert(info->actions,nm,action); | 188 | g_hash_table_insert(info->actions,nm,action); |
| 187 | 189 | ||
| 188 | - if(g_strcasecmp(name,"quit")) | 190 | + if(info->actionname) |
| 191 | + { | ||
| 192 | + int f; | ||
| 193 | + for(f=0;info->actionname[f] && ix < 0;f++) | ||
| 194 | + { | ||
| 195 | + if(!g_strcasecmp(nm,info->actionname[f])) | ||
| 196 | + ix = f; | ||
| 197 | + } | ||
| 198 | + } | ||
| 199 | + | ||
| 200 | + if(ix >= 0) | ||
| 201 | + ui_connect_index_action(info->action[ix] = action,info->center_widget,ix,info->action); | ||
| 202 | + else if(g_strcasecmp(name,"quit")) | ||
| 189 | connect(action,info->center_widget,name,id); | 203 | connect(action,info->center_widget,name,id); |
| 190 | else | 204 | else |
| 191 | g_signal_connect(action,"activate",G_CALLBACK(gtk_main_quit), NULL); | 205 | g_signal_connect(action,"activate",G_CALLBACK(gtk_main_quit), NULL); |
src/gtk/uiparser/parser.c
| @@ -206,20 +206,18 @@ void parser_build(struct parser *p, GtkWidget *widget) | @@ -206,20 +206,18 @@ void parser_build(struct parser *p, GtkWidget *widget) | ||
| 206 | 206 | ||
| 207 | } | 207 | } |
| 208 | 208 | ||
| 209 | -static void release_popups(GtkWidget **popup) | 209 | +static void release_list(GObject **obj) |
| 210 | { | 210 | { |
| 211 | int f; | 211 | int f; |
| 212 | - for(f=0;popup[f] != ((GtkWidget *) -1);f++) | 212 | + for(f=0;obj[f] != ((GObject *) -1);f++) |
| 213 | { | 213 | { |
| 214 | -// trace("%s[%d]=%p",__FUNCTION__,f,popup[f]); | ||
| 215 | - if(popup[f]) | ||
| 216 | - g_object_unref(popup[f]); | 214 | + if(obj[f]) |
| 215 | + g_object_unref(obj[f]); | ||
| 217 | } | 216 | } |
| 218 | - | ||
| 219 | - g_free(popup); | 217 | + g_free(obj); |
| 220 | } | 218 | } |
| 221 | 219 | ||
| 222 | -GtkWidget * ui_parse_xml_folder(const gchar *path, const gchar ** groupname, const gchar **popupname, GtkWidget *widget, const UI_WIDGET_SETUP *setup) | 220 | +GtkWidget * ui_parse_xml_folder(const gchar *path, const gchar ** groupname, const gchar **popupname, const gchar **actionname, GtkWidget *widget, const UI_WIDGET_SETUP *setup) |
| 223 | { | 221 | { |
| 224 | struct parser p; | 222 | struct parser p; |
| 225 | GDir * dir; | 223 | GDir * dir; |
| @@ -272,11 +270,16 @@ GtkWidget * ui_parse_xml_folder(const gchar *path, const gchar ** groupname, con | @@ -272,11 +270,16 @@ GtkWidget * ui_parse_xml_folder(const gchar *path, const gchar ** groupname, con | ||
| 272 | p.popupname = popupname; | 270 | p.popupname = popupname; |
| 273 | p.strings = g_string_chunk_new(0); | 271 | p.strings = g_string_chunk_new(0); |
| 274 | p.setup = setup; | 272 | p.setup = setup; |
| 273 | + p.actionname = actionname; | ||
| 275 | 274 | ||
| 276 | sz = (g_strv_length((gchar **) p.popupname)); | 275 | sz = (g_strv_length((gchar **) p.popupname)); |
| 277 | p.popup = g_new0(GtkWidget *,sz+1); | 276 | p.popup = g_new0(GtkWidget *,sz+1); |
| 278 | p.popup[sz] = (GtkWidget *) -1; | 277 | p.popup[sz] = (GtkWidget *) -1; |
| 279 | - g_object_set_data_full(G_OBJECT(p.toplevel),"popup_menus",(gpointer) p.popup, (GDestroyNotify) release_popups); | 278 | + g_object_set_data_full(G_OBJECT(p.toplevel),"popup_menus",(gpointer) p.popup, (GDestroyNotify) release_list); |
| 279 | + | ||
| 280 | + sz = (g_strv_length((gchar **) p.actionname)); | ||
| 281 | + p.action = g_new0(GtkAction *,sz); | ||
| 282 | + g_object_set_data_full(G_OBJECT(p.toplevel),"named_actions",(gpointer) p.action, (GDestroyNotify) g_free); | ||
| 280 | 283 | ||
| 281 | for(current = g_list_first(file);current;current = g_list_next(current)) | 284 | for(current = g_list_first(file);current;current = g_list_next(current)) |
| 282 | { | 285 | { |
src/gtk/uiparser/parser.h
| @@ -51,8 +51,9 @@ | @@ -51,8 +51,9 @@ | ||
| 51 | void (*setup)(GtkWidget *widget, GtkWidget *obj); | 51 | void (*setup)(GtkWidget *widget, GtkWidget *obj); |
| 52 | } UI_WIDGET_SETUP; | 52 | } UI_WIDGET_SETUP; |
| 53 | 53 | ||
| 54 | - GtkWidget * ui_parse_xml_folder(const gchar *path, const gchar ** groupname, const gchar **popupname, GtkWidget *widget, const UI_WIDGET_SETUP *itn); | 54 | + GtkWidget * ui_parse_xml_folder(const gchar *path, const gchar ** groupname, const gchar **popupname, const gchar **actionname, GtkWidget *widget, const UI_WIDGET_SETUP *itn); |
| 55 | void ui_connect_action(GtkAction *action, GtkWidget *widget, const gchar *name, const gchar *id); | 55 | void ui_connect_action(GtkAction *action, GtkWidget *widget, const gchar *name, const gchar *id); |
| 56 | + void ui_connect_index_action(GtkAction *action, GtkWidget *widget, int ix, GtkAction **lst); | ||
| 56 | void ui_connect_toggle(GtkAction *action, GtkWidget *widget, const gchar *name, const gchar *id); | 57 | void ui_connect_toggle(GtkAction *action, GtkWidget *widget, const gchar *name, const gchar *id); |
| 57 | void ui_connect_pfkey(GtkAction *action, GtkWidget *widget, const gchar *name, const gchar *id); | 58 | void ui_connect_pfkey(GtkAction *action, GtkWidget *widget, const gchar *name, const gchar *id); |
| 58 | void ui_connect_pakey(GtkAction *action, GtkWidget *widget, const gchar *name, const gchar *id); | 59 | void ui_connect_pakey(GtkAction *action, GtkWidget *widget, const gchar *name, const gchar *id); |
src/gtk/uiparser/private.h
| @@ -59,9 +59,11 @@ | @@ -59,9 +59,11 @@ | ||
| 59 | GObject * element; | 59 | GObject * element; |
| 60 | GtkWidget * center_widget; | 60 | GtkWidget * center_widget; |
| 61 | GtkWidget ** popup; /**< Popup widgets */ | 61 | GtkWidget ** popup; /**< Popup widgets */ |
| 62 | + GtkAction ** action; /**< Named actions */ | ||
| 62 | GStringChunk * strings; | 63 | GStringChunk * strings; |
| 63 | const gchar ** group; /**< Action group list */ | 64 | const gchar ** group; /**< Action group list */ |
| 64 | const gchar ** popupname; /**< Popup names */ | 65 | const gchar ** popupname; /**< Popup names */ |
| 66 | + const gchar ** actionname; /**< Action names */ | ||
| 65 | GHashTable * actions; /**< List of actions */ | 67 | GHashTable * actions; /**< List of actions */ |
| 66 | GHashTable * element_list[UI_ELEMENT_COUNT]; | 68 | GHashTable * element_list[UI_ELEMENT_COUNT]; |
| 67 | const UI_WIDGET_SETUP * setup; | 69 | const UI_WIDGET_SETUP * setup; |
src/gtk/uiparser/testprogram.c
| @@ -14,6 +14,12 @@ void activated(GtkAction *action, GtkWidget *widget) | @@ -14,6 +14,12 @@ void activated(GtkAction *action, GtkWidget *widget) | ||
| 14 | trace("Action %s activated on widget %p",gtk_action_get_name(action),widget); | 14 | trace("Action %s activated on widget %p",gtk_action_get_name(action),widget); |
| 15 | } | 15 | } |
| 16 | 16 | ||
| 17 | +void ui_connect_index_action(GtkAction *action, GtkWidget *widget, int ix, GtkAction **lst) | ||
| 18 | +{ | ||
| 19 | + trace("%s: Connecting indexed action %d",__FUNCTION__,ix); | ||
| 20 | + g_signal_connect(action,"activate",G_CALLBACK(activated),widget); | ||
| 21 | +} | ||
| 22 | + | ||
| 17 | void toggled(GtkToggleAction *action, GtkWidget *widget) | 23 | void toggled(GtkToggleAction *action, GtkWidget *widget) |
| 18 | { | 24 | { |
| 19 | trace("Action %s toggled on widget %p",gtk_action_get_name(GTK_ACTION(action)),widget); | 25 | trace("Action %s toggled on widget %p",gtk_action_get_name(GTK_ACTION(action)),widget); |
| @@ -52,20 +58,26 @@ void show_popup(GtkWidget *button, GtkWidget *menu) | @@ -52,20 +58,26 @@ void show_popup(GtkWidget *button, GtkWidget *menu) | ||
| 52 | 58 | ||
| 53 | int main (int argc, char *argv[]) | 59 | int main (int argc, char *argv[]) |
| 54 | { | 60 | { |
| 55 | - static const gchar *groupname[] = { "default", | ||
| 56 | - "online", | ||
| 57 | - "offline", | ||
| 58 | - "selection", | ||
| 59 | - "clipboard", | ||
| 60 | - "filetransfer", | ||
| 61 | - "paste", | ||
| 62 | - NULL }; | ||
| 63 | - | ||
| 64 | - static const gchar *popupname[] = { "default", | ||
| 65 | - "selection", | ||
| 66 | - "offline", | ||
| 67 | - "dock", | ||
| 68 | - NULL }; | 61 | + static const gchar *groupname[] = { "default", |
| 62 | + "online", | ||
| 63 | + "offline", | ||
| 64 | + "selection", | ||
| 65 | + "clipboard", | ||
| 66 | + "filetransfer", | ||
| 67 | + "paste", | ||
| 68 | + NULL }; | ||
| 69 | + | ||
| 70 | + static const gchar *popupname[] = { "default", | ||
| 71 | + "selection", | ||
| 72 | + "offline", | ||
| 73 | + "dock", | ||
| 74 | + NULL }; | ||
| 75 | + | ||
| 76 | + static const gchar *actionname[] = { "pastenext", | ||
| 77 | + "setfullscreen", | ||
| 78 | + "resetfullscreen", | ||
| 79 | + NULL }; | ||
| 80 | + | ||
| 69 | int f; | 81 | int f; |
| 70 | GtkWidget * window; | 82 | GtkWidget * window; |
| 71 | gchar * path; | 83 | gchar * path; |
| @@ -78,7 +90,7 @@ int main (int argc, char *argv[]) | @@ -78,7 +90,7 @@ int main (int argc, char *argv[]) | ||
| 78 | hbox = gtk_hbox_new(FALSE,5); | 90 | hbox = gtk_hbox_new(FALSE,5); |
| 79 | vbox = gtk_vbox_new(FALSE,5); | 91 | vbox = gtk_vbox_new(FALSE,5); |
| 80 | path = build_data_filename("ui",NULL); | 92 | path = build_data_filename("ui",NULL); |
| 81 | - window = ui_parse_xml_folder(path,groupname,popupname,vbox,NULL); | 93 | + window = ui_parse_xml_folder(path,groupname,popupname,actionname,vbox,NULL); |
| 82 | g_free(path); | 94 | g_free(path); |
| 83 | 95 | ||
| 84 | popup = g_object_get_data(G_OBJECT(window),"popup_menus"); | 96 | popup = g_object_get_data(G_OBJECT(window),"popup_menus"); |
src/gtk/uiparser/uiparser.cbp
| @@ -7,8 +7,8 @@ | @@ -7,8 +7,8 @@ | ||
| 7 | <Option compiler="gcc" /> | 7 | <Option compiler="gcc" /> |
| 8 | <Build> | 8 | <Build> |
| 9 | <Target title="Debug"> | 9 | <Target title="Debug"> |
| 10 | - <Option output=".bin\Debug\uiparser" prefix_auto="1" extension_auto="1" /> | ||
| 11 | - <Option object_output=".obj\Debug\" /> | 10 | + <Option output=".bin/Debug/uiparser" prefix_auto="1" extension_auto="1" /> |
| 11 | + <Option object_output=".obj/Debug/" /> | ||
| 12 | <Option type="1" /> | 12 | <Option type="1" /> |
| 13 | <Option compiler="gcc" /> | 13 | <Option compiler="gcc" /> |
| 14 | <Compiler> | 14 | <Compiler> |
| @@ -17,8 +17,8 @@ | @@ -17,8 +17,8 @@ | ||
| 17 | </Compiler> | 17 | </Compiler> |
| 18 | </Target> | 18 | </Target> |
| 19 | <Target title="Release"> | 19 | <Target title="Release"> |
| 20 | - <Option output=".bin\Release\uiparser" prefix_auto="1" extension_auto="1" /> | ||
| 21 | - <Option object_output=".obj\Release\" /> | 20 | + <Option output=".bin/Release/uiparser" prefix_auto="1" extension_auto="1" /> |
| 21 | + <Option object_output=".obj/Release/" /> | ||
| 22 | <Option type="0" /> | 22 | <Option type="0" /> |
| 23 | <Option compiler="gcc" /> | 23 | <Option compiler="gcc" /> |
| 24 | <Compiler> | 24 | <Compiler> |
| @@ -32,13 +32,13 @@ | @@ -32,13 +32,13 @@ | ||
| 32 | <Compiler> | 32 | <Compiler> |
| 33 | <Add option="-Wall" /> | 33 | <Add option="-Wall" /> |
| 34 | <Add option="`pkg-config gtk+-2.0 --cflags`" /> | 34 | <Add option="`pkg-config gtk+-2.0 --cflags`" /> |
| 35 | - <Add directory="..\..\include" /> | 35 | + <Add directory="../../include" /> |
| 36 | </Compiler> | 36 | </Compiler> |
| 37 | <Linker> | 37 | <Linker> |
| 38 | <Add option="`pkg-config gtk+-2.0 --libs`" /> | 38 | <Add option="`pkg-config gtk+-2.0 --libs`" /> |
| 39 | </Linker> | 39 | </Linker> |
| 40 | - <Unit filename="..\common\common.h.in" /> | ||
| 41 | - <Unit filename="..\common\config.c"> | 40 | + <Unit filename="../common/common.h.in" /> |
| 41 | + <Unit filename="../common/config.c"> | ||
| 42 | <Option compilerVar="CC" /> | 42 | <Option compilerVar="CC" /> |
| 43 | </Unit> | 43 | </Unit> |
| 44 | <Unit filename="accelerator.c"> | 44 | <Unit filename="accelerator.c"> |
| @@ -83,7 +83,6 @@ | @@ -83,7 +83,6 @@ | ||
| 83 | <Unit filename="toolitem.c"> | 83 | <Unit filename="toolitem.c"> |
| 84 | <Option compilerVar="CC" /> | 84 | <Option compilerVar="CC" /> |
| 85 | </Unit> | 85 | </Unit> |
| 86 | - <Unit filename="..\..\..\ui\default.xml" /> | ||
| 87 | <Extensions> | 86 | <Extensions> |
| 88 | <code_completion /> | 87 | <code_completion /> |
| 89 | <debugger /> | 88 | <debugger /> |
src/lib3270/screen.c
| @@ -86,6 +86,10 @@ static unsigned short color_from_fa(unsigned char fa); | @@ -86,6 +86,10 @@ static unsigned short color_from_fa(unsigned char fa); | ||
| 86 | 86 | ||
| 87 | static void addch(H3270 *session, int baddr, unsigned char c, unsigned short attr) | 87 | static void addch(H3270 *session, int baddr, unsigned char c, unsigned short attr) |
| 88 | { | 88 | { |
| 89 | + // If set to keep selection adjust corresponding flag based on the current state | ||
| 90 | + if(lib3270_get_toggle(session,LIB3270_TOGGLE_KEEP_SELECTED)) | ||
| 91 | + attr |= (session->ea_buf[baddr].attr & LIB3270_ATTR_SELECTED); | ||
| 92 | + | ||
| 89 | if(session->ea_buf[baddr].chr == c && session->ea_buf[baddr].attr == attr) | 93 | if(session->ea_buf[baddr].chr == c && session->ea_buf[baddr].attr == attr) |
| 90 | return; | 94 | return; |
| 91 | 95 |