Changeset 99

Show
Ignore:
Timestamp:
05/08/11 17:45:36 (1 year ago)
Author:
Chris Miller
Message:

Update for D2 to use Throwable; use -version=DFL_CanThrowObject to use Object;
DflThrowable? can be used to catch any exception;

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/win32/dfl/application.d

    r82 r99  
    404404            // Execution continues after this so it's not idle. 
    405405        } 
    406         catch(Object e) 
     406        catch(DThrowable e) 
    407407        { 
    408408            onThreadException(e); 
     
    543543                    return; 
    544544                } 
    545                 catch(Object e) 
     545                catch(DThrowable e) 
    546546                { 
    547547                    onThreadException(e); 
     
    874874     
    875875    /// 
    876     void onThreadException(Object e) 
     876    void onThreadException(DThrowable e) 
    877877    { 
    878878        static bool except = false; 
     
    14831483                } 
    14841484            } 
    1485             catch(Object o) 
     1485            catch(DThrowable o) 
    14861486            { 
    14871487                Control ctrl; 
     
    17081708                        pinv.result = pinv.dg(pinv.args); 
    17091709                    } 
    1710                     catch(Object e) 
     1710                    catch(DThrowable e) 
    17111711                    { 
    17121712                        //Application.onThreadException(e); 
    17131713                        try 
    17141714                        { 
    1715                             if(e) 
    1716                                 pinv.exception = e; 
    1717                             else 
    1718                                 pinv.exception = new Object; 
     1715                            pinv.exception = e; 
    17191716                        } 
    1720                         catch(Object e2) 
     1717                        catch(DThrowable e2) 
    17211718                        { 
    17221719                            Application.onThreadException(e2); 
     
    17351732                        pinv.dg(); 
    17361733                    } 
    1737                     catch(Object e) 
     1734                    catch(DThrowable e) 
    17381735                    { 
    17391736                        //Application.onThreadException(e); 
    17401737                        try 
    17411738                        { 
    1742                             if(e) 
    1743                                 pinv.exception = e; 
    1744                             else 
    1745                                 pinv.exception = new Object; 
     1739                            pinv.exception = e; 
    17461740                        } 
    1747                         catch(Object e2) 
     1741                        catch(DThrowable e2) 
    17481742                        { 
    17491743                            Application.onThreadException(e2); 
     
    17591753                    (cast(void function())lparam)(); 
    17601754                } 
    1761                 catch(Object e) 
     1755                catch(DThrowable e) 
    17621756                { 
    17631757                    Application.onThreadException(e); 
     
    17731767                        p.fp(Application.lookupHwnd(hwnd), p.params.ptr[0 .. p.nparams]); 
    17741768                    } 
    1775                     catch(Object e) 
     1769                    catch(DThrowable e) 
    17761770                    { 
    17771771                        Application.onThreadException(e); 
     
    18851879    Object[] args; 
    18861880    Object result; 
    1887     Object exception = null; 
     1881    DThrowable exception = null; 
    18881882} 
    18891883 
     
    18921886{ 
    18931887    void delegate() dg; 
    1894     Object exception = null; 
     1888    DThrowable exception = null; 
    18951889} 
    18961890 
  • trunk/win32/dfl/base.d

    r82 r99  
    3333    } 
    3434} 
     35 
     36 
     37/// 
     38alias DThrowable DflThrowable; 
    3539 
    3640 
  • trunk/win32/dfl/colordialog.d

    r83 r99  
    77 
    88private import dfl.commondialog, dfl.base, dfl.internal.winapi, dfl.internal.wincom; 
    9 private import dfl.internal.utf, dfl.application, dfl.drawing
     9private import dfl.internal.utf, dfl.application, dfl.drawing, dfl.internal.dlib
    1010 
    1111 
     
    228228        } 
    229229    } 
    230     catch(Object e) 
     230    catch(DThrowable e) 
    231231    { 
    232232        Application.onThreadException(e); 
  • trunk/win32/dfl/control.d

    r82 r99  
    29602960                    result = S_OK; 
    29612961                } 
    2962                 catch(Object e) 
     2962                catch(DThrowable e) 
    29632963                { 
    29642964                    Application.onThreadException(e); 
     
    29862986                    result = S_OK; 
    29872987                } 
    2988                 catch(Object e) 
     2988                catch(DThrowable e) 
    29892989                { 
    29902990                    Application.onThreadException(e); 
     
    30093009                    result = S_OK; 
    30103010                } 
    3011                 catch(Object e) 
     3011                catch(DThrowable e) 
    30123012                { 
    30133013                    Application.onThreadException(e); 
     
    30363036                    result = S_OK; 
    30373037                } 
    3038                 catch(Object e) 
     3038                catch(DThrowable e) 
    30393039                { 
    30403040                    Application.onThreadException(e); 
     
    32053205                    result = cast(HRESULT)ea.action; 
    32063206                } 
    3207                 catch(Object e) 
     3207                catch(DThrowable e) 
    32083208                { 
    32093209                    Application.onThreadException(e); 
     
    32273227                    result = ea.useDefaultCursors ? DRAGDROP_S_USEDEFAULTCURSORS : S_OK; 
    32283228                } 
    3229                 catch(Object e) 
     3229                catch(DThrowable e) 
    32303230                { 
    32313231                    Application.onThreadException(e); 
     
    56255625                                    createChildren(); // Might throw. 
    56265626                                } 
    5627                                 catch(Object e) 
     5627                                catch(DThrowable e) 
    56285628                                { 
    56295629                                    Application.onThreadException(e); 
     
    57455745                    } 
    57465746                } 
    5747                 catch(Object e) 
     5747                catch(DThrowable e) 
    57485748                { 
    57495749                    Application.onThreadException(e); 
  • trunk/win32/dfl/data.d

    r82 r99  
    12111211            } 
    12121212        } 
    1213         catch(Object e) 
     1213        catch(DThrowable e) 
    12141214        { 
    12151215            Application.onThreadException(e); 
     
    12401240            result = S_OK; 
    12411241        } 
    1242         catch(Object e) 
     1242        catch(DThrowable e) 
    12431243        { 
    12441244            Application.onThreadException(e); 
     
    12601260            result = S_OK; 
    12611261        } 
    1262         catch(Object e) 
     1262        catch(DThrowable e) 
    12631263        { 
    12641264            Application.onThreadException(e); 
     
    13841384            result = E_OUTOFMEMORY; 
    13851385        } 
    1386         catch(Object e) 
     1386        catch(DThrowable e) 
    13871387        { 
    13881388            Application.onThreadException(e); 
     
    14421442            result = E_OUTOFMEMORY; 
    14431443        } 
    1444         catch(Object e) 
     1444        catch(DThrowable e) 
    14451445        { 
    14461446            Application.onThreadException(e); 
     
    14861486            } 
    14871487        } 
    1488         catch(Object e) 
     1488        catch(DThrowable e) 
    14891489        { 
    14901490            Application.onThreadException(e); 
  • trunk/win32/dfl/event.d

    r74 r99  
    306306    /// 
    307307    // The exception that occured. 
    308     this(Object theException) 
     308    this(DThrowable theException) 
    309309    { 
    310310        except = theException; 
     
    313313     
    314314    /// 
    315     final Object exception() // getter 
     315    final DThrowable exception() // getter 
    316316    { 
    317317        return except; 
     
    320320     
    321321    private: 
    322     Object except; 
     322    DThrowable except; 
    323323} 
    324324 
  • trunk/win32/dfl/filedialog.d

    r88 r99  
    10001000        } 
    10011001    } 
    1002     catch(Object e) 
     1002    catch(DThrowable e) 
    10031003    { 
    10041004        Application.onThreadException(e); 
  • trunk/win32/dfl/folderdialog.d

    r54 r99  
    350350        } 
    351351    } 
    352     catch(Object e) 
     352    catch(DThrowable e) 
    353353    { 
    354354        Application.onThreadException(e); 
  • trunk/win32/dfl/fontdialog.d

    r54 r99  
    444444        } 
    445445    } 
    446     catch(Object e) 
     446    catch(DThrowable e) 
    447447    { 
    448448        Application.onThreadException(e); 
  • trunk/win32/dfl/form.d

    r97 r99  
    495495            createChildren(); // Might throw. 
    496496        } 
    497         catch(Object e) 
     497        catch(DThrowable e) 
    498498        { 
    499499            Application.onThreadException(e); 
  • trunk/win32/dfl/internal/dlib.d

    r93 r99  
    376376     
    377377    alias Object DObject; 
     378    alias Object DThrowable; 
    378379} 
    379380else // Phobos 
     
    582583     
    583584    alias Object DObject; 
     585    version(DFL_D2_AND_ABOVE) 
     586    { 
     587        version(DFL_CanThrowObject) 
     588        { 
     589            alias Object DThrowable; 
     590        } 
     591        else 
     592        { 
     593            alias Throwable DThrowable; 
     594        } 
     595    } 
     596    else 
     597    { 
     598        alias Object DThrowable; 
     599    } 
    584600} 
    585601 
  • trunk/win32/dfl/label.d

    r82 r99  
    416416            } 
    417417        } 
    418         catch(Object e) 
     418        catch(DThrowable e) 
    419419        { 
    420420            Application.onThreadException(e); 
  • trunk/win32/dfl/timer.d

    r74 r99  
    66module dfl.timer; 
    77 
    8 private import dfl.internal.winapi, dfl.event, dfl.base, dfl.application; 
     8private import dfl.internal.winapi, dfl.event, dfl.base, dfl.application, 
     9    dfl.internal.dlib; 
    910 
    1011 
     
    175176        } 
    176177    } 
    177     catch(Object e) 
     178    catch(DThrowable e) 
    178179    { 
    179180        Application.onThreadException(e); 
  • trunk/win32/dfl/tooltip.d

    r54 r99  
    209209            ctrl.createControl(); 
    210210        } 
    211         catch(Object o) 
     211        catch(DThrowable o) 
    212212        { 
    213213            assert(0); // If -ctrl- is a child, make sure the parent is set before setting tool tip text.