sampdef.c
来自「开放源码的编译器open watcom 1.6.0版的源代码」· C语言 代码 · 共 504 行 · 第 1/2 页
C
504 行
/****************************************************************************
*
* Open Watcom Project
*
* Portions Copyright (c) 1983-2002 Sybase, Inc. All Rights Reserved.
*
* ========================================================================
*
* This file contains Original Code and/or Modifications of Original
* Code as defined in and that are subject to the Sybase Open Watcom
* Public License version 1.0 (the 'License'). You may not use this file
* except in compliance with the License. BY USING THIS FILE YOU AGREE TO
* ALL TERMS AND CONDITIONS OF THE LICENSE. A copy of the License is
* provided with the Original Code and Modifications, and is also
* available at www.sybase.com/developer/opensource.
*
* The Original Code and all software distributed under the License are
* distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
* EXPRESS OR IMPLIED, AND SYBASE AND ALL CONTRIBUTORS HEREBY DISCLAIM
* ALL SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR
* NON-INFRINGEMENT. Please see the License for the specific language
* governing rights and limitations under the License.
*
* ========================================================================
*
* Description: WHEN YOU FIGURE OUT WHAT THIS FILE DOES, PLEASE
* DESCRIBE IT HERE!
*
****************************************************************************/
#include "sample.h"
#include "dlgstat.h"
#include "samprc.h"
#if hot_spots
gui_resource HotSpots[NUM_HOT_SPOTS] = {
{ HOT1, "\x2\x3" },
{ HOT2, "HOT" },
{ HOT3, "\x4\x5\x6" },
{ HOT4, "\x5" },
{ HOT5, "HOTTER" }
};
#endif
#if !default_colours
gui_colour_set BackgroundColours = {
GUI_BLACK, GUI_BLACK /* GUI_BACKGROUND_COLOUR */
};
gui_colour_set DialColours = {
GUI_WHITE, GUI_BLUE /* GUI_DIALOG_COLOUR */
};
gui_colour_set DialFrameColours = {
GUI_WHITE, GUI_BLUE /* GUI_DIALOG_COLOUR */
};
#endif
static gui_menu_struct MainSubMenu1[] = {
{ "&Static Dialog", MENU_STATIC_DIALOG, GUI_MENU_CHECKED, "Create Static Dialog" },
{ "&Dynamic Dialog", MENU_DYNAMIC_DIALOG, GUI_ENABLED, "Create Dynamic Dialog" },
{ "&Test Dialog", MENU_TEST_DIALOG, GUI_ENABLED, "Create Test Dialog" },
{ "&Resource Dialog", MENU_RES_DIALOG, GUI_ENABLED, "Create Resource Dialog" },
{ "&GetNewVal\tdialog", MENU_GETNEWVAL, GUI_ENABLED, NULL },
{ NULL, MENU_SEP_QUIT, GUI_SEPARATOR, NULL },
{ "&Quit", MENU_QUIT, GUI_ENABLED, "Quit", NUM_POPUP_MENUS, PopupMenu },
{ "&Quit", MENU_QUIT2, GUI_ENABLED, "Quit", NUM_POPUP_MENUS, PopupMenu },
{ "E&xit Sample", MENU_EXIT, GUI_ENABLED, "Exit Sample Program" },
{ "Spawn &VI", MENU_SPAWN, GUI_ENABLED, "Spawn WATCOM editor" }
};
#define NUM_MAIN_SUB_MENUS1 ( sizeof( MainSubMenu1 ) / sizeof( gui_menu_struct ) )
static gui_menu_struct MainSubMenu2[] = {
{ "Redra&w Menu\tlright", MENU_REDRAW, GUI_ENABLED, "Redraw Menu" },
{ "&Resize Window\tright", MENU_RESIZE, GUI_GRAYED, "Resize Window" },
{ "&Show Window", MENU_SHOW_WINDOW, GUI_ENABLED, "Show WIndow" },
{ NULL, 0, GUI_SEPARATOR, NULL },
{ "Re&place Colours", MENU_REPLACE_COLOURS, GUI_ENABLED, "Replace Colours" }
};
#define NUM_MAIN_SUB_MENUS2 ( sizeof( MainSubMenu2 ) / sizeof( gui_menu_struct ) )
static gui_menu_struct MainSubMenu3[] = {
{ "&Minimize", MENU_MINIMIZE, GUI_ENABLED, "Minimize" },
{ "&Maximize", MENU_MAXIMIZE, GUI_ENABLED | GUI_IGNORE, "Maximize" },
{ NULL, 0, GUI_SEPARATOR, NULL },
{ "&Restore", MENU_RESTORE, GUI_ENABLED, "Restore" }
};
#define NUM_MAIN_SUB_MENUS3 ( sizeof( MainSubMenu3 ) / sizeof( gui_menu_struct ) )
static gui_menu_struct HelpSubMenu[] = {
{ "Help &Contents", MENU_HELP_CONTENTS, GUI_ENABLED, "Help Contents" },
{ "Help &On Help", MENU_HELP_ON_HELP, GUI_ENABLED, "Help On Help" },
{ "Help &Search", MENU_HELP_SEARCH, GUI_ENABLED, "Help Search" },
{ "Help Conte&xt", MENU_HELP_CONTEXT, GUI_ENABLED, "Help Context" },
{ "Help &Key", MENU_HELP_KEY, GUI_ENABLED, "Help Key" }
};
#define NUM_HELP_SUB_MENUS ( sizeof( HelpSubMenu ) / sizeof( gui_menu_struct ) )
static gui_menu_struct MainSubMenu4[] = {
{ "Create Fi&xed ToolBar", MENU_FIXED_TOOLBAR, GUI_ENABLED, "Create Fixed Toolbar" },
{ "Create &Floating ToolBar", MENU_FLOATING_TOOLBAR, GUI_ENABLED, "Create Floating Toolbar"},
{ NULL, 0, GUI_SEPARATOR, NULL },
{ "Fix/Float &ToolBar", MENU_CHANGE_TOOLBAR, GUI_GRAYED, "Fix/Float Toolbar" },
{ "&Close ToolBar", MENU_CLOSE_TOOLBAR, GUI_GRAYED, "Close Toolbar" }
};
#define NUM_MAIN_SUB_MENUS4 ( sizeof( MainSubMenu4 ) / sizeof( gui_menu_struct ) )
static gui_menu_struct MainSubMenu5[] = {
{ "&Status Window", MENU_STATUS_WND, GUI_ENABLED, "Status Window" },
{ "&Cascade", MENU_CASCADE1, GUI_ENABLED, "Cascade" },
{ "&Help", MENU_HELP, GUI_ENABLED, "Help" },
{ "&Switch Font", MENU_SWITCH_FONT, GUI_ENABLED, "Set Window 2 font same as Window 1 font" },
{ "&Resize Status", MENU_RESIZE_STATUS, GUI_GRAYED, "Set Status Window 2 lines high" },
{ "Flip Mouse On", MENU_FLIP_MOUSE_ON, GUI_ENABLED, "Flip Mouse On" },
{ "Flip Mouse Off", MENU_FLIP_MOUSE_OFF, GUI_ENABLED, "Flip Mouse Off" },
{ "Set Menu", MENU_SET_MENU, GUI_ENABLED, "Change Menus" },
{ "Test Resize", MENU_TEST_RESIZE, GUI_ENABLED, "Test GUISetRestoredSize" },
};
#define NUM_MAIN_SUB_MENUS5 ( sizeof( MainSubMenu5 ) / sizeof( gui_menu_struct ) )
gui_menu_struct PopupMenu[NUM_POPUP_MENUS] = {
{ "&Minize" , MENU_MINIMIZE, GUI_ENABLED, "Minimize" },
{ "Ma&ximize", MENU_MAXIMIZE, GUI_ENABLED, "Maximize" },
{ NULL, 0, GUI_SEPARATOR, NULL },
{ "&Restore", MENU_RESTORE, GUI_ENABLED, "Restore" },
{ "&Can't get me", MENU_CANT_GET_ME, GUI_GRAYED, "Can't get me" },
{ "Me &either", MENU_ME_EITHER, GUI_GRAYED | GUI_IGNORE, "Me either" },
{ "Re&size", MENU_RESIZE, GUI_ENABLED, "Resize" },
{ "Change Menu", MENU_CHANGE, GUI_ENABLED, "Change Menu" },
{ "Cascading Popup", MENU_CASCADE, GUI_ENABLED, "Cascading Popup", NUM_MAIN_SUB_MENUS4, MainSubMenu4 },
};
gui_menu_struct ModifyColour = {
"&Modify Colour", MENU_MODIFY_COLOUR, GUI_ENABLED, "Modify Basic Colours"
};
gui_menu_struct ResetMenu = {
"Reset Menu", MENU_RESET_MENU, GUI_ENABLED, "Change Menus Back"
};
#define NUM_RESET_MENUS ( sizeof( ResetMenu ) / sizeof( gui_menu_struct ) )
gui_menu_struct NewMainMenu = {
"&New Menu", MENU_NEW, GUI_ENABLED, "New Menu Items" , NUM_RESET_MENUS, &ResetMenu
};
gui_menu_struct MenuMore = {
"&This Is More", MENU_THIS_IS_MORE, GUI_ENABLED, "More Menu Items",
};
static gui_menu_struct ChildSubMenu[] = {
{ "&Bring Main To Front", MENU_BRING_MAIN_TO_FRONT, GUI_ENABLED, "Bring Main To Front" },
{ "Get &Client ", MENU_GET_CLIENT, GUI_ENABLED, "Call GUIGetClientRect" },
{ "Get &Rect", MENU_GET_RECT, GUI_ENABLED, "Call GUIGetRect" },
{ "Get &Absolute Rect", MENU_GET_ABS_RECT, GUI_ENABLED, "Call GUIGetAbsRect" },
{ "More", MENU_MORE, GUI_ENABLED, "Cascading Menu" },
};
#define NUM_CHILD_SUB_MENUS ( sizeof( ChildSubMenu ) / sizeof( gui_menu_struct ) )
gui_menu_struct MainMenu[] = {
{ "&Dialogs", MENU_DIALOGS, GUI_ENABLED, "Dialogs", NUM_MAIN_SUB_MENUS1, MainSubMenu1 },
{ "&Redraw", MENU_DO_REDRAW, GUI_ENABLED, "Redraw", NUM_MAIN_SUB_MENUS2, MainSubMenu2 },
{ "&Size", MENU_SIZE, GUI_ENABLED, "Size", NUM_MAIN_SUB_MENUS3, MainSubMenu3 },
{ "&Toolbar", MENU_TOOLBAR, GUI_ENABLED, "Toolbar", NUM_MAIN_SUB_MENUS4, MainSubMenu4 },
#if mdi
{ "&Window", MENU_WINDOW, GUI_ENABLED | GUI_MDIWINDOW, "Window Actions", 0, NULL },
#else
{ "&Window", MENU_WINDOW, GUI_ENABLED, "Window Actions", 0, NULL },
#endif
{ "&Other", MENU_OTHER, GUI_ENABLED, "Other", NUM_MAIN_SUB_MENUS5, MainSubMenu5 },
{ "&Help", MENU_HELP_PULLDOWN, GUI_ENABLED, "Help", NUM_HELP_SUB_MENUS, HelpSubMenu }
};
gui_menu_struct ChildMenu[] = {
{ "label &3", MENU_LABEL3, GUI_ENABLED, "label 3", NUM_CHILD_SUB_MENUS, ChildSubMenu }
};
#if !default_colours
static gui_colour_set ChildColours[GUI_NUM_ATTRS+1] = {
/* Fore Back */
GUI_BRIGHT_BLUE, GUI_BRIGHT_WHITE, /* GUI_MENU_PLAIN */
GUI_BRIGHT_WHITE, GUI_WHITE, /* GUI_MENU_STANDOUT */
GUI_GREY, GUI_WHITE, /* GUI_MENU_GRAYED */
GUI_BRIGHT_CYAN, GUI_BLACK, /* GUI_MENU_ACTIVE */
GUI_BRIGHT_WHITE, GUI_BLACK, /* GUI_MENU_ACTIVE_STANDOUT */
GUI_WHITE, GUI_BRIGHT_WHITE, /* GUI_BACKGROUND */
GUI_BLUE, GUI_WHITE, /* GUI_MENU_FRAME */
GUI_GREY, GUI_WHITE, /* GUI_TITLE_INACTIVE */
GUI_WHITE, GUI_BLUE, /* GUI_FRAME_ACTIVE */
GUI_GREY, GUI_WHITE, /* GUI_FRAME_INACTIVE */
GUI_BRIGHT_WHITE, GUI_BLUE, /* GUI_ICON */
GUI_GREY, GUI_BLACK, /* GUI_MENU_GRAYED_ACTIVE */
GUI_GREY, GUI_WHITE, /* GUI_FRAME_RESIZE */
GUI_BRIGHT_CYAN, GUI_CYAN /* GUI_FIRST_UNUSED */
};
#endif
#if !default_colours
static gui_colour_set DialogColours[GUI_NUM_ATTRS] = {
/* Fore Back */
GUI_BRIGHT_WHITE, GUI_BLUE, /* GUI_MENU_PLAIN */
GUI_BRIGHT_WHITE, GUI_BLUE, /* GUI_MENU_STANDOUT */
GUI_GREY, GUI_BLUE, /* GUI_MENU_GRAYED */
GUI_CYAN, GUI_BLACK, /* GUI_MENU_ACTIVE */
GUI_BRIGHT_WHITE, GUI_BLACK, /* GUI_MENU_ACTIVE_STANDOUT */
GUI_BRIGHT_WHITE, GUI_BLUE, /* GUI_BACKGROUND */
GUI_CYAN, GUI_BLUE, /* GUI_MENU_FRAME */
GUI_GREY, GUI_BLUE, /* GUI_TITLE_INACTIVE */
GUI_BRIGHT_BLUE, GUI_CYAN, /* GUI_FRAME_ACTIVE */
GUI_BRIGHT_BLUE, GUI_CYAN, /* GUI_FRAME_INACTIVE */
GUI_BRIGHT_WHITE, GUI_BLUE, /* GUI_ICON */
GUI_GREY, GUI_BLACK, /* GUI_MENU_GRAYED_ACTIVE */
GUI_GREY, GUI_CYAN /* GUI_FRAME_RESIZE */
};
#endif
gui_colour_set ToolPlain = {
GUI_BLACK, GUI_BLUE, /* GUI_HOTSPOT */
};
gui_colour_set ToolStandout = {
GUI_BRIGHT_WHITE, GUI_BLUE, /* GUI_HOTSPOT_STANDOUT */
};
#if !default_colours
gui_colour_set ParentColours[GUI_NUM_ATTRS] = {
/* Fore Back */
GUI_BLUE, GUI_WHITE, /* GUI_MENU_PLAIN */
GUI_BRIGHT_WHITE, GUI_WHITE, /* GUI_MENU_STANDOUT */
GUI_GREY, GUI_WHITE, /* GUI_MENU_GRAYED */
GUI_BLUE, GUI_BLACK, /* GUI_MENU_ACTIVE */
GUI_BRIGHT_WHITE, GUI_BLACK, /* GUI_MENU_ACTIVE_STANDOUT */
GUI_BRIGHT_BLUE, GUI_BRIGHT_WHITE, /* GUI_BACKGROUND */
GUI_BLUE, GUI_WHITE, /* GUI_MENU_FRAME */
GUI_GREY, GUI_WHITE, /* GUI_TITLE_INACTIVE */
GUI_WHITE, GUI_BLUE, /* GUI_FRAME_ACTIVE */
GUI_GREY, GUI_WHITE, /* GUI_FRAME_INACTIVE */
GUI_BRIGHT_WHITE, GUI_BLUE, /* GUI_ICON */
GUI_GREY, GUI_BLACK, /* GUI_MENU_GRAYED_ACTIVE */
GUI_GREY, GUI_WHITE /* GUI_FRAME_RESIZE */
};
#endif
static disp_entry Child1Data[NUM_CHILD1_ROWS] = {
{ NULL, "This is data in the child window 1", 0 },
{ NULL, "This is a second row of data in the child window 1", 0 },
{ NULL, "This is a third row of data in the child window 1", 0 },
{ NULL, "This is a fourth row of data in the child window 1", 0 },
{ NULL, "This is a fifth row of data in the child window 1", 0 },
{ NULL, "This is a sixth row of data in the child window 1", 0 },
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?