Cannot switch off shortcut Ctrl+O
Posted: Fri Feb 05, 2010 6:49 am
Hi Munich,
The patch for the problem will be available on Monday.
Thank you.
The patch for the problem will be available on Monday.
Thank you.
Reporting tool and data analytics tools for creating reports and dashboards in ASP.NET, ASP.NET MVC, .NET Core, Blazor, Angular, PHP, Python, WPF, JavaScript, and Java applications.
https://forum.stimulsoft.com/
Code: Select all
StiRibbonGuiService service = StiRibbonGuiService.GetService();
StiMainMenuService mainMenu = StiMainMenuService.GetService();
service.ShowMainMenuReportOpen = false;
service.ShowMainMenuReportNew = false;
service.ShowMainMenuPageNew = false;
service.ShowMainMenuFormNew = false;
service.ShowMainMenuNew = false;
mainMenu.ShowFileReportNew = false;
mainMenu.ShowFilePageNew = false;
mainMenu.ShowFileFormNew = false;
mainMenu.ShowFileReportNew = false;
mainMenu.ShowFilePageNew = false;
mainMenu.ShowFileFormNew = false;
StiRibbonDesigner des = new StiRibbonDesigner();
des.Show();
Code: Select all
report.Design()
Code: Select all
private void OpenDesigner()
{
try
{
// #####################################################################################################################
// ### Events binden
// #####################################################################################################################
StiOptions.Engine.GlobalEvents.ClosingDesigner += new System.ComponentModel.CancelEventHandler(GlobalEvents_ClosingDesigner);
// Mit diesem Event kann man die Ruckfrage nach dem Speichern abfangen und unterdrucken
StiOptions.Engine.GlobalEvents.SaveChangesInDialogBoxDesigner += new StiSaveChangesInDialogBoxDesignerEventHandler(GlobalEvents_SaveChangesInDialogBoxDesigner);
// Der Event teilt uns mit, dass gespeichert werden soll
StiOptions.Engine.GlobalEvents.SavingReportInDesigner += new StiSavingObjectEventHandler(GlobalEvents_SavingReportInDesigner);
// Das Event brauchen wir, um im geladenen Designer Anderungen vorzunehmen
StiOptions.Engine.GlobalEvents.LoadedDesigner += new EventHandler(GlobalEvents_LoadedDesigner);
// Mit den beiden folgenden Events wird unterbunden, dass das Druckfenster uber die Zwischenablage kopiert oder ausgeschnitten werden kann
StiOptions.Engine.GlobalEvents.AllowCopyOperation += new Stimulsoft.Report.Events.StiAllowClipboardOperationEventHandler(GlobalEvents_AllowCopyOperation);
StiOptions.Engine.GlobalEvents.AllowCutOperation += new Stimulsoft.Report.Events.StiAllowClipboardOperationEventHandler(GlobalEvents_AllowCutOperation);
// #####################################################################################################################
// ### Eigene Konfigurationsdatei fur die Quick Access Toolbar angeben und erzeugen
// #####################################################################################################################
// Verzeichnis fur die Datei anlegen
System.IO.Directory.CreateDirectory(System.Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) + @"\KSR\Stimulsoft");
// Die Datei angeben
StiOptions.Designer.DefaultRibbonDesignerQatConfigPath =
System.Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) + @"\KSR\Stimulsoft\RibbonDesignerQat.config";
// Die Datei schreiben fur die QAT
System.IO.File.WriteAllText(StiOptions.Designer.DefaultRibbonDesignerQatConfigPath, "0,biQuickReportSave,biQuickUndo,biQuickRedo");
// #####################################################################################################################
// ### Das Speichern von Einstellungen unterbinden {Es besteht der Verdacht, dass die Eigenschaften nicht funktionieren}
// #####################################################################################################################
// Damit werden Einstellungen, die den Designer (ohne Toolbox) betreffen, nicht gespeichert
StiOptions.Designer.DontSaveDesignerConfig = true;
// Damit werden keine Einstellungen der Toolbox gespeichert
StiOptions.Engine.DontSaveConfig = true;
// #####################################################################################################################
// ### Ribbon-GUI aktivieren
// #####################################################################################################################
StiOptions.Designer.IsRibbonGuiEnabled = true;
// #####################################################################################################################
// ### Office-Menu reduzieren
// #####################################################################################################################
StiRibbonGuiService ribbonService = StiRibbonGuiService.GetService();
ribbonService.ShowMainMenuClose = false;
ribbonService.ShowMainMenuNew = false;
ribbonService.ShowMainMenuSaveAs = false;
ribbonService.ShowMainMenuReportSetup = false;
ribbonService.ShowMainMenuReportOpen = false;
ribbonService.ShowMainMenuPageOpen = false;
ribbonService.ShowMainMenuPageDelete = false;
ribbonService.ShowMainMenuReportPreview = false;
ribbonService.ShowMainMenuRecentFiles = false;
// #####################################################################################################################
// ### Ribbon reduzieren
// #####################################################################################################################
ribbonService.ShowHelp = false;
ribbonService.ShowTabHomeBarTextFormat = false;
ribbonService.ShowTabHomeBarStyle = false;
ribbonService.ShowTabHomeBarFont = false;
ribbonService.ShowTabHomeBarAlignment = false;
ribbonService.ShowTabPage = false;
ribbonService.ShowTabLayoutBarDockStyle = false;
ribbonService.ShowTabView = false;
// #####################################################################################################################
// ### Ausblenden von Komponenten in der Toolbox
// #####################################################################################################################
Stimulsoft.Base.Services.StiServiceContainer services = StiConfig.Services.GetServices(typeof(StiComponent));
_componentServiceCopy = new Dictionary();
foreach (StiComponent service in services)
{
// Bisherige Konfiguration merken
_componentServiceCopy.Add(service.GetType(), new ComponentContainer(service, service.PlaceOnToolbox, service.ServiceEnabled));
// Eigene Konfiguration vornehmen
if ((service is StiRichText) || (service is StiImageKSR))
{
service.PlaceOnToolbox = true;
service.ServiceEnabled = true;
}
else
{
service.PlaceOnToolbox = false;
service.ServiceEnabled = false;
}
}
// #####################################################################################################################
// ### Tab-Control einschranken
// #####################################################################################################################
// Registerkarte mit dem Programmcode ausblenden
StiOptions.Designer.CodeTabVisible = false;
// Html-Vorschau ausblenden
StiOptions.Designer.HtmlPreviewReportVisible = false;
// Normale Vorschau ausblenden
StiOptions.Designer.PreviewReportVisible = false;
// #####################################################################################################################
// ### Kontext-Menus
// #####################################################################################################################
StiDesignComponentCTService designComponentCT = StiDesignComponentCTService.GetService();
if (designComponentCT != null) designComponentCT.ServiceEnabled = false;
StiOrderCTService orderCT = StiOrderCTService.GetService();
if (orderCT != null) orderCT.ServiceEnabled = false;
StiAlignCTService alignCT = StiAlignCTService.GetService();
if (alignCT != null) alignCT.ServiceEnabled = false;
StiObjectCutCTService objectCutCT = StiObjectCutCTService.GetService();
if (objectCutCT != null) objectCutCT.ServiceEnabled = false;
StiObjectCopyCTService objectCopyCT = StiObjectCopyCTService.GetService();
if (objectCopyCT != null) objectCopyCT.ServiceEnabled = false;
StiObjectPasteCTService objectPasteCT = StiObjectPasteCTService.GetService();
if (objectPasteCT != null) objectPasteCT.ServiceEnabled = false;
StiObjectDeleteCTService.GetService().ServiceEnabled = false;
StiObjectSelectAllCTService objectSelectAllCT = StiObjectSelectAllCTService.GetService();
if (objectSelectAllCT != null) objectSelectAllCT.ServiceEnabled = false;
// Kontext-Menu des Tab-Control einschranken
StiOptions.Designer.TabsContextMenu.ShowPageNew = false;
StiOptions.Designer.TabsContextMenu.ShowFormNew = false;
StiOptions.Designer.TabsContextMenu.ShowPageSetup = false;
StiOptions.Designer.TabsContextMenu.ShowPageDelete = false;
StiOptions.Designer.TabsContextMenu.ShowPageClone = false;
StiOptions.Designer.TabsContextMenu.ShowPageMoveLeft = false;
StiOptions.Designer.TabsContextMenu.ShowPageMoveRight = false;
StiOptions.Designer.TabsContextMenu.ShowPageSetup = false;
// #####################################################################################################################
// ### Statusbar
// #####################################################################################################################
StiOptions.Designer.Toolbars.StatusBar.ShowUnits = false;
// #####################################################################################################################
// ### Panels
// #####################################################################################################################
Stimulsoft.Report.Design.Panels.StiPropertiesPanelService propPanel = Stimulsoft.Report.Design.Panels.StiPropertiesPanelService.GetService();
propPanel.ServiceEnabled = false;
Stimulsoft.Report.Design.Panels.StiDictionaryPanelService dictPanel = Stimulsoft.Report.Design.Panels.StiDictionaryPanelService.GetService();
dictPanel.ServiceEnabled = false;
Stimulsoft.Report.Design.Panels.StiMessagesPanelService messPanel = Stimulsoft.Report.Design.Panels.StiMessagesPanelService.GetService();
messPanel.ServiceEnabled = false;
// Bringt nichts
//StiDesignerControl.DockPanelClose(messPanel);
Stimulsoft.Report.Design.Panels.StiReportTreePanelService treePanel = Stimulsoft.Report.Design.Panels.StiReportTreePanelService.GetService();
treePanel.ServiceEnabled = false;
// Mit dem Verschieben der Datei "RibbonDesignerDockingPanels.config" wird erreicht, dass es keine leeren
// Docking-Panels im Designer von Stimul gibt. Leere Docking-Panels konnen u.U. Ausnahmen auslosen.
string filename = System.Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)
+ @"\Stimulsoft\RibbonDesignerDockingPanels.config";
if (System.IO.File.Exists(filename))
{
// Hier wird eine Ausnahme verschluckt, da das Verschieben dann nicht so wichtig ist, wie das weitere Ausfuhren
// dieser Methode.
try
{
System.IO.File.Copy(filename, System.Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)
+ @"\KSR\Stimulsoft\RibbonDesignerDockingPanels.config", true);
System.IO.File.Delete(filename);
}
finally { }
}
// #####################################################################################################################
// ### Shortcuts abschalten
// #####################################################################################################################
StiMainMenuService mainMenu = StiMainMenuService.GetService();
// Neuer Bericht - Strg+N
mainMenu.ShowFileReportNew = false;
// Neue Seite - Strg+Umschalt+N
mainMenu.ShowFilePageNew = false;
// Neues Formular - Strg+Umschalt+F
mainMenu.ShowFileFormNew = false;
// TODO JOCHEN Das tut noch nicht, der Shortcut funktioniert trotzdem
// Bericht offnen - Strg+O
mainMenu.ShowFileReportOpen = false;
ribbonService.ShowMainMenuReportOpen = false;
// Seite offnen - Strg+Umschalt+O
mainMenu.ShowFilePageOpen = false;
// Bericht speichern unter - F12
mainMenu.ShowFileReportSaveAs = false;
// Vorschau - F5
mainMenu.ShowFileReportPreview = false;
// Ruckgangig - Strg+Z
mainMenu.ShowEditUndo = false;
// Wiederherstellen - Strg+Y
mainMenu.ShowEditRedo = false;
// Eigenschaften - F4
// Worterbuch Dictionary - Strg+Umschalt+D
// Ausgabe (Fehler) - Strg+Umschalt+M
// Berichtsbaum - Strg+Umschalt+L
mainMenu.ShowViewPanels = false;
// Datendepot - Strg+F2
mainMenu.ShowToolsDataStore = false;
// Seiten-Manager - Strg+F4
mainMenu.ShowToolsPagesManager = false;
// Dienste konfigurieren - Strg+F5
mainMenu.ShowToolsServicesConfigurator = false;
// #####################################################################################################################
// ### Konifguration der QAT unterbinden
// #####################################################################################################################
// Funktioniert nicht!
//StiOptions.Designer.CanCustomizeRibbon = false;
// #####################################################################################################################
// Designer offnen
// #####################################################################################################################
_report.Design();
}
finally
{
// #####################################################################################################################
// ### Die Events wieder entbinden
// #####################################################################################################################
StiOptions.Engine.GlobalEvents.ClosingDesigner -= new System.ComponentModel.CancelEventHandler(GlobalEvents_ClosingDesigner);
StiOptions.Engine.GlobalEvents.SavingReportInDesigner -= new StiSavingObjectEventHandler(GlobalEvents_SavingReportInDesigner);
StiOptions.Engine.GlobalEvents.SaveChangesInDialogBoxDesigner -= new StiSaveChangesInDialogBoxDesignerEventHandler(GlobalEvents_SaveChangesInDialogBoxDesigner);
StiOptions.Engine.GlobalEvents.LoadedDesigner -= new EventHandler(GlobalEvents_LoadedDesigner);
StiOptions.Engine.GlobalEvents.AllowCopyOperation -= new Stimulsoft.Report.Events.StiAllowClipboardOperationEventHandler(GlobalEvents_AllowCopyOperation);
StiOptions.Engine.GlobalEvents.AllowCutOperation -= new Stimulsoft.Report.Events.StiAllowClipboardOperationEventHandler(GlobalEvents_AllowCutOperation);
// #####################################################################################################################
// ### Restliche Veranderungen RUCKGANGIG machen
// #####################################################################################################################
RollbackOpenDesigner();
}
}