Changeset 5224


Ignore:
Timestamp:
Nov 20, 2022, 7:31:26 PM (2 years ago)
Author:
Andreas Schnellbacher
Message:
  • Fixed Save-as of a read-only file.
  • Added refresh of File menu inits on read-only file attribute change.
  • Rearranged 'Coding style', 'Reflow' and 'Center, Box and Draw' menu items.
Location:
trunk/src/netlabs/macros
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified trunk/src/netlabs/macros/file.e

    r5197 r5224  
    434434      ----- Netlabs file -----
    435435      KeyPath = '\NEPMD\User\Save\CheckForNetlabsFiles'
    436       fHandleNetlbasFileSpecially = QueryConfigKey( KeyPath)
    437       if fHandleNetlbasFileSpecially then
     436      fHandleNetlabsFileSpecially = QueryConfigKey( KeyPath)
     437      if fHandleNetlabsFileSpecially then
    438438         -- Don't overwrite files of the NETLABS, EPMBBS or NEPMD_DEVDIR tree
    439439         if not fTempFile & not fCalledBySaveAs then
     
    456456      -- Check for .readonly field
    457457      if SpecifiedName = '' & (browse() | .readonly) then
    458          if .readonly then
    459             SaveMsg = READ_ONLY__MSG
     458         if fNameChanged | fCalledBySaveAs then
     459            -- Reset .readonly field
     460            .readonly = 0
    460461         else
    461             SaveMsg = BROWSE_IS__MSG ON__MSG
    462          endif
    463          rc = -5  -- Access denied
    464          leave
     462            if .readonly then
     463               SaveMsg = READ_ONLY__MSG
     464            else
     465               SaveMsg = BROWSE_IS__MSG ON__MSG
     466            endif
     467            rc = -5  -- Access denied
     468            leave
     469         endif
    465470      endif
    466471      -- Check if readonly file attrib is set although .readonly field is not
    467472      Attr = NepmdQueryPathInfo( Name, 'ATTR')  -- returns e.g. 'ADSHR' or '-----'
    468473      if substr( Attr, 5, 1) = 'R' then
    469          SaveMsg = READ_ONLY__MSG
    470          rc = -5  -- Access denied
    471          leave
     474         if fNameChanged | fCalledBySaveAs then
     475            -- Reset file attribute
     476            'ReadonlyAttrib 0'
     477         else
     478            SaveMsg = READ_ONLY__MSG
     479            rc = -5  -- Access denied
     480            leave
     481         endif
    472482      endif
    473483
     
    14581468defc SaveAs_Dlg
    14591469   do once = 1 to 1
     1470      StartFilename = .filename
    14601471      -- Optional arg, 0 => no EXIST_OVERLAY__MSG, used by def f2 if SMARTSAVE
    14611472      fAskIfExists = (arg( 1) <> 0)
     
    14691480
    14701481      -- Save current file
    1471       fCalledBySaveAs = 1
     1482      if NewFilename <> Startfilename then
     1483         fCalledBySaveAs = 1
     1484      else
     1485         fCalledBySaveAs = 0
     1486      endif
    14721487      --dprintf( "SaveAs_Dlg: before call Save( '', '', "fCalledBySaveAs")")
    14731488      call Save( '', '', fCalledBySaveAs)
     
    24132428*/
    24142429   -- 2) using QueryFileMode
    2415    Attrib = QueryFileMode( .filename)  -- DosQFileMode
     2430   Attrib = QueryFileMode( .filename)  -- Dos32QueryPathInfo
    24162431   if not rc then   -- file exists
    24172432      readonly = (Attrib // 2)
  • TabularUnified trunk/src/netlabs/macros/newmenu.e

    r5193 r5224  
    17031703
    17041704   DefNextItemStartsSubMenu()
     1705   DefMenuItem( 'centerboxdraw',                                              -- Center, Box and Draw   >
     1706                'Center, Bo~x and Draw',
     1707                '',
     1708                'Alignment and draw boxes and lines',
     1709                '')
     1710   DefMenuItem( 'centermark',                                                       -- Center mark
     1711                '~Center mark',
     1712                'CenterMark',
     1713                'Center lines of text within mark',
     1714                '')
     1715   DefMenuItem( 'box',                                                              -- Box mark
     1716                '~Box mark',
     1717                'Box',
     1718                'Draw a box with the previously selected style around mark',
     1719                '')
     1720   DefMenuItem( 'selectboxstyle',                                                   -- Select box style
     1721                '~Select box style: %1...',
     1722                'Box select',
     1723                'Open a list to select a style for boxes',
     1724                '')
     1725   DefMenuSep()                                                                     --------------------
     1726
     1727   DefMenuItem( 'headerwidth',                                                      -- Header width: %1
     1728                '~Header width: %1...',
     1729                'HeaderWidthDlg',
     1730                'Configure default header width used for boxes, center, wrap and syntax expansion',
     1731                '')
     1732   DefMenuSep()                                                                     --------------------
     1733
     1734   DefMenuItem( 'draw',                                                             -- Draw lines
     1735                '~Draw lines',
     1736                'Draw',
     1737                'Draw lines with the previously selected style',
     1738                '')
     1739   DefNextItemEndsSubMenu()
     1740   DefMenuItem( 'selectdrawstyle',                                                  -- Select draw style
     1741                'S~elect draw style: %1...',
     1742                'Draw select',
     1743                'Open a list to select a style for drawing lines',
     1744                '')
     1745   DefMenuSep()                                                               --------------------
     1746
     1747   DefNextItemStartsSubMenu()
     1748   DefMenuItem( 'codingstyle',                                                -- Coding style   >
     1749                'Codi~ng style',
     1750                '',
     1751                'Definition set for syntax expansion',
     1752                '')
     1753   DefMenuItem( 'selectcodingstyle2',                                               -- Select coding style (%1) for mode %2...
     1754                'Select ~coding style (%1) for mode %2...',
     1755                'SelectCodingStyle',
     1756                'Select a previously defined coding style for current mode',
     1757                '',
     1758                '')
     1759   DefMenuItem( '',                                                                 -- Export user and default mode settings
     1760                'Export user and default ~mode settings',
     1761                'ExportConfig ud_mode \NEPMD\User\Mode\ 1',
     1762                'Export user and default mode settings to a text file for later import',
     1763                '',
     1764                '')
     1765   DefNextItemEndsSubMenu()
     1766   DefMenuItem( '',                                                                 -- Export user and default coding styles
     1767                'Export user and default ~coding styles',
     1768                'ExportConfig ud_coding \NEPMD\User\CodingStyle 0',
     1769                'Export user and default coding styles to a text file for later import',
     1770                '',
     1771                '')
     1772   DefNextItemStartsSubMenu()
    17051773   DefMenuItem( 'reflow',                                                     -- Reflow   >
    17061774                '~Reflow',
     
    18451913                   nodismiss)
    18461914   endif
    1847 
    1848    DefNextItemStartsSubMenu()
    1849    DefMenuItem( 'codingstyle',                                                -- Coding style   >
    1850                 'Codi~ng style',
    1851                 '',
    1852                 'Definition set for syntax expansion',
    1853                 '')
    1854    DefMenuItem( 'selectcodingstyle2',                                               -- Select coding style (%1) for mode %2...
    1855                 'Select ~coding style (%1) for mode %2...',
    1856                 'SelectCodingStyle',
    1857                 'Select a previously defined coding style for current mode',
    1858                 '',
    1859                 '')
    1860    DefMenuItem( '',                                                                 -- Export user and default mode settings
    1861                 'Export user and default ~mode settings',
    1862                 'ExportConfig ud_mode \NEPMD\User\Mode\ 1',
    1863                 'Export user and default mode settings to a text file for later import',
    1864                 '',
    1865                 '')
    1866    DefNextItemEndsSubMenu()
    1867    DefMenuItem( '',                                                                 -- Export user and default coding styles
    1868                 'Export user and default ~coding styles',
    1869                 'ExportConfig ud_coding \NEPMD\User\CodingStyle 0',
    1870                 'Export user and default coding styles to a text file for later import',
    1871                 '',
    1872                 '')
    1873    DefNextItemStartsSubMenu()
    1874    DefMenuItem( 'centerboxdraw',                                              -- Center, Box and Draw   >
    1875                 'Center, Bo~x and Draw',
    1876                 '',
    1877                 'Alignment and draw boxes and lines',
    1878                 '')
    1879    DefMenuItem( 'centermark',                                                       -- Center mark
    1880                 '~Center mark',
    1881                 'CenterMark',
    1882                 'Center lines of text within mark',
    1883                 '')
    1884    DefMenuItem( 'box',                                                              -- Box mark
    1885                 '~Box mark',
    1886                 'Box',
    1887                 'Draw a box with the previously selected style around mark',
    1888                 '')
    1889    DefMenuItem( 'selectboxstyle',                                                   -- Select box style
    1890                 '~Select box style: %1...',
    1891                 'Box select',
    1892                 'Open a list to select a style for boxes',
    1893                 '')
    1894    DefMenuSep()                                                                     --------------------
    1895 
    1896    DefMenuItem( 'headerwidth',                                                      -- Header width: %1
    1897                 '~Header width: %1...',
    1898                 'HeaderWidthDlg',
    1899                 'Configure default header width used for boxes, center, wrap and syntax expansion',
    1900                 '')
    1901    DefMenuSep()                                                                     --------------------
    1902 
    1903    DefMenuItem( 'draw',                                                             -- Draw lines
    1904                 '~Draw lines',
    1905                 'Draw',
    1906                 'Draw lines with the previously selected style',
    1907                 '')
    1908    DefNextItemEndsSubMenu()
    1909    DefMenuItem( 'selectdrawstyle',                                                  -- Select draw style
    1910                 'S~elect draw style: %1...',
    1911                 'Draw select',
    1912                 'Open a list to select a style for drawing lines',
    1913                 '')
    19141915   DefMenuSep()                                                               --------------------
    19151916
     
    52045205      SetMenuAttribute( 'readonly', MIA_CHECKED, not on)
    52055206   endif
     5207   'menuinit_file'
    52065208
    52075209; ---------------------------------------------------------------------------
Note: See TracChangeset for help on using the changeset viewer.