Reduce the complexity of user interface themes
In general, user interface themes should inherit directly from UITheme, not from a chain of themes. When you have a chain of themes, you are stuck with the intermediate themes, whether you need/use them or not. Consider GLMUITheme. Currently it is under UIThemeWatery2, which is under UIThemeWatery, which is under UITheme. Some characteristics inherited from the chain are missing, but in principal, GLMUITheme can be moved directly under UITheme with just 3 changes. 1. Add an instanceVariable 'windowActiveDropShadowStyle' UITheme subclass: #GLMUITheme instanceVariableNames: 'windowActiveDropShadowStyle' classVariableNames: '' poolDictionaries: '' category: 'Glamour-Morphic-Theme' 2. Add a class method isAbstract "Answer whether the receiver is considered to be abstract." ^false 3. Add an instance method windowActiveDropShadowStyle: anObject "Set the value of windowActiveDropShadowStyle" windowActiveDropShadowStyle := anObject Because GLMOrangeUITheme inherits these changes, it does not need modification. |
Thanks.
May be the windowActiveDropShadowStyle could be just added to the UITheme class? Open a bug entry and attach code or slice there so that - have a look - not forget to integrate the fix. Stef > Reduce the complexity of user interface themes > > In general, user interface themes should inherit directly from UITheme, not > from a chain of themes. When you have a chain of themes, you are stuck with > the intermediate themes, whether you need/use them or not. Consider > GLMUITheme. Currently it is under UIThemeWatery2, which is under > UIThemeWatery, which is under UITheme. > > Some characteristics inherited from the chain are missing, but in principal, > GLMUITheme can be moved directly under UITheme with just 3 changes. > > 1. Add an instanceVariable 'windowActiveDropShadowStyle' > > UITheme subclass: #GLMUITheme > instanceVariableNames: 'windowActiveDropShadowStyle' > classVariableNames: '' > poolDictionaries: '' > category: 'Glamour-Morphic-Theme' > > 2. Add a class method > > isAbstract > "Answer whether the receiver is considered to be abstract." > ^false > > 3. Add an instance method > > windowActiveDropShadowStyle: anObject > "Set the value of windowActiveDropShadowStyle" > windowActiveDropShadowStyle := anObject > > > Because GLMOrangeUITheme inherits these changes, it does not need > modification. > > > -- > View this message in context: http://forum.world.st/A-step-toward-reducing-complexity-tp3404504p3404504.html > Sent from the Pharo Smalltalk mailing list archive at Nabble.com. > |
Thanks, Doug. This was on my to do list for a long time.
Just a note: GLMUITheme is part of Glamour. Please do not fork it in Pharo and integrate fixes there because then it will just get messy. I will integrate it in Glamour. If you want to evolve it in the context of Pharo, you should rename it an put it in a different package (this would probably make sense anyway). Cheers, Doru On 25 Mar 2011, at 08:44, Stéphane Ducasse wrote: > Thanks. > May be the windowActiveDropShadowStyle could be just added to the UITheme class? > > Open a bug entry and attach code or slice there so that > - have a look > - not forget to integrate the fix. > > Stef > >> Reduce the complexity of user interface themes >> >> In general, user interface themes should inherit directly from UITheme, not >> from a chain of themes. When you have a chain of themes, you are stuck with >> the intermediate themes, whether you need/use them or not. Consider >> GLMUITheme. Currently it is under UIThemeWatery2, which is under >> UIThemeWatery, which is under UITheme. >> >> Some characteristics inherited from the chain are missing, but in principal, >> GLMUITheme can be moved directly under UITheme with just 3 changes. >> >> 1. Add an instanceVariable 'windowActiveDropShadowStyle' >> >> UITheme subclass: #GLMUITheme >> instanceVariableNames: 'windowActiveDropShadowStyle' >> classVariableNames: '' >> poolDictionaries: '' >> category: 'Glamour-Morphic-Theme' >> >> 2. Add a class method >> >> isAbstract >> "Answer whether the receiver is considered to be abstract." >> ^false >> >> 3. Add an instance method >> >> windowActiveDropShadowStyle: anObject >> "Set the value of windowActiveDropShadowStyle" >> windowActiveDropShadowStyle := anObject >> >> >> Because GLMOrangeUITheme inherits these changes, it does not need >> modification. >> >> >> -- >> View this message in context: http://forum.world.st/A-step-toward-reducing-complexity-tp3404504p3404504.html >> Sent from the Pharo Smalltalk mailing list archive at Nabble.com. >> > > -- www.tudorgirba.com "We are all great at making mistakes." |
Not my intention to fork it. It does pick up some characteristics
from the chain, which I didn't explore. On 3/25/2011 1:09 AM, Tudor Girba [via Smalltalk] wrote: > Thanks, Doug. This was on my to do list for a long time. > > Just a note: GLMUITheme is part of Glamour. Please do not fork it in > Pharo and integrate fixes there because then it will just get messy. I > will integrate it in Glamour. > > If you want to evolve it in the context of Pharo, you should rename it > an put it in a different package (this would probably make sense anyway). > > Cheers, > Doru > > > On 25 Mar 2011, at 08:44, Stéphane Ducasse wrote: > >> Thanks. >> May be the windowActiveDropShadowStyle could be just added to the > UITheme class? >> >> Open a bug entry and attach code or slice there so that >> - have a look >> - not forget to integrate the fix. >> >> Stef >> >>> Reduce the complexity of user interface themes >>> >>> In general, user interface themes should inherit directly from > UITheme, not >>> from a chain of themes. When you have a chain of themes, you are > stuck with >>> the intermediate themes, whether you need/use them or not. Consider >>> GLMUITheme. Currently it is under UIThemeWatery2, which is under >>> UIThemeWatery, which is under UITheme. >>> >>> Some characteristics inherited from the chain are missing, but in > principal, >>> GLMUITheme can be moved directly under UITheme with just 3 changes. >>> >>> 1. Add an instanceVariable 'windowActiveDropShadowStyle' >>> >>> UITheme subclass: #GLMUITheme >>> instanceVariableNames: 'windowActiveDropShadowStyle' >>> classVariableNames: '' >>> poolDictionaries: '' >>> category: 'Glamour-Morphic-Theme' >>> >>> 2. Add a class method >>> >>> isAbstract >>> "Answer whether the receiver is considered to be abstract." >>> ^false >>> >>> 3. Add an instance method >>> >>> windowActiveDropShadowStyle: anObject >>> "Set the value of windowActiveDropShadowStyle" >>> windowActiveDropShadowStyle := anObject >>> >>> >>> Because GLMOrangeUITheme inherits these changes, it does not need >>> modification. >>> >>> >>> -- >>> View this message in context: > http://forum.world.st/A-step-toward-reducing-complexity-tp3404504p3404504.html > <http://forum.world.st/A-step-toward-reducing-complexity-tp3404504p3404504.html?by-user=t> >>> Sent from the Pharo Smalltalk mailing list archive at Nabble.com. >>> >> >> > > -- > www.tudorgirba.com > > "We are all great at making mistakes." > > > > > > > > > > > If you reply to this email, your message will be added to the discussion > below: > http://forum.world.st/A-step-toward-reducing-complexity-tp3404504p3404765.html > > To unsubscribe from A step toward reducing complexity, click here > < > |
In reply to this post by Tudor Girba
We should rename it and fork it so that doru gets less conflicts
Stef On Mar 25, 2011, at 9:08 AM, Tudor Girba wrote: > Thanks, Doug. This was on my to do list for a long time. > > Just a note: GLMUITheme is part of Glamour. Please do not fork it in Pharo and integrate fixes there because then it will just get messy. I will integrate it in Glamour. > > If you want to evolve it in the context of Pharo, you should rename it an put it in a different package (this would probably make sense anyway). > > Cheers, > Doru > > > On 25 Mar 2011, at 08:44, Stéphane Ducasse wrote: > >> Thanks. >> May be the windowActiveDropShadowStyle could be just added to the UITheme class? >> >> Open a bug entry and attach code or slice there so that >> - have a look >> - not forget to integrate the fix. >> >> Stef >> >>> Reduce the complexity of user interface themes >>> >>> In general, user interface themes should inherit directly from UITheme, not >>> from a chain of themes. When you have a chain of themes, you are stuck with >>> the intermediate themes, whether you need/use them or not. Consider >>> GLMUITheme. Currently it is under UIThemeWatery2, which is under >>> UIThemeWatery, which is under UITheme. >>> >>> Some characteristics inherited from the chain are missing, but in principal, >>> GLMUITheme can be moved directly under UITheme with just 3 changes. >>> >>> 1. Add an instanceVariable 'windowActiveDropShadowStyle' >>> >>> UITheme subclass: #GLMUITheme >>> instanceVariableNames: 'windowActiveDropShadowStyle' >>> classVariableNames: '' >>> poolDictionaries: '' >>> category: 'Glamour-Morphic-Theme' >>> >>> 2. Add a class method >>> >>> isAbstract >>> "Answer whether the receiver is considered to be abstract." >>> ^false >>> >>> 3. Add an instance method >>> >>> windowActiveDropShadowStyle: anObject >>> "Set the value of windowActiveDropShadowStyle" >>> windowActiveDropShadowStyle := anObject >>> >>> >>> Because GLMOrangeUITheme inherits these changes, it does not need >>> modification. >>> >>> >>> -- >>> View this message in context: http://forum.world.st/A-step-toward-reducing-complexity-tp3404504p3404504.html >>> Sent from the Pharo Smalltalk mailing list archive at Nabble.com. >>> >> >> > > -- > www.tudorgirba.com > > "We are all great at making mistakes." > > > > > > > > |
In reply to this post by Tudor Girba
Hi,
I refactored the GLMUITheme to inherit from UITheme. I followed your steps and fixed a number of other issues. There are still a couple of places to fix (like a remaining orange highlight of the text area), but it is pretty much working. Cheers, Doru On 25 Mar 2011, at 09:08, Tudor Girba wrote: > Thanks, Doug. This was on my to do list for a long time. > > Just a note: GLMUITheme is part of Glamour. Please do not fork it in Pharo and integrate fixes there because then it will just get messy. I will integrate it in Glamour. > > If you want to evolve it in the context of Pharo, you should rename it an put it in a different package (this would probably make sense anyway). > > Cheers, > Doru > > > On 25 Mar 2011, at 08:44, Stéphane Ducasse wrote: > >> Thanks. >> May be the windowActiveDropShadowStyle could be just added to the UITheme class? >> >> Open a bug entry and attach code or slice there so that >> - have a look >> - not forget to integrate the fix. >> >> Stef >> >>> Reduce the complexity of user interface themes >>> >>> In general, user interface themes should inherit directly from UITheme, not >>> from a chain of themes. When you have a chain of themes, you are stuck with >>> the intermediate themes, whether you need/use them or not. Consider >>> GLMUITheme. Currently it is under UIThemeWatery2, which is under >>> UIThemeWatery, which is under UITheme. >>> >>> Some characteristics inherited from the chain are missing, but in principal, >>> GLMUITheme can be moved directly under UITheme with just 3 changes. >>> >>> 1. Add an instanceVariable 'windowActiveDropShadowStyle' >>> >>> UITheme subclass: #GLMUITheme >>> instanceVariableNames: 'windowActiveDropShadowStyle' >>> classVariableNames: '' >>> poolDictionaries: '' >>> category: 'Glamour-Morphic-Theme' >>> >>> 2. Add a class method >>> >>> isAbstract >>> "Answer whether the receiver is considered to be abstract." >>> ^false >>> >>> 3. Add an instance method >>> >>> windowActiveDropShadowStyle: anObject >>> "Set the value of windowActiveDropShadowStyle" >>> windowActiveDropShadowStyle := anObject >>> >>> >>> Because GLMOrangeUITheme inherits these changes, it does not need >>> modification. >>> >>> >>> -- >>> View this message in context: http://forum.world.st/A-step-toward-reducing-complexity-tp3404504p3404504.html >>> Sent from the Pharo Smalltalk mailing list archive at Nabble.com. >>> >> >> > > -- > www.tudorgirba.com > > "We are all great at making mistakes." > > > > > > > -- www.tudorgirba.com "Reasonable is what we are accustomed with." |
Tudor
is it for pharo? > Hi, > > I refactored the GLMUITheme to inherit from UITheme. I followed your steps and fixed a number of other issues. like what? > There are still a couple of places to fix (like a remaining orange highlight of the text area), but it is pretty much working. > > |
Hi,
Hi, On 8 Apr 2011, at 09:01, Stéphane Ducasse wrote: > Tudor > > is it for pharo? I do not know because I do not understand what the process is anymore. I tried to get a process going in which the design of UI goes through the same rigor and integration like the object-oriented design, but it did not work yet :(. We need a project. I proposed to do this in the context of the The Glamorous Toolkit project and to integrate all these concerns, including the UI look and feel. I would offer to lead this. Right now, everyone is still pretty much working on UI by looking at smaller pieces in his own corner. That is not bad, but it is not enough. >> Hi, >> >> I refactored the GLMUITheme to inherit from UITheme. I followed your steps and fixed a number of other issues. > > like what? Like small graphical issues related to the fact that GLMUITheme does no longer inherit all the helpers and effects from Watery2. At the moment, I basically copied some of these from Watery2 (like the management of the close/minimize/maximize) buttons. Cheers, Doru > >> There are still a couple of places to fix (like a remaining orange highlight of the text area), but it is pretty much working. -- www.tudorgirba.com "Relationships are of two kinds: those we choose and those that happen. They both matter." |
>> is it for pharo?
> > I do not know because I do not understand what the process is anymore. I tried to get a process going in which the design of UI goes through the same rigor and integration like the object-oriented design, but it did not work yet :(. You lost me there. You are talking about Glamour. > We need a project. I proposed to do this in the context of the The Glamorous Toolkit project and to integrate all these concerns, including the UI look and feel. Yes I thought that this is what you were doing. > I would offer to lead this. Right now, everyone is still pretty much working on UI by looking at smaller pieces in his own corner. That is not bad, but it is not enough. I'm talking just about the UITheme. So I was planning to rename the GLMglamour looks which is in pharo and do the refactoring but what I could do is to start from yours so that the one we use gets all your improvements. And you could load yours on the side. Stef >>> > Like small graphical issues related to the fact that GLMUITheme does no longer inherit all the helpers and effects from Watery2. > > At the moment, I basically copied some of these from Watery2 (like the management of the close/minimize/maximize) buttons. |
Hi,
On 8 Apr 2011, at 10:41, Stéphane Ducasse wrote: >>> is it for pharo? >> >> I do not know because I do not understand what the process is anymore. I tried to get a process going in which the design of UI goes through the same rigor and integration like the object-oriented design, but it did not work yet :(. > > You lost me there. Perhaps I did not understand your question. > You are talking about Glamour. No. Glamour is but an effort to stream knowledge through one technology. But, I am talking about the ui in general. I am talking about the fact that in the distribution is just fine to add another color, another kind of selection, another way of interactive, and nobody really cares. I know that the intention is not to have that at the end, but in the end we do have that, so the process is not working :). In the UI world we have what we hate in the programming world. >> We need a project. I proposed to do this in the context of the The Glamorous Toolkit project and to integrate all these concerns, including the UI look and feel. > > Yes I thought that this is what you were doing. I am doing that, but that is about it. The little pieces are not worked on because of this goal. They are worked on because someone has some interest in some corner. And they almost never get properly integrated. So, at the moment this project is failing from my point of view. But, I will stop raising this issue :). >> I would offer to lead this. Right now, everyone is still pretty much working on UI by looking at smaller pieces in his own corner. That is not bad, but it is not enough. > > I'm talking just about the UITheme. So I was planning to rename the GLMglamour looks which is in pharo and do the refactoring but what I could do is to start from yours so that the one we use gets all your improvements. And you could load yours on the side. Ok. Cheers, Doru > Stef >>>> >> Like small graphical issues related to the fact that GLMUITheme does no longer inherit all the helpers and effects from Watery2. >> >> At the moment, I basically copied some of these from Watery2 (like the management of the close/minimize/maximize) buttons. > > -- www.tudorgirba.com "Every successful trip needs a suitable vehicle." |
On 8 April 2011 11:02, Tudor Girba <[hidden email]> wrote:
> Hi, > > On 8 Apr 2011, at 10:41, Stéphane Ducasse wrote: > >>>> is it for pharo? >>> >>> I do not know because I do not understand what the process is anymore. I tried to get a process going in which the design of UI goes through the same rigor and integration like the object-oriented design, but it did not work yet :(. >> >> You lost me there. > > Perhaps I did not understand your question. > >> You are talking about Glamour. > > No. Glamour is but an effort to stream knowledge through one technology. But, I am talking about the ui in general. I am talking about the fact that in the distribution is just fine to add another color, another kind of selection, another way of interactive, and nobody really cares. I know that the intention is not to have that at the end, but in the end we do have that, so the process is not working :). In the UI world we have what we hate in the programming world. > >>> We need a project. I proposed to do this in the context of the The Glamorous Toolkit project and to integrate all these concerns, including the UI look and feel. >> >> Yes I thought that this is what you were doing. > > I am doing that, but that is about it. The little pieces are not worked on because of this goal. They are worked on because someone has some interest in some corner. And they almost never get properly integrated. So, at the moment this project is failing from my point of view. > No. Its not failing. It just takes time. I remember that you came with initiative that you want to coordinate efforts about improving state of are about UI. And trust me, your been heard. > But, I will stop raising this issue :). > >>> I would offer to lead this. Right now, everyone is still pretty much working on UI by looking at smaller pieces in his own corner. That is not bad, but it is not enough. >> >> I'm talking just about the UITheme. So I was planning to rename the GLMglamour looks which is in pharo and do the refactoring but what I could do is to start from yours so that the one we use gets all your improvements. And you could load yours on the side. > > Ok. > > Cheers, > Doru > > >> Stef >>>>> >>> Like small graphical issues related to the fact that GLMUITheme does no longer inherit all the helpers and effects from Watery2. >>> >>> At the moment, I basically copied some of these from Watery2 (like the management of the close/minimize/maximize) buttons. >> >> > > -- > www.tudorgirba.com > > "Every successful trip needs a suitable vehicle." > > > > > > -- Best regards, Igor Stasenko AKA sig. |
Free forum by Nabble | Edit this page |