CommandPalette
TsgcHTMLComponent_CommandPalette — o overlay lançador Ctrl+K / Cmd+K familiar do VS Code, Slack e Linear, com filtragem por substring seguida de fuzzy, categorias e ações roteadas pelo servidor, em Delphi, C++ Builder e .NET.
TsgcHTMLComponent_CommandPalette — o overlay lançador Ctrl+K / Cmd+K familiar do VS Code, Slack e Linear, com filtragem por substring seguida de fuzzy, categorias e ações roteadas pelo servidor, em Delphi, C++ Builder e .NET.
Adicione entradas com AddItem ou Items.Add, depois leia a propriedade HTML; Ctrl+K (ou Cmd+K) abre o overlay, digitar filtra a lista, Enter ativa a seleção.
TsgcHTMLComponent_CommandPalette
Overlay oculto Ctrl+K + script inline
Delphi, C++ Builder, .NET
As entradas são renderizadas como markup no servidor, não enviadas ao navegador como JSON para filtrar no cliente, de modo que cada legenda é codificada em HTML exatamente uma vez.
uses
sgcHTML_Component_CommandPalette;
var
oPalette: TsgcHTMLComponent_CommandPalette;
begin
oPalette := TsgcHTMLComponent_CommandPalette.Create(nil);
try
oPalette.PaletteID := 'app_commands';
oPalette.AddItem('New Invoice', '/invoices/new', 'invoice:new', 'Create', 'Ctrl+N');
oPalette.AddItem('Customer Search', '/customers', '', 'Navigate');
with oPalette.Items.Add do
begin
Caption := 'Export Report';
Icon := 'bi bi-download';
DataAction := 'report:export';
Category := 'Actions';
end;
WebModule.Response := oPalette.HTML; // hidden overlay + inline script
finally
oPalette.Free;
end;
end;
// includes: sgcHTML_Component_CommandPalette.hpp
TsgcHTMLComponent_CommandPalette *oPalette = new TsgcHTMLComponent_CommandPalette(NULL);
try
{
oPalette->PaletteID = "app_commands";
oPalette->AddItem("New Invoice", "/invoices/new", "invoice:new", "Create", "Ctrl+N");
TsgcHTMLCommandItem *oItem = oPalette->Items->Add();
oItem->Caption = "Export Report";
oItem->Icon = "bi bi-download";
oItem->DataAction = "report:export";
oItem->Category = "Actions";
String html = oPalette->HTML; // hidden overlay + inline script
}
__finally
{
delete oPalette;
}
using esegece.sgcWebSockets;
var palette = new TsgcHTMLComponent_CommandPalette();
palette.PaletteID = "app_commands";
palette.AddItem("New Invoice", "/invoices/new", "invoice:new", "Create", "Ctrl+N");
var item = palette.Items.Add();
item.Caption = "Export Report";
item.Icon = "bi bi-download";
item.DataAction = "report:export";
item.Category = "Actions";
string html = palette.HTML; // hidden overlay + inline script
Os membros que você usa com mais frequência.
Coleção de entradas TsgcHTMLCommandItem: Caption, Description, Icon, Href, DataAction, Shortcut (somente exibição), Category e Enabled.
Método de conveniência que adiciona uma entrada e a retorna, para que você ainda possa definir Icon/Description depois.
Um único caractere mais modificadores; tanto Ctrl quanto Meta são True por padrão, então Ctrl+K e Cmd+K já abrem o palette de fábrica.
Padrão 10; 0 exibe todas as entradas correspondentes de uma vez.
Padrão True, agrupa a lista sob títulos na ordem de primeira aparição (não alfabética).
Ativar um comando sempre dispara um evento DOM sgc:command, e envia pela ponte WebSocket sgcHTMX ou faz POST para Action quando qualquer um dos dois é definido.
| Ajuda onlineReferência completa da API e guia de uso para este componente. | Abrir | |
| Todos os Componentes sgcHTMLExplore a matriz completa de recursos com mais de 80 componentes. | Abrir | |
| Baixar Versão de Avaliação GratuitaA avaliação de 30 dias inclui os projetos de demonstração 60.HTML. | Abrir | |
| PreçosLicenças Single, Team e Site com código-fonte completo. | Abrir |