_progress.py :  » GUI » wxPython » wxPython-src-2.8.11.0 » wxPython » wx » tools » Editra » src » syntax » Python Open Source

Home
Python Open Source
1.3.1.2 Python
2.Ajax
3.Aspect Oriented
4.Blog
5.Build
6.Business Application
7.Chart Report
8.Content Management Systems
9.Cryptographic
10.Database
11.Development
12.Editor
13.Email
14.ERP
15.Game 2D 3D
16.GIS
17.GUI
18.IDE
19.Installer
20.IRC
21.Issue Tracker
22.Language Interface
23.Log
24.Math
25.Media Sound Audio
26.Mobile
27.Network
28.Parser
29.PDF
30.Project Management
31.RSS
32.Search
33.Security
34.Template Engines
35.Test
36.UML
37.USB Serial
38.Web Frameworks
39.Web Server
40.Web Services
41.Web Unit
42.Wiki
43.Windows
44.XML
Python Open Source » GUI » wxPython 
wxPython » wxPython src 2.8.11.0 » wxPython » wx » tools » Editra » src » syntax » _progress.py
###############################################################################
# Name: progress.py                                                           #
# Purpose: Define Progress 4gl syntax for highlighting and other features     #
# Author: Cody Precord <cprecord@editra.org>                                  #
# Copyright: (c) 2008 Cody Precord <staff@editra.org>                         #
# License: wxWindows License                                                  #
###############################################################################

"""
Syntax highlighting definition for Progress 4GL programming language.

"""

__author__ = "Cody Precord <cprecord@editra.org>"
__svnid__ = "$Id: _progress.py 62364 2009-10-11 01:02:12Z CJP $"
__revision__ = "$Revision: 62364 $"

#-----------------------------------------------------------------------------#
# Imports
import wx.stc as stc

# Local Imports
import synglob
import syndata
import _sql

#-----------------------------------------------------------------------------#

# Reserved Progress 4GL keywords
PROG_KW = (0, "accumulate active-window add alias all alter ambiguous analyze " 
              "and any apply as ascending assign at attr-space authorization "
              "auto-return available background before-hide begins bell "
              "between blank break btos by call can-do can-find centered "
              "character check chr clear clipboard col colon color column "
              "column-label columns compiler connected control count-of "
              "cpstream create ctos current current-changed current-language "
              "current-window current_date cursor database dataservers "
              "dbcodepage dbcollation dbname dbrestrictions dbtaskid dbtype "
              "dbversion dde deblank debug-list debugger decimal decimals "
              "declare def default default-noxlate default-window define "
              "delete delimiter descending dictionary disable disconnect disp "
              "display distinct dos down drop editing enable encode entry "
              "error-status escape etime except exclusive exclusive-lock "
              "exclusive-web-user exists export false fetch field fields "
              "file-information fill find find-case-sensitive find-global "
              "find-next-occurrence find-prev-occurrence find-select "
              "find-wrap-around first first-of focus font form format frame "
              "frame-col frame-db frame-down frame-field frame-file "
              "frame-index frame-line frame-name frame-row frame-value from "
              "from-chars from-pixels gateways get-byte get-codepages "
              "get-collations get-key-value getbyte global go-on go-pending "
              "grant graphic-edge group having header help hide import in "
              "index indicator input input-output insert integer into is "
              "is-attr-space join kblabel key-code key-function key-label "
              "keycode keyfunction keylabel keys keyword label last last-event "
              "last-key last-of lastkey ldbname leave library like "
              "line-counter listing locked lookup machine-class map member "
              "message message-lines mouse mpe new next next-prompt no "
              "no-attr-space no-error no-fill no-help no-hide no-labels "
              "no-lock no-map no-message no-pause no-prefetch no-undo "
              "no-validate no-wait not null num-aliases num-dbs num-entries "
              "of off old on open opsys option or os-append os-command "
              "os-copy os-create-dir os-delete os-dir os-drives os-error "
              "os-rename os2 os400 output overlay page page-bottom page-number "
              "page-top parameter pause pdbname persistent pixels preprocess "
              "privileges proc-handle proc-status process program-name "
              "Progress prompt prompt-for promsgs propath proversion put "
              "put-byte put-key-value putbyte query query-tuning quit r-index "
              "rcode-information readkey recid record-length rectangle release "
              "reposition retain retry return return-value revert revoke run "
              "save schema screen screen-io screen-lines scroll sdbname search "
              "seek select self session set setuserid share-lock shared "
              "show-stats skip some space status stream stream-io string-xref "
              "system-dialog table term terminal text text-cursor "
              "text-seg-growth this-procedure time title to today top-only "
              "trans transaction trigger triggers trim true underline undo "
              "unformatted union unique unix up update use-index use-revvideo "
              "use-underline user userid using v6frame value values variable "
              "view view-as vms wait-for web-context window window-maximized "
              "window-minimized window-normal with work-table workfile write "
              "xcode xref yes _cbit _control _list _memory _msg _pcontrol "
              "_serial-num _trace "
              "repeat transaction for each end finf where if then else skip "
              "close"
)

