On Thursday 24 March 2016 17:06:45 Krzysztof wrote: > Hi, > > I would like to try migrate my LCL app to MSEGui but I don't know if > something is missing in MSEGui: > 1. My app is "chat" kind. In LCL, for messages view I used TIpHTMLPanel. > Does MSEGUI has something similar? In fact I don't need HTML, RTF is > enough. Selectable formatted text with images (as emoi icons or user > profile picture)
MSEgui has TTextEdit which must be placed in a TWidgetGrid. The MSEide source editor uses that combination. TTextEdit supports formatted text but no images. The best probably would be to make a MSEgui widget which uses an external HTML engine/library. This is already on todo-list. Do you have suggestions? > 2. Handle fontawesome icons ( https://fortawesome.github.io/Font-Awesome/ ) > . They are icons colection based on true type font (.ttf, .otf). In LCL I > used TFreeTypeFont, TIntfFreeTypeDrawer and TLazIntfImage. In fpGUI - > TAgg2D That means you need to rasterize TrueType glyphs to a pixmap and show them in a widget? MSEgui has a freetype based font engine in lib/common/graphics/ which can do the job. Please ask if you need extensions in the API, I'll make them ASAP. I prefer to do developments based on real applications. :-) > 3. Is there any example how to use themes / styles? There is demo > but it is hard to analyze it, too much properties. Any doc or quick > explanation? Quick explanation: Every TWidget has the properties TWidget.Frame and TWidget.Face. If they are not used the only resource they need is a single nil-pointer. TFrame defines the border of the widget, TFace the client area, please see Michaels explanation on Wiki: http://wiki.freepascal.org/Reference:_MSEgui/TFrame http://wiki.freepascal.org/Reference:_MSEgui/TFace TFrame and TFace both have the property "Template" which links to TFrameComp and TFaceComp respectively. T*Comp broadcast their property settings to all connected frames and faces. There is also TFont.Template and TFontComp. TSkinController sets the "Template" properties, colors and other widget specific properties of created widgets based on the property settings of TSkinController, please see the skin of MSEide in apps/ide/guitemplates.pas for an example. Alexandre made the "skin center" application in order to simplify the management of skins: http://thread.gmane.org/gmane.comp.ide.mseide.user/32140 He also made an application which generates the imagelist for pixmap based frames. > 4. Same for layouts MSEgui uses TWidget.Anchors, TSpacer, TSplitter, TLayouter and code in OnLayout event for layout purpose. Explanation probably is best done by a concrete example, please write what you want to achieve. > 5. TListView with OwnData / OwnDraw support (something like > virtualtreeview) TTreeItemEdit placed in a TWidgetGrid. TWidgedGrid (component palette tab 'Edit') is a grid widget where inserted edit widgets build data columns. That means it is possible to combine a TreeItemEdit column with a text-, a datatime, an image and a button column for example. The inserted widgets with all their properties and events are fully working. Examples of TTreeItemEdit are here: https://gitlab.com/mseide-msegui/mseuniverse/tree/master/attic/msedocumenting/mse/trunk/help/tutorials/widgets/treeview For flat data items there is TItemEdit (also placed in a TWidgetGrid). There is also TListView (tab 'Widget') for a flat list of items showed in a rectangular area. > 6. Macos. I'm providing app for linux and windows only but > in future I would like for Macos too. Are any plans to implement this > target? > Do you mean OS X? Porting MSEgui to OS X by using X11 probably is no big effort. I would prefer to make a Quartz backend. I fear that MAC people will not accept anything which is not 200% Apple-like. Feel free to ask questions about MSEide+MSEgui here on the list. Martin ------------------------------------------------------------------------------ Transform Data into Opportunity. Accelerate data analysis in your applications with Intel Data Analytics Acceleration Library. Click to learn more. http://pubads.g.doubleclick.net/gampad/clk?id=278785351&iu=/4140 _______________________________________________ mseide-msegui-talk mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk

