Skip to content

Commit

Permalink
Initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
zoonman committed Nov 11, 2017
0 parents commit 6c72bfb
Show file tree
Hide file tree
Showing 3 changed files with 418 additions and 0 deletions.
189 changes: 189 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,189 @@
# Created by .ignore support plugin (hsz.mobi)
*.suo
*.user
*.userosscache
*.sln.docstates
*.userprefs
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
x64/
x86/
bld/
[Bb]in/
[Oo]bj/
[Ll]og/
.vs/
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*
*.VisualState.xml
TestResult.xml
[Dd]ebugPS/
[Rr]eleasePS/
dlldata.c
BenchmarkDotNet.Artifacts/
project.lock.json
project.fragment.lock.json
artifacts/
**/Properties/launchSettings.json
*_i.c
*_p.c
*_i.h
*.ilk
*.meta
*.obj
*.pch
*.pdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.svclog
*.scc
_Chutzpah*
ipch/
*.aps
*.ncb
*.opendb
*.opensdf
*.sdf
*.cachefile
*.VC.db
*.VC.VC.opendb
*.psess
*.vsp
*.vspx
*.sap
*.e2e
$tf/
*.gpState
_ReSharper*/
*.[Rr]e[Ss]harper
*.DotSettings.user
.JustCode
_TeamCity*
*.dotCover
.axoCover/*
!.axoCover/settings.json
*.coverage
*.coveragexml
_NCrunch_*
.*crunch*.local.xml
nCrunchTemp_*
*.mm.*
AutoTest.Net/
.sass-cache/
[Ee]xpress/
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html
publish/
*.[Pp]ublish.xml
*.azurePubxml
*.pubxml
*.publishproj
PublishScripts/
*.nupkg
**/[Pp]ackages/*
!**/[Pp]ackages/build/
*.nuget.props
*.nuget.targets
csx/
*.build.csdef
ecf/
rcf/
AppPackages/
BundleArtifacts/
Package.StoreAssociation.xml
_pkginfo.txt
*.appx
*.[Cc]ache
!*.[Cc]ache/
ClientBin/
~$*
*~
*.dbmdl
*.dbproj.schemaview
*.jfm
*.pfx
*.publishsettings
orleans.codegen.cs
Generated_Code/
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm
*.mdf
*.ldf
*.ndf
*.rdl.data
*.bim.layout
*.bim_*.settings
FakesAssemblies/
*.GhostDoc.xml
.ntvs_analysis.dat
node_modules/
typings/
*.plg
*.opt
*.vbw
**/*.HTMLClient/GeneratedArtifacts
**/*.DesktopClient/GeneratedArtifacts
**/*.DesktopClient/ModelManifest.xml
**/*.Server/GeneratedArtifacts
**/*.Server/ModelManifest.xml
_Pvt_Extensions
.paket/paket.exe
paket-files/
.fake/
.idea/
*.sln.iml
.cr/
__pycache__/
*.pyc
*.tss
*.jmconfig
*.btp.cs
*.btm.cs
*.odx.cs
*.xsd.cs
OpenCover/
.idea/**/workspace.xml
.idea/**/tasks.xml
.idea/dictionaries
.idea/**/dataSources/
.idea/**/dataSources.ids
.idea/**/dataSources.xml
.idea/**/dataSources.local.xml
.idea/**/sqlDataSources.xml
.idea/**/dynamic.xml
.idea/**/uiDesigner.xml
.idea/**/gradle.xml
.idea/**/libraries
cmake-build-debug/
.idea/**/mongoSettings.xml
*.iws
out/
.idea_modules/
atlassian-ide-plugin.xml
.idea/replstate.xml
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
fabric.properties
179 changes: 179 additions & 0 deletions combobox.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,179 @@
/*
ComboBox Object
http://www.zoonman.com/projects/combobox/
Copyright (c) 2011, Tkachev Philipp
All rights reserved.
BSD License
*/
ComboBox = function (object_name) {
// Edit element cache
this.edit = document.getElementById(object_name);
// Items Container
var ddl = document.getElementById(object_name).parentNode.getElementsByTagName('DIV');
this.dropdownlist = ddl[0];
// Current Item
this.currentitem = null;
// Current Item Index
this.currentitemindex = null;
// Visible Items Count
this.visiblecount = 0;
// Closure Object
var parobject = this;
// Picker
var pick = document.getElementById(object_name).parentNode.getElementsByTagName('SPAN');
pick[0].onclick =function () {
parobject.edit.focus();
};
// Show Items when edit get focus
this.edit.onfocus = function () {
parobject.dropdownlist.style.display = 'block';
};
// Hide Items when edit lost focus
this.edit.onblur = function () {
if(allowLoose)
setTimeout(function () {parobject.dropdownlist.style.display = 'none';}, 150);
};
var allowLoose=true;
// IE fix
parobject.dropdownlist.onmousedown = function(event) {
allowLoose = false;
return false;
}
parobject.dropdownlist.onmouseup = function(event) {
setTimeout(function () {allowLoose = true;}, 150);
return false;
}
// Get Items
this.listitems = this.dropdownlist.getElementsByTagName('A');
for (var i=0;i < this.listitems.length; i++) {
var t = i;
// Binding Click Event
this.listitems[i].onclick = function () {
var upv = this.innerHTML;
upv = upv.replace(/\<b\>/ig, '');
upv = upv.replace(/\<\/b\>/ig, '');
parobject.edit.value = upv;
parobject.dropdownlist.style.display = 'none';
return false;
}
// Binding OnMouseOver Event
this.listitems[i].onmouseover = function (e) {
for (var i=0;i < parobject.listitems.length; i++) {
if (this == parobject.listitems[i]) {
if (parobject.currentitem) {
parobject.currentitem.className = parobject.currentitem.className.replace(/light/g, '')
}
parobject.currentitem = parobject.listitems[i];
parobject.currentitemindex = i;
parobject.currentitem.className += ' light';
}
}
}
};
// Binding OnKeyDown Event
this.edit.onkeydown = function (e) {
e = e || window.event;
// Move Selection Up
if (e.keyCode == 38) {
// up
var cn =0;
if (parobject.visiblecount > 0) {
if (parobject.visiblecount == 1) {
parobject.currentitemindex = parobject.listitems.length-1;
};
do {
parobject.currentitemindex--;
cn++;
}
while (parobject.currentitemindex>0 && parobject.listitems[parobject.currentitemindex].style.display == 'none');
if(parobject.currentitemindex < 0) parobject.currentitemindex = parobject.listitems.length-1;

if (parobject.currentitem) {
parobject.currentitem.className = parobject.currentitem.className.replace(/light/g, '')
};
parobject.currentitem = parobject.listitems[parobject.currentitemindex];
parobject.currentitem.className += ' light';
parobject.currentitem.scrollIntoView(false);
};
e.cancelBubble = true;
if (navigator.appName != 'Microsoft Internet Explorer') {
e.preventDefault();
e.stopPropagation();
}
return false;
}
// Move Selection Down
else if (e.keyCode == 40){
// down
var ic=0;
if (parobject.visiblecount > 0) {
do {
parobject.currentitemindex++;
}
while (parobject.currentitemindex < parobject.listitems.length && parobject.listitems[parobject.currentitemindex].style.display == 'none');
if(parobject.currentitemindex >= parobject.listitems.length) parobject.currentitemindex = 0;

if (parobject.currentitem) {
parobject.currentitem.className = parobject.currentitem.className.replace(/light/g, '')
}
parobject.currentitem = parobject.listitems[parobject.currentitemindex];
parobject.currentitem.className += ' light';
parobject.currentitem.scrollIntoView(false);
}
e.cancelBubble = true;
if (navigator.appName != 'Microsoft Internet Explorer') {
e.preventDefault();
e.stopPropagation();
}
return false;
}

};
this.edit.onkeyup = function (e) {
e = e || window.event;
if (e.keyCode == 13) {
// enter
if (parobject.visiblecount != 0) {
var upv = parobject.currentitem.innerHTML;
upv = upv .replace(/\<b\>/ig, '');
upv = upv .replace(/\<\/b\>/ig, '');
parobject.edit.value = upv;
};
parobject.dropdownlist.style.display = 'none';
e.cancelBubble = true;
return false;
}
else {
parobject.dropdownlist.style.display = 'block';
parobject.visiblecount = 0;
if (parobject.edit.value == '') {
for (var i=0;i < parobject.listitems.length; i++) {
parobject.listitems[i].style.display = 'block';
parobject.visiblecount++;
var pv = parobject.listitems[i].innerHTML;
pv = pv.replace(/\<b\>/ig, '');
parobject.listitems[i].innerHTML = pv.replace(/\<\/b\>/ig, '');
}
}
else {
var re = new RegExp( '('+parobject.edit.value +')',"i");
for (var i=0;i < parobject.listitems.length; i++) {
var pv = parobject.listitems[i].innerHTML;
pv = pv.replace(/\<b\>/ig, '');
pv = pv.replace(/\<\/b\>/ig, '');
if ( re.test(pv) ) {
parobject.listitems[i].style.display = 'block';
parobject.visiblecount++;
parobject.listitems[i].innerHTML = pv.replace(re, '<b>$1</b>');
}
else {
parobject.listitems[i].style.display = 'none';
}
}
}
}
}

}
Loading

0 comments on commit 6c72bfb

Please sign in to comment.