{"title":"End-user composition of graphical user interfaces by composite pattern","authors":"J. Vanderdonckt, Donatien Grolaux","doi":"10.1145/3319499.3328236","DOIUrl":null,"url":null,"abstract":"We present ComPat, an open source visual editor enabling end users to compose graphical user interfaces based on the composite pattern, a common software engineering design pattern: any widget or group of widgets is treated the same way as a single instance of the same type of widget. ComPat exploits a grid of rows and columns, where each cell, regulated by layout constraints, is populated either by direct import of widgets from a palette or by pattern application. In order to compose graphical user interfaces, any portion could be cut, copied, pasted, and treated as a single object thanks to the composite pattern, thus facilitating reusability. Any portion becomes a pattern that can be applied either by direct instantiation or by rewriting. ComPat automatically generates a Java Swing graphical user interface corresponding to the composition and stores its definition in a User Interface Description Language based on a XML Schema.","PeriodicalId":185267,"journal":{"name":"Proceedings of the ACM SIGCHI Symposium on Engineering Interactive Computing Systems","volume":"72 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2019-06-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the ACM SIGCHI Symposium on Engineering Interactive Computing Systems","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3319499.3328236","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1
Abstract
We present ComPat, an open source visual editor enabling end users to compose graphical user interfaces based on the composite pattern, a common software engineering design pattern: any widget or group of widgets is treated the same way as a single instance of the same type of widget. ComPat exploits a grid of rows and columns, where each cell, regulated by layout constraints, is populated either by direct import of widgets from a palette or by pattern application. In order to compose graphical user interfaces, any portion could be cut, copied, pasted, and treated as a single object thanks to the composite pattern, thus facilitating reusability. Any portion becomes a pattern that can be applied either by direct instantiation or by rewriting. ComPat automatically generates a Java Swing graphical user interface corresponding to the composition and stores its definition in a User Interface Description Language based on a XML Schema.