-
Notifications
You must be signed in to change notification settings - Fork 1
Files
Each of the files in xHV serve particular purposes and it's important to understand the directory layouts.
This is the entry point to the app and contains all the VBA modules and the App form that make up the app.
All the custom error codes for the framework are defined here.
Custom global CSS classes for xhv. Gets imported by styles.css.
Main stylesheet. Imports other stylesheets.
This is the HTML wrapper for the entire app. Here is where you would define global JavaScript and CSS that will be used throughout the entire app.
Loaded in AppHost.html. This is a global JS file. Load functions here that will be in the global namespace
Directory for static images
Loaded in AppHost.html. This file connects DOM elements to event handlers.
Loaded in AppHost.html. Misc. xhv helper functions.
Disables browser right-click menu
First component that gets rendered and inserted into the AppHost.html during the Render phase.
JavaScript specifically for the HomeView.
Components that can be reused in multiple views should be placed in this folder
Primary View that typically manages the header and footer along with header and side navigation components.
This component (view) is how Submit buttons can be intercepted and turned into simple events. Uses Bootstrap for styling.
This is the logic that validates the form and intercepts the POST action for a Submit button.
Optional header navigation component
Main Controller that serves as initial logic to bootstrap the App. Implements xhvIController.
Controller for the BootstrapSubmitButton Component. Implements xhvIController.
General Controller for a simple Button Component. Implements xhvIController.
This is the single form that hosts the Web Browser control (WB).
First application logic route Controller. Implements xhvIController.
JSON conversion library.
Controller for the top navigation bar Component.
The main xHV Framework class.
Contains the base methods that each component needs. Used in each concrete component class.
A simple in-memory cache object for rendered components. xHV will draw from here before re-rendering a component if it's available.
This class is the Factory for building instances of other classes for Dependency Injection.
This module is used to configure logging services in a centralized place. Eventually, these configuration could be placed in a config file. Think of this module as if it was a config file.
This module is used to configure all Routes for the application in a centralized place.
Configurations of the services used by the app. Add services we develop for this application in the DI container (xhvDI class)
Provides methods to add configuration in the application. These Configurations will be available in the Global Configuration Dictionary
This module contains the Global Const for HandleView
HandleView Dependency Injection System
This module contains the public Enums for HandleView
Contains functions to help manage error in HandleView and Application
Used for custom error (Exception) management
Various shortcuts to various Global Objects and Functions in the Framework. These are just use to simplify code and calls to these Objects/Functions
Bunch of little functions for trivial tasks.
Framework HTML Helper functions. Can be useful in the rendering of the component.
This module contains the type def for the HandleView Syntax of HTML templates
Interface that describes all properties and methods a Controller must implement.
Interface that describes all properties and methods that a Logger class must implement.
Interface that describes all properties and methods that a Logger Enhancement class must implement.
Interface that describes all the properties and methods that an Interpolation class must implement.
This class represents the Log Static Class used for logging. It's the main part of the Logging System.
This class an enhancement for the Logging Service that return the username of the actual user logged on to the machine.
This class represents the Logger for the Console.
This class is responsible for creating instances of enhancement classes for the HandleView Logger.
This class is responsible for creating and initializing Logger instances in the Logging System.
This class represents the Logger for a JSON text file.
This class represents the Logger for a text file.
This class represents the History of navigation made by the Router. It serves for the Back and Forward navigation implementation.
This class represents a history node (which is a xhvRoute).
This class is used to "pre-render" the Component - Ex: Loading the template. In fact, each Component is responsible for its own rendering in the DOM.
This class represents a route - Routes are used to navigate in the application.
This class is used to Navigate through the application.
This class represents a RouterPort - RouterPorts are used to render components in the HTML Document.
Represents a Service in the DI system. This is a model class only.
This class is responsible for creating and initializing services in the DI framework.
Contains Application Startup functions for HandleView Framework.
Contains Host Startup functions for HandleView Framework.
Represents a stream of data as char.
This module contains the type def of global type used in the framework.
This module allows VBA to call into the Win32 API.