class: Tools::InlineMessageDialog
authorClaus Gittinger <cg@exept.de>
Fri, 19 Dec 2014 02:34:01 +0100
changeset 15054 98d0d360d297
parent 15053 264292b5eb1b
child 15055 458236452726
class: Tools::InlineMessageDialog class definition added: #progressIndicatorForegroundHolder changed:6 methods configurable colors
Tools__InlineMessageDialog.st
--- a/Tools__InlineMessageDialog.st	Fri Dec 19 00:15:24 2014 +0100
+++ b/Tools__InlineMessageDialog.st	Fri Dec 19 02:34:01 2014 +0100
@@ -31,7 +31,8 @@
 	instanceVariableNames:'messageHolder progressHolder backgroundColorHolder
 		backgroundColorOrDefaultHolder progressView panelView
 		panelViewComponents specHolder panelShownHolder panelHiddenHolder
-		worker layout changeLayoutUponShowHide'
+		worker layout changeLayoutUponShowHide
+		progressIndicatorForegroundHolder'
 	classVariableNames:''
 	poolDictionaries:''
 	category:'Interface-Tools'
@@ -109,15 +110,14 @@
 !InlineMessageDialog class methodsFor:'accessing-colors'!
 
 defaultInformationBackground
-
-    ^(Color red:100.0 green:78.0392156862745 blue:22.7450980392157)
+    ^ (Color red:100.0 green:78 blue:23)
 
     "Created: / 10-04-2012 / 19:31:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 defaultWarningBackground
 
-    ^(Color red:76.078431372549 green:43.1372549019608 blue:43.1372549019608)
+    ^(Color red:76 green:43 blue:43)
 
     "Created: / 10-04-2012 / 19:30:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
@@ -181,53 +181,53 @@
     <resource: #canvas>
 
     ^ 
-     #(FullSpec
-        name: progressInfoSpec
-        window: 
-       (WindowSpec
-          label: 'ProgressInfo'
-          name: 'ProgressInfo'
-          min: (Point 10 10)
-          bounds: (Rectangle 0 0 800 40)
-          forceRecursiveBackgroundOfDefaultBackground: true
-        )
-        component: 
-       (SpecCollection
-          collection: (
-           (ViewSpec
-              name: 'Box1'
-              layout: (LayoutFrame 0 0 0 0 0 1 0 1)
-              level: 0
-              backgroundChannel: backgroundColorOrDefaultHolder
-              component: 
-             (SpecCollection
-                collection: (
-                 (LabelSpec
-                    label: 'Label'
-                    name: 'Message'
-                    layout: (LayoutFrame 0 0 0 0 -20 1 20 0)
-                    backgroundChannel: backgroundColorOrDefaultHolder
-                    translateLabel: true
-                    labelChannel: messageHolder
-                    adjust: left
-                  )
-                 (ProgressIndicatorSpec
-                    name: 'ProgressIndicator'
-                    layout: (LayoutFrame 0 0 -20 1 -20 1 -3 1)
-                    level: 0
-                    backgroundChannel: backgroundColorOrDefaultHolder
-                    model: progressHolder
-                    foregroundColor: (Color 52.156862745098 37.2549019607843 0.0)
-                    postBuildCallback: postBuildProgressView:
-                  )
+    #(FullSpec
+       name: progressInfoSpec
+       window: 
+      (WindowSpec
+         label: 'ProgressInfo'
+         name: 'ProgressInfo'
+         min: (Point 10 10)
+         bounds: (Rectangle 0 0 800 40)
+         forceRecursiveBackgroundOfDefaultBackground: true
+       )
+       component: 
+      (SpecCollection
+         collection: (
+          (ViewSpec
+             name: 'Box1'
+             layout: (LayoutFrame 0 0 0 0 0 1 0 1)
+             level: 0
+             backgroundChannel: backgroundColorOrDefaultHolder
+             component: 
+            (SpecCollection
+               collection: (
+                (LabelSpec
+                   label: 'Label'
+                   name: 'Message'
+                   layout: (LayoutFrame 0 0 0 0 -20 1 20 0)
+                   backgroundChannel: backgroundColorOrDefaultHolder
+                   translateLabel: true
+                   labelChannel: messageHolder
+                   adjust: left
                  )
-               
-              )
-            )
+                (ProgressIndicatorSpec
+                   name: 'ProgressIndicator'
+                   layout: (LayoutFrame 0 0 -20 1 -20 1 -3 1)
+                   level: 0
+                   backgroundChannel: backgroundColorOrDefaultHolder
+                   foregroundChannel: progressIndicatorForegroundHolder
+                   model: progressHolder
+                   postBuildCallback: postBuildProgressView:
+                 )
+                )
+              
+             )
            )
-         
-        )
-      )
+          )
+        
+       )
+     )
 !
 
 warningInfoSpec