# Progress 4GL Types
PROG_TYPES = (1, "char character int integer format var variable log logical "
                 "da date")

# Progress 4GL Operators
PROG_OP = (7, "absolute accelerator across add-first add-last advise alert-box "
              "allow-replication ansi-only anywhere append appl-alert-boxes "
              "application as-cursor ask-overwrite attachment auto-end-key "
              "auto-endkey auto-go auto-indent auto-resize auto-zap "
              "available-formats average avg backwards base-key batch-mode "
              "bgcolor binary bind-where block-iteration-display border-bottom "
              "border-bottom-chars border-bottom-pixels border-left "
              "border-left-chars border-left-pixels border-right "
              "border-right-chars border-right-pixels border-top "
              "border-top-chars border-top-pixels both bottom box "
              "box-selectable browse browse-header buffer buffer-chars "
              "buffer-lines button buttons byte cache cache-size can-query "
              "can-set cancel-break cancel-button caps careful-paint "
              "case-sensitive cdecl character character_length charset checked "
              "choose clear-selection close code codepage codepage-convert "
              "col-of colon-aligned color-table column-bgcolor column-dcolor "
              "column-fgcolor column-font column-label-bgcolor "
              "column-label-dcolor column-label-fgcolor column-label-font "
              "column-of column-pfcolor column-scrolling combo-box command "
              "compile complete connect constrained contents context "
              "context-popup control-container control-form convert-to-offset "
              "convert count cpcase cpcoll cpinternal cplog cpprint cprcodein "
              "cprcodeout cpterm crc-value create-control "
              "create-result-list-entry create-test-file current-column "
              "current-environment current-iteration current-result-row "
              "current-row-modified current-value cursor-char cursor-line "
              "cursor-offset data-entry-return data-type date date-format day "
              "db-references dcolor dde-error dde-id dde-item dde-name "
              "dde-topic debug decimal default-button default-extension "
              "defer-lob-fetch define defined delete-char delete-current-row "
              "delete-line delete-selected-row delete-selected-rows "
              "deselect-focused-row deselect-rows deselect-selected-row "
              "design-mode dialog-box dialog-help dir disabled display-message "
              "display-type double drag-enabled drop-down drop-down-list dump "
              "dynamic echo edge edge-chars edge-pixels editor empty end-key "
              "endkey entered eq error error-column error-row event-type "
              "events exclusive-id execute exp expand extended extent external "
              "extract fetch-selected-row fgcolor file file-name file-offset "
              "file-type filename fill-in filled filters first-child "
              "first-column first-procedure first-tab-item fixed-only float "
              "focused-row font-based-layout font-table force-file foreground "
              "forult-row current-row-modified current-value cursor-char "
              "cursor-line cursor-offset data-entry-return data-type date "
              "date-format day db-references full-width full-width-chars "
              "full-width-pixels ge get get-blue-value get-char-property "
              "get-double get-dynamic get-file get-float get-green-value "
              "get-iteration get-license get-long get-message get-number "
              "get-pointer-value get-red-value get-repositioned-row "
              "get-selected-widget get-short get-signature get-size get-string "
              "get-tab-item get-text-height get-text-height-chars "
              "get-text-height-pixels get-text-width get-text-width-chars "
              "get-text-width-pixels get-unsigned-short grayed "
              "grid-factor-horizontal grid-factor-vertical grid-set grid-snap "
              "grid-unit-height grid-unit-height-chars grid-unit-height-pixels "
              "grid-unit-width grid-unit-width-chars grid-unit-width-pixels "
              "grid-visible gt handle height height-chars height-pixels "
              "help-context helpfile-name hidden hint horizontal hwnd image "
              "image-down image-insensitive image-size image-size-chars "
              "image-size-pixels image-up immediate-display index-hint "
              "indexed-reposition information init initial initial-dir "
              "initial-filter initiate inner inner-chars inner-lines "
              "insert-backtab insert-file insert-row insert-string insert-tab "
              "integer internal-entries is-lead-byte is-row-selected "
              "is-selected item items-per-row join-by-sqldb keep-frame-z-order "
              "keep-messages keep-tab-order key keyword-all label-bgcolor "
              "label-dcolor label-fgcolor label-font label-pfcolor labels "
              "languages large large-to-small last-child last-tab-item "
              "last-procedure lc le leading left left-aligned left-trim length "
              "line list-events list-items list-query-attrs list-set-attrs "
              "list-widgets load load-control load-icon load-image "
              "load-image-down load-image-insensitive load-image-up "
              "load-mouse-pointer load-small-icon log logical lookahead lower "
              "lt manual-highlight margin-extra margin-height "
              "margin-height-chars margin-height-pixels margin-width "
              "margin-width-chars margin-width-pixels matches max max-chars "
              "max-data-guess max-height max-height-chars max-height-pixels "
              "max-rows max-size max-value max-width max-width-chars "
              "max-width-pixels maximize maximum memory menu menu-bar "
              "menu-item menu-key menu-mouse menubar message-area "
              "message-area-font message-line min min-height min-height-chars "
              "min-height-pixels min-size min-value min-width min-width-chars "
              "min-width-pixels minimum mod modified modulo month "
              "mouse-pointer movable move-after-tab-item move-before-tab-item "
              "move-column move-to-bottom move-to-eof move-to-top multiple "
              "multiple-key multitasking-interval must-exist name native ne "
              "new-row next-column next-sibling next-tab-item next-value "
              "no-apply no-assign no-bind-where no-box no-column-scrolling "
              "no-convert no-current-value no-debug no-drag no-echo "
              "no-index-hint no-join-by-sqldb no-lookahead no-row-markers "
              "no-scrolling no-separate-connection no-separators no-underline "
              "no-word-wrap none num-buttons num-columns num-copies "
              "num-formats num-items num-iterations num-lines "
              "num-locked-columns num-messages num-results num-selected "
              "num-selected-rows num-selected-widgets num-tabs num-to-retain "
              "numeric numeric-format octet_length ok ok-cancel "
              "on-frame-border ordered-join ordinal orientation os-getenv "
              "outer outer-join override owner page-size page-width paged "
              "parent partial-key pascal pathname pfcolor pinnable "
              "pixels-per-column pixels-per-row popup-menu popup-only position "
              "precision preselect prev prev-column prev-sibling prev-tab-item "
              "primary printer-control-handle printer-setup private-data "
              "profiler Progress-source publish put-double put-float put-long "
              "put-short put-string put-unsigned-short query-off-end question "
              "radio-buttons radio-set random raw raw-transfer read-file "
              "read-only real recursive refresh refreshable replace "
              "replace-selection-text replication-create replication-delete "
              "replication-write request resizable resize retry-cancel "
              "return-inserted return-to-start-dir reverse-from right "
              "right-aligned right-trim round row row-markers row-of rowid "
              "rule rule-row rule-y save-as save-file screen-value scroll-bars "
              "scroll-delta scroll-horiz-value scroll-offset "
              "scroll-to-current-row scroll-to-item scroll-to-selected-row "
              "scroll-vert-value scrollable scrollbar-horizontal "
              "scrollbar-vertical scrolled-row-position scrolling "
              "se-check-pools se-enable-off se-enable-on se-num-pools "
              "se-use-message section select-focused-row select-next-row "
              "select-prev-row select-repositioned-row select-row selectable "
              "selected selected-items selection-end selection-list "
              "selection-start selection-text send sensitive "
              "separate-connection separators set-blue-value set-break "
              "set-cell-focus set-contents set-dynamic set-green-value "
              "set-leakpoint set-pointer-value set-property set-red-value "
              "set-repositioned-row set-selection set-size set-wait-state "
              "side-lab side-labe side-label side-label-handle side-labels "
              "silent simple single size size-chars size-pixels slider "
              "smallint sort source source-procedure sql sqrt start "
              "status-area status-area-font status-bar stdcall stenciled stop "
              "stopped stored-procedure string sub-average sub-count "
              "sub-maximum sub-menu sub-menu-help sub-minimum sub-total "
              "subscribe substitute substring subtype sum super "
              "suppress-warnings system-alert-boxes system-help tab-position "
              "tabbable target target-procedure temp-directory temp-table "
              "terminate text-selected three-d through thru tic-marks "
              "time-source title-bgcolor title-dcolor title-fgcolor title-font "
              "to-rowid toggle-box tool-bar top topic total trailing truncate "
              "type unbuffered unique-id unload unsubscribe upper use "
              "use-dict-exps use-filename use-text v6display valid-event "
              "valid-handle validate validate-condition validate-message "
              "variable vertical virtual-height virtual-height-chars "
              "use-filename use-text v6display valid-event valid-handle "
              "validate validate-condition validate-message variable vertical "
              "virtual-height virtual-height-chars widget-pool width "
              "width-chars width-pixels window-name window-state window-system "
              "word-wrap x-of y-of year yes-no yes-no-cancel _dcm")


#-----------------------------------------------------------------------------#

class SyntaxData(syndata.SyntaxDataBase):
    """SyntaxData object for Progress 4GL""" 
    def __init__(self, langid):
        syndata.SyntaxDataBase.__init__(self, langid)

        # Setup
        self.SetLexer(stc.STC_LEX_SQL)

    def GetKeywords(self):
        """Progress 4GL keyword specifications """
        return [PROG_KW, PROG_TYPES, PROG_OP]

    def GetSyntaxSpec(self):
        """Syntax Specifications """
        return _sql.SYNTAX_ITEMS

    def GetProperties(self):
        """Language properties for folding ect... """
        return [_sql.FOLD,]

    def GetCommentPattern(self):
        """Comment pattern """
        return [u'/*', u'*/']
w__ww___.___j__a__va2_s___.___c__om_ | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.