genexus-usercontrol-generator

Genexus UserControl Generator is an Atom package that helps to create User Controls for GeneXus

genexuslabs

1,015

2

Bug Reports

0.6.13

MIT

GitHub

This package provides the following services:

usercontrol-generator package

Downloads License

Genexus User Control Generator is an Atom package that helps to create User Controls for GeneXus.

A screenshot of your package

Table of Contents

Main Features

With this package you get:

Requirements

Installation

Windows

  1. Install & Run 'atom'
  2. Go to File/Settings/Install
  3. Search for "genexus-usercontrol-generator"
  4. Press Install button

macOS

  1. Install & Run 'atom'
  2. Go to Atom/Preferences/Install
  3. Search for "genexus-usercontrol-generator"
  4. Press Install button

Using

Create a new User Control

Follow below steps to create a new User Control:

  1. Go to Packages/GeneXus/Create User control
  2. Specify name, description, platform and other attributes and press enter
  3. A new User Control project is created

Project's structure is generated

When you create a User Control from this package, the below structure will be created:

Build process

This package uses gulp to build the user control. You can do a debug or release build by click on the option Packages/GeneXus/Build/[Debug or Release]

You are free to modify your project's gulp script by editing the gulpscript.js file.

On debug build you can update the Usercontrol in GeneXus and a test kb.

Config file - config.json

You will found the file config.json on the Userconstrol base project path. In this file, you can set the next options:

Take care that you must specify base web path, for example:

Windows: C:/users/johndoe/kbs/mykb/web Linux: /home/johndoe/usercontrols/targets

Architecture

Autocomplete

Atom uses Autocomplete plus for this feature.

Were write a specific autocomplete provider to add this feature in the control and properties file. You can check it on \lib\autocomplete\provider.js.

User Control

usercontrol.js is a helper class that provides with some User Control features as creation, validation, read and write attributes and others.

This class will be used mainly for creating and building a User Control.

Creation

usercontrol-create-view is UI responsible for creating the User Control.

Build

For build process, we decided for gulp (it's on javascript too). "usercontrol-build-view" is responsible for the UI and run the gulp script located on the User Control root path.

Grammar association

.control files are associated automatically to xml files using grammars. This happens on the User Control activation (usercontrol-generator.activate()).

Others

base-form.js is an abstract form helper to build our UI.

utils.js is a class with some useful functions.

Contributing

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to jdiana@genexus.com.

Some standards

Writing a friendly readme

Support

For user controls related issues, please use http://stackoverflow.com/tags/genexus.

For this package issues, please use github issue system.

Known issues

In some versions of Windows, the UserControl folder can't be deleted. For more information, please check next links:

https://github.com/nodejs/node-v0.x-archive/issues/6960#issuecomment-46704998

https://news.slashdot.org/story/16/05/31/0012222/microsoft-removes-260-character-path-length-limit-in-windows-10-redstone

License

Copyright (c) 2016 Genexus

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.