equal
deleted
inserted
replaced
2370 !UIPainter methodsFor:'private'! |
2370 !UIPainter methodsFor:'private'! |
2371 |
2371 |
2372 askForModification |
2372 askForModification |
2373 "asks for window spec modification" |
2373 "asks for window spec modification" |
2374 |
2374 |
|
2375 |painter| |
|
2376 |
|
2377 painter := self painter. |
|
2378 |
2375 self askForSectionModification. |
2379 self askForSectionModification. |
2376 |
2380 |
2377 (modified or: [self painter isModified or: [self helpTool modified]]) |
2381 |
2378 ifTrue: |
2382 (modified or: [painter isModified or: [self helpTool modified]]) |
2379 [ |
2383 ifTrue:[ |
2380 ((YesNoBox title:(resources string:'Window Spec was modified !!')) |
2384 ((YesNoBox title:(resources string:'Window Spec was modified !!')) |
2381 noText:(resources string:'Cancel'); |
2385 noText:(resources string:'Cancel'); |
2382 yesText:(resources string:'Forget it and proceed'); |
2386 yesText:(resources string:'Forget it and proceed'); |
2383 showAtPointer; |
2387 showAtPointer; |
2384 accepted) ifFalse: [^false]. |
2388 accepted) ifFalse: [^false]. |
2385 modified := false. |
2389 modified := false. |
2386 self painter resetModification |
2390 painter resetModification |
2387 ]. |
2391 ]. |
2388 ^true |
2392 ^true |
2389 |
2393 |
2390 "Modified: / 20.5.1998 / 02:03:16 / cg" |
2394 "Modified: / 20.5.1998 / 02:03:16 / cg" |
2391 ! |
2395 ! |
3456 |code painter cls ns| |
3460 |code painter cls ns| |
3457 |
3461 |
3458 self askForSectionModification. |
3462 self askForSectionModification. |
3459 |
3463 |
3460 self hasSpecClassAndSelector ifFalse:[ |
3464 self hasSpecClassAndSelector ifFalse:[ |
3461 self doDefineClassAndSelector isNil ifTrue: [^nil] |
3465 self doDefineClassAndSelector isNil ifTrue: [^nil] |
3462 ]. |
3466 ]. |
3463 |
3467 |
3464 (specClass notNil and: [(cls := Smalltalk at: specClass asSymbol) isClass]) ifFalse:[ |
3468 (specClass notNil and: [(cls := Smalltalk at: specClass asSymbol) isClass]) ifFalse:[ |
3465 self warn:('Oops - cannot save - class not found: ' , specClass). |
3469 self warn:('Oops - cannot save - class not found: ' , specClass). |
3466 ^nil |
3470 ^nil |
3467 ]. |
3471 ]. |
3468 |
3472 |
3469 "/ specClass notNil ifTrue:[ |
3473 "/ specClass notNil ifTrue:[ |
3470 "/ (specClass includes:$:) ifFalse:[ |
3474 "/ (specClass includes:$:) ifFalse:[ |
3471 "/ (ns := Smalltalk defaultNameSpace) notNil ifTrue:[ |
3475 "/ (ns := Smalltalk defaultNameSpace) notNil ifTrue:[ |
3492 "/ specClass := cls name. |
3496 "/ specClass := cls name. |
3493 "/ ]. |
3497 "/ ]. |
3494 |
3498 |
3495 painter := self painter. |
3499 painter := self painter. |
3496 painter |
3500 painter |
3497 className:specClass |
3501 className:specClass |
3498 superclassName:specSuperclass |
3502 superclassName:specSuperclass |
3499 selector:specSelector. |
3503 selector:specSelector. |
3500 |
3504 |
3501 code := painter generateWindowSpecMethodSource withCRs. |
3505 code := painter generateWindowSpecMethodSource withCRs. |
3502 |
3506 |
3503 Transcript showCR:'generating windowSpec code...'. |
3507 Transcript showCR:'generating windowSpec code...'. |
3504 |
3508 |
3507 self helpTool installHelpSpecsOnClass:specClass. |
3511 self helpTool installHelpSpecsOnClass:specClass. |
3508 |
3512 |
3509 self updateInfoLabel. |
3513 self updateInfoLabel. |
3510 modified := false. |
3514 modified := false. |
3511 painter resetModification. |
3515 painter resetModification. |
3512 |
|
3513 (cls class implements: specSelector) ifTrue:[ |
3516 (cls class implements: specSelector) ifTrue:[ |
3514 self addToHistory: (specClass, ' ', specSelector) -> #loadFromMessage:. |
3517 self addToHistory: (specClass, ' ', specSelector) -> #loadFromMessage:. |
3515 ]. |
3518 ]. |
3516 |
|
3517 |
3519 |
3518 ! |
3520 ! |
3519 |
3521 |
3520 doSaveAs |
3522 doSaveAs |
3521 "opens a ResourceSelectionBrowser for saving the window spec on a class" |
3523 "opens a ResourceSelectionBrowser for saving the window spec on a class" |