Crest
Crest adds Roblox topbar-style icon buttons that follow TopbarInset. Chain fluent setters, bind events, and drive notice badges. Client chrome only — shop logic stays on the server / Flare.
Header: #include <clpp/libs/crest.clh>. Runtime: CluauppLibs.Crest.
Use when:
- Settings, shop, or inventory entry from the top bar with correct inset on console/mobile.
- Toggle panels bound with
bindToggleItemandselect/deselect.
Do not use when:
Example CL++
Section titled “Example CL++”#include <clpp/libs/crest.clh>
void OpenShop() { post("open shop");}
[[client]]void init() { Crest shop = new Crest(); shop.setName("Shop"); shop.setLabel("Shop"); shop.setRight(); shop.bindEvent("selected", OpenShop);}Crest.new_ / new Crest()
Section titled “Crest.new_ / new Crest()”Returns: Crest icon controller.
When: Each topbar button is its own instance (not a separate Icon type).
Crest icon = new Crest();setName
Section titled “setName”Returns: Crest (chainable).
When: Stable instance name under the Crest ScreenGui.
setLabel
Section titled “setLabel”Returns: Crest.
When: Text drawn on the icon when no image is set.
setImage
Section titled “setImage”Returns: Crest.
When: rbxassetid or asset URI for the button face.
setEnabled
Section titled “setEnabled”Returns: Crest.
When: Hide or disable interaction without destroying.
setOrder
Section titled “setOrder”Returns: Crest.
When: LayoutOrder among icons in the same alignment bucket.
setWidth
Section titled “setWidth”Returns: Crest.
When: Non-square icon width (height stays icon size).
Returns: Crest.
When: "left", "mid" / "center", or "right" bucket under Crest host.
setLeft
Section titled “setLeft”Returns: Crest — align("left").
When: Default left cluster.
setMid
Section titled “setMid”Returns: Crest — center cluster.
When: Single prominent action.
setRight
Section titled “setRight”Returns: Crest — right cluster.
When: Shop / settings on the right (common pattern).
bindEvent
Section titled “bindEvent”Returns: Crest.
When: Listen for runtime events such as "selected", "deselected", "Activated", "toggled", "notified", hover events.
icon.bindEvent("selected", func () { /* ... */ });bindToggleItem
Section titled “bindToggleItem”Returns: Crest.
When: A GuiObject panel shown while this icon is selected.
notify
Section titled “notify”Returns: Crest — shows notice dot.
When: Unread mail or pending reward indicator.
clearNotices
Section titled “clearNotices”Returns: Crest — hides notice dot.
When: Player opened the related panel.
select
Section titled “select”Returns: Crest — marks selected, shows bound toggle items, may deselect other auto-deselect icons.
When: Programmatic open state.
deselect
Section titled “deselect”Returns: Crest.
When: Close bound panel without destroying icon.
Destroy
Section titled “Destroy”Returns: void.
When: Remove icon and disconnect from layout.