No announcement yet.


  • Filter
  • Time
  • Show
Clear All
new posts

  • PBSlice

    This is currently a pre-alpha incubation project. Essentially it's goal is to treat source code as data. Originally it was inspired by zxRef and then by videos of Light-Table and CodeBubbles.

    Currently it's only available as an EXE with the config. Once it stabilizes and starts to be a bit more of an application, I'll post the source code.

    I would love feedback if you find things not working as expected. A quick summary of what's showing:
    Syntax highlighting browser with source code case control, Directory browser, project file browser, identifier browser, in a zoomable, pannable interface. There's also color scheme support with two color schemes.

    You can read a bit more about it and download it here.

    Sometimes life's a dream, sometimes it's a scream

  • #2

    Do we need to edit the config ( say for locations ) ?
    Or is there a minimum Windows version?

    The reason I ask is when I start it the "choose a debugger" comes up.
    I'm running XP sp3.

    I'll try changing the location and see what happens.

    Well, it's not the locations that is the problem.
    Last edited by Paul D. Elliott; 23 May 2012, 04:48 PM.


    • #3
      Hmm, shouldn't need to, it starts (hardcoded) in c:\prj\pb but should work if the folder doesn't exist, you just see two dots to navigate up until you get to a real directory. I'm thinking it should work on XP but haven't tried and I'm about 6 days away from an XP box I'll see what I can find then.
      Sometimes life's a dream, sometimes it's a scream


      • #4

        Ok. I'll wait.

        Nothing shows up. No form. No missing entry into some DLL.
        Nothing but the "run the debugger" box.

        But it is fast.


        • #5
          Totally forgot I had VMWare Workstation and XP here

          The good news is it runs fine here, if... Edit settings.txt and change the font from Consolas to Courier New. Otherwise worked fine on XP SP3.

          Also appears there's an issue with the source code browser (wondering if there's a lingering hard-coded reference to Consolas) brb.

          Edit: Yep, few hard-coded references to Consolas. That's been fixed, also uploaded a new version with the settings already set to Courier New. It's pretty much working as expected on XP here. Let me know what you find.
          Last edited by Larry Charlton; 23 May 2012, 05:31 PM.
          Sometimes life's a dream, sometimes it's a scream


          • #6
            Well, I must be missing something. Part of which has to do with I can't see
            the whole window. I'm running at 1024 by 768.

            When I click on Locations then click on E:\ all I get is a popup saying
            e:\:e:\ but the Directories box doesn't change from what's on C:.

            Entering file names in Project Files or Identi... doesn't produce any results.

            Sorry but maybe I better wait for a couple revisions ( or at least until
            someone else gets results ).


            • #7
              Using a portrait monitor, on the right side I see only part of the "Directory" control, I can't tell if there is a scrollbar in it or not, and there is none on your program's main window itself. I can see some files/directories in the control.
              I can load some source code, when I click on a *.bas file, but I can't tell for sure because I can only see a few letters of the file/directory name in that control. Not only that it msgboxes me of ERROR 9, twice before the program text shows in its window.

              Don't see a "help" feature either. Nor any method of shutting down except for the ALT-F4 standby.
              I do like the colour scheme.
              In some future era, dark matter and dark energy will only be found in Astronomy's Dark Ages.


              • #8
                I'm on kind of a wide monitor and thought I'd moved everything over where you could see it. You can pan by holding the Alt key down and dragging the window if something is hidden. You can also zoom in and out with the mouse wheel while the Alt key is down.

                The locations doesn't do anything but the pop-up now. I have a glimmer of an idea so you'll probabbly see the UI change and start to have a bit of functionality. Looking to connect locations to directories and add a MRU list and turn that into a screen by itself. With luck I'll implement buttons and you'll be able to manage locations. Also will probabbly move configurations off to a separate screen. Still batting around the best way to navigate between the "modes".

                Also will probabbly split file list/source browser from identifiers. For identifiers I'm thinking of putting it in the middle with definitions on the left and references on the right, we'll see what I have time for

                I'll also look into why you might be getting the message box. Code is compiled with some debugging to cause those to pop-up if something goes wrong. Any hints about what you were doing (sounds like just selecting a .bas file) would be appreciated.
                Sometimes life's a dream, sometimes it's a scream


                • #9
                  I get the dual Error 9 messages when I double click on the first *.bas file, first in the list and the first time I do it. Subsequent files load without the messages. Looks like a #DEBUG DISPLAY effort alright.
                  There are no error messages when I double click to open a directory. Now as I write that I remember that it was just after opening a directory.
                  In some future era, dark matter and dark energy will only be found in Astronomy's Dark Ages.


                  • #10
                    I loaded a bas file via the rhs navigation facility,
                    changed the characters from upper to lower case and then mixed,
                    changed the background from black to white.
                    Nothing happened when I pressed the test one, two three stuff.
                    The project and bas files looked right.
                    All of the above on a PIII, xp sp1.
                    Hope that helps.


                    • #11
                      That sounds about like what it does You can also zoom in/out and pan with the mouse wheel and dragging by holding the alt key down. All the lists should be filtered as well. Got a bit bogged down with some variable width character stuff I think I'll probabbly mostly shelve it for a bit and come back later, only two controls I care about affected anyway. Think I've got two possible solutions that will work, but I'll deal with those later.

                      I'll probabbly post an update sometime this weekend, it'll start to look a bit more like a shell of an app.

                      Oh an on the earlier note about scrollbars, there aren't any. Still contemplating what I want to do here, there will probabbly be two regions that are draggable for faster percentage based scrolling on a focused control. You can currently scroll with the mouse wheel and keyboard.

                      I'll also contemplate adding a bit of context sensitive help about how to use a screen you're on.
                      Sometimes life's a dream, sometimes it's a scream


                      • #12
                        Larry: I tried a bunch of stuff, but frankly I got nothing to respond in any logical way. I altered the config Locations to where PBSlice was located and to the directory where a normal PB project file exists, but I never got a display of anything from the directory, nor could I figure out how to navigate anywhere else and select a project file. Nothing was clickable, nothing responded to right-click context, etc. So it looks intriguing, but ....



                        • #13
                          Link in first post download latest file.

                          I've updated the project now. It has a few rudiments of an application. Getting ready to implement a couple of new controls and updating the list display to support custom renderers, thought it might be a bit so seems like a good update time.

                          Things that have changed: Added Most Recently used files list, created Open, Rudimentary Config, and browse project files screens, implemented a button control, implemented Alt key navigation, added “chrome” controls, added application close button, added control for allowing focus and allowing tab navigation, misc bugs, added support for removing MRU files, adding, renaming, and removing user defined locations (Desktop, Drives, and My Documents are not removable or renamable). Selecting a location navigates to that location, selecting a MRU file opens it as a project, selecting a file opens it as a project. Added status and item counts to focused filtered lists, the directory remembers the last selected directory. Probably a few I’ve forgotten…

                          A “project” is the selected file and any source files it includes.
                          No help yet, sorry, some basic functions:

                          Press the Alt key to begin navigating (Press a letter), zooming (mouse wheel, +/-), and panning (drag mouse, right/left/up/down).
                          Alt navigating to a button will click it (I think all the buttons redirect focus currently).
                          Tab navigates through tabbable controls.
                          Shift+Tab navigates back through tabbable controls
                          Clicking on a control will focus it (and click it if it’s clickable)

                          In lists you can:
                          double click on an item to select it.
                          Use the mouse wheel to scroll up/down
                          Use the control + mouse wheel to scroll right/left (if appropriate)
                          type characters in the top text box to filter the displayed entries
                          Use the up/down/page up/page down/Control Home/control end keys to change the selection.
                          Press enter to select the highlighted entry.

                          In the source browser you can:
                          Page up/page down/up/down/home/end/right/left to scroll around
                          Use the mouse wheel to scroll up or down
                          Use the control + mouse wheel to scroll right or left

                          In lists where appropripate:
                          Control+Delete removes an entry (MRU, Locations)
                          Control+Insert adds an entry (Directory adds to Locations)
                          Control+N renames an entry (Locations)
                          Last edited by Larry Charlton; 27 May 2012, 12:03 AM.
                          Sometimes life's a dream, sometimes it's a scream


                          • #14

                            At least the dir/file navigation is much better.

                            Haven't really had a chance to see what it does ( been mostly off the
                            internet for a few days and not much connection for a whle ).



                            • #15
                              Updated again. Some internal changes, basic functionality, as well as scaffolding to add additional features. Summary of most changes:
                              • Identify colors as Fore or Back.
                              • Add optional focus borders
                              • Brushes/Pens/Colors/IsFocused/IsSelected Referent values. Use in controls, renderers, and AppSettings. Then when color scheme changes next render just works.
                              • In project files filter list, select main file on browse files
                              • In location filter list, attempt to track renamed item (can't if list is filtered so it won't see new name)
                              • Use dual state renderers (Focused/unfocused, selected/unselected)
                              • Basic help
                              • Modal windows Rename, Prompt on Exit, Main menu
                              • Prompt on exit option
                              • Graphic Button (Chrome buttons)
                              • Chrome on top
                              • Application title, Minimize, send to back, help, close, config, main menu chrome
                              • ClientRect for main window (Adjusts for current chrome)
                              Sometimes life's a dream, sometimes it's a scream


                              • #16

                                Just had an odd thing happen.
                                clicked to different drive then direcotry then picked file.
                                wondered about buttons on top right and clicked the open space to
                                left of big red X. a program from my desktop came to the front.
                                I moved it out of the way and clicked back into your program but
                                couldn't exit ( tried alt-f4 and big red X but your program wouldn't
                                exit ). finally killed it from task manager.

                                probably something I did wrong ( again ).

                                but whatever happened to those Identifier displays?



                                • #17
                                  When you hold the Alt key down was it B or M you clicked? M minimizes the application, B shoves it behind all apps on the desktop.

                                  Alt+F4 isn't closing the app, I'll fix that, but when you click the big red X or Alt+C, unless you turned off prompting on exit, you should see a dialog about center of the screen that asks if you really want to exit. Click Yes to exit or No to stay in the app.

                                  Could also be an issue on XP. I'll try it out there in a sec.

                                  Edit: Oh and nothing much happened to the identifiers, all the codes in place. They should show back up in the next version. Also plan to remove the auto indenting and just do that on request (it'll be a main menu option).
                                  Last edited by Larry Charlton; 29 May 2012, 12:25 PM.
                                  Sometimes life's a dream, sometimes it's a scream


                                  • #18
                                    Seems to be working ok here on VmWare XP. Couple things to double check, the config\settings.ini file has Arial and Courier New as the initial fonts, I'm assuming those are on your box, but if not some things will be hard to read
                                    Sometimes life's a dream, sometimes it's a scream


                                    • #19
                                      >Arial and Courier New as the initial fonts, I'm assuming those are on your box

                                      Those particular fonts are on every Windows' box (win 9x==> today). So are Times New Roman and Symbol.

                                      Any others you'll have to check either by enumeration or by checking the O/S version.
                                      Michael Mattias
                                      Tal Systems (retired)
                                      Port Washington WI USA
                                      [email protected]


                                      • #20
                                        Probabbly last update for the day, needing to head back to town for work... Put in a simple browse identifiers similar to the file browser and a few other things. Here's a summary:
                                        • Option for tokenizer to expand tabs or not
                                        • Update Main Menu to use Sub to add menu item
                                        • Escape from Main Menu, Prompt Close on Exit, and Configuration screen
                                        • ^O Global Shortcut to Open project screen
                                        • Moved Indenting to Main menu
                                        • Added option to choose between using spaces and tabs when indenting. If you choose spaces you have to update each time you want to change the size of indents, tabs will be dynamic, but, in the long run there will be some copy and paste options and some things like spaces better.
                                        • Added a simple browse identifiers. Expect this to change as I get a bit more time.
                                        Sometimes life's a dream, sometimes it's a scream