Tools__ObjectModuleInformation.st
changeset 2739 8efd89a9863d
parent 2658 c284507a1279
child 2763 c36ead4db5bc
equal deleted inserted replaced
2738:10db2dc54f37 2739:8efd89a9863d
   981     ].
   981     ].
   982 
   982 
   983     module := objectHandles at:sel.
   983     module := objectHandles at:sel.
   984     fileName := module pathName.
   984     fileName := module pathName.
   985 
   985 
       
   986     self canUnloadSelectedDLL value:true.
       
   987 
   986     module isMethodHandle ifTrue:[
   988     module isMethodHandle ifTrue:[
   987         |method nm entry1 entry2 entry3|
   989         |method nm entry1 entry2 entry3|
   988 
       
   989         self canUnloadSelectedDLL value:true.
       
   990 
   990 
   991         self middleLabelHolder value:'Compiled Method:'.
   991         self middleLabelHolder value:'Compiled Method:'.
   992 
   992 
   993         (method := module method) isNil ifTrue:[
   993         (method := module method) isNil ifTrue:[
   994             nm := '** removed **'.
   994             nm := '** removed **'.
  1292 unloadSelectedModuleAndRemoveClasses
  1292 unloadSelectedModuleAndRemoveClasses
  1293     self unloadSelectedModuleRemoveClasses:true
  1293     self unloadSelectedModuleRemoveClasses:true
  1294 !
  1294 !
  1295 
  1295 
  1296 unloadSelectedModuleRemoveClasses:doRemoveClasses
  1296 unloadSelectedModuleRemoveClasses:doRemoveClasses
  1297     (Dialog 
  1297     |module dll|
  1298         confirm:'This is a possibly dangerous operation, as the DLL is unloaded without caring for 
  1298 
       
  1299     module := allModules at:self selectedModuleIndex ifAbsent:nil.
       
  1300     module isNil ifTrue:[
       
  1301         dll := objectHandles at:self selectedModuleIndex ifAbsent:nil.
       
  1302     ].
       
  1303     module notNil ifTrue:[
       
  1304         (Dialog 
       
  1305             confirm:'This is a possibly dangerous operation, as the DLL is unloaded without caring for 
  1299 proper package-deinstallation procedures. Please use this only in repair situations and when the 
  1306 proper package-deinstallation procedures. Please use this only in repair situations and when the 
  1300 regular unloadPackage operation fails.
  1307 regular unloadPackage operation fails.
  1301 
  1308 
  1302 Continue ?')
  1309 Continue ?')
  1303     ifFalse:[
  1310         ifFalse:[
  1304         ^ self  
  1311             ^ self  
       
  1312         ].
  1305     ].
  1313     ].
  1306 
  1314 
  1307     self withWaitCursorDo:[
  1315     self withWaitCursorDo:[
  1308         |info idx handle pathName|
  1316         |info idx handle pathName|
  1309 
  1317 
  1310         info := self selectedModuleInfo.
  1318         info := self selectedModuleInfo.
  1311         handle := objectHandles at:(self selectedModuleIndex).
  1319         handle := objectHandles at:(self selectedModuleIndex).
  1312         self selectedModuleIndexHolder value:nil.
  1320         self selectedModuleIndexHolder value:nil.
  1313 
  1321 
  1314         info isNil ifTrue:[
  1322         info isNil ifTrue:[
  1315             "/ selected a method
  1323             "/ selected a method/dll
  1316             "/ idx := idx - allModules size.
  1324             "/ idx := idx - allModules size.
  1317             pathName := handle pathName.
  1325             pathName := handle pathName.
  1318         ] ifFalse:[
  1326         ] ifFalse:[
  1319             "/ selected a package
  1327             "/ selected a package
  1320             pathName := info pathName.
  1328             pathName := info pathName.