mirror of
https://github.com/KevinMidboe/linguist.git
synced 2025-10-29 09:40:21 +00:00
Create association with OpenEdge .w files (#3648)
* Update heuristics.rb * Update languages.yml * Create consmov.w * Create menu.w * Switch out large samples for smaller ones * Relax regex
This commit is contained in:
committed by
Colin Seymour
parent
44048c9ba8
commit
0af9a35ff1
@@ -499,5 +499,14 @@ module Linguist
|
|||||||
Language["XML"]
|
Language["XML"]
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
disambiguate ".w" do |data|
|
||||||
|
if (data.include?("&ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS"))
|
||||||
|
Language["OpenEdge ABL"]
|
||||||
|
elsif /^@(<|\w+\.)/.match(data)
|
||||||
|
Language["CWeb"]
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -3069,6 +3069,7 @@ OpenEdge ABL:
|
|||||||
extensions:
|
extensions:
|
||||||
- ".p"
|
- ".p"
|
||||||
- ".cls"
|
- ".cls"
|
||||||
|
- ".w"
|
||||||
tm_scope: source.abl
|
tm_scope: source.abl
|
||||||
ace_mode: text
|
ace_mode: text
|
||||||
language_id: 264
|
language_id: 264
|
||||||
|
|||||||
230
samples/OpenEdge ABL/test-win.w
Normal file
230
samples/OpenEdge ABL/test-win.w
Normal file
@@ -0,0 +1,230 @@
|
|||||||
|
&ANALYZE-SUSPEND _VERSION-NUMBER AB_v10r12 GUI
|
||||||
|
&ANALYZE-RESUME
|
||||||
|
&Scoped-define WINDOW-NAME C-Win
|
||||||
|
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS C-Win
|
||||||
|
/*------------------------------------------------------------------------
|
||||||
|
|
||||||
|
File:
|
||||||
|
|
||||||
|
Description:
|
||||||
|
|
||||||
|
Input Parameters:
|
||||||
|
<none>
|
||||||
|
|
||||||
|
Output Parameters:
|
||||||
|
<none>
|
||||||
|
|
||||||
|
Author:
|
||||||
|
|
||||||
|
Created:
|
||||||
|
|
||||||
|
------------------------------------------------------------------------*/
|
||||||
|
/* This .W file was created with the Progress AppBuilder. */
|
||||||
|
/*----------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
/* Create an unnamed pool to store all the widgets created
|
||||||
|
by this procedure. This is a good default which assures
|
||||||
|
that this procedure's triggers and internal procedures
|
||||||
|
will execute in this procedure's storage, and that proper
|
||||||
|
cleanup will occur on deletion of the procedure. */
|
||||||
|
|
||||||
|
CREATE WIDGET-POOL.
|
||||||
|
|
||||||
|
/* *************************** Definitions ************************** */
|
||||||
|
|
||||||
|
/* Parameters Definitions --- */
|
||||||
|
|
||||||
|
/* Local Variable Definitions --- */
|
||||||
|
|
||||||
|
/* _UIB-CODE-BLOCK-END */
|
||||||
|
&ANALYZE-RESUME
|
||||||
|
|
||||||
|
|
||||||
|
&ANALYZE-SUSPEND _UIB-PREPROCESSOR-BLOCK
|
||||||
|
|
||||||
|
/* ******************** Preprocessor Definitions ******************** */
|
||||||
|
|
||||||
|
&Scoped-define PROCEDURE-TYPE Window
|
||||||
|
&Scoped-define DB-AWARE no
|
||||||
|
|
||||||
|
/* Name of designated FRAME-NAME and/or first browse and/or first query */
|
||||||
|
&Scoped-define FRAME-NAME DEFAULT-FRAME
|
||||||
|
|
||||||
|
/* Custom List Definitions */
|
||||||
|
/* List-1,List-2,List-3,List-4,List-5,List-6 */
|
||||||
|
|
||||||
|
/* _UIB-PREPROCESSOR-BLOCK-END */
|
||||||
|
&ANALYZE-RESUME
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* *********************** Control Definitions ********************** */
|
||||||
|
|
||||||
|
/* Define the widget handle for the window */
|
||||||
|
DEFINE VAR C-Win AS WIDGET-HANDLE NO-UNDO.
|
||||||
|
|
||||||
|
/* ************************ Frame Definitions *********************** */
|
||||||
|
|
||||||
|
DEFINE FRAME DEFAULT-FRAME
|
||||||
|
WITH 1 DOWN NO-BOX KEEP-TAB-ORDER OVERLAY
|
||||||
|
SIDE-LABELS NO-UNDERLINE THREE-D
|
||||||
|
AT COL 1 ROW 1
|
||||||
|
SIZE 80 BY 16 WIDGET-ID 100.
|
||||||
|
|
||||||
|
|
||||||
|
/* *********************** Procedure Settings ************************ */
|
||||||
|
|
||||||
|
&ANALYZE-SUSPEND _PROCEDURE-SETTINGS
|
||||||
|
/* Settings for THIS-PROCEDURE
|
||||||
|
Type: Window
|
||||||
|
Allow: Basic,Browse,DB-Fields,Window,Query
|
||||||
|
Other Settings: COMPILE
|
||||||
|
*/
|
||||||
|
&ANALYZE-RESUME _END-PROCEDURE-SETTINGS
|
||||||
|
|
||||||
|
/* ************************* Create Window ************************** */
|
||||||
|
|
||||||
|
&ANALYZE-SUSPEND _CREATE-WINDOW
|
||||||
|
IF SESSION:DISPLAY-TYPE = "GUI":U THEN
|
||||||
|
CREATE WINDOW C-Win ASSIGN
|
||||||
|
HIDDEN = YES
|
||||||
|
TITLE = "<insert window title>"
|
||||||
|
HEIGHT = 16
|
||||||
|
WIDTH = 80
|
||||||
|
MAX-HEIGHT = 16
|
||||||
|
MAX-WIDTH = 80
|
||||||
|
VIRTUAL-HEIGHT = 16
|
||||||
|
VIRTUAL-WIDTH = 80
|
||||||
|
RESIZE = yes
|
||||||
|
SCROLL-BARS = no
|
||||||
|
STATUS-AREA = no
|
||||||
|
BGCOLOR = ?
|
||||||
|
FGCOLOR = ?
|
||||||
|
KEEP-FRAME-Z-ORDER = yes
|
||||||
|
THREE-D = yes
|
||||||
|
MESSAGE-AREA = no
|
||||||
|
SENSITIVE = yes.
|
||||||
|
ELSE {&WINDOW-NAME} = CURRENT-WINDOW.
|
||||||
|
/* END WINDOW DEFINITION */
|
||||||
|
&ANALYZE-RESUME
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* *********** Runtime Attributes and AppBuilder Settings *********** */
|
||||||
|
|
||||||
|
&ANALYZE-SUSPEND _RUN-TIME-ATTRIBUTES
|
||||||
|
/* SETTINGS FOR WINDOW C-Win
|
||||||
|
VISIBLE,,RUN-PERSISTENT */
|
||||||
|
/* SETTINGS FOR FRAME DEFAULT-FRAME
|
||||||
|
FRAME-NAME */
|
||||||
|
IF SESSION:DISPLAY-TYPE = "GUI":U AND VALID-HANDLE(C-Win)
|
||||||
|
THEN C-Win:HIDDEN = no.
|
||||||
|
|
||||||
|
/* _RUN-TIME-ATTRIBUTES-END */
|
||||||
|
&ANALYZE-RESUME
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* ************************ Control Triggers ************************ */
|
||||||
|
|
||||||
|
&Scoped-define SELF-NAME C-Win
|
||||||
|
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL C-Win C-Win
|
||||||
|
ON END-ERROR OF C-Win /* <insert window title> */
|
||||||
|
OR ENDKEY OF {&WINDOW-NAME} ANYWHERE DO:
|
||||||
|
/* This case occurs when the user presses the "Esc" key.
|
||||||
|
In a persistently run window, just ignore this. If we did not, the
|
||||||
|
application would exit. */
|
||||||
|
IF THIS-PROCEDURE:PERSISTENT THEN RETURN NO-APPLY.
|
||||||
|
END.
|
||||||
|
|
||||||
|
/* _UIB-CODE-BLOCK-END */
|
||||||
|
&ANALYZE-RESUME
|
||||||
|
|
||||||
|
|
||||||
|
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _CONTROL C-Win C-Win
|
||||||
|
ON WINDOW-CLOSE OF C-Win /* <insert window title> */
|
||||||
|
DO:
|
||||||
|
/* This event will close the window and terminate the procedure. */
|
||||||
|
APPLY "CLOSE":U TO THIS-PROCEDURE.
|
||||||
|
RETURN NO-APPLY.
|
||||||
|
END.
|
||||||
|
|
||||||
|
/* _UIB-CODE-BLOCK-END */
|
||||||
|
&ANALYZE-RESUME
|
||||||
|
|
||||||
|
|
||||||
|
&UNDEFINE SELF-NAME
|
||||||
|
|
||||||
|
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _MAIN-BLOCK C-Win
|
||||||
|
|
||||||
|
|
||||||
|
/* *************************** Main Block *************************** */
|
||||||
|
|
||||||
|
/* Set CURRENT-WINDOW: this will parent dialog-boxes and frames. */
|
||||||
|
ASSIGN CURRENT-WINDOW = {&WINDOW-NAME}
|
||||||
|
THIS-PROCEDURE:CURRENT-WINDOW = {&WINDOW-NAME}.
|
||||||
|
|
||||||
|
/* The CLOSE event can be used from inside or outside the procedure to */
|
||||||
|
/* terminate it. */
|
||||||
|
ON CLOSE OF THIS-PROCEDURE
|
||||||
|
RUN disable_UI.
|
||||||
|
|
||||||
|
/* Best default for GUI applications is... */
|
||||||
|
PAUSE 0 BEFORE-HIDE.
|
||||||
|
|
||||||
|
/* Now enable the interface and wait for the exit condition. */
|
||||||
|
/* (NOTE: handle ERROR and END-KEY so cleanup code will always fire. */
|
||||||
|
MAIN-BLOCK:
|
||||||
|
DO ON ERROR UNDO MAIN-BLOCK, LEAVE MAIN-BLOCK
|
||||||
|
ON END-KEY UNDO MAIN-BLOCK, LEAVE MAIN-BLOCK:
|
||||||
|
RUN enable_UI.
|
||||||
|
IF NOT THIS-PROCEDURE:PERSISTENT THEN
|
||||||
|
WAIT-FOR CLOSE OF THIS-PROCEDURE.
|
||||||
|
END.
|
||||||
|
|
||||||
|
/* _UIB-CODE-BLOCK-END */
|
||||||
|
&ANALYZE-RESUME
|
||||||
|
|
||||||
|
|
||||||
|
/* ********************** Internal Procedures *********************** */
|
||||||
|
|
||||||
|
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE disable_UI C-Win _DEFAULT-DISABLE
|
||||||
|
PROCEDURE disable_UI :
|
||||||
|
/*------------------------------------------------------------------------------
|
||||||
|
Purpose: DISABLE the User Interface
|
||||||
|
Parameters: <none>
|
||||||
|
Notes: Here we clean-up the user-interface by deleting
|
||||||
|
dynamic widgets we have created and/or hide
|
||||||
|
frames. This procedure is usually called when
|
||||||
|
we are ready to "clean-up" after running.
|
||||||
|
------------------------------------------------------------------------------*/
|
||||||
|
/* Delete the WINDOW we created */
|
||||||
|
IF SESSION:DISPLAY-TYPE = "GUI":U AND VALID-HANDLE(C-Win)
|
||||||
|
THEN DELETE WIDGET C-Win.
|
||||||
|
IF THIS-PROCEDURE:PERSISTENT THEN DELETE PROCEDURE THIS-PROCEDURE.
|
||||||
|
END PROCEDURE.
|
||||||
|
|
||||||
|
/* _UIB-CODE-BLOCK-END */
|
||||||
|
&ANALYZE-RESUME
|
||||||
|
|
||||||
|
&ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE enable_UI C-Win _DEFAULT-ENABLE
|
||||||
|
PROCEDURE enable_UI :
|
||||||
|
/*------------------------------------------------------------------------------
|
||||||
|
Purpose: ENABLE the User Interface
|
||||||
|
Parameters: <none>
|
||||||
|
Notes: Here we display/view/enable the widgets in the
|
||||||
|
user-interface. In addition, OPEN all queries
|
||||||
|
associated with each FRAME and BROWSE.
|
||||||
|
These statements here are based on the "Other
|
||||||
|
Settings" section of the widget Property Sheets.
|
||||||
|
------------------------------------------------------------------------------*/
|
||||||
|
VIEW FRAME DEFAULT-FRAME IN WINDOW C-Win.
|
||||||
|
{&OPEN-BROWSERS-IN-QUERY-DEFAULT-FRAME}
|
||||||
|
VIEW C-Win.
|
||||||
|
END PROCEDURE.
|
||||||
|
|
||||||
|
/* _UIB-CODE-BLOCK-END */
|
||||||
|
&ANALYZE-RESUME
|
||||||
|
|
||||||
Reference in New Issue
Block a user