00001 #ifndef _KSTDACTION_PRIVATE_H_
00002 #define _KSTDACTION_PRIVATE_H_
00003
00004 #include <klocale.h>
00005 #include <kstdaccel.h>
00006
00007 namespace KStdAction
00008 {
00009
00010 struct KStdActionInfo
00011 {
00012 StdAction id;
00013 KStdAccel::StdAccel idAccel;
00014 const char* psName;
00015 const char* psLabel;
00016 const char* psWhatsThis;
00017 const char* psIconName;
00018 };
00019
00020 static const KStdActionInfo g_rgActionInfo[] =
00021 {
00022 { New, KStdAccel::New, "file_new", I18N_NOOP("&New"), 0, "filenew" },
00023 { Open, KStdAccel::Open, "file_open", I18N_NOOP("&Open..."), 0, "fileopen" },
00024 { OpenRecent, KStdAccel::AccelNone, "file_open_recent", I18N_NOOP("Open &Recent"), 0, "fileopen" },
00025 { Save, KStdAccel::Save, "file_save", I18N_NOOP("&Save"), 0, "filesave" },
00026 { SaveAs, KStdAccel::AccelNone, "file_save_as", I18N_NOOP("Save &As..."), 0, "filesaveas" },
00027 { Revert, KStdAccel::AccelNone, "file_revert", I18N_NOOP("Re&vert"), 0, "revert" },
00028 { Close, KStdAccel::Close, "file_close", I18N_NOOP("&Close"), 0, "fileclose" },
00029 { Print, KStdAccel::Print, "file_print", I18N_NOOP("&Print..."), 0, "fileprint" },
00030 { PrintPreview, KStdAccel::AccelNone, "file_print_preview", I18N_NOOP("Print Previe&w..."), 0, "filequickprint" },
00031 { Mail, KStdAccel::AccelNone, "file_mail", I18N_NOOP("&Mail..."), 0, "mail_send" },
00032 { Quit, KStdAccel::Quit, "file_quit", I18N_NOOP("&Quit"), 0, "exit" },
00033
00034 { Undo, KStdAccel::Undo, "edit_undo", I18N_NOOP("&Undo"), 0, "undo" },
00035 { Redo, KStdAccel::Redo, "edit_redo", I18N_NOOP("Re&do"), 0, "redo" },
00036 { Cut, KStdAccel::Cut, "edit_cut", I18N_NOOP("Cu&t"), 0, "editcut" },
00037 { Copy, KStdAccel::Copy, "edit_copy", I18N_NOOP("&Copy"), 0, "editcopy" },
00038 { Paste, KStdAccel::Paste, "edit_paste", I18N_NOOP("&Paste"), 0, "editpaste" },
00039 { PasteText, KStdAccel::Paste, "edit_paste", I18N_NOOP("&Paste"), 0, "editpaste" },
00040 { Clear, KStdAccel::AccelNone, "edit_clear", I18N_NOOP("C&lear"), 0, "editclear" },
00041 { SelectAll, KStdAccel::SelectAll, "edit_select_all", I18N_NOOP("Select &All"), 0, 0 },
00042 { Deselect, KStdAccel::Deselect, "edit_deselect", I18N_NOOP("Dese&lect"), 0, 0 },
00043 { Find, KStdAccel::Find, "edit_find", I18N_NOOP("&Find..."), 0, "find" },
00044 { FindNext, KStdAccel::FindNext, "edit_find_next", I18N_NOOP("Find &Next"), 0, "next" },
00045
00046 { FindPrev, KStdAccel::FindPrev, "edit_find_last", I18N_NOOP("Find Pre&vious"), 0, "previous" },
00047 { Replace, KStdAccel::Replace, "edit_replace", I18N_NOOP("&Replace..."), 0, 0 },
00048
00049 { ActualSize, KStdAccel::AccelNone, "view_actual_size", I18N_NOOP("&Actual Size"), 0, 0 },
00050 { FitToPage, KStdAccel::AccelNone, "view_fit_to_page", I18N_NOOP("&Fit to Page"), 0, 0 },
00051 { FitToWidth, KStdAccel::AccelNone, "view_fit_to_width", I18N_NOOP("Fit to Page &Width"), 0, 0 },
00052 { FitToHeight, KStdAccel::AccelNone, "view_fit_to_height", I18N_NOOP("Fit to Page &Height"), 0, 0 },
00053 { ZoomIn, KStdAccel::ZoomIn, "view_zoom_in", I18N_NOOP("Zoom &In"), 0, "viewmag+" },
00054 { ZoomOut, KStdAccel::ZoomOut, "view_zoom_out", I18N_NOOP("Zoom &Out"), 0, "viewmag-" },
00055 { Zoom, KStdAccel::AccelNone, "view_zoom", I18N_NOOP("&Zoom..."), 0, "viewmag" },
00056
00057 { Redisplay, KStdAccel::AccelNone, "view_redisplay", I18N_NOOP("&Redisplay"), 0, "reload" },
00058
00059 { Up, KStdAccel::Up, "go_up", I18N_NOOP("&Up"), 0, "up" },
00060
00061 { Back, KStdAccel::Back, "go_back", 0, 0, "back" },
00062 { Forward, KStdAccel::Forward, "go_forward", 0, 0, "forward" },
00063 { Home, KStdAccel::Home, "go_home", 0, 0, "gohome" },
00064 { Prior, KStdAccel::Prior, "go_previous", I18N_NOOP("&Previous Page"), 0, "previous" },
00065 { Next, KStdAccel::Next, "go_next", I18N_NOOP("&Next Page"), 0, "next" },
00066 { Goto, KStdAccel::AccelNone, "go_goto", I18N_NOOP("&Go To..."), 0, 0 },
00067 { GotoPage, KStdAccel::AccelNone, "go_goto_page", I18N_NOOP("&Go to Page..."), 0, "goto" },
00068 { GotoLine, KStdAccel::GotoLine, "go_goto_line", I18N_NOOP("&Go to Line..."), 0, 0 },
00069 { FirstPage, KStdAccel::Home, "go_first", I18N_NOOP("&First Page"), 0, "start" },
00070 { LastPage, KStdAccel::End, "go_last", I18N_NOOP("&Last Page"), 0, "finish" },
00071
00072 { AddBookmark, KStdAccel::AddBookmark, "bookmark_add", I18N_NOOP("&Add Bookmark"), 0, "bookmark_add" },
00073 { EditBookmarks, KStdAccel::AccelNone, "bookmark_edit", I18N_NOOP("&Edit Bookmarks"), 0, "bookmark" },
00074
00075 { Spelling, KStdAccel::AccelNone, "tools_spelling", I18N_NOOP("&Spelling..."), 0, "spellcheck" },
00076
00077 { ShowMenubar, KStdAccel::ShowMenubar, "options_show_menubar", I18N_NOOP("Show &Menubar"), 0, "showmenu" },
00078 { ShowToolbar, KStdAccel::AccelNone, "options_show_toolbar", I18N_NOOP("Show &Toolbar"), 0, 0 },
00079 { ShowStatusbar, KStdAccel::AccelNone, "options_show_statusbar", I18N_NOOP("Show St&atusbar"), 0, 0 },
00080 { FullScreen, KStdAccel::FullScreen, "fullscreen", I18N_NOOP("F&ull Screen Mode"), 0, "window_fullscreen" },
00081 { SaveOptions, KStdAccel::AccelNone, "options_save_options", I18N_NOOP("&Save Settings"), 0, 0 },
00082 { KeyBindings, KStdAccel::AccelNone, "options_configure_keybinding", I18N_NOOP("Configure S&hortcuts..."), 0,"configure_shortcuts" },
00083 { Preferences, KStdAccel::AccelNone, "options_configure", I18N_NOOP("&Configure %1..."), 0, "configure" },
00084 { ConfigureToolbars, KStdAccel::AccelNone, "options_configure_toolbars", I18N_NOOP("Configure Tool&bars..."), 0,"configure_toolbars" },
00085 { ConfigureNotifications, KStdAccel::AccelNone, "options_configure_notifications", I18N_NOOP("Configure &Notifications..."), 0, "knotify" },
00086
00087
00088
00089 { Help, KStdAccel::Help, "help", 0, 0, "help" },
00090 { HelpContents, KStdAccel::Help, "help_contents", I18N_NOOP("%1 &Handbook"), 0, "contents" },
00091 { WhatsThis, KStdAccel::WhatsThis, "help_whats_this", I18N_NOOP("What's &This?"), 0, "contexthelp" },
00092 { TipofDay, KStdAccel::AccelNone, "help_show_tip", I18N_NOOP("Tip of the &Day"), 0, "idea" },
00093 { ReportBug, KStdAccel::AccelNone, "help_report_bug", I18N_NOOP("&Report Bug..."), 0, 0 },
00094 { AboutApp, KStdAccel::AccelNone, "help_about_app", I18N_NOOP("&About %1"), 0, 0 },
00095 { AboutKDE, KStdAccel::AccelNone, "help_about_kde", I18N_NOOP("About &KDE"), 0,"about_kde" },
00096 { ActionNone, KStdAccel::AccelNone, 0, 0, 0, 0 }
00097 };
00098
00099 inline const KStdActionInfo* infoPtr( StdAction id )
00100 {
00101 for( uint i = 0; g_rgActionInfo[i].id != ActionNone; i++ ) {
00102 if( g_rgActionInfo[i].id == id )
00103 return &g_rgActionInfo[i];
00104 }
00105 return 0;
00106 }
00107
00108 static inline QStringList internal_stdNames()
00109 {
00110 QStringList result;
00111
00112 for( uint i = 0; g_rgActionInfo[i].id != ActionNone; i++ )
00113 if (g_rgActionInfo[i].psLabel)
00114 result.append(i18n(g_rgActionInfo[i].psLabel));
00115 return result;
00116 }
00117
00118 }
00119
00120 #endif