Changeset 42
- Timestamp:
- 03/03/08 16:19:57 (7 months ago)
- Files:
-
- trunk/win32/dfl/all.d (modified) (1 diff)
- trunk/win32/dfl/application.d (modified) (1 diff)
- trunk/win32/dfl/button.d (modified) (9 diffs)
- trunk/win32/dfl/control.d (modified) (5 diffs)
- trunk/win32/dfl/drawing.d (modified) (6 diffs)
- trunk/win32/dfl/imagelist.d (modified) (7 diffs)
- trunk/win32/dfl/internal/winapi.d (modified) (2 diffs)
- trunk/win32/dfl/listview.d (modified) (15 diffs)
- trunk/win32/dfl/makelib.bat (modified) (1 diff)
- trunk/win32/dfl/progressbar.d (modified) (1 diff)
- trunk/win32/dfl/statusbar.d (modified) (1 diff)
- trunk/win32/dfl/tabcontrol.d (modified) (1 diff)
- trunk/win32/dfl/treeview.d (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/win32/dfl/all.d
r5 r42 63 63 dfl.clipboard, dfl.commondialog, dfl.richtextbox, dfl.tooltip, 64 64 dfl.combobox, dfl.treeview, dfl.picturebox, dfl.tabcontrol, 65 dfl.listview, dfl.statusbar, dfl.progressbar, dfl.resources; 65 dfl.listview, dfl.statusbar, dfl.progressbar, dfl.resources, 66 dfl.imagelist; 66 67 trunk/win32/dfl/application.d
r37 r42 238 238 activateActCtx(hac, &ul); 239 239 240 _initCommonControls(ICC_STANDARD_CLASSES); // ? 240 _initCommonControls(ICC_STANDARD_CLASSES); 241 242 /+ // Not helping. 243 // Fix issue with image lists now showing... 244 PostMessageA(null, wmDfl, 0, 0); // Posts to this thread. 245 //Application.doEvents(); 246 { 247 MSG msg; 248 GetMessageA(&msg, null, wmDfl, wmDfl); 249 } 250 +/ 241 251 } 242 252 else trunk/win32/dfl/button.d
r36 r42 408 408 body 409 409 { 410 /+ 410 411 if(_picbm) 411 412 { … … 413 414 _picbm = null; 414 415 } 416 +/ 415 417 416 418 _img = null; // In case of exception. … … 418 420 if(img) 419 421 { 422 /+ 420 423 if(cast(Bitmap)img) 421 424 { … … 428 431 else 429 432 { 430 version(Tango)433 if(cast(Picture)img) 431 434 { 432 } 433 else 434 { 435 if(cast(Picture)img) 436 { 437 _picbm = (cast(Picture)img).toBitmap(); 438 imgst = BS_BITMAP; 439 goto not_unsupported; 440 } 435 _picbm = (cast(Picture)img).toBitmap(); 436 imgst = BS_BITMAP; 437 goto not_unsupported; 441 438 } 442 439 443 throw new DflException("Unsupported image format .");440 throw new DflException("Unsupported image format"); 444 441 not_unsupported: ; 442 } 443 +/ 444 switch(img._imgtype(null)) 445 { 446 case 1: 447 imgst = BS_BITMAP; 448 break; 449 450 case 2: 451 imgst = BS_ICON; 452 break; 453 454 default: 455 throw new DflException("Unsupported image format"); 456 not_unsupported: ; 445 457 } 446 458 } … … 467 479 LPARAM lparam = 0; 468 480 481 /+ 469 482 if(bsImageStyle & BS_BITMAP) 470 483 { … … 481 494 return; 482 495 } 496 +/ 497 HGDIOBJ hgo; 498 switch(_img._imgtype(&hgo)) 499 { 500 case 1: 501 wparam = BS_BITMAP; 502 break; 503 504 case 2: 505 wparam = BS_ICON; 506 break; 507 508 default: 509 return; 510 } 511 lparam = cast(LPARAM)hgo; 483 512 484 513 //assert(lparam); … … 500 529 super.onHandleDestroyed(ea); 501 530 531 /+ 502 532 if(_picbm) 503 533 { … … 505 535 _picbm = null; 506 536 } 537 +/ 507 538 } 508 539 … … 511 542 DialogResult dresult = DialogResult.NONE; 512 543 Image _img = null; 513 Bitmap _picbm = null; // If -_img- is a Picture, need to keep a separate Bitmap.544 //Bitmap _picbm = null; // If -_img- is a Picture, need to keep a separate Bitmap. 514 545 } 515 546 trunk/win32/dfl/control.d
r37 r42 3973 3973 3974 3974 UpdateWindow(hwnd); 3975 }3976 3977 3978 ///3979 void dispose()3980 {3981 dispose(true);3982 3975 } 3983 3976 … … 6166 6159 debug 6167 6160 { 6168 er = "the control is being killed";6161 er = "the control is being disposed"; 6169 6162 } 6170 6163 6171 6164 debug(APP_PRINT) 6172 6165 { 6173 printf("Creating Control handle while killing.\n");6166 printf("Creating Control handle while disposing.\n"); 6174 6167 } 6175 6168 … … 6358 6351 6359 6352 /// 6360 // TODO: check if correct implementation. 6361 final void dispose(bool managedToo) 6362 { 6363 if(!isHandleCreated) 6364 return; 6365 6366 if(managedToo) 6353 void dispose() 6354 { 6355 dispose(true); 6356 } 6357 6358 6359 /// 6360 void dispose(bool disposing) 6361 { 6362 if(disposing) 6367 6363 { 6368 6364 killing = true; … … 6377 6373 wtext = wtext.init; 6378 6374 deleteThisBackgroundBrush(); 6375 //ccollection.children = null; // Not GC-safe in dtor. 6379 6376 //ccollection = null; // ? Causes bad things. Leaving it will do just fine. 6380 6377 } 6378 6379 if(!isHandleCreated) 6380 return; 6381 6381 6382 6382 destroyHandle(); … … 6885 6885 6886 6886 void killing(bool byes) // setter 6887 { if(byes) cbits |= CBits.KILLING; else cbits &= ~CBits.KILLING; } 6887 //{ if(byes) cbits |= CBits.KILLING; else cbits &= ~CBits.KILLING; } 6888 { assert(byes); if(byes) cbits |= CBits.KILLING; } 6888 6889 bool killing() // getter 6889 6890 { return (cbits & CBits.KILLING) != 0; } trunk/win32/dfl/drawing.d
r14 r42 939 939 return size.height; 940 940 } 941 942 943 int _imgtype(HGDIOBJ* ph) // internal 944 { 945 if(ph) 946 *ph = HGDIOBJ.init; 947 return 0; // 1 = bitmap; 2 = icon. 948 } 941 949 } 942 950 … … 1086 1094 if(owned) 1087 1095 dispose(); 1096 } 1097 1098 1099 override int _imgtype(HGDIOBJ* ph) // internal 1100 { 1101 if(ph) 1102 *ph = cast(HGDIOBJ)hbm; 1103 return 1; 1088 1104 } 1089 1105 … … 1281 1297 void dispose() 1282 1298 { 1299 if(HBITMAP.init != _hbmimgtype) 1300 { 1301 DeleteObject(_hbmimgtype); 1302 _hbmimgtype = HBITMAP.init; 1303 } 1304 1283 1305 if(ipic) 1284 1306 { … … 1338 1360 final Bitmap toBitmap() 1339 1361 { 1340 Graphics g;1341 1362 Bitmap result; 1342 g = Graphics.getScreen();1363 scope Graphics g = Graphics.getScreen(); 1343 1364 result = toBitmap(g); 1344 g.dispose();1365 //g.dispose(); // scope'd 1345 1366 return result; 1346 1367 } … … 1350 1371 { 1351 1372 return toBitmap(g.handle); 1373 } 1374 1375 1376 HBITMAP _hbmimgtype; 1377 1378 override int _imgtype(HGDIOBJ* ph) // internal 1379 { 1380 if(ph) 1381 { 1382 if(HBITMAP.init == _hbmimgtype) 1383 { 1384 scope Graphics g = Graphics.getScreen(); 1385 _hbmimgtype = toHBitmap(g.handle); 1386 //g.dispose(); // scope'd 1387 } 1388 1389 *ph = _hbmimgtype; 1390 } 1391 return 1; 1352 1392 } 1353 1393 … … 2718 2758 if(owned) 2719 2759 dispose(); 2760 } 2761 2762 2763 int _imgtype(HGDIOBJ* ph) // internal 2764 { 2765 if(ph) 2766 *ph = cast(HGDIOBJ)hi; 2767 return 2; 2720 2768 } 2721 2769 trunk/win32/dfl/imagelist.d
r12 r42 7 7 8 8 import dfl.base, dfl.drawing, dfl.internal.winapi; 9 import dfl.collections; 9 10 10 11 … … 12 13 class ImageList // docmain 13 14 { 15 /// 14 16 class ImageCollection 15 17 { … … 19 21 20 22 21 package Image[] _images; 23 void insert(int index, Image img) 24 { 25 if(index >= _images.length) 26 { 27 add(img); 28 } 29 else 30 { 31 assert(0, "Must add images to the end of the image list"); 32 } 33 } 34 35 36 package: 37 38 Image[] _images; 39 40 41 void _adding(size_t idx, Image val) 42 { 43 assert(val !is null); 44 45 switch(val._imgtype(null)) 46 { 47 case 1: 48 case 2: 49 break; 50 default: 51 debug 52 { 53 assert(0, "Image list: invalid image type"); 54 } 55 _unableimg(); 56 } 57 58 if(val.size != imageSize) 59 { 60 debug 61 { 62 assert(0, "Image list: invalid image size"); 63 } 64 _unableimg(); 65 } 66 } 67 68 69 void _added(size_t idx, Image val) 70 { 71 if(isHandleCreated) 72 { 73 if(idx >= _images.length) 74 { 75 _addimg(val); 76 } 77 else 78 { 79 assert(0); 80 } 81 } 82 } 83 84 85 void _removed(size_t idx, Image val) 86 { 87 if(isHandleCreated) 88 { 89 if(size_t.max == idx) // Clear all. 90 { 91 ImageList_Remove(handle, -1); 92 } 93 else 94 { 95 ImageList_Remove(handle, idx); 96 } 97 } 98 } 99 100 101 public: 102 103 mixin ListWrapArray!(Image, _images, 104 _adding, _added, 105 _blankListCallback!(Image), _removed, 106 false, false, false); 22 107 } 23 108 … … 108 193 } 109 194 110 /+111 195 /// ditto 112 196 // stretch 113 197 final void draw(Graphics g, int x, int y, int width, int height, int index) 114 198 { 115 } 116 +/ 199 // ImageList_DrawEx operates differently if the width or height is zero 200 // so bail out if zero and pretend the zero size image was drawn. 201 if(!width) 202 return; 203 if(!height) 204 return; 205 206 ImageList_DrawEx(handle, index, g.handle, x, y, width, height, 207 CLR_NONE, CLR_NONE, ILD_NORMAL); // ? 208 } 117 209 118 210 … … 126 218 127 219 220 /// 128 221 final HIMAGELIST handle() // getter 129 222 { … … 134 227 135 228 136 ~this() 229 /// 230 void dispose() 231 { 232 return dispose(true); 233 } 234 235 /// ditto 236 void dispose(bool disposing) 137 237 { 138 238 if(isHandleCreated) 139 239 ImageList_Destroy(_hil); 240 _hil = HIMAGELIST.init; 241 242 if(disposing) 243 { 244 //_cimages._images = null; // Not GC-safe in dtor. 245 //_cimages = null; // Could cause bad things. 246 } 247 } 248 249 250 ~this() 251 { 252 dispose(); 140 253 } 141 254 … … 160 273 161 274 UINT flags = 0; 162 /+163 275 switch(_depth) 164 276 { 165 277 case ColorDepth.DEPTH_4BIT: flags = ILC_COLOR4; break; 166 default: case DEPTH_8BIT: flags = ILC_COLOR8; break;278 default: case ColorDepth.DEPTH_8BIT: flags = ILC_COLOR8; break; 167 279 case ColorDepth.DEPTH_16BIT: flags = ILC_COLOR16; break; 168 280 case ColorDepth.DEPTH_24BIT: flags = ILC_COLOR24; break; 169 281 case ColorDepth.DEPTH_32BIT: flags = ILC_COLOR32; break; 170 282 } 171 +/172 283 flags |= _depth; 173 284 flags |= ILC_MASK; // ? 174 285 175 _hil = ImageList_Create(_w, _h, flags, _cimages._images.length, 65535); // ? 286 // Note: cGrow is not a limit, but how many images to preallocate each grow. 287 _hil = ImageList_Create(_w, _h, flags, _cimages._images.length, 8 + _cimages._images.length / 4); 288 if(!_hil) 289 throw new Exception("Unable to create image list"); 290 291 foreach(img; _cimages._images) 292 { 293 _addimg(img); 294 } 295 } 296 297 298 void _unableimg() 299 { 300 throw new DflException("Unable to add image to image list"); 301 } 302 303 304 void _addimg(Image img) 305 { 306 assert(isHandleCreated); 307 308 HGDIOBJ hgo; 309 int result; 310 switch(img._imgtype(&hgo)) 311 { 312 case 1: 313 { 314 COLORREF cr; 315 if(_transcolor == Color.empty 316 || _transcolor == Color.transparent) 317 { 318 cr = CLR_NONE; // ? 319 } 320 else 321 { 322 cr = _transcolor.toRgb(); 323 } 324 result = ImageList_AddMasked(_hil, cast(HBITMAP)hgo, cr); 325 } 326 break; 327 328 case 2: 329 result = ImageList_AddIcon(_hil, cast(HICON)hgo); 330 break; 331 332 default: 333 result = -1; 334 } 335 336 //if(-1 == result) 337 // _unableimg(); 176 338 } 177 339 } trunk/win32/dfl/internal/winapi.d
r19 r42 1290 1290 LVS_EX_UNDERLINECOLD = 0x00001000, 1291 1291 LVS_EX_MULTIWORKAREAS = 0x00002000, 1292 } 1293 1294 1295 enum 1296 { 1297 LVSIL_NORMAL = 0, 1298 LVSIL_SMALL = 1, 1299 LVSIL_STATE = 2, 1300 } 1301 1302 1303 enum 1304 { 1305 I_IMAGECALLBACK = -1, 1292 1306 } 1293 1307 … … 2791 2805 BOOL ImageList_Draw(HIMAGELIST himl, int i, HDC hdcDst, int x, int y, UINT fStyle); 2792 2806 BOOL ImageList_DrawEx(HIMAGELIST himl, int i, HDC hdcDst, int x, int y, int dx, int dy, COLORREF rgbBk, COLORREF rgbFg, UINT fStyle); 2807 int ImageList_Add(HIMAGELIST himl, HBITMAP hbmImage, HBITMAP hbmMask); 2808 int ImageList_AddIcon(HIMAGELIST himl, HICON hicon); 2809 int ImageList_AddMasked(HIMAGELIST himl, HBITMAP hbmImage, COLORREF crMask); 2810 BOOL ImageList_Remove(HIMAGELIST himl, int i); 2793 2811 2794 2812 //} // Temporary. trunk/win32/dfl/listview.d
r41 r42 10 10 private import dfl.base, dfl.control, dfl.internal.winapi, dfl.application; 11 11 private import dfl.event, dfl.drawing, dfl.collections, dfl.internal.utf; 12 private import dfl.imagelist; 12 13 13 14 … … 393 394 394 395 396 /// 397 final void imageIndex(int index) // setter 398 { 399 this._imgidx = index; 400 401 if(lview && lview.created) 402 lview.updateItem(this); 403 } 404 405 /// ditto 406 final int imageIndex() // getter 407 { 408 return _imgidx; 409 } 410 411 395 412 private: 396 413 package ListView lview = null; 414 Object _tag = null; 415 package ListViewSubItemCollection isubs = null; 416 int _imgidx = -1; 397 417 char[] _txt; 398 418 package CallText calltxt; 399 Object _tag = null;400 package ListViewSubItemCollection isubs = null;401 419 } 402 420 … … 1176 1194 this() 1177 1195 { 1178 _initCommonControls(ICC_LISTVIEW_CLASSES);1179 1180 1196 _initListview(); 1181 1197 … … 1186 1202 checkedis = new CheckedIndexCollection(this); 1187 1203 1188 wstyle |= WS_TABSTOP | LVS_ALIGNTOP | LVS_AUTOARRANGE ; // LVS_SHAREIMAGELISTS1204 wstyle |= WS_TABSTOP | LVS_ALIGNTOP | LVS_AUTOARRANGE | LVS_SHAREIMAGELISTS; 1189 1205 wexstyle |= WS_EX_CLIENTEDGE; 1190 1206 ctrlStyle |= ControlStyles.SELECTABLE; … … 1907 1923 1908 1924 1925 /// 1926 void largeImageList(ImageList imglist) // setter 1927 { 1928 if(isHandleCreated) 1929 { 1930 prevwproc(LVM_SETIMAGELIST, LVSIL_NORMAL, 1931 cast(LPARAM)(imglist ? imglist.handle : cast(HIMAGELIST)null)); 1932 } 1933 1934 _lgimglist = imglist; 1935 } 1936 1937 /// ditto 1938 ImageList largeImageList() // getter 1939 { 1940 return _lgimglist; 1941 } 1942 1943 1944 /// 1945 void smallImageList(ImageList imglist) // setter 1946 { 1947 if(isHandleCreated) 1948 { 1949 prevwproc(LVM_SETIMAGELIST, LVSIL_SMALL, 1950 cast(LPARAM)(imglist ? imglist.handle : cast(HIMAGELIST)null)); 1951 } 1952 1953 _smimglist = imglist; 1954 } 1955 1956 /// ditto 1957 ImageList smallImageList() // getter 1958 { 1959 return _smimglist; 1960 } 1961 1962 1963 /// 1964 void stateImageList(ImageList imglist) // setter 1965 { 1966 if(isHandleCreated) 1967 { 1968 prevwproc(LVM_SETIMAGELIST, LVSIL_STATE, 1969 cast(LPARAM)(imglist ? imglist.handle : cast(HIMAGELIST)null)); 1970 } 1971 1972 _stimglist = imglist; 1973 } 1974 1975 /// ditto 1976 ImageList stateImageList() // getter 1977 { 1978 return _stimglist; 1979 } 1980 1981 1909 1982 // TODO: 1910 1983 // itemActivate, itemDrag … … 2119 2192 color = foreColor; 2120 2193 prevwproc(LVM_SETTEXTCOLOR, 0, cast(LPARAM)color.toRgb()); 2194 2195 if(_lgimglist) 2196 prevwproc(LVM_SETIMAGELIST, LVSIL_NORMAL, cast(LPARAM)_lgimglist.handle); 2197 if(_smimglist) 2198 prevwproc(LVM_SETIMAGELIST, LVSIL_SMALL, cast(LPARAM)_smimglist.handle); 2199 if(_stimglist) 2200 prevwproc(LVM_SETIMAGELIST, LVSIL_STATE, cast(LPARAM)_stimglist.handle); 2121 2201 2122 2202 cols.doListHeaders(); … … 2153 2233 if(!lvdi.item.iSubItem) // Item. 2154 2234 { 2155 lvdi.item.pszText = item.calltxt.ansi; 2235 if(lvdi.item.mask & LVIF_IMAGE) 2236 lvdi.item.iImage = item._imgidx; 2237 2238 if(lvdi.item.mask & LVIF_TEXT) 2239 lvdi.item.pszText = item.calltxt.ansi; 2156 2240 } 2157 2241 else // Sub item. 2158 2242 { 2159 if(lvdi.item.iSubItem <= item.subItems.length) 2160 lvdi.item.pszText = item.subItems[lvdi.item.iSubItem - 1].calltxt.ansi; 2243 if(lvdi.item.mask & LVIF_TEXT) 2244 { 2245 if(lvdi.item.iSubItem <= item.subItems.length) 2246 lvdi.item.pszText = item.subItems[lvdi.item.iSubItem - 1].calltxt.ansi; 2247 } 2161 2248 } 2162 2249 } … … 2176 2263 if(!lvdi.item.iSubItem) // Item. 2177 2264 { 2178 lvdi.item.pszText = item.calltxt.unicode; 2265 if(lvdi.item.mask & LVIF_IMAGE) 2266 lvdi.item.iImage = item._imgidx; 2267 2268 if(lvdi.item.mask & LVIF_TEXT) 2269 lvdi.item.pszText = item.calltxt.unicode; 2179 2270 } 2180 2271 else // Sub item. 2181 2272 { 2182 if(lvdi.item.iSubItem <= item.subItems.length) 2183 lvdi.item.pszText = item.subItems[lvdi.item.iSubItem - 1].calltxt.unicode; 2273 if(lvdi.item.mask & LVIF_TEXT) 2274 { 2275 if(lvdi.item.iSubItem <= item.subItems.length) 2276 lvdi.item.pszText = item.subItems[lvdi.item.iSubItem - 1].calltxt.unicode; 2277 } 2184 2278 } 2185 2279 } … … 2353 2447 CheckedIndexCollection checkedis; 2354 2448 int delegate(ListViewItem, ListViewItem) _sortproc; 2449 ImageList _lgimglist, _smimglist, _stimglist; 2355 2450 2356 2451 … … 2406 2501 // If -subItemIndex- is 0 it's an item not a sub item. 2407 2502 // Returns the insertion index or -1 on failure. 2408 package final LRESULT _ins(int index, LPARAM lparam, char[] itemText, int subItemIndex )2503 package final LRESULT _ins(int index, LPARAM lparam, char[] itemText, int subItemIndex, int imageIndex = -1) 2409 2504 in 2410 2505 { … … 2420 2515 LV_ITEMA lvi; 2421 2516 lvi.mask = LVIF_TEXT | LVIF_PARAM; 2517 //if(-1 != imageIndex) 2518 if(!subItemIndex) 2519 lvi.mask |= LVIF_IMAGE; 2422 2520 lvi.iItem = index; 2423 2521 lvi.iSubItem = subItemIndex; … … 2425 2523 lvi.pszText = LPSTR_TEXTCALLBACKA; 2426 2524 lvi.lParam = lparam; 2525 //lvi.iImage = imageIndex; 2526 lvi.iImage = I_IMAGECALLBACK; 2427 2527 return prevwproc(LVM_INSERTITEMA, 0, cast(LPARAM)&lvi); 2428 2528 } … … 2431 2531 package final LRESULT _ins(int index, ListViewItem item) 2432 2532 { 2433 return _ins(index, cast(LPARAM)cast(void*)item, item.text, 0); 2533 //return _ins(index, cast(LPARAM)cast(void*)item, item.text, 0); 2534 return _ins(index, cast(LPARAM)cast(void*)item, item.text, 0, item._imgidx); 2434 2535 } 2435 2536 … … 2484 2585 // If -subItemIndex- is 0 it's an item not a sub item. 2485 2586 // Returns FALSE on failure. 2486 LRESULT updateItem Text(int index, char[] newText, int subItemIndex = 0)2587 LRESULT updateItem(int index) 2487 2588 in 2488 2589 { … … 2494 2595 } 2495 2596 2496 2497 LRESULT updateItemText(ListViewItem item, char[] newText, int subItemIndex = 0) 2597 LRESULT updateItem(ListViewItem item) 2498 2598 { 2499 2599 int index; 2500 2600 index = item.index; 2501 2601 assert(-1 != index); 2502 return updateItemText(index, newText, subItemIndex); 2602 return updateItem(index); 2603 } 2604 2605 2606 LRESULT updateItemText(int index, char[] newText, int subItemIndex = 0) 2607 { 2608 return updateItem(index); 2609 } 2610 2611 LRESULT updateItemText(ListViewItem item, char[] newText, int subItemIndex = 0) 2612 { 2613 return updateItem(item); 2503 2614 } 2504 2615 trunk/win32/dfl/makelib.bat
r11 r42 31 31 :dfl_not_tango_files 32 32 33 set dfl_files=base.d application.d internal/dlib.d internal/clib.d internal/utf.d internal/com.d control.d form.d registry.d drawing.d menu.d notifyicon.d commondialog.d filedialog.d folderdialog.d panel.d textbox.d richtextbox.d picturebox.d listbox.d groupbox.d splitter.d usercontrol.d button.d label.d collections.d internal/winapi.d internal/wincom.d event.d socket.d timer.d environment.d messagebox.d tooltip.d combobox.d treeview.d tabcontrol.d colordialog.d listview.d data.d clipboard.d fontdialog.d progressbar.d resources.d statusbar.d %_stdcwindowsd%33 set dfl_files=base.d application.d internal/dlib.d internal/clib.d internal/utf.d internal/com.d control.d form.d registry.d drawing.d menu.d notifyicon.d commondialog.d filedialog.d folderdialog.d panel.d textbox.d richtextbox.d picturebox.d listbox.d groupbox.d splitter.d usercontrol.d button.d label.d collections.d internal/winapi.d internal/wincom.d event.d socket.d timer.d environment.d messagebox.d tooltip.d combobox.d treeview.d tabcontrol.d colordialog.d listview.d data.d clipboard.d fontdialog.d progressbar.d resources.d statusbar.d imagelist.d %_stdcwindowsd% 34 34 35 set dfl_objs=base.obj application.obj dlib.obj clib.obj utf.obj com.obj control.obj form.obj registry.obj drawing.obj menu.obj notifyicon.obj commondialog.obj filedialog.obj folderdialog.obj panel.obj textbox.obj richtextbox.obj picturebox.obj listbox.obj groupbox.obj splitter.obj usercontrol.obj button.obj label.obj collections.obj winapi.obj wincom.obj event.obj socket.obj timer.obj environment.obj messagebox.obj tooltip.obj combobox.obj treeview.obj tabcontrol.obj colordialog.obj listview.obj data.obj clipboard.obj fontdialog.obj progressbar.obj resources.obj statusbar.obj %_stdcwindowsobj%35 set dfl_objs=base.obj application.obj dlib.obj clib.obj utf.obj com.obj control.obj form.obj registry.obj drawing.obj menu.obj notifyicon.obj commondialog.obj filedialog.obj folderdialog.obj panel.obj textbox.obj richtextbox.obj picturebox.obj listbox.obj groupbox.obj splitter.obj usercontrol.obj button.obj label.obj collections.obj winapi.obj wincom.obj event.obj socket.obj timer.obj environment.obj messagebox.obj tooltip.obj combobox.obj treeview.obj tabcontrol.obj colordialog.obj listview.obj data.obj clipboard.obj fontdialog.obj progressbar.obj resources.obj statusbar.obj imagelist.obj %_stdcwindowsobj% 36 36 37 37 @rem Also update link pragmas for build. trunk/win32/dfl/progressbar.d
r7 r42 19 19 this() 20 20 { 21 _initCommonControls(ICC_PROGRESS_CLASS);22 23 21 _initProgressbar(); 24 22 trunk/win32/dfl/statusbar.d
r7 r42 401 401 this() 402 402 { 403 _initCommonControls(ICC_BAR_CLASSES);404 405 403 _initStatusbar(); 406 404 trunk/win32/dfl/tabcontrol.d
r39 r42 367 367 this() 368 368 { 369 _initCommonControls(ICC_TAB_CLASSES);370 371 369 _initTabcontrol(); 372 370 trunk/win32/dfl/treeview.d
r7 r42 959 959 this() 960 960 { 961 _initCommonControls(ICC_TREEVIEW_CLASSES);962 963 961 _initTreeview(); 964 962