@@ -318,7 +318,7 @@
 !InlineMessageDialog class methodsFor:'others'!
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__InlineMessageDialog.st,v 1.15 2014-11-07 11:13:30 vrany Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__InlineMessageDialog.st,v 1.16 2014-12-19 01:34:01 cg Exp $'
 ! !
 
 !InlineMessageDialog methodsFor:'accessing'!
@@ -328,7 +328,8 @@
      not set"
 
     backgroundColorHolder isNil ifTrue:[
-        self backgroundColorOrDefaultHolder value: aColor
+        self backgroundColorOrDefaultHolder value: aColor.
+        self progressIndicatorForegroundHolder value:(aColor darkened).
     ]
 
     "Created: / 10-04-2012 / 19:38:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
@@ -479,16 +480,30 @@
 !
 
 beProgress
+    |colorOrNil|
 
-    self backgroundColor: self class defaultInformationBackground.
+    "/ never, ever use explicit colors. 
+    "/ If at all, ask the stylesheet and add it to your personal one.
+    "/ (Don't expect otherss to also like your color preferences)
+"/    colorOrNil := self class defaultInformationBackground.
+
+     colorOrNil := View styleSheet colorAt:'inlineMessageDialog.information.backgroundColor' default:View defaultBackgroundColor.
+    self backgroundColor: colorOrNil.
     self specHolder value: #progressInfoSpec
 
     "Created: / 11-04-2012 / 11:41:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 beWarning
+    |colorOrNil|
 
-    self backgroundColor: self class defaultWarningBackground.
+    "/ never, ever use explicit colors. 
+    "/ If at all, ask the stylesheet and add it to your personal one.
+    "/ (Don't expect others to also like your color preferences)
+
+    "/ colorOrNil := self class defaultWarningBackground.
+    colorOrNil := View styleSheet colorAt:'inlineMessageDialog.warning.backgroundColor' default:(self class defaultWarningBackground).
+    self backgroundColor: colorOrNil.
     self specHolder value: #messageInfoSpec
 
     "Created: / 11-04-2012 / 11:41:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
@@ -618,6 +633,13 @@
     ^ progressHolder.
 !
 
+progressIndicatorForegroundHolder
+    progressIndicatorForegroundHolder isNil ifTrue:[
+        progressIndicatorForegroundHolder := ValueHolder new.
+    ].
+    ^ progressIndicatorForegroundHolder
+!
+
 specHolder
     "return/create the 'specHolder' value holder (automatically generated)"
 
@@ -958,7 +980,7 @@
 !InlineMessageDialog class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__InlineMessageDialog.st,v 1.15 2014-11-07 11:13:30 vrany Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__InlineMessageDialog.st,v 1.16 2014-12-19 01:34:01 cg Exp $'
 !
 
 version_HG
@@ -967,6 +989,6 @@
 !
 
 version_SVN
-    ^ '$Id: Tools__InlineMessageDialog.st,v 1.15 2014-11-07 11:13:30 vrany Exp $'
+    ^ '$Id: Tools__InlineMessageDialog.st,v 1.16 2014-12-19 01:34:01 cg Exp $'
 ! !